[U-Boot] [PATCH v6 03/12] nand: add Faraday FTNANDC021 NAND controller support

Scott Wood
2013-07-09T01:48:45Z

On 07/08/2013 08:42:01 PM, Kuo-Jung Su wrote:
> 2013/7/9 Scott Wood <scottwood@freescale.com>:
> > On 07/03/2013 10:40:35 PM, Kuo-Jung Su wrote:
> >>
> >> +#ifndef __ARMEB__
> >> + put_unaligned_le32(readl(&regs->dr), buf + off);
> >> +#else
> >> + put_unaligned_be32(readl(&regs->dr), buf + off);
> >> +#endif
> >
> >
> > Can't you just use plain put_unaligned()? Be sure to cast buf +
> off to a
> > 32-bit pointer.
> >
>
> Ummm... I think it'll be better to replace put_unaligned() with
> memcpy(),
> just like what your suggested before.
>
> So that we don't even have to worry about this endian issue and
> pointer cast.

OK. BTW, it'd be nice if there were a native-endian, fixed-size
put_unaligned32() -- having a u8 pointer seems like it'd be a common
situation when dealing with unaligned things (and it's what the
underlying implementation takes).

-Scott