From b9b8ebca62a661e1ea43574a063f6e3c335f2c06 Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Thu, 11 Sep 2014 21:57:41 -0500 Subject: arm64: initialize GIC for each CPU For every CPU that comes online initialize the GIC for that CPU. This allows the per-cpu register state to be initialized for every CPU that comes online. BUG=chrome-os-partner:31945 BRANCH=None TEST=Built and booted to kernel on ryu. Change-Id: I467ca38d51ac67ffc19b1b4fc6fafa9394a876c9 Signed-off-by: Patrick Georgi Original-Commit-Id: b2faf33fad80fd7ecb884d3ad40917f5a629a5b2 Original-Change-Id: I58d0ffcfe65cffc6a4dd2678c041219e1e698aaf Original-Signed-off-by: Aaron Durbin Original-Reviewed-on: https://chromium-review.googlesource.com/217513 Original-Reviewed-by: Furquan Shaikh Reviewed-on: http://review.coreboot.org/9076 Tested-by: build bot (Jenkins) Reviewed-by: Edward O'Callaghan --- src/arch/arm64/cpu.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/arch/arm64/cpu.c b/src/arch/arm64/cpu.c index 66c8dde9be..0f9e874a3f 100644 --- a/src/arch/arm64/cpu.c +++ b/src/arch/arm64/cpu.c @@ -23,6 +23,7 @@ #include #include #include +#include #include "cpu-internal.h" static struct cpu_info cpu_infos[CONFIG_MAX_CPUS]; @@ -90,6 +91,9 @@ static void init_this_cpu(void *arg) cpu_set_device_operations(dev); + /* Initialize the GIC. */ + gic_init(); + if (dev->ops != NULL && dev->ops->init != NULL) { dev->initialized = 1; printk(BIOS_DEBUG, "%s init\n", dev_path(dev)); -- cgit v1.2.3