From 8049fc91ded9d780b9f6d5c40bc43ad3242b7a3b Mon Sep 17 00:00:00 2001 From: Vadim Bendebury Date: Tue, 24 Apr 2012 12:53:19 -0700 Subject: Allow device ID arrays in the PCI driver structure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Many PCI devices share the very same driver despite having different PCI device IDs, which causes a lot of copy and paste of driver definitions. This change introduces a way to specify the array of acceptable device IDs in a single driver entry. As an example the Intel {Sandy|Ivy} Bridge SATA driver is being modified to use a single driver structure for all different SATA controller flavors, a few more Ivy Bridge IDs are being added as well. BUG=none TEST=manual . modified coreboot brought up an Ivy Bridge platform all the way to Linux login screen. Change-Id: I761c5611b93ef946053783f7a755e6c456dd6991 Signed-off-by: Vadim Bendebury Reviewed-on: http://review.coreboot.org/982 Tested-by: build bot (Jenkins) Reviewed-by: Kyösti Mälkki Reviewed-by: Patrick Georgi --- src/include/device/pci.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/include') diff --git a/src/include/device/pci.h b/src/include/device/pci.h index d4cfb8558c..e864d6d47f 100644 --- a/src/include/device/pci.h +++ b/src/include/device/pci.h @@ -42,6 +42,7 @@ struct pci_driver { const struct device_operations *ops; unsigned short vendor; unsigned short device; + const unsigned short *devices; }; #define __pci_driver __attribute__ ((used,__section__(".rodata.pci_driver"))) -- cgit v1.2.3