[U-Boot] [PATCH 11/25] dm: x86: pci: Adjust bios_run_on_x86() to use the DM PCI API

Simon Glass sjg at chromium.org
Tue Nov 17 04:53:49 CET 2015


This function should take a struct udevice rather than pci_dev_t. Update it.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 arch/x86/lib/bios.c   | 3 ++-
 drivers/pci/pci_rom.c | 2 +-
 include/bios_emul.h   | 2 +-
 3 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/x86/lib/bios.c b/arch/x86/lib/bios.c
index 1d75cfc..2ad7219 100644
--- a/arch/x86/lib/bios.c
+++ b/arch/x86/lib/bios.c
@@ -242,9 +242,10 @@ static void vbe_set_graphics(int vesa_mode, struct vbe_mode_info *mode_info)
 	vbe_set_mode(mode_info);
 }
 
-void bios_run_on_x86(pci_dev_t pcidev, unsigned long addr, int vesa_mode,
+void bios_run_on_x86(struct udevice *dev, unsigned long addr, int vesa_mode,
 		     struct vbe_mode_info *mode_info)
 {
+	pci_dev_t pcidev = pci_get_bdf(dev);
 	u32 num_dev;
 
 	num_dev = PCI_BUS(pcidev) << 8 | PCI_DEV(pcidev) << 3 |
diff --git a/drivers/pci/pci_rom.c b/drivers/pci/pci_rom.c
index 6e3adf6..1a857c5 100644
--- a/drivers/pci/pci_rom.c
+++ b/drivers/pci/pci_rom.c
@@ -336,7 +336,7 @@ int pci_run_vga_bios(struct udevice *dev, int (*int15_handler)(void),
 #ifdef CONFIG_X86
 		bios_set_interrupt_handler(0x15, int15_handler);
 
-		bios_run_on_x86(pci_get_bdf(dev), (unsigned long)ram, vesa_mode,
+		bios_run_on_x86(dev, (unsigned long)ram, vesa_mode,
 				&mode_info);
 #endif
 	}
diff --git a/include/bios_emul.h b/include/bios_emul.h
index 3643b82..80979ed 100644
--- a/include/bios_emul.h
+++ b/include/bios_emul.h
@@ -42,7 +42,7 @@ struct vbe_mode_info;
 int BootVideoCardBIOS(pci_dev_t pcidev, BE_VGAInfo **pVGAInfo, int cleanUp);
 
 /* Run a BIOS ROM natively (only supported on x86 machines) */
-void bios_run_on_x86(pci_dev_t pcidev, unsigned long addr, int vesa_mode,
+void bios_run_on_x86(struct udevice *dev, unsigned long addr, int vesa_mode,
 		     struct vbe_mode_info *mode_info);
 
 /**
-- 
2.6.0.rc2.230.g3dd15c0



More information about the U-Boot mailing list