[U-Boot] ARMv8 targets are broken on 2015.04-rc3

Tom Rini trini at konsulko.com
Fri Mar 6 01:59:44 CET 2015


On Thu, Mar 05, 2015 at 03:45:24PM -0800, York Sun wrote:
> 
> 
> On 03/05/2015 03:33 PM, Tom Rini wrote:
> > On Thu, Mar 05, 2015 at 03:27:59PM -0800, York Sun wrote:
> >>
> >>
> >> On 03/05/2015 03:26 PM, Tom Rini wrote:
> >>> On Thu, Mar 05, 2015 at 11:11:16AM -0800, York Sun wrote:
> >>>> Guys,
> >>>>
> >>>> I found these targets are broken on tag 2015.04-rc3
> >>>>
> >>>> ls2085a_emu_D4
> >>>> vexpress_aemv8a
> >>>> vexpress_aemv8a_juno
> >>>> ls2085a_emu
> >>>> vexpress_aemv8a_semi
> >>>> xilinx_zynqmp
> >>>> ls2085a_simu
> >>>>
> >>>> git bisect points to this commit a389531439a7d5cea2829054edcf438dc76e79a9.
> >>>> However it is really caused by this one
> >>>>
> >>>> commit e771a3d538a4fbe235864061ff3c81a8acb11082
> >>>> Author:     Marc Zyngier <marc.zyngier at arm.com>
> >>>> AuthorDate: Sat Jul 12 14:24:07 2014 +0100
> >>>> Commit:     Albert ARIBAUD <albert.u.boot at aribaud.net>
> >>>> CommitDate: Mon Jul 28 17:19:52 2014 +0200
> >>>>
> >>>>     ARM: HYP/non-sec/PSCI: emit DT nodes
> >>>>
> >>>>     Generate the PSCI node in the device tree.
> >>>>
> >>>>     Also add a reserve section for the "secure" code that lives in
> >>>>     in normal RAM, so that the kernel knows it'd better not trip on
> >>>>     it.
> >>>>
> >>>>     Signed-off-by: Marc Zyngier <marc.zyngier at arm.com>
> >>>>     Acked-by: Ian Campbell <ijc at hellion.org.uk>
> >>>>
> >>>> This commit add armv7.h to bootm-fdt.c file.
> >>>>
> >>>> --- a/arch/arm/lib/bootm-fdt.c
> >>>> +++ b/arch/arm/lib/bootm-fdt.c
> >>>> @@ -17,13 +17,14 @@
> >>>>
> >>>>  #include <common.h>
> >>>>  #include <fdt_support.h>
> >>>> +#include <asm/armv7.h>
> >>>>
> >>>> Shouldn't this line be architecture dependent?
> >>>
> >>> Looking at the whole commit, how is this breaking things?
> >>
> >> Shall this include armv7.h regardless which architecture is compiled? This
> >> didn't cause any problem until a recent commit a389531 changes armv7.h.
> > 
> > Yes, the include looks safe.  This is one of those cryptic bisects, can
> > you poke it a bit more and see what's causing the failure inside of the
> > file?
> 
> You mean it is safe to include armv7.h even if I am building armv8 targets?
> When compiling armv8 targets, I have these warnings
> 
> /home/u-boot-upstream-85xx/arch/arm/include/asm/armv7.h: In function
> ‘v7_enable_smp’:
> /home/u-boot-upstream-85xx/arch/arm/include/asm/io.h:72:28: warning: cast to
> pointer from integer of different size [-Wint-to-pointer-cast]
>  #define __arch_getl(a)   (*(volatile unsigned int *)(a))
>                             ^
> /home/u-boot-upstream-85xx/arch/arm/include/asm/io.h:151:31: note: in expansion
> of macro ‘__arch_getl’
>  #define readl(c) ({ u32 __v = __arch_getl(c); __iormb(); __v; })
>                                ^
> /home/u-boot-upstream-85xx/arch/arm/include/asm/armv7.h:105:9: note: in
> expansion of macro ‘readl’
>   temp = readl(address);
>          ^
> 
> The readl was added into armv7.h by commit a389531.

Ah well now we're getting somewhere :)  Let me try and whip up a patch..

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150305/a88caf5d/attachment.sig>


More information about the U-Boot mailing list