[U-Boot] [PATCH 1/4] sunxi: nand: Add basic sunxi NAND driver with DMA support

Marek Vasut marex at denx.de
Fri Jul 17 00:06:29 CEST 2015


On Thursday, July 16, 2015 at 11:36:08 PM, Scott Wood wrote:
> On Thu, 2015-07-16 at 23:26 +0200, Marek Vasut wrote:
> > On Thursday, July 16, 2015 at 11:15:58 PM, Scott Wood wrote:
> > 
> > [...]
> > 
> > > > +/* temporary buffer in internal ram */
> > > > +#ifdef CONFIG_SPL_BUILD
> > > > +/* in SPL temporary buffer cannot be @ 0x0 */
> > > > +unsigned char temp_buf[SPL_WRITE_SIZE] __aligned(0x10)
> > > > __section(".text#"); +#else
> > > > +/* put temporary buffer @ 0x0 */
> > > > +unsigned char *temp_buf = (unsigned char *)0x0;
> > > > +#endif
> > > 
> > > If 0x0 is the address of an SRAM, its address should be symbolically
> > > defined. Also consider mapping it to a different virtual address, to
> > > avoid potential compiler mischief.
> > 
> > The DMA I believe accesses it via PA anyway, so mapping it elsewhere
> > would only confuse everyone who's hacking on the driver. Just my 5 cents
> > ;-)
> 
> Hey, if it wakes people up to the fact that they ought to be using
> virt_to_phys() (or better yet, something that distinguishes DMA addresses
> from physical), great! :-)

Not really useful here, but whatever.

> And yes, people go on to do the same "everything is u32" crap in
> non-platform- specific files.  Just look at drivers/block/ahci.c.

Errr, this file is platform specific.

Best regards,
Marek Vasut


More information about the U-Boot mailing list