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

Stephen Warren swarren at wwwdotorg.org
Fri Nov 13 17:41:49 CET 2015


On 11/12/2015 09:57 AM, Simon Glass wrote:
> This series converts all Tegra boards to use driver model for PCI. The net
> effect should be no change in functionality.

I applied this series on top of current u-boot/master.

On Jetson TK1 (T124), I see the following errors when U-Boot starts:

> Net:   ERROR: tegra-pcie: failed to power on PHY: -110
>
> at /home/swarren/shared/git_wa/tegra-uboot-flasher/u-boot/drivers/pci/pci_tegra.c:685/tegra_pcie_enable_controller()
> ERROR: tegra-pcie: failed to enable controller
> at /home/swarren/shared/git_wa/tegra-uboot-flasher/u-boot/drivers/pci/pci_tegra.c:997/pci_tegra_probe()
> No ethernet found.

I assume you can investigate that without issue, since you have that board.

On Jetson TX1 (T210), you need to squash the following into the final 
commit of the series:

> diff --git a/drivers/pci/pci_tegra.c b/drivers/pci/pci_tegra.c
> index ecd4313501c4..f88bd0d2858b 100644
> --- a/drivers/pci/pci_tegra.c
> +++ b/drivers/pci/pci_tegra.c
> @@ -1022,6 +1022,7 @@ static const struct udevice_id pci_tegra_ids[] = {
>  	{ .compatible = "nvidia,tegra20-pcie", .data = TEGRA20_PCIE },
>  	{ .compatible = "nvidia,tegra30-pcie", .data = TEGRA30_PCIE },
>  	{ .compatible = "nvidia,tegra124-pcie", .data = TEGRA124_PCIE },
> +	{ .compatible = "nvidia,tegra210-pcie", .data = TEGRA210_PCIE },
>  	{ }
>  };

and even with that fix, PCIe now doesn't work:

> Net:   RTL8169#0
> Warning: RTL8169#0 using MAC address from net device
>
> Hit any key to stop autoboot:  0
> Tegra210 (P2371-2180) # dhcp zImage
> pci_hose_bus_to_phys: invalid physical address
> pci_hose_bus_to_phys: invalid physical address
> pci_hose_bus_to_phys: invalid physical address
> pci_hose_bus_to_phys: invalid physical address
> pci_hose_bus_to_phys: invalid physical address
> pci_hose_bus_to_phys: invalid physical address
> BOOTP broadcast 1
> pci_hose_bus_to_phys: invalid physical address
> BOOTP broadcast 2
> pci_hose_bus_to_phys: invalid physical address
> BOOTP broadcast 3
> pci_hose_bus_to_phys: invalid physical address
...

Perhaps there's some obvious mistake somewhere you can find by code 
inspection. Otherwise, let me know if you need me to debug that.


More information about the U-Boot mailing list