[U-Boot] [PATCH 15/57] x86: ivybridge: Add an init() method for the bd82x6x LPC

Simon Glass sjg at chromium.org
Tue Dec 8 04:38:34 CET 2015


Add an empty method for now. We will add more to it in future patches.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 arch/x86/cpu/ivybridge/cpu.c | 11 ++++++++++-
 arch/x86/cpu/ivybridge/lpc.c | 11 +++++++++++
 2 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/arch/x86/cpu/ivybridge/cpu.c b/arch/x86/cpu/ivybridge/cpu.c
index b7cdae1..276ae50 100644
--- a/arch/x86/cpu/ivybridge/cpu.c
+++ b/arch/x86/cpu/ivybridge/cpu.c
@@ -15,6 +15,7 @@
 #include <dm.h>
 #include <errno.h>
 #include <fdtdec.h>
+#include <lpc.h>
 #include <pch.h>
 #include <asm/cpu.h>
 #include <asm/io.h>
@@ -212,7 +213,7 @@ int print_cpuinfo(void)
 {
 	enum pei_boot_mode_t boot_mode = PEI_BOOT_NONE;
 	char processor_name[CPU_MAX_NAME_LEN];
-	struct udevice *dev;
+	struct udevice *dev, *lpc;
 	const char *name;
 	uint32_t pm1_cnt;
 	uint16_t pm1_sts;
@@ -254,6 +255,14 @@ int print_cpuinfo(void)
 	if (ret)
 		return ret;
 
+	ret = uclass_first_device(UCLASS_LPC, &lpc);
+	if (ret)
+		return ret;
+	if (!dev)
+		return -ENODEV;
+	ret = lpc_init(lpc);
+	if (ret)
+		return ret;
 	sandybridge_early_init(SANDYBRIDGE_MOBILE);
 
 	/* Check PM1_STS[15] to see if we are waking from Sx */
diff --git a/arch/x86/cpu/ivybridge/lpc.c b/arch/x86/cpu/ivybridge/lpc.c
index f124de6..dd7b788 100644
--- a/arch/x86/cpu/ivybridge/lpc.c
+++ b/arch/x86/cpu/ivybridge/lpc.c
@@ -10,6 +10,7 @@
 #include <dm.h>
 #include <errno.h>
 #include <fdtdec.h>
+#include <lpc.h>
 #include <rtc.h>
 #include <pci.h>
 #include <asm/acpi.h>
@@ -618,6 +619,11 @@ void lpc_enable(pci_dev_t dev)
 	setbits_le32(RCB_REG(FD2), PCH_ENABLE_DBDF);
 }
 
+static int bd82x6x_lpc_init(struct udevice *dev)
+{
+	return 0;
+}
+
 static int bd82x6x_lpc_probe(struct udevice *dev)
 {
 	int ret;
@@ -634,6 +640,10 @@ static int bd82x6x_lpc_probe(struct udevice *dev)
 	return 0;
 }
 
+static struct lpc_ops bd82x6x_lpc_ops = {
+	.init		= bd82x6x_lpc_init,
+};
+
 static const struct udevice_id bd82x6x_lpc_ids[] = {
 	{ .compatible = "intel,bd82x6x-lpc" },
 	{ }
@@ -644,4 +654,5 @@ U_BOOT_DRIVER(bd82x6x_lpc_drv) = {
 	.id		= UCLASS_LPC,
 	.of_match	= bd82x6x_lpc_ids,
 	.probe		= bd82x6x_lpc_probe,
+	.ops		= &bd82x6x_lpc_ops,
 };
-- 
2.6.0.rc2.230.g3dd15c0



More information about the U-Boot mailing list