Message ID | 4EADFD6C.4070502@renesas.com |
---|---|
State | Superseded |
Headers | show |
On Sunday 30 October 2011 21:44:13 Yoshihiro Shimoda wrote: > In the latest U-Boot, the include/common.h includes the asm/cache.h. > So, the dcache_invalid_range() in the arch/sh/include/asm/cache.h is > multiple defination. i posted a fix for this already: http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/114290 i don't think we want to go this route with inline markings since it bloats the code ... -mike
2011/10/31 11:25, Mike Frysinger wrote: > On Sunday 30 October 2011 21:44:13 Yoshihiro Shimoda wrote: >> In the latest U-Boot, the include/common.h includes the asm/cache.h. >> So, the dcache_invalid_range() in the arch/sh/include/asm/cache.h is >> multiple defination. > > i posted a fix for this already: > http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/114290 > > i don't think we want to go this route with inline markings since it bloats > the code ... Thank you for your point. I should have looked at the mailing list more carefully before I submitted my patch... Thanks, Yoshihiro Shimoda
diff --git a/arch/sh/include/asm/cache.h b/arch/sh/include/asm/cache.h index 6ffab4d..978cd8c 100644 --- a/arch/sh/include/asm/cache.h +++ b/arch/sh/include/asm/cache.h @@ -10,7 +10,7 @@ int cache_control(unsigned int cmd); struct __large_struct { unsigned long buf[100]; }; #define __m(x) (*(struct __large_struct *)(x)) -void dcache_wback_range(u32 start, u32 end) +static inline void dcache_wback_range(u32 start, u32 end) { u32 v; @@ -21,7 +21,7 @@ void dcache_wback_range(u32 start, u32 end) } } -void dcache_invalid_range(u32 start, u32 end) +static inline void dcache_invalid_range(u32 start, u32 end) { u32 v;
In the latest U-Boot, the include/common.h includes the asm/cache.h. So, the dcache_invalid_range() in the arch/sh/include/asm/cache.h is multiple defination. sh4-linux-gnu-ld -e 0x8FFC0000 --defsym reloc_dst=0x8FFC0000 -r -o libsh4.o cpu.o interrupts.o watchdog.o cache.o start.o interrupts.o: In function `dcache_wback_range': /home/u-boot/u-boot-sh/include/asm/cache.h:14: multiple definition of `dcache_wback_range' cpu.o:/home/shimoda/development/u-boot/u-boot-sh/include/asm/cache.h:14: first defined here interrupts.o: In function `dcache_invalid_range': /home/u-boot/u-boot-sh/include/asm/cache.h:25: multiple definition of `dcache_invalid_range' cpu.o:/home/shimoda/development/u-boot/u-boot-sh/include/asm/cache.h:25: first defined here ... Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> --- arch/sh/include/asm/cache.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)