On Tue, 2011-05-24 at 10:25 +0530, Prashant Bhole wrote:

> Fixed the problem by soft resetting the PCIe port in the function
> ppc460ex_pciex_port_init_hw().
> Is it a right thing to do?
> Following is the patch for kernel 2.6.38.4:
> --------------------------------------------------------------------------------------
> --- linux-2.6.38.4/arch/powerpc/sysdev/ppc4xx_pci.c.orig      2011-05-24
> 10:02:38.000000000 +0530
> +++ linux-2.6.38.4/arch/powerpc/sysdev/ppc4xx_pci.c   2011-05-24
> 10:07:17.000000000 +0530
> @@ -876,6 +876,20 @@
>       u32 val;
>       u32 utlset1;
> 
> +     switch (port->index)
> +     {
> +             case 0:
> +                     mtdcri(SDR0, PESDR0_460EX_PHY_CTL_RST, 0x0);
> +                     mdelay(10);
> +                     break;
> +             case 1:
> +                     mtdcri(SDR0, PESDR1_460EX_PHY_CTL_RST, 0x0);
> +                     mdelay(10);
> +                     break;
> +             default:
> +                     break;
> +     }
> +
>       if (port->endpoint)
>               val = PTYPE_LEGACY_ENDPOINT << 20;
>       else
> --------------------------------------------------------------------------------------

Well, it's odd that you'd have to do that, maybe something the
bootloader is doing ?

I personally don't mind but I'd like Stefan and/or Tirumala opinion on
this.

Cheers,
Ben.


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to