[coreboot] New patch to review for coreboot: ba41dbb Reverse Vendor ID & Device ID for map_oprom_vendev()

Martin Roth (martin@se-eng.com) gerrit at coreboot.org
Fri Apr 27 01:23:27 CEST 2012


Martin Roth (martin at se-eng.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/938

-gerrit

commit ba41dbb09f89e022168c8c497b57528a99072349
Author: Martin Roth <martin at se-eng.com>
Date:   Thu Apr 26 16:04:18 2012 -0600

    Reverse Vendor ID & Device ID for map_oprom_vendev()
    
    - When calling map_oprom_vendev() the vendor ID and device ID
      are joined into a 32 bit value.  They were reversed from the
      order that I would have expected - Device ID as the high 16 bits
      and the Vendor ID as the low 16.  This patch reverses them so
      so that the the dword comparison in map_oprom_vendev() matches
      what's entered into Kconfig for vendor,device.
    
    Change-Id: I5b84db3cb1a359a7533409fde7d05fbc6ba3fcc4
    Signed-off-by: Martin L Roth <martin at se-eng.com>
---
 src/devices/pci_rom.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/devices/pci_rom.c b/src/devices/pci_rom.c
index 800776e..e7933eb 100644
--- a/src/devices/pci_rom.c
+++ b/src/devices/pci_rom.c
@@ -37,7 +37,7 @@ struct rom_header *pci_rom_probe(struct device *dev)
 	/* If it's in FLASH, then don't check device for ROM. */
 	rom_header = cbfs_load_optionrom(dev->vendor, dev->device, NULL);
 
-	u32 vendev = dev->vendor | (dev->device << 16);
+	u32 vendev = (dev->vendor << 16) | dev->device;
 	u32 mapped_vendev = vendev;
 
 	if (map_oprom_vendev)
@@ -45,8 +45,8 @@ struct rom_header *pci_rom_probe(struct device *dev)
 
 	if (!rom_header) {
 		if (vendev != mapped_vendev) {
-			rom_header = cbfs_load_optionrom(mapped_vendev &
-					0xffff, mapped_vendev >> 16, NULL);
+			rom_header = cbfs_load_optionrom(mapped_vendev >> 16,
+					mapped_vendev & 0xffff , NULL);
 		}
 	}
 




More information about the coreboot mailing list