[U-Boot] Instruction WFI gives error at build time.

Nick Thompson nick.thompson at ge.com
Thu Sep 22 11:40:53 CEST 2011


On 22/09/11 10:17, Sandeep Kumar wrote:
> Hi,
>
>  
>
> I am adding support for a MPcore SoC in Uboot. For that secondary cores
> need to execute WFI (wait for interrupt) instruction.
>
> But while building the source I am getting the following error:
>
>  
>
> arm-none-eabi-gcc   -D__ASSEMBLY__ -g  -Os   -fno-common -ffixed-r8
> -msoft-float  -D__KERNEL__ -DCONFIG_SYS_TEXT_BASE=0x60800000
> -I/media/disk/work/u-boot_ct11mpc_osi_evs/include -fno-builtin
> -ffreestanding -nostdinc -isystem
> /home/sandeepk/CodeSourcery/Sourcery_G++_Lite/bin/../lib/gcc/arm-none-ea
> bi/4.5.2/include -pipe  -DCONFIG_ARM -D__ARM__ -marm  -mabi=aapcs-linux
> -mno-thumb-interwork -march=armv5   -o lowlevel_init.o lowlevel_init.S
> -c
>
> lowlevel_init.S: Assembler messages:
>
> lowlevel_init.S:92: Error: missing expression -- `swi'

I'm not sure this is a u-boot question and you didn't show your code (I assume
you changed the file).

'swi' is not a WFI. swi takes a expression - the software interrupt number you
want to pass to the software interrupt exception routine. Your routine is free
to ignore that number, but a 'swi' must have one to have the correct syntax.

WFI on ARM SoC's is usually some kind of register write, specific to that SoC.

Nick.

> make[1]: *** [lowlevel_init.o] Error 1
>
> make[1]: Leaving directory
> `/media/disk/work/u-boot_ct11mpc_osi_evs/board/armltd/versatile_11mpc'
>
> make: *** [board/armltd/versatile_11mpc/libversatile_11mpc.o] Error 2
>
>  
>
> How can I implement this instruction or how can I directly insert the
> hex code for this instruction.
>
>  
>
> Regards,
>
> Sandeep
>
>  
>
>  
>
>
>
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot



More information about the U-Boot mailing list