summaryrefslogtreecommitdiff
path: root/src/southbridge/via
diff options
context:
space:
mode:
authorMyles Watson <mylesgw@gmail.com>2010-06-17 16:16:56 +0000
committerMyles Watson <mylesgw@gmail.com>2010-06-17 16:16:56 +0000
commit7eac4450b32f6961d5abd8dae32c5eefc1a07c11 (patch)
tree455e0181fea42d7c6bab09878ef35dc666789977 /src/southbridge/via
parente10757ed525cdd1a5263b9d79e284310c999c0f7 (diff)
downloadcoreboot-7eac4450b32f6961d5abd8dae32c5eefc1a07c11.tar.xz
Always enable parent resources before child resources.
Always initialize parents before children. Move s2881 code into a driver. Signed-off-by: Myles Watson <mylesgw@gmail.com> Acked-by: Peter Stuge <peter@stuge.se> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5633 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/southbridge/via')
-rw-r--r--src/southbridge/via/vt8235/vt8235_lpc.c12
-rw-r--r--src/southbridge/via/vt8237r/vt8237r_lpc.c19
2 files changed, 6 insertions, 25 deletions
diff --git a/src/southbridge/via/vt8235/vt8235_lpc.c b/src/southbridge/via/vt8235/vt8235_lpc.c
index 153c405513..15ff5392b2 100644
--- a/src/southbridge/via/vt8235/vt8235_lpc.c
+++ b/src/southbridge/via/vt8235/vt8235_lpc.c
@@ -241,14 +241,6 @@ static void vt8235_set_resources(device_t dev)
pci_dev_set_resources(dev);
}
-static void vt8235_enable_resources(device_t dev)
-{
- /* vt8235 is not a pci bridge and has no resources of its own (other than standard PC i/o addresses)
- however it does control the isa bus and so we need to manually call enable childrens resources on that bus */
- pci_dev_enable_resources(dev);
- enable_childrens_resources(dev);
-}
-
static void southbridge_init(struct device *dev)
{
vt8235_init(dev);
@@ -258,8 +250,8 @@ static void southbridge_init(struct device *dev)
static struct device_operations vt8235_lpc_ops = {
.read_resources = vt8235_read_resources,
.set_resources = vt8235_set_resources,
- .enable_resources = vt8235_enable_resources,
- .init = &southbridge_init,
+ .enable_resources = pci_dev_enable_resources,
+ .init = southbridge_init,
.scan_bus = scan_static_bus,
};
diff --git a/src/southbridge/via/vt8237r/vt8237r_lpc.c b/src/southbridge/via/vt8237r/vt8237r_lpc.c
index 5a08e3b16f..3074bc8c3c 100644
--- a/src/southbridge/via/vt8237r/vt8237r_lpc.c
+++ b/src/southbridge/via/vt8237r/vt8237r_lpc.c
@@ -505,17 +505,6 @@ static void vt8237r_read_resources(device_t dev)
res->flags = IORESOURCE_IO | IORESOURCE_ASSIGNED | IORESOURCE_FIXED;
}
-/**
- * The VT8237R is not a PCI bridge and has no resources of its own (other
- * than standard PC I/O addresses), however it does control the ISA bus
- * and so we need to manually call enable childrens resources on that bus.
- */
-static void vt8237r_enable_resources(device_t dev)
-{
- pci_dev_enable_resources(dev);
- enable_childrens_resources(dev);
-}
-
static void init_keyboard(struct device *dev)
{
u8 regval = pci_read_config8(dev, 0x51);
@@ -535,16 +524,16 @@ static void southbridge_init_common(struct device *dev)
static const struct device_operations vt8237r_lpc_ops_s = {
.read_resources = vt8237r_read_resources,
.set_resources = pci_dev_set_resources,
- .enable_resources = vt8237r_enable_resources,
- .init = &vt8237s_init,
+ .enable_resources = pci_dev_enable_resources,
+ .init = vt8237s_init,
.scan_bus = scan_static_bus,
};
static const struct device_operations vt8237r_lpc_ops_r = {
.read_resources = vt8237r_read_resources,
.set_resources = pci_dev_set_resources,
- .enable_resources = vt8237r_enable_resources,
- .init = &vt8237r_init,
+ .enable_resources = pci_dev_enable_resources,
+ .init = vt8237r_init,
.scan_bus = scan_static_bus,
};