diff options
author | Rudolf Marek <r.marek@assembler.cz> | 2011-04-22 20:48:21 +0200 |
---|---|---|
committer | Stefan Reinauer <stefan.reinauer@coreboot.org> | 2012-01-18 23:01:36 +0100 |
commit | 0f1dc4eb5bb9941bdb8ff833ec745e1cfeaa9d28 (patch) | |
tree | 69242236ba5e229fc8222e328611fbe964bdaddf /src/southbridge/via/vt8237r/usb.c | |
parent | de64b8b6dbd7059d9e31ede0892ee2a5d6d45e33 (diff) |
Add subsystem callbacks for VT8237x and VT890 family of chipsets
Change-Id: Id34615f0c229d276d72cdf984cf82ea8cc1a85bb
Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de>
Reviewed-on: http://review.coreboot.org/523
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/southbridge/via/vt8237r/usb.c')
-rw-r--r-- | src/southbridge/via/vt8237r/usb.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/southbridge/via/vt8237r/usb.c b/src/southbridge/via/vt8237r/usb.c index 2bdcf9d4ba..ac27f4399c 100644 --- a/src/southbridge/via/vt8237r/usb.c +++ b/src/southbridge/via/vt8237r/usb.c @@ -158,13 +158,25 @@ static void vt8237_usb_ii_read_resources(struct device *dev) return; } +static void vt8237_set_subsystem(device_t dev, unsigned vendor, unsigned device) +{ + pci_write_config32(dev, 0x42, pci_read_config32(dev, 0x42) | 0x10); + pci_write_config16(dev, 0x2c, vendor); + pci_write_config16(dev, 0x2e, device); + pci_write_config32(dev, 0x42, pci_read_config32(dev, 0x42) & ~0x10); +} + +static struct pci_operations lops_pci = { + .set_subsystem = vt8237_set_subsystem, +}; + static const struct device_operations usb_i_ops = { .read_resources = vt8237_usb_i_read_resources, .set_resources = pci_dev_set_resources, .enable_resources = pci_dev_enable_resources, .init = usb_i_init, .enable = 0, - .ops_pci = 0, + .ops_pci = &lops_pci, }; static const struct device_operations usb_ii_ops = { @@ -173,7 +185,7 @@ static const struct device_operations usb_ii_ops = { .enable_resources = pci_dev_enable_resources, .init = usb_ii_init, .enable = 0, - .ops_pci = 0, + .ops_pci = &lops_pci, }; static const struct pci_driver vt8237r_driver_usbii __pci_driver = { |