[U-Boot] [PATCH 00/25] dm: Conversion of code to the new driver model PCI API

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


PCI devices should be accessed just by their device pointer (which is
struct udevice *). At present the hose (PCI controller) is often passed
along with a pci_dev_t (bus/device/function) value.

With driver model this is not necessary but most PCI code has not been
converted over to use this new API yet.

This series converts over various drivers with the goal of moving both Tegra
and x86 to use PCI fully for driver model. In addition, both move to use
driver model for Ethernet, which on x86 is related.

The process is not complete with this series. Remaining are the Intel E1000
Ethernet driver and various x86-specific things like ICH SPI.


Simon Glass (25):
  dm: pci: Mark legacy files as such
  dm: pci: Use driver model PCI API in auto-config
  dm: pci: Add a driver-model version of pci_find_device()
  dm: pci: scsi: Use driver-model PCI API
  dm: pci: Add a driver-model version of pci_find_class()
  dm: pci: Add a function to read a PCI BAR
  dm: serial: Convert ns16550 driver to use driver model PCI API
  dm: x86: ivybridge: Convert graphics init to use DM PCI API
  dm: Convert bios_interrupts to use DM PCI API
  dm: pci: video: Convert video and pci_rom to use DM PCI API
  dm: x86: pci: Adjust bios_run_on_x86() to use the DM PCI API
  dm: pci: Drop the old version of pci_find_device()
  dm: pci: Drop the old version of pci_find_class()
  dm: tegra: net: Convert tegra boards to driver model for Ethernet
  dm: test: Convert PCI tests to use the DM PCI API
  dm: x86: Convert x86 PCI functions over to DM PCI API
  dm: pci: Add driver model API functions for address mapping
  dm: net: Convert rtl8169 to use DM PCI API
  dm: pci: Switch to DM API for PCI address mapping
  dm: ahci: Convert to use new DM PCI API
  dm: usb: Convert echi-pci to use new DM PCI API
  dm: Convert PCI MMC over to use DM PCI API
  pci: Tidy up comments in pci_bind_bus_devices()
  dm: net: usb: Refactor mcs7830 driver ready for DM conversion
  dm: net: usb: Convert mcs7830 driver to support driver model

 arch/arm/mach-tegra/Kconfig                   |   1 +
 arch/x86/cpu/baytrail/valleyview.c            |   4 +-
 arch/x86/cpu/ivybridge/bd82x6x.c              |   6 +-
 arch/x86/cpu/ivybridge/gma.c                  |  15 +-
 arch/x86/cpu/pci.c                            |  35 ++-
 arch/x86/cpu/quark/quark.c                    |   4 +-
 arch/x86/cpu/queensbay/topcliff.c             |   4 +-
 arch/x86/include/asm/arch-ivybridge/bd82x6x.h |   3 +-
 arch/x86/lib/bios.c                           |   3 +-
 arch/x86/lib/bios_interrupts.c                |  78 +++++-
 board/compulab/trimslice/trimslice.c          |   8 -
 board/nvidia/cardhu/cardhu.c                  |   6 -
 board/nvidia/jetson-tk1/jetson-tk1.c          |   6 -
 board/nvidia/p2371-2180/p2371-2180.c          |   6 -
 board/toradex/apalis_t30/apalis_t30.c         |   6 -
 common/cmd_scsi.c                             |  14 +-
 drivers/block/ahci.c                          |  62 ++++-
 drivers/mmc/pci_mmc.c                         |  15 +-
 drivers/net/rtl8169.c                         |  88 ++++--
 drivers/pci/Makefile                          |   6 +-
 drivers/pci/pci-uclass.c                      | 176 ++++++++++--
 drivers/pci/pci.c                             |   5 +-
 drivers/pci/pci_auto.c                        | 387 ++++++++++++++++++++++++++
 drivers/pci/pci_auto_old.c                    |  54 +---
 drivers/pci/pci_common.c                      |  95 +------
 drivers/pci/pci_compat.c                      |  93 +++++++
 drivers/pci/pci_rom.c                         |  29 +-
 drivers/serial/ns16550.c                      |   3 +-
 drivers/usb/eth/mcs7830.c                     | 370 ++++++++++++++++--------
 drivers/usb/host/ehci-pci.c                   |  43 ++-
 drivers/video/vesa_fb.c                       |   6 +-
 include/ahci.h                                |   4 +
 include/bios_emul.h                           |   2 +-
 include/fdtdec.h                              |  23 +-
 include/mmc.h                                 |   6 +-
 include/pci.h                                 | 101 ++++++-
 include/pci_rom.h                             |   2 +-
 lib/fdtdec.c                                  |  55 +---
 test/dm/pci.c                                 |  15 +-
 39 files changed, 1335 insertions(+), 504 deletions(-)
 create mode 100644 drivers/pci/pci_auto.c

-- 
2.6.0.rc2.230.g3dd15c0



More information about the U-Boot mailing list