aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Held <felix.held@amd.corp-partner.google.com>2021-10-20 23:43:12 +0200
committerFelix Held <felix-coreboot@felixheld.de>2021-10-22 01:27:48 +0000
commit37e160efb5973ebe7b8b3f5e445d3bdf33c35dd5 (patch)
tree800f6f62b1f60dedd1690726c5f3ad0afd14e57b
parent4dd7d1196545f1dff71b8e70b7a9b80b8bcd4041 (diff)
soc/intel/baytrail: use mp_cpu_bus_init
Implement mp_init_cpus and use mp_cpu_bus_init as init function in cpu_bus_ops. Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Change-Id: I057ae8d95bdc510e9e7afb144b692531107fa45d Reviewed-on: https://review.coreboot.org/c/coreboot/+/58506 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Raul Rangel <rrangel@chromium.org>
-rw-r--r--src/soc/intel/baytrail/chip.c2
-rw-r--r--src/soc/intel/baytrail/cpu.c5
-rw-r--r--src/soc/intel/baytrail/include/soc/ramstage.h1
3 files changed, 3 insertions, 5 deletions
diff --git a/src/soc/intel/baytrail/chip.c b/src/soc/intel/baytrail/chip.c
index c7eb149020..1f72dc4490 100644
--- a/src/soc/intel/baytrail/chip.c
+++ b/src/soc/intel/baytrail/chip.c
@@ -17,7 +17,7 @@ static struct device_operations pci_domain_ops = {
static struct device_operations cpu_bus_ops = {
.read_resources = noop_read_resources,
.set_resources = noop_set_resources,
- .init = baytrail_init_cpus,
+ .init = mp_cpu_bus_init,
};
static void enable_dev(struct device *dev)
diff --git a/src/soc/intel/baytrail/cpu.c b/src/soc/intel/baytrail/cpu.c
index 98400d1a1a..1dbc3d7751 100644
--- a/src/soc/intel/baytrail/cpu.c
+++ b/src/soc/intel/baytrail/cpu.c
@@ -12,6 +12,7 @@
#include <cpu/x86/msr.h>
#include <cpu/x86/mtrr.h>
#include <cpu/x86/smm.h>
+#include <device/device.h>
#include <reg_script.h>
#include <soc/iosf.h>
#include <soc/msr.h>
@@ -193,10 +194,8 @@ static const struct mp_ops mp_ops = {
.post_mp_init = post_mp_init,
};
-void baytrail_init_cpus(struct device *dev)
+void mp_init_cpus(struct bus *cpu_bus)
{
- struct bus *cpu_bus = dev->link_list;
-
/* TODO: Handle mp_init_with_smm failure? */
mp_init_with_smm(cpu_bus, &mp_ops);
}
diff --git a/src/soc/intel/baytrail/include/soc/ramstage.h b/src/soc/intel/baytrail/include/soc/ramstage.h
index 51189cfd46..8b4727c260 100644
--- a/src/soc/intel/baytrail/include/soc/ramstage.h
+++ b/src/soc/intel/baytrail/include/soc/ramstage.h
@@ -9,7 +9,6 @@
/* The baytrail_init_pre_device() function is called prior to device
* initialization, but it's after console and cbmem has been reinitialized. */
void baytrail_init_pre_device(struct soc_intel_baytrail_config *config);
-void baytrail_init_cpus(struct device *dev);
void southcluster_enable_dev(struct device *dev);
/* The baytrail_run_reference_code() function is provided by either
* native refcode or the ChromeBook refcode wrapper */