diff options
author | Patrick Georgi <patrick@georgi-clan.de> | 2012-07-26 19:48:23 +0200 |
---|---|---|
committer | Patrick Georgi <patrick@georgi-clan.de> | 2012-07-26 22:25:10 +0200 |
commit | efff733ad83acf8502561a9cadc9202c6974e510 (patch) | |
tree | b81785cd64f750ac790c5b4306dc4b0b16ca641c /src/northbridge | |
parent | 8730bf8aad995bf105454ac1a93dee4c7b5565d5 (diff) |
Refactor driver structs
Our driver infrastructure became more flexible recently.
Make use of it.
These are the low hanging fruits (files with 5 device
variants or more), but there are still lots of files
with less potential for deduplication.
Change-Id: If6b7be5046581f81485a511b150f99b029b95c3b
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de>
Reviewed-on: http://review.coreboot.org/1358
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Tested-by: build bot (Jenkins)
Diffstat (limited to 'src/northbridge')
-rw-r--r-- | src/northbridge/amd/cimx/rd890/late.c | 40 | ||||
-rw-r--r-- | src/northbridge/intel/sandybridge/gma.c | 48 |
2 files changed, 15 insertions, 73 deletions
diff --git a/src/northbridge/amd/cimx/rd890/late.c b/src/northbridge/amd/cimx/rd890/late.c index 208e5f1d77..33da2b403a 100644 --- a/src/northbridge/amd/cimx/rd890/late.c +++ b/src/northbridge/amd/cimx/rd890/late.c @@ -220,38 +220,18 @@ static struct device_operations ht_ops = { .ops_pci = &lops_pci, }; -static const struct pci_driver ht_driver_sr5690 __pci_driver = { - .ops = &ht_ops, - .vendor = PCI_VENDOR_ID_ATI, - .device = PCI_DEVICE_ID_AMD_SR5690_HT, -}; - -static const struct pci_driver ht_driver_sr5670 __pci_driver = { - .ops = &ht_ops, - .vendor = PCI_VENDOR_ID_ATI, - .device = PCI_DEVICE_ID_AMD_SR5670_HT, -}; - -static const struct pci_driver ht_driver_sr5650 __pci_driver = { - .ops = &ht_ops, - .vendor = PCI_VENDOR_ID_ATI, - .device = PCI_DEVICE_ID_AMD_SR5650_HT, -}; - -static const struct pci_driver ht_driver_rd890tv __pci_driver = { - .ops = &ht_ops, - .vendor = PCI_VENDOR_ID_ATI, - .device = PCI_DEVICE_ID_AMD_RD890TV_HT, +static const unsigned short driver_ids[] = { + PCI_DEVICE_ID_AMD_SR5690_HT, + PCI_DEVICE_ID_AMD_SR5670_HT, + PCI_DEVICE_ID_AMD_SR5650_HT, + PCI_DEVICE_ID_AMD_RD890TV_HT, + PCI_DEVICE_ID_AMD_RD890_HT, + PCI_DEVICE_ID_AMD_990FX_HT, + 0 }; -static const struct pci_driver ht_driver_rd890 __pci_driver = { - .ops = &ht_ops, - .vendor = PCI_VENDOR_ID_ATI, - .device = PCI_DEVICE_ID_AMD_RD890_HT, -}; - -static const struct pci_driver ht_driver_990fx __pci_driver = { +static const struct pci_driver ht_driver_sr5690 __pci_driver = { .ops = &ht_ops, .vendor = PCI_VENDOR_ID_ATI, - .device = PCI_DEVICE_ID_AMD_990FX_HT, + .devices= driver_ids, }; diff --git a/src/northbridge/intel/sandybridge/gma.c b/src/northbridge/intel/sandybridge/gma.c index 9a8b6317ef..c2bb2eae21 100644 --- a/src/northbridge/intel/sandybridge/gma.c +++ b/src/northbridge/intel/sandybridge/gma.c @@ -659,50 +659,12 @@ static struct device_operations gma_func0_ops = { .ops_pci = &gma_pci_ops, }; -static const struct pci_driver gma_gt1_desktop __pci_driver = { - .ops = &gma_func0_ops, - .vendor = PCI_VENDOR_ID_INTEL, - .device = 0x0102, -}; - -static const struct pci_driver gma_gt1_mobile __pci_driver = { - .ops = &gma_func0_ops, - .vendor = PCI_VENDOR_ID_INTEL, - .device = 0x0106, +static const unsigned short gma_ids[] = { + 0x0102, 0x0106, 0x010a, 0x0112, 0x0116, 0x0122, 0x0126, 0x166, + 0, }; - -static const struct pci_driver gma_gt1_server __pci_driver = { - .ops = &gma_func0_ops, - .vendor = PCI_VENDOR_ID_INTEL, - .device = 0x010a, -}; - -static const struct pci_driver gma_gt2_desktop __pci_driver = { - .ops = &gma_func0_ops, - .vendor = PCI_VENDOR_ID_INTEL, - .device = 0x0112, -}; - -static const struct pci_driver gma_gt2_mobile __pci_driver = { - .ops = &gma_func0_ops, - .vendor = PCI_VENDOR_ID_INTEL, - .device = 0x0116, -}; - -static const struct pci_driver gma_gt2_desktop_fast __pci_driver = { - .ops = &gma_func0_ops, - .vendor = PCI_VENDOR_ID_INTEL, - .device = 0x0122, -}; - -static const struct pci_driver gma_gt2_mobile_fast __pci_driver = { +static const struct pci_driver gma_gt1_desktop __pci_driver = { .ops = &gma_func0_ops, .vendor = PCI_VENDOR_ID_INTEL, - .device = 0x0126, -}; - -static const struct pci_driver gma_func0_driver_3 __pci_driver = { - .ops = &gma_func0_ops, - .vendor = PCI_VENDOR_ID_INTEL, - .device = 0x0166, + .devices= gma_ids, }; |