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

Simon Glass sjg at chromium.org
Fri Nov 13 19:14:05 CET 2015


Hi Stephen,

On 13 November 2015 at 09:41, Stephen Warren <swarren at wwwdotorg.org> wrote:
> 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.

It had a problem with the PMIC (I overwrote the contents) so I suspect
I get that error always. But I'll try it.

>
> 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.

I'll take a look and let you know if I get stuck.

Regards,
Simon


More information about the U-Boot mailing list