[U-Boot] [PATCH 07/11] arm: socfpga: sysmgr: Fix casting warning when enabling ARM64

Chin Liang See clsee at altera.com
Wed Sep 7 15:31:02 CEST 2016


On Tue, 2016-09-06 at 14:12 +0200, Marek Vasut wrote:
> On 09/06/2016 11:41 AM, Chin Liang See wrote:
> > On Mon, 2016-09-05 at 18:02 +0200, Marek Vasut wrote:
> > > On 08/22/2016 05:02 PM, Chin Liang See wrote:
> > > > Fix casting warning to pointer from integer of different size
> > > > when enabling ARM64 support
> > > 
> > > What sort of error did you observe ?
> > 
> > The warning is triggered as ARM64 has build flag -Wpointer-to-int
> > -cast
> > and similar. Here is the build error log
> > 
> > arch/arm/mach-socfpga/system_manager.c: In function
> > sysmgr_pinmux_init:
> >                                                                    
> >     
> >           arch/arm/mach-socfpga/system_manager.c:59:18: warning:
> > cast
> > from pointer to integer of different size [-Wpointer-to-int-cast]  
> >     
> >                           uint32_t regs = (uint32_t)&sysmgr_regs
> > ->emacio[0];                                                       
> >     
> >                                                               ^    
> >     
> >                                                                    
> >     
> >                                                           In file
> > included from arch/arm/mach-socfpga/system_manager.c:8:0:          
> >     
> >                                                                    
> >     
> >       ./arch/arm/include/asm/io.h:78:29: warning: cast to pointer
> > from
> > integer of different size [-Wint-to-pointer-cast]                  
> >     
> >                     #define __arch_putl(v,a)  (*(volatile unsigned
> > int
> > *)(a) = (v))                                                       
> >     
> 
> I see ... Except the code below does regs += sizeof(regs); , which in
> the original case increments the address by 4 , but with your change,
> the increment would be 16 . So this patch breaks things.
> 

Relook back, this portion is not being used and hence not being
validated. Will put #ifdef in place to skip out these code.

Thanks
Chin Liang


> btw it's not worth reposting patches while there is still ongoing
> discussion.
> 


More information about the U-Boot mailing list