[U-Boot] [PATCH 1/2] common.h: Introduce DEFINE_CACHE_ALIGN_BUFFER

Marek Vasut
2012-07-20T11:31:47Z

Dear Mike Frysinger,

> On Saturday 07 July 2012 23:08:14 Marek Vasut wrote:
> > +/*
> > + * DEFINE_CACHE_ALIGN_BUFFER() is similar to ALLOC_CACHE_ALIGN_BUFFER,
> > but it's + * purpose is to allow allocating aligned buffers outside of
> > function scope. + * Usage of this macro shall be avoided or used with
> > extreme care! + */
> > +#define DEFINE_CACHE_ALIGN_BUFFER(type, name, size)
\
> > + static char __##name[roundup(size * sizeof(type), ARCH_DMA_MINALIGN)] \
> > + __aligned(ARCH_DMA_MINALIGN); \
> > + \
> > + static type *name = (type *)__##name;
>
> how is this any different from doing:
> static __u8 foo[1234] __aligned(ARCH_DMA_MINALIGN);
> -mike

Does __aligned() align both start of the buffer downwards and end of it upwards
?

Best regards,
Marek Vasut