This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

ARMv7-A: What is "Fault not on a stage 2 translation for a stage 1 translation table walk"?

Hi all,

I'm trying to boot Linux on my hypervisor like environment.

In booting process, unexpected hyper trap was occurred and became hyp mode.

In hyp mode, the Hyp Syndrome Register (HSR) value is 0x93830006.

According to the manual, this meant "Fault not on a stage 2 translation for a stage 1 translation table walk" (EC is 0x24 and ISS[7] is 0).

I checked the page table, but it seems no problem.

Why is this hyp exception occured?

Thanks,

Takumi

Parents
  • I supplement it.

    I use Cortex-A7 dual core board.

    Linux start in Non Secure PL1 mode.

    According to the ARMv7-A Architecture Reference Manual B1.8, data abort may be taken to Hyp mode if HCR.TGE==1 or HCR.AMO==1 or HDCR.TDE==1 or Stage 2 abort.

    Although I cleared these bits, hyp exception was occurred and HSR says this is not stage 2 abort.

    I cannot understand why this hyp trap was occurred.

    Thanks,

    Takumi

Reply
  • I supplement it.

    I use Cortex-A7 dual core board.

    Linux start in Non Secure PL1 mode.

    According to the ARMv7-A Architecture Reference Manual B1.8, data abort may be taken to Hyp mode if HCR.TGE==1 or HCR.AMO==1 or HDCR.TDE==1 or Stage 2 abort.

    Although I cleared these bits, hyp exception was occurred and HSR says this is not stage 2 abort.

    I cannot understand why this hyp trap was occurred.

    Thanks,

    Takumi

Children