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

TTBR1_EL2 mmu translation information wrong when E2H=1

I am now using DS5-studio to debug VHE feature, I set the page table of TTBR0_EL2 and TTBR1_EL2 to the same address, but from the mmu information of DS, they are not same, the memory type is not the same, the information from TTBR0_EL2 is right. It is some wrong in DS studio or there some thing I am missing when set the page table?

mmu information

Parents
  • Hi Le Min
    I can reproduce what you see for a simple example.

    This does look like a problem with the Arm DS Debugger's decoding of Memory Types for the case where VHE is enabled:
    HCR_EL2.E2H = 1
    HCR_EL2.TGE = 1
    I have reported this to our Development Team for further investigation. 
    In the meantime, does your code execute as expected?
    Stephen
Reply
  • Hi Le Min
    I can reproduce what you see for a simple example.

    This does look like a problem with the Arm DS Debugger's decoding of Memory Types for the case where VHE is enabled:
    HCR_EL2.E2H = 1
    HCR_EL2.TGE = 1
    I have reported this to our Development Team for further investigation. 
    In the meantime, does your code execute as expected?
    Stephen
Children
  • Hi Stephen,

    Good to know that. Thanks.

    My code runs good under ARMv8.0, But when I enable VHE (HCR_EL2.E2H = 1), The Guest VM can not boot successfully, and the Guest Linux will hang with access a strange address, so currently I am not sure whether this is caused by my hypervisor code or caused by the DS studio.

    Thanks

    Le Min