[PATCH v2 02/14] crypto: omap-aes: Add useful debug macros
Joe Perches
joe at perches.com
Sun Aug 18 00:22:27 EDT 2013
On Sat, 2013-08-17 at 21:42 -0500, Joel Fernandes wrote:
> When DEBUG is enabled, these macros can be used to print variables in integer
> and hex format, and clearly display which registers, offsets and values are
> being read/written , including printing the names of the offsets and their values.
>
> Note:
> This patch results in a checkpatch error that cannot be fixed.
> ERROR: Macros with multiple statements should be enclosed in a do - while loop
> +#define omap_aes_read(dd, offset) \
> + __raw_readl(dd->io_base + offset); \
> + pr_debug("omap_aes_read(" #offset ")\n");
>
> Using do-while loop will break a lot of code such as:
> ret = omap_aes_read(..);
That's where you use a statement expression macro
#define omap_aes_read(dd, offset) \
({ \
pr_debug("omap_aes_read("omap_aes_read(" #offset ")\n"); \
__raw_readl((dd)->iobase + offset); \
})
More information about the linux-arm-kernel
mailing list