summaryrefslogtreecommitdiff
path: root/src/mainboard/cavium
diff options
context:
space:
mode:
authorPatrick Rudolph <patrick.rudolph@9elements.com>2018-04-11 11:40:55 +0200
committerPatrick Rudolph <siro@das-labor.org>2018-07-10 07:07:09 +0000
commit88f81af1ef0d74ca2be865454cc801efe32a88af (patch)
tree997d9a0b703bbb82f9e7666dd06984bf215c928d /src/mainboard/cavium
parentae15fec0b8ca7578ee56e2d1d9579922bb1ec0b6 (diff)
soc/cavium: Add secondary CPU support
Change-Id: I07428161615bcd3d03a3eea0df2dd813e08c8f66 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/25752 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: David Hendricks <david.hendricks@gmail.com>
Diffstat (limited to 'src/mainboard/cavium')
-rw-r--r--src/mainboard/cavium/cn8100_sff_evb/Kconfig3
-rw-r--r--src/mainboard/cavium/cn8100_sff_evb/mainboard.c6
2 files changed, 8 insertions, 1 deletions
diff --git a/src/mainboard/cavium/cn8100_sff_evb/Kconfig b/src/mainboard/cavium/cn8100_sff_evb/Kconfig
index c311b1dbd8..9caf7e8b7d 100644
--- a/src/mainboard/cavium/cn8100_sff_evb/Kconfig
+++ b/src/mainboard/cavium/cn8100_sff_evb/Kconfig
@@ -54,6 +54,9 @@ config FMDFILE
string
default "src/mainboard/$(CONFIG_MAINBOARD_DIR)/board.fmd"
+config MAX_CPUS
+ default 4
+
##########################################################
#### Update below when adding a new derivative board. ####
##########################################################
diff --git a/src/mainboard/cavium/cn8100_sff_evb/mainboard.c b/src/mainboard/cavium/cn8100_sff_evb/mainboard.c
index 34d2529fdf..28a3ee31db 100644
--- a/src/mainboard/cavium/cn8100_sff_evb/mainboard.c
+++ b/src/mainboard/cavium/cn8100_sff_evb/mainboard.c
@@ -71,7 +71,7 @@ static void mainboard_print_info(void)
thunderx_get_core_clock() / 1000000ULL);
printk(BIOS_INFO, "MB: #CPU cores : %zu\n",
- cpu_get_num_cores());
+ cpu_get_num_available_cores());
printk(BIOS_INFO, "MB: RAM : %zu MiB\n",
sdram_size_mb());
@@ -91,6 +91,10 @@ static void mainboard_init(struct device *dev)
/* Init timer */
soc_timer_init();
+
+ /* Init CPUs */
+ for (i = 1; i < CONFIG_MAX_CPUS; i++)
+ start_cpu(i, NULL);
}
static void mainboard_enable(struct device *dev)