[coreboot] Patch set updated for coreboot: a2eaa4f OXPCIe: Reinitialize UART after pci_dev_set_resources()
Stefan Reinauer (stefan.reinauer@coreboot.org)
gerrit at coreboot.org
Thu Mar 8 21:47:35 CET 2012
Stefan Reinauer (stefan.reinauer at coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/692
-gerrit
commit a2eaa4fb7bb98f171d54523f9af06a0794f14013
Author: Stefan Reinauer <reinauer at chromium.org>
Date: Tue May 10 12:54:56 2011 -0700
OXPCIe: Reinitialize UART after pci_dev_set_resources()
... and only pull in early init code if the OXPCIe is used for console.
Change-Id: I01feca3b9e8376a75c17554ba1bd200d523dff8d
Signed-off-by: Stefan Reinauer <reinauer at google.com>
---
src/drivers/oxford/oxpcie/Makefile.inc | 2 ++
src/drivers/oxford/oxpcie/oxpcie.c | 14 ++++++++++++--
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/src/drivers/oxford/oxpcie/Makefile.inc b/src/drivers/oxford/oxpcie/Makefile.inc
index 7d3a26f..7f4aa58 100644
--- a/src/drivers/oxford/oxpcie/Makefile.inc
+++ b/src/drivers/oxford/oxpcie/Makefile.inc
@@ -1,3 +1,5 @@
driver-$(CONFIG_DRIVERS_OXFORD_OXPCIE) += oxpcie.c
+ifeq ($(CONFIG_CONSOLE_SERIAL8250MEM),y)
romstage-$(CONFIG_DRIVERS_OXFORD_OXPCIE) += oxpcie_early.c
+endif
diff --git a/src/drivers/oxford/oxpcie/oxpcie.c b/src/drivers/oxford/oxpcie/oxpcie.c
index e1fb65f..8afdd1f 100644
--- a/src/drivers/oxford/oxpcie/oxpcie.c
+++ b/src/drivers/oxford/oxpcie/oxpcie.c
@@ -23,7 +23,6 @@
#include <device/pci_ids.h>
#include <console/console.h>
#include <arch/io.h>
-#include <uart8250.h>
static void oxford_oxpcie_enable(device_t dev)
{
@@ -41,9 +40,20 @@ static void oxford_oxpcie_enable(device_t dev)
(read32(res->base + 4) & 3));
}
+
+static void oxford_oxpcie_set_resources(struct device *dev)
+{
+ pci_dev_set_resources(dev);
+
+#if CONFIG_CONSOLE_SERIAL8250MEM
+ /* Re-initialize OXPCIe base address after set_resources */
+ uartmem_init();
+#endif
+}
+
static struct device_operations oxford_oxpcie_ops = {
.read_resources = pci_dev_read_resources,
- .set_resources = pci_dev_set_resources,
+ .set_resources = oxford_oxpcie_set_resources,
.enable_resources = pci_dev_enable_resources,
.init = oxford_oxpcie_enable,
.scan_bus = 0,
More information about the coreboot
mailing list