[U-Boot-Users] [PATCH 1/3] Initial OneNAND support

Kyungmin Park kmpark at infradead.org
Thu Mar 15 02:51:59 CET 2007


> > 
> > > Indentation not by TABs, trailing white space.
> > 
> > I changed it using 's/^  /^ /g', 's/ $/$/g'. 
> 
> Which is definitely not good enough.
> 
> > Architecture optimized copy is fast about 3 times in OMAP 
> 16xx series 
> > (ARM
> > 9 core) in U-Boot
> 
> OK. Will the code work for non-ARM architectures?

Maybe not. I'm not famiar with other architectures.
Now most boards which use OneNAND are ARM Arch. so I only consider it.
Sorry. We have to consider other architetures.

We can only use it in ARM by adding __ARM__ definition in onenand_base.c,
otherwise use its own memcpy

+#ifdef __ARM__
extern void memcpy32(void *, void *, size_t);

static void *memcpy(void *dest, const void *src, size_t count)
{
        if (count < 32) {
                unsigned short *_s = (unsigned short *) (src);
                unsigned short *_d = (unsigned short *) (dest);
                count >>= 1;
                while (count--)
                        *_d++ = *_s++;
                return _d;
        }

        memcpy32(dest, src, count);

        return (void *) count;
}
+#endif

Thank you,
Kyungmin Park





More information about the U-Boot mailing list