[U-Boot] [PATCH] pci: restore initialization for DM_PCI

Thierry Reding
2016-01-22T15:49:59Z

On Thu, Jan 21, 2016 at 04:35:33PM -0700, Stephen Warren wrote:
> From: Stephen Warren <swarren@nvidia.com>
>
> PCI controllers should be enumerated at startup so that PCI devices
> such as Ethernet controllers are available at startup. Fix board_init_r()
> not to skip calling pci_init() when CONFIG_DM_PCI is defined, and provide
> an implementation of pci_init() for the DM case.
>
> Fixes: 96350f729c42 ("dm: tegra: net: Convert tegra boards to driver model
> for Ethernet")
> Signed-off-by: Stephen Warren <swarren@nvidia.com>
> ---
> I'm not sure if relying on the side-effects of calling
> uclass_{first,ext}_device is the correct approach; is there a more explicit
> way to probe all PCI controllers?
>
> Arguably, perhaps we should introduce a "pci start" command instead of
> this change to be consistent with e.g. USB. However, that would be a
> regression relative to earlier versions of U-Boot.

I think a command should work fine. Given that some boards might rely on
the existing behaviour, perhaps this could be controlled via a
configuration option. Another alternative might be to move the call to
pci_init() into board files. Then boards can choose to integrate the new
"pci start" command into their boot commands and remove the pci_init()
call at that point to preserve compatibility.

> ---
> common/board_r.c | 2 --
> drivers/pci/pci-uclass.c | 15 +++++++++++++++
> 2 files changed, 15 insertions(+), 2 deletions(-)

Either way, this change restores network support on Jetson TK1, so

Tested-by: Thierry Reding <treding@nvidia.com>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160122/2927e641/attachment.sig>