
On Fri, 18 Jan 2013 09:07:32 +0100 Holger Brunck holger.brunck@keymile.com wrote:
On 01/18/2013 01:23 AM, Kim Phillips wrote:
On Thu, 17 Jan 2013 13:47:50 +0100 Holger Brunck holger.brunck@keymile.com wrote:
+int piggy_present(void) +{
- struct km_bec_fpga *base =
(struct km_bec_fpga *)CONFIG_SYS_KMBEC_FPGA_BASE;
- return in_8(&base->bprth) & PIGGY_PRESENT;
+}
this change produces two new sparse warnings:
km83xx.c:137:22: warning: incorrect type in argument 1 (different address spaces) km83xx.c:137:22: expected unsigned char const volatile [noderef] asn:2*addr km83xx.c:137:22: got unsigned char *<noident> km83xx.c:132:5: warning: symbol 'piggy_present' was not declared. Should it be static?
so make the function static, and add __iomem annotation to the assignment of 'base'.
ok will do. Just out of curiosity which compiler throws these warnings? I use powerpc-gcc (GCC) 4.7.2 and don't see them.
it's not a compiler, it's sparse - Linus' kernel sanity checking tool. Get it from here:
http://git.kernel.org/?p=devel/sparse/sparse.git;a=summary
build it, add it to your path, and in u-boot, use make C=1 or ./MAKEALL -C/--check.
Kim