[U-Boot] [PATCH] pci: tegra: Fix port information parsing
Simon Glass
sjg at chromium.org
Tue Jan 20 20:05:40 CET 2015
Hi Sjoerd,
On 20 January 2015 at 10:06, Sjoerd Simons
<sjoerd.simons at collabora.co.uk> wrote:
> commit a62e84d7b1824a202dd incorrectly changed the tegra pci code to the
> new fdtdec pci helpers. To get the device index of the root port, the
> "reg" property should be parsed from the dtb (as was previously the
> case).
>
> With this patch i can successfully network boot my jetson tk1
>
> Signed-off-by: Sjoerd Simons <sjoerd.simons at collabora.co.uk>
> ---
> drivers/pci/pci_tegra.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
Can you also please take a look at this patch?
http://patchwork.ozlabs.org/patch/430815/
It tries to support both options.
>
> diff --git a/drivers/pci/pci_tegra.c b/drivers/pci/pci_tegra.c
> index f9e05ad..67b5fdf 100644
> --- a/drivers/pci/pci_tegra.c
> +++ b/drivers/pci/pci_tegra.c
> @@ -459,7 +459,6 @@ static int tegra_pcie_parse_port_info(const void *fdt, int node,
> unsigned int *lanes)
> {
> struct fdt_pci_addr addr;
> - pci_dev_t bdf;
> int err;
>
> err = fdtdec_get_int(fdt, node, "nvidia,num-lanes", 0);
> @@ -470,13 +469,13 @@ static int tegra_pcie_parse_port_info(const void *fdt, int node,
>
> *lanes = err;
>
> - err = fdtdec_get_pci_bdf(fdt, node, &addr, &bdf);
> + err = fdtdec_get_pci_addr(fdt, node, 0, "reg", &addr);
> if (err < 0) {
> error("failed to parse \"reg\" property");
> return err;
> }
>
> - *index = PCI_DEV(bdf) - 1;
> + *index = PCI_DEV(addr.phys_hi) - 1;
>
> return 0;
> }
> --
> 2.1.4
>
Regards,
Simon
More information about the U-Boot
mailing list