[U-Boot] [PATCH v4 0/8] dm: pci: tegra: Convert Tegra PCI to driver model

Simon Glass
2015-11-14T04:19:33Z

This series converts all Tegra boards to use driver model for PCI. The net
effect should be no change in functionality.

A few additional features are added to make this possible:
- Helper functions to support accessing 8- and 16-bit values within a 32-bit
word
- Fixing a build error for CONFIG_CMD_PCI_ENUM
- Decoding the PCI ranges property such that configuration ranges are
ignored
- Supporting bus-master devices on boards where RAM does not start at 0

This series is tested on beaver. It is available at u-boot-dm/tegra-working.

Changes in v4:
- Fix Kconig typo in commit message
- Drop CONFIG_CMD_PCI_ENUM for p2371-2180 also
- Fix merge conflict resolution error in v3
- Add compatible string for T210 (from Stephen Warren)

Changes in v3:
- Rebase onto tegra/master
- Enable DM_PCI for Tegra 210 family too

Changes in v2:
- Update commit message to explain that the feature is not important
- Drop the feature from tegra boards
- Rename 'addr' to 'size'
- Correct logic for use of gd->pci_ram_top
- Update commit message to mention future work
- Use the device_is_on_pci_bus() API
- Leave pci_skip_dev() at the bottom of the file to reduce the diff size

Simon Glass (8):
dm: tegra: pci: Move CONFIG_PCI_TEGRA to Kconfig
dm: pci: Avoid a driver model build error with CONFIG_CMD_PCI_ENUM
dm: pci: Set up the SDRAM mapping correctly
dm: pci: Support decoding ranges with duplicate entries
dm: pci: Add functions to emulate 8- and 16-bit access
dm: pci: Add a function to get the controller for a bus
dm: pci: Add a function to find the regions for a PCI bus
dm: tegra: pci: Convert tegra boards to driver model for PCI

arch/arm/mach-tegra/Kconfig | 2 +
common/cmd_pci.c | 4 +
configs/apalis_t30_defconfig | 1 +
configs/beaver_defconfig | 1 +
configs/cardhu_defconfig | 1 +
configs/jetson-tk1_defconfig | 1 +
configs/p2371-2180_defconfig | 1 +
configs/trimslice_defconfig | 1 +
drivers/pci/Kconfig | 10 +
drivers/pci/pci-uclass.c | 105 +++++++++-
drivers/pci/pci_tegra.c | 467 ++++++++++++++-----------------------------
include/configs/apalis_t30.h | 2 -
include/configs/beaver.h | 2 -
include/configs/cardhu.h | 2 -
include/configs/jetson-tk1.h | 2 -
include/configs/p2371-2180.h | 2 -
include/configs/trimslice.h | 2 -
include/fdtdec.h | 4 -
include/pci.h | 51 +++++
lib/fdtdec.c | 4 -
20 files changed, 319 insertions(+), 346 deletions(-)

--
2.6.0.rc2.230.g3dd15c0