On Tue, Aug 30, 2011 at 4:45 AM, Lukasz Majewski <l.majew...@samsung.com> wrote: > ALLOC_CACHE_ALIGN_BUFFER shall be used in functions, which are using > stack allocated buffers for DMA transfers. > > Signed-off-by: Lukasz Majewski <l.majew...@samsung.com> > Signed-off-by: Kyungmin Park <kyungmin.p...@samsung.com> > CC: Albert ARIBAUD <albert.u.b...@aribaud.net> > --- > Changes for v2: > - ./include/cache.h has been removed and replaced with > simpler macro added to ./include/common.h > --- > include/common.h | 5 +++++ > 1 files changed, 5 insertions(+), 0 deletions(-) > > diff --git a/include/common.h b/include/common.h > index 12a1074..5bc3af8 100644 > --- a/include/common.h > +++ b/include/common.h > @@ -767,6 +767,11 @@ int cpu_release(int nr, int argc, char * const argv[]); > #define ALIGN(x,a) __ALIGN_MASK((x),(typeof(x))(a)-1) > #define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask)) > > +#define ALLOC_CACHE_ALIGN_BUFFER(type, name, size) \ > + char *__##name[size + CONFIG_SYS_CACHELINE_SIZE]; \
This should be a "char" array, not a "char *" array. And the size should be "size + CONFIG_SYS_CACHELINE_SIZE - 1". Thanks, Anton > + type *name = ALIGN(((typeof(CONFIG_SYS_CACHELINE_SIZE))(__##name)),\ > + (CONFIG_SYS_CACHELINE_SIZE)); > + > /* Pull in stuff for the build system */ > #ifdef DO_DEPS_ONLY > # include <environment.h> > -- > 1.7.2.3 > > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot