[U-Boot] ti: ARM: svc: Question about switching to am57xx HYP mode.
Keerthy
j-keerthy at ti.com
Thu Mar 23 04:03:45 UTC 2017
On Wednesday 22 March 2017 07:55 PM, Lukasz Majewski wrote:
> Dear All,
>
> I do have a question regarding switching from SVC to HYP mode on AM57xx
> SoC.
>
> Just after going out of reset (room bootloader):
> ------------------------------------------------
>
> Breakpoint 1, _start () at arch/arm/lib/vectors.S:54
> 54 b reset
> (gdb) mo info
> Core number : 0
> Core state : debug mode (ARM)
> Debug entry cause : Breakpoint
> Current PC : 0x40300000
> Current CPSR : 0x400000d3 (Supervisor)
> Current SPSR : 0x00000000
> (gdb)
>
> Here the A bit in CPSR is cleared - the "Imprecise Data Abort mask" is
> disabled.
>
> Then we enter the HYP mode (due to LPAE u-boot support):
> Breakpoint 39, switch_to_hypervisor () at
> arch/arm/cpu/armv7/omap-common/lowlevel_init.S:35
>
> After end of this ASM procedure we got following CPSR for HYP mode:
>
> Breakpoint 41, switch_to_hypervisor_ret () at
> arch/arm/cpu/armv7/start.S:57 57 and r1, r0,
> #0x1f @ mask mode bits (gdb) mo info
> Core number : 0
> Core state : debug mode (ARM)
> Debug entry cause : Breakpoint
> Current PC : 0x4030005c
> Current CPSR : 0x000001da (Hyp)
> Current SPSR : 0x00000010
> (gdb)
>
> And here the A bit "Imprecise Abort Bit" [8] is masked.
>
> Why such operation is performed in the SMC call (which switches to HYP)?
>
> I could try to disable it by hand (cpsie A), but I'm not sure if this
> has no "side effects".
Hi Lukasz,
This seems to be the default behavior in the ROM Code when we do an SMC
call which switches to HYP mode.
A, bit[8] Asynchronous abort mask bit.
I, bit[7]
IRQ mask bit.
F, bit[6] FIQ mask bit.
Are set which means they are masked.
>From the interaction i had with the ROM code team you can unmask the A
bit/bit[8] if needed.
Regards,
Keerthy
>
>
>
>
> Best regards,
>
> Lukasz Majewski
>
> --
>
> DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
>
More information about the U-Boot
mailing list