On Mon, 2013-10-07 at 13:16 +0300, Claudiu Manoil wrote:
> On 10/5/2013 5:31 PM, Timur Tabi wrote:
> > On Fri, Oct 4, 2013 at 11:25 AM, Claudiu Manoil
> > <[email protected]> wrote:
> >
> >> [v3] declaring the BDs as __iomem to avoid casting submitted:
> >> http://patchwork.ozlabs.org/patch/280664/
> >
> > + out_be32(&regs->tbase, (u32)&txbd[0]);
> > + out_be32(&regs->rbase, (u32)&rxbd[0]);
> >
> > &rxbd[0] is a virtual address.
> >
> > Doesn't rbase require a physical address?  You're assuming that virt == 
> > phys.
> >
> >
> 
> These SoCs don't feature IOMMU so it cannot be a virtual address.
> I think you're suggesting that virt_to_phys() should be used
> to fix that, right?  However, virt_to_phys() is equivalent to that
> simple cast in most cases as there's no CONFIG_PHYS_64BIT for the
> platforms with eTSEC. I'm actually not sure if there's a platform
> with eTSEC for which that cast wouldn't be enough.

There is CONFIG_PHYS_64BIT for most eTSEC SoCs, but since this is a RAM
address rather than MMIO (and U-Boot only uses a static identity mapping
of the low 2G of RAM), it doesn't matter, though ideally virt_to_phys
should still be used.

-Scott



_______________________________________________
U-Boot mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to