summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>2010-05-21 23:00:56 +0000
committerCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>2010-05-21 23:00:56 +0000
commit9ec5edff2b22caf0d1e29df85b01f20f2fe419cd (patch)
tree25f0a15356ac23f3458d77f2e636fc4ca57ae112
parent1a12a5d657d15115b565bcb6392dc985710de323 (diff)
downloadflashrom-9ec5edff2b22caf0d1e29df85b01f20f2fe419cd.zip
flashrom-9ec5edff2b22caf0d1e29df85b01f20f2fe419cd.tar.gz
Libpci < 2.2.4 can not store class info in struct pci_dev
Read class info manually and store it in a separate variable. Corresponding to flashrom svn r1004. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
-rw-r--r--board_enable.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/board_enable.c b/board_enable.c
index 2cf81c2..3fffaa5 100644
--- a/board_enable.c
+++ b/board_enable.c
@@ -789,9 +789,11 @@ static int intel_ich_gpio_set(int gpio, int raise)
/* First, look for a known LPC bridge */
for (dev = pacc->devices; dev; dev = dev->next) {
- pci_fill_info(dev, PCI_FILL_CLASS);
+ uint16_t device_class;
+ /* libpci before version 2.2.4 does not store class info. */
+ device_class = pci_read_word(dev, PCI_CLASS_DEVICE);
if ((dev->vendor_id == 0x8086) &&
- (dev->device_class == 0x0601)) { /* ISA Bridge */
+ (device_class == 0x0601)) { /* ISA Bridge */
/* Is this device in our list? */
for (i = 0; intel_ich_gpio_table[i].id; i++)
if (dev->device_id == intel_ich_gpio_table[i].id)
OpenPOWER on IntegriCloud