aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/baytrail/chip.c
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2013-09-24 16:47:49 -0500
committerAaron Durbin <adurbin@google.com>2014-01-31 20:42:37 +0100
commit452d31ad752cff53776b1780e2dac76c67575997 (patch)
tree1f63236cf1d503f327b093be41f9146b6eb50602 /src/soc/intel/baytrail/chip.c
parent4c53df47302968fd6f90261d84c9d3c0f8e7bbc2 (diff)
baytrail: introduce pattrs
The pattrs structure is intended for the supporting coreboot code to reference instead of going back to the source of the values (msrs, cpuid, etc). It essentially serves as a global structure for collecting attributes about the platform/processor. Additionally, the implementation provides a point during boot to hoook work before device enumeration/initialization by providing a init() function to soc_intel_baytrail_ops that is called before device work in the boot state machine. BUG=chrome-os-partner:22862 BUG=chrome-os-partner:22863 BRANCH=None TEST=Built and booted. Noted pattrs output. Change-Id: I073da8aca29635146fb0d4a2625b2b7564fd8414 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/170403 Reviewed-by: Shawn Nematbakhsh <shawnn@chromium.org> Reviewed-on: http://review.coreboot.org/4854 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/soc/intel/baytrail/chip.c')
-rw-r--r--src/soc/intel/baytrail/chip.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/soc/intel/baytrail/chip.c b/src/soc/intel/baytrail/chip.c
index 09c36dfd5d..5a898f6e31 100644
--- a/src/soc/intel/baytrail/chip.c
+++ b/src/soc/intel/baytrail/chip.c
@@ -68,9 +68,16 @@ static void enable_dev(device_t dev)
}
}
+/* Called at BS_DEV_INIT_CHIPS time -- very early. Just after BS_PRE_DEVICE. */
+static void soc_init(void *chip_info)
+{
+ baytrail_init_pre_device();
+}
+
struct chip_operations soc_intel_baytrail_ops = {
CHIP_NAME("Intel BayTrail SoC")
.enable_dev = enable_dev,
+ .init = soc_init,
};
static void pci_set_subsystem(device_t dev, unsigned vendor, unsigned device)