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

CA72 can't access ICC_IAR1_EL1 at EL1

I can access ICC_IAR1_EL1 at EL3 using SP_EL0, however, after I switch EL3 to EL1 non-secure, I can't read IIC_IAR1_EL1 anymore, which doesn't make sense. 

Can anybody help here? much appreciated.  

__func__011000 EC=MSR, MRS, or System instruction, that isn't reported using EC 0x00/0x01/0x07Unhandled exception 0x18(24) from CA72_0 to CA72_0
EXC number:0x00000018
EXC class: 0x00000018
FaultReg: 0x00000000
StatusPrg: 0x80000005
PC: 0x00000000 0xA0007F78
FaultReg: 0xD538CC00
StatusPrg: 0x00303019
Exception class is MSR_MRS
These report exceptions from MSR, MRS, or System instructions
Instruction syndrome MSR/MRS:
Op0: 0x00000000
Op2: 0x00000000
Op1: 0x00000000
CRn: 0x00000000
Rt : 0x00000000
CRm: 0x00000018
dir: 0x00000001

Parents
  • Hi Martin,

    Much appreciated for guiding me how to understand the accessor! I eventually figure out what's happening.

    My ICC_IAR1_EL1 reading is trapped as below. 

    After I setting SCR_EL3 from 0xc0f to 0xc0d (setting IRQ from 1 to 0, and setting NS from 0 to 1), I can read out ICC_IAR1_EL1_NS successfully. 

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    icc_sre_el1 is 0x7
    icc_sre_el3 is 0x7

    SCR_EL3 is 0xc0e

    SCR_EL3 is 0xc0d
    icc_sre_el1 is 0x7
    ICC IAR1 EL1 is 0x3ff
    enter non-secure world
    transition_to_lower_el :Current EL is EL2

    HCR_EL2 is 0x0
    transition_to_lower_el :Current EL is EL1

    current EL is 0x4
    ICC IAR1 EL1 is 0x3ff

    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    BTW, I am wondering if I go into "UNDEFINED" what's going to happen? system crash? thanks in advance. 

Reply
  • Hi Martin,

    Much appreciated for guiding me how to understand the accessor! I eventually figure out what's happening.

    My ICC_IAR1_EL1 reading is trapped as below. 

    After I setting SCR_EL3 from 0xc0f to 0xc0d (setting IRQ from 1 to 0, and setting NS from 0 to 1), I can read out ICC_IAR1_EL1_NS successfully. 

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    icc_sre_el1 is 0x7
    icc_sre_el3 is 0x7

    SCR_EL3 is 0xc0e

    SCR_EL3 is 0xc0d
    icc_sre_el1 is 0x7
    ICC IAR1 EL1 is 0x3ff
    enter non-secure world
    transition_to_lower_el :Current EL is EL2

    HCR_EL2 is 0x0
    transition_to_lower_el :Current EL is EL1

    current EL is 0x4
    ICC IAR1 EL1 is 0x3ff

    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    BTW, I am wondering if I go into "UNDEFINED" what's going to happen? system crash? thanks in advance. 

Children
No data