<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE register_page SYSTEM "registers.dtd">
<!-- Copyright (c) 2010-2026 Arm Limited or its affiliates. All rights reserved. -->
<!-- This document is Non-Confidential. This document may only be used and distributed in accordance with the terms of the agreement entered into by Arm and the party that Arm delivered this document to. -->
<!--The data contained in this document is preliminary and subject to change or correction following further review. -->
<?xml-stylesheet href="one_register.xsl" type="text/xsl" ?>







<register_page>
  <registers>
  
    <register execution_state="AArch64" is_register="True" is_internal="True" is_stub_entry="False">
      <reg_short_name>HDFGRTR_EL2</reg_short_name>
        
        <reg_long_name>Hypervisor Debug Fine-Grained Read Trap Register</reg_long_name>



      
            <reg_condition otherwise="UNDEFINED">when FEAT_FGT is implemented and FEAT_AA64 is implemented</reg_condition>
      




          <reg_reset_value>
            <reg_reset_limited_to_el>EL2</reg_reset_limited_to_el>

      </reg_reset_value>

      <reg_mappings>
        




      </reg_mappings>

        <reg_purpose>
          
    
      <purpose_text>
        <para>Provides controls for traps of <instruction>MRS</instruction> and <instruction>MRC</instruction> reads of debug, trace, PMU, and Statistical Profiling System registers.</para>
      </purpose_text>

        </reg_purpose>

      <reg_groups>
          <reg_group>Unknown</reg_group>
      </reg_groups>
      <reg_configuration>
        
    
      <configuration_text>
        <para>If EL2 is not implemented, this register is <arm-defined-word>RES0</arm-defined-word> from EL3.</para>
      </configuration_text>

      </reg_configuration>
      
      
        
      <reg_attributes>
          
    
      <attributes_text>
        <para>HDFGRTR_EL2 is a 64-bit register.</para>
      </attributes_text>

      </reg_attributes>
      <reg_fieldsets>
        






<fields id="fieldset_0" length="64">
  <text_before_fields/>
  <field id="fieldset_0-63_63-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMBIDR_EL1</field_name>
    <field_msb>63</field_msb>
    <field_lsb>63</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbidr_el1.xml">PMBIDR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbidr_el1.xml">PMBIDR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbidr_el1.xml">PMBIDR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-63_63-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>63</field_msb>
    <field_lsb>63</field_lsb>
    <rel_range>63</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-62_62-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>nPMSNEVFR_EL1</field_name>
    <field_msb>62</field_msb>
    <field_lsb>62</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsnevfr_el1.xml">PMSNEVFR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsnevfr_el1.xml">PMSNEVFR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsnevfr_el1.xml">PMSNEVFR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE_FnE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-62_62-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>62</field_msb>
    <field_lsb>62</field_lsb>
    <rel_range>62</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-61_61-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>nBRBDATA</field_name>
    <field_msb>61</field_msb>
    <field_lsb>61</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the following AArch64 System registers to EL2:</para>
<list type="unordered">
<listitem><content><register_link state="AArch64" id="AArch64-brbinfn_el1.xml">BRBINF&lt;n&gt;_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-brbinfinj_el1.xml">BRBINFINJ_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-brbsrcn_el1.xml">BRBSRC&lt;n&gt;_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-brbsrcinj_el1.xml">BRBSRCINJ_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-brbtgtn_el1.xml">BRBTGT&lt;n&gt;_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-brbtgtinj_el1.xml">BRBTGTINJ_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-brbts_el1.xml">BRBTS_EL1</register_link>.</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the specified System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_BRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-61_61-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>61</field_msb>
    <field_lsb>61</field_lsb>
    <rel_range>61</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-60_60-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>nBRBCTL</field_name>
    <field_msb>60</field_msb>
    <field_lsb>60</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the following AArch64 System registers to EL2:</para>
<list type="unordered">
<listitem><content><register_link state="AArch64" id="AArch64-brbcr_el1.xml">BRBCR_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-brbfcr_el1.xml">BRBFCR_EL1</register_link>.</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the specified System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_BRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-60_60-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>60</field_msb>
    <field_lsb>60</field_lsb>
    <rel_range>60</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-59_59-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>nBRBIDR</field_name>
    <field_msb>59</field_msb>
    <field_lsb>59</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-brbidr0_el1.xml">BRBIDR0_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-brbidr0_el1.xml">BRBIDR0_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-brbidr0_el1.xml">BRBIDR0_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_BRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-59_59-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>59</field_msb>
    <field_lsb>59</field_lsb>
    <rel_range>59</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-58_58-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMCEIDn_EL0</field_name>
    <field_msb>58</field_msb>
    <field_lsb>58</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmceidn_el0.xml">PMCEID&lt;n&gt;_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmceidn.xml">PMCEID&lt;n&gt;</register_link> at EL0 using AArch32 when EL1 is using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmceidn_el0.xml">PMCEID&lt;n&gt;_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmceidn.xml">PMCEID&lt;n&gt;</register_link> at EL0 using AArch32 are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state,  the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmceidn_el0.xml">PMCEID&lt;n&gt;_EL0</register_link> at EL1 and EL0 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmceidn.xml">PMCEID&lt;n&gt;</register_link> at EL0 using AArch32 when EL1 is using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-58_58-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>58</field_msb>
    <field_lsb>58</field_lsb>
    <rel_range>58</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-57_57-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMUSERENR_EL0</field_name>
    <field_msb>57</field_msb>
    <field_lsb>57</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmuserenr_el0.xml">PMUSERENR_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmuserenr.xml">PMUSERENR</register_link> at EL0 using AArch32 when EL1 is using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmuserenr_el0.xml">PMUSERENR_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmuserenr.xml">PMUSERENR</register_link> at EL0 using AArch32 are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state,  the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmuserenr_el0.xml">PMUSERENR_EL0</register_link> at EL1 and EL0 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmuserenr.xml">PMUSERENR</register_link> at EL0 using AArch32 when EL1 is using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-57_57-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>57</field_msb>
    <field_lsb>57</field_lsb>
    <rel_range>57</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-56_56-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRBTRG_EL1</field_name>
    <field_msb>56</field_msb>
    <field_lsb>56</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbtrg_el1.xml">TRBTRG_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbtrg_el1.xml">TRBTRG_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbtrg_el1.xml">TRBTRG_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_TRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-56_56-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>56</field_msb>
    <field_lsb>56</field_lsb>
    <rel_range>56</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-55_55-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRBSR_EL1</field_name>
    <field_msb>55</field_msb>
    <field_lsb>55</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbsr_el1.xml">TRBSR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbsr_el1.xml">TRBSR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbsr_el1.xml">TRBSR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_TRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-55_55-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>55</field_msb>
    <field_lsb>55</field_lsb>
    <rel_range>55</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-54_54-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRBPTR_EL1</field_name>
    <field_msb>54</field_msb>
    <field_lsb>54</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbptr_el1.xml">TRBPTR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbptr_el1.xml">TRBPTR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbptr_el1.xml">TRBPTR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_TRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-54_54-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>54</field_msb>
    <field_lsb>54</field_lsb>
    <rel_range>54</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-53_53-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRBMAR_EL1</field_name>
    <field_msb>53</field_msb>
    <field_lsb>53</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbmar_el1.xml">TRBMAR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbmar_el1.xml">TRBMAR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbmar_el1.xml">TRBMAR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_TRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-53_53-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>53</field_msb>
    <field_lsb>53</field_lsb>
    <rel_range>53</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-52_52-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRBLIMITR_EL1</field_name>
    <field_msb>52</field_msb>
    <field_lsb>52</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trblimitr_el1.xml">TRBLIMITR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trblimitr_el1.xml">TRBLIMITR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trblimitr_el1.xml">TRBLIMITR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_TRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-52_52-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>52</field_msb>
    <field_lsb>52</field_lsb>
    <rel_range>52</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-51_51-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRBIDR_EL1</field_name>
    <field_msb>51</field_msb>
    <field_lsb>51</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbidr_el1.xml">TRBIDR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbidr_el1.xml">TRBIDR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbidr_el1.xml">TRBIDR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_TRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-51_51-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>51</field_msb>
    <field_lsb>51</field_lsb>
    <rel_range>51</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-50_50-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRBBASER_EL1</field_name>
    <field_msb>50</field_msb>
    <field_lsb>50</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbbaser_el1.xml">TRBBASER_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbbaser_el1.xml">TRBBASER_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trbbaser_el1.xml">TRBBASER_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_TRBE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-50_50-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>50</field_msb>
    <field_lsb>50</field_lsb>
    <rel_range>50</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-49_49" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>49</field_msb>
    <field_lsb>49</field_lsb>
    <rel_range>49</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
  </field>
  <field id="fieldset_0-48_48-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCVICTLR</field_name>
    <field_msb>48</field_msb>
    <field_lsb>48</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcvictlr.xml">TRCVICTLR</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCVICTLR at EL1 using AArch64 to EL2.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcvictlr.xml">TRCVICTLR</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcvictlr.xml">TRCVICTLR</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-48_48-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>48</field_msb>
    <field_lsb>48</field_lsb>
    <rel_range>48</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-47_47-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCSTATR</field_name>
    <field_msb>47</field_msb>
    <field_lsb>47</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcstatr.xml">TRCSTATR</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCSTATR at EL1 using AArch64 to EL2.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcstatr.xml">TRCSTATR</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcstatr.xml">TRCSTATR</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-47_47-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>47</field_msb>
    <field_lsb>47</field_lsb>
    <rel_range>47</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-46_46-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCSSCSRn</field_name>
    <field_msb>46</field_msb>
    <field_lsb>46</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcsscsrn.xml">TRCSSCSR&lt;n&gt;</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCSSCSR&lt;n&gt; at EL1 using AArch64 to EL2.</para></field_description>
    <field_description order="after">
      <para>If Single-shot Comparator n is not implementented, a read of <register_link state="AArch64" id="AArch64-trcsscsrn.xml">TRCSSCSR&lt;n&gt;</register_link> is <arm-defined-word>UNDEFINED</arm-defined-word>.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcsscsrn.xml">TRCSSCSR&lt;n&gt;</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcsscsrn.xml">TRCSSCSR&lt;n&gt;</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented, TRCSSCSR&lt;n&gt; are implemented, and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-46_46-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>46</field_msb>
    <field_lsb>46</field_lsb>
    <rel_range>46</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-45_45-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCSEQSTR</field_name>
    <field_msb>45</field_msb>
    <field_lsb>45</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcseqstr.xml">TRCSEQSTR</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCSEQSTR at EL1 using AArch64 to EL2.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcseqstr.xml">TRCSEQSTR</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcseqstr.xml">TRCSEQSTR</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented, TRCSEQSTR is implemented, and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-45_45-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>45</field_msb>
    <field_lsb>45</field_lsb>
    <rel_range>45</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-44_44-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCPRGCTLR</field_name>
    <field_msb>44</field_msb>
    <field_lsb>44</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcprgctlr.xml">TRCPRGCTLR</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCPRGCTLR at EL1 using AArch64 to EL2.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcprgctlr.xml">TRCPRGCTLR</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcprgctlr.xml">TRCPRGCTLR</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-44_44-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>44</field_msb>
    <field_lsb>44</field_lsb>
    <rel_range>44</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-43_43-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCOSLSR</field_name>
    <field_msb>43</field_msb>
    <field_lsb>43</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcoslsr.xml">TRCOSLSR</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCOSLSR at EL1 using AArch64 to EL2.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcoslsr.xml">TRCOSLSR</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcoslsr.xml">TRCOSLSR</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-43_43-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>43</field_msb>
    <field_lsb>43</field_lsb>
    <rel_range>43</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-42_42" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>42</field_msb>
    <field_lsb>42</field_lsb>
    <rel_range>42</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
  </field>
  <field id="fieldset_0-41_41-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCIMSPECn</field_name>
    <field_msb>41</field_msb>
    <field_lsb>41</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcimspecn.xml">TRCIMSPEC&lt;n&gt;</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCIMSPEC&lt;n&gt; at EL1 using AArch64 to EL2.</para></field_description>
    <field_description order="after">
      <para>TRCIMSPEC&lt;1-7&gt; are optional. If <register_link state="AArch64" id="AArch64-trcimspecn.xml">TRCIMSPEC&lt;n&gt;</register_link> is not implemented, a read of <register_link state="AArch64" id="AArch64-trcimspecn.xml">TRCIMSPEC&lt;n&gt;</register_link> is <arm-defined-word>UNDEFINED</arm-defined-word>.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcimspecn.xml">TRCIMSPEC&lt;n&gt;</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcimspecn.xml">TRCIMSPEC&lt;n&gt;</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-41_41-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>41</field_msb>
    <field_lsb>41</field_lsb>
    <rel_range>41</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-40_40-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCID</field_name>
    <field_msb>40</field_msb>
    <field_lsb>40</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the following AArch64 System registers to EL2:</para>
<list type="unordered">
<listitem><content>In an Armv9 implementation:<list type="unordered">
<listitem><content><register_link state="AArch64" id="AArch64-trcdevarch.xml">TRCDEVARCH</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcdevid.xml">TRCDEVID</register_link>.</content>
</listitem><listitem><content>All of the TRCIDR&lt;n&gt; registers.</content>
</listitem></list>
</content>
</listitem><listitem><content>In an Armv8 implementation:<list type="unordered">
<listitem><content>ETM TRCDEVARCH.</content>
</listitem><listitem><content>ETM TRCDEVID.</content>
</listitem><listitem><content>All of the ETM TRCIDR&lt;n&gt; registers.</content>
</listitem></list>
</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the specified System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-40_40-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>40</field_msb>
    <field_lsb>40</field_lsb>
    <rel_range>40</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-39_38" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>39</field_msb>
    <field_lsb>38</field_lsb>
    <rel_range>39:38</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
  </field>
  <field id="fieldset_0-37_37-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCCNTVRn</field_name>
    <field_msb>37</field_msb>
    <field_lsb>37</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trccntvrn.xml">TRCCNTVR&lt;n&gt;</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCCNTVR&lt;n&gt; at EL1 using AArch64 to EL2.</para></field_description>
    <field_description order="after">
      <para>If Counter n is not implemented, a read of <register_link state="AArch64" id="AArch64-trccntvrn.xml">TRCCNTVR&lt;n&gt;</register_link> is <arm-defined-word>UNDEFINED</arm-defined-word>.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trccntvrn.xml">TRCCNTVR&lt;n&gt;</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trccntvrn.xml">TRCCNTVR&lt;n&gt;</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented, TRCCNTVR&lt;n&gt; are implemented, and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-37_37-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>37</field_msb>
    <field_lsb>37</field_lsb>
    <rel_range>37</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-36_36-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCCLAIM</field_name>
    <field_msb>36</field_msb>
    <field_lsb>36</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the following AArch64 System registers to EL2:</para>
<list type="unordered">
<listitem><content>In an Armv9 implementation: <register_link state="AArch64" id="AArch64-trcclaimclr.xml">TRCCLAIMCLR</register_link> and <register_link state="AArch64" id="AArch64-trcclaimset.xml">TRCCLAIMSET</register_link>.</content>
</listitem><listitem><content>In an Armv8 implementation: ETM TRCCLAIMCLR and ETM TRCCLAIMSET.</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the specified System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-36_36-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>36</field_msb>
    <field_lsb>36</field_lsb>
    <rel_range>36</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-35_35-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCAUXCTLR</field_name>
    <field_msb>35</field_msb>
    <field_lsb>35</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcauxctlr.xml">TRCAUXCTLR</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCAUXCTLR at EL1 using AArch64 to EL2.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcauxctlr.xml">TRCAUXCTLR</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcauxctlr.xml">TRCAUXCTLR</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-35_35-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>35</field_msb>
    <field_lsb>35</field_lsb>
    <rel_range>35</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-34_34-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRCAUTHSTATUS</field_name>
    <field_msb>34</field_msb>
    <field_lsb>34</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>In an Armv9 implementation, trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcauthstatus.xml">TRCAUTHSTATUS</register_link> at EL1 using AArch64 to EL2.</para>
<para>In an Armv8 implementation, trap <instruction>MRS</instruction> reads of ETM TRCAUTHSTATUS at EL1 using AArch64 to EL2.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcauthstatus.xml">TRCAUTHSTATUS</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-trcauthstatus.xml">TRCAUTHSTATUS</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-34_34-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>34</field_msb>
    <field_lsb>34</field_lsb>
    <rel_range>34</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-33_33-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>TRC</field_name>
    <field_msb>33</field_msb>
    <field_lsb>33</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the following AArch64 System registers to EL2:</para>
<list type="unordered">
<listitem><content>
<para>In an Armv9 implementation:</para>
<list type="unordered">
<listitem><content><register_link state="AArch64" id="AArch64-trcacatrn.xml">TRCACATR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcacvrn.xml">TRCACVR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcbbctlr.xml">TRCBBCTLR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcccctlr.xml">TRCCCCTLR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trccidcctlr0.xml">TRCCIDCCTLR0</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trccidcctlr1.xml">TRCCIDCCTLR1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trccidcvrn.xml">TRCCIDCVR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trccntctlrn.xml">TRCCNTCTLR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trccntrldvrn.xml">TRCCNTRLDVR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcconfigr.xml">TRCCONFIGR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trceventctl0r.xml">TRCEVENTCTL0R</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trceventctl1r.xml">TRCEVENTCTL1R</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcextinselrn.xml">TRCEXTINSELR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcqctlr.xml">TRCQCTLR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcrsctlrn.xml">TRCRSCTLR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcrsr.xml">TRCRSR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcseqevrn.xml">TRCSEQEVR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcseqrstevr.xml">TRCSEQRSTEVR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcssccrn.xml">TRCSSCCR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcsspcicrn.xml">TRCSSPCICR&lt;n&gt;</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcstallctlr.xml">TRCSTALLCTLR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcsyncpr.xml">TRCSYNCPR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trctraceidr.xml">TRCTRACEIDR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trctsctlr.xml">TRCTSCTLR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcviiectlr.xml">TRCVIIECTLR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcvipcssctlr.xml">TRCVIPCSSCTLR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcvissctlr.xml">TRCVISSCTLR</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcvmidcctlr0.xml">TRCVMIDCCTLR0</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcvmidcctlr1.xml">TRCVMIDCCTLR1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-trcvmidcvrn.xml">TRCVMIDCVR&lt;n&gt;</register_link>.</content>
</listitem></list>
</content>
</listitem><listitem><content>
<para>In an Armv8 implementation:</para>
<list type="unordered">
<listitem><content>ETM TRCACATR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCACVR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCBBCTLR.</content>
</listitem><listitem><content>ETM TRCCCCTLR.</content>
</listitem><listitem><content>ETM TRCCIDCCTLR0.</content>
</listitem><listitem><content>ETM TRCCIDCCTLR1.</content>
</listitem><listitem><content>ETM TRCCIDCVR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCCNTCTLR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCCNTRLDVR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCCONFIGR.</content>
</listitem><listitem><content>ETM TRCEVENTCTL0R.</content>
</listitem><listitem><content>ETM TRCEVENTCTL1R.</content>
</listitem><listitem><content>ETM TRCEXTINSELR.</content>
</listitem><listitem><content>ETM TRCQCTLR.</content>
</listitem><listitem><content>ETM TRCRSCTLR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCSEQEVR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCSEQRSTEVR.</content>
</listitem><listitem><content>ETM TRCSSCCR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCSSPCICR&lt;n&gt;.</content>
</listitem><listitem><content>ETM TRCSTALLCTLR.</content>
</listitem><listitem><content>ETM TRCSYNCPR.</content>
</listitem><listitem><content>ETM TRCTRACEIDR.</content>
</listitem><listitem><content>ETM TRCTSCTLR.</content>
</listitem><listitem><content>ETM TRCVIIECTLR.</content>
</listitem><listitem><content>ETM TRCVIPCSSCTLR.</content>
</listitem><listitem><content>ETM TRCVISSCTLR.</content>
</listitem><listitem><content>ETM TRCVMIDCCTLR0.</content>
</listitem><listitem><content>ETM TRCVMIDCCTLR1.</content>
</listitem><listitem><content>ETM TRCVMIDCVR&lt;n&gt;.</content>
</listitem></list>
</content>
</listitem></list></field_description>
    <field_description order="after"><para>A read of an unimplemented register is <arm-defined-word>UNDEFINED</arm-defined-word>.</para>
<para><register_link state="AArch64" id="AArch64-trcextinselrn.xml">TRCEXTINSELR&lt;n&gt;</register_link> and <register_link state="AArch64" id="AArch64-trcrsr.xml">TRCRSR</register_link> are implemented only if FEAT_ETE is implemented.</para>
<para>TRCEXTINSELR is implemented only if FEAT_ETE is not implemented and FEAT_ETMv4 is implemented.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the specified System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_ETE is implemented or (FEAT_ETMv4 is implemented and System register access to the trace unit registers is implemented)</fields_condition>
  </field>
  <field id="fieldset_0-33_33-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>33</field_msb>
    <field_lsb>33</field_lsb>
    <rel_range>33</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-32_32-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMSLATFR_EL1</field_name>
    <field_msb>32</field_msb>
    <field_lsb>32</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmslatfr_el1.xml">PMSLATFR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmslatfr_el1.xml">PMSLATFR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmslatfr_el1.xml">PMSLATFR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-32_32-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>32</field_msb>
    <field_lsb>32</field_lsb>
    <rel_range>32</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-31_31-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMSIRR_EL1</field_name>
    <field_msb>31</field_msb>
    <field_lsb>31</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsirr_el1.xml">PMSIRR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsirr_el1.xml">PMSIRR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsirr_el1.xml">PMSIRR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-31_31-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>31</field_msb>
    <field_lsb>31</field_lsb>
    <rel_range>31</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-30_30-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMSIDR_EL1</field_name>
    <field_msb>30</field_msb>
    <field_lsb>30</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsidr_el1.xml">PMSIDR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsidr_el1.xml">PMSIDR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsidr_el1.xml">PMSIDR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-30_30-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>30</field_msb>
    <field_lsb>30</field_lsb>
    <rel_range>30</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-29_29-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMSICR_EL1</field_name>
    <field_msb>29</field_msb>
    <field_lsb>29</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsicr_el1.xml">PMSICR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsicr_el1.xml">PMSICR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsicr_el1.xml">PMSICR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-29_29-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>29</field_msb>
    <field_lsb>29</field_lsb>
    <rel_range>29</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-28_28-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMSFCR_EL1</field_name>
    <field_msb>28</field_msb>
    <field_lsb>28</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsfcr_el1.xml">PMSFCR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsfcr_el1.xml">PMSFCR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsfcr_el1.xml">PMSFCR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-28_28-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>28</field_msb>
    <field_lsb>28</field_lsb>
    <rel_range>28</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-27_27-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMSEVFR_EL1</field_name>
    <field_msb>27</field_msb>
    <field_lsb>27</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsevfr_el1.xml">PMSEVFR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsevfr_el1.xml">PMSEVFR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmsevfr_el1.xml">PMSEVFR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-27_27-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>27</field_msb>
    <field_lsb>27</field_lsb>
    <rel_range>27</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-26_26-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMSCR_EL1</field_name>
    <field_msb>26</field_msb>
    <field_lsb>26</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmscr_el1.xml">PMSCR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmscr_el1.xml">PMSCR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmscr_el1.xml">PMSCR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-26_26-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>26</field_msb>
    <field_lsb>26</field_lsb>
    <rel_range>26</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-25_25-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMBSR_EL1</field_name>
    <field_msb>25</field_msb>
    <field_lsb>25</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbsr_el1.xml">PMBSR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbsr_el1.xml">PMBSR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbsr_el1.xml">PMBSR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-25_25-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>25</field_msb>
    <field_lsb>25</field_lsb>
    <rel_range>25</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-24_24-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMBPTR_EL1</field_name>
    <field_msb>24</field_msb>
    <field_lsb>24</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbptr_el1.xml">PMBPTR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbptr_el1.xml">PMBPTR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmbptr_el1.xml">PMBPTR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-24_24-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>24</field_msb>
    <field_lsb>24</field_lsb>
    <rel_range>24</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-23_23-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMBLIMITR_EL1</field_name>
    <field_msb>23</field_msb>
    <field_lsb>23</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmblimitr_el1.xml">PMBLIMITR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmblimitr_el1.xml">PMBLIMITR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmblimitr_el1.xml">PMBLIMITR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_SPE is implemented</fields_condition>
  </field>
  <field id="fieldset_0-23_23-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>23</field_msb>
    <field_lsb>23</field_lsb>
    <rel_range>23</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-22_22-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMMIR_EL1</field_name>
    <field_msb>22</field_msb>
    <field_lsb>22</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmmir_el1.xml">PMMIR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmmir_el1.xml">PMMIR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmmir_el1.xml">PMMIR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-22_22-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>22</field_msb>
    <field_lsb>22</field_lsb>
    <rel_range>22</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-21_20" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>21</field_msb>
    <field_lsb>20</field_lsb>
    <rel_range>21:20</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
  </field>
  <field id="fieldset_0-19_19-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMSELR_EL0</field_name>
    <field_msb>19</field_msb>
    <field_lsb>19</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link> at EL0 using AArch32 when EL1 is using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link> at EL0 using AArch32 are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state,  the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link> at EL1 and EL0 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link> at EL0 using AArch32 when EL1 is using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-19_19-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>19</field_msb>
    <field_lsb>19</field_lsb>
    <rel_range>19</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-18_18-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMOVS</field_name>
    <field_msb>18</field_msb>
    <field_lsb>18</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads and <instruction>MRC</instruction> reads of any of the following System registers to EL2:</para>
<list type="unordered">
<listitem><content>At EL1 and EL0 using AArch64: <register_link state="AArch64" id="AArch64-pmovsclr_el0.xml">PMOVSCLR_EL0</register_link> and <register_link state="AArch64" id="AArch64-pmovsset_el0.xml">PMOVSSET_EL0</register_link>.</content>
</listitem><listitem><content>At EL0 using AArch32 when EL1 is using AArch64: <register_link state="AArch32" id="AArch32-pmovsr.xml">PMOVSR</register_link> and <register_link state="AArch32" id="AArch32-pmovsset.xml">PMOVSSET</register_link>.</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads at EL0 using AArch32 of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state, the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then  unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads at EL1 and EL0 using AArch64 of any of the specified AArch64 System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads at EL0 using AArch32 when EL1 is using AArch64 of any of the specified AArch32 System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-18_18-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>18</field_msb>
    <field_lsb>18</field_lsb>
    <rel_range>18</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-17_17-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMINTEN</field_name>
    <field_msb>17</field_msb>
    <field_lsb>17</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the following AArch64 System registers to EL2:</para>
<list type="unordered">
<listitem><content><register_link state="AArch64" id="AArch64-pmintenclr_el1.xml">PMINTENCLR_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-pmintenset_el1.xml">PMINTENSET_EL1</register_link>.</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the specified System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-17_17-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>17</field_msb>
    <field_lsb>17</field_lsb>
    <rel_range>17</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-16_16-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMCNTEN</field_name>
    <field_msb>16</field_msb>
    <field_lsb>16</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads and <instruction>MRC</instruction> reads of any of the following System registers to EL2:</para>
<list type="unordered">
<listitem><content>At EL1 and EL0 using AArch64: <register_link state="AArch64" id="AArch64-pmcntenclr_el0.xml">PMCNTENCLR_EL0</register_link> and <register_link state="AArch64" id="AArch64-pmcntenset_el0.xml">PMCNTENSET_EL0</register_link>.</content>
</listitem><listitem><content>At EL0 using AArch32 when EL1 is using AArch64: <register_link state="AArch32" id="AArch32-pmcntenclr.xml">PMCNTENCLR</register_link> and <register_link state="AArch32" id="AArch32-pmcntenset.xml">PMCNTENSET</register_link>.</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads at EL0 using AArch32 of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state, the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then  unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads at EL1 and EL0 using AArch64 of any of the specified AArch64 System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads at EL0 using AArch32 when EL1 is using AArch64 of any of the specified AArch32 System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-16_16-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>16</field_msb>
    <field_lsb>16</field_lsb>
    <rel_range>16</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-15_15-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMCCNTR_EL0</field_name>
    <field_msb>15</field_msb>
    <field_lsb>15</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmccntr_el0.xml">PMCCNTR_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> and <instruction>MRRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmccntr.xml">PMCCNTR</register_link> at EL0 using AArch32 when EL1 is using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmccntr_el0.xml">PMCCNTR_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> and <instruction>MRRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmccntr.xml">PMCCNTR</register_link> at EL0 using AArch32 are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state,  the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmccntr_el0.xml">PMCCNTR_EL0</register_link> at EL1 and EL0 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmccntr.xml">PMCCNTR</register_link> at EL0 using AArch32 when EL1 is using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem><listitem><content><instruction>MRRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmccntr.xml">PMCCNTR</register_link> at EL0 using AArch32 when EL1 is using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x04</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-15_15-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>15</field_msb>
    <field_lsb>15</field_lsb>
    <rel_range>15</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-14_14-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMCCFILTR_EL0</field_name>
    <field_msb>14</field_msb>
    <field_lsb>14</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmccfiltr_el0.xml">PMCCFILTR_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmccfiltr.xml">PMCCFILTR</register_link> at EL0 using AArch32 when EL1 is using AArch64 to EL2.</para>
    </field_description>
    <field_description order="after"><para><register_link state="AArch64" id="AArch64-pmccfiltr_el0.xml">PMCCFILTR_EL0</register_link> can also be accessed in AArch64 state using <register_link state="AArch64" id="AArch64-pmxevtyper_el0.xml">PMXEVTYPER_EL0</register_link> when <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link>.SEL == 31, and <register_link state="AArch32" id="AArch32-pmccfiltr.xml">PMCCFILTR</register_link> can also be accessed in AArch32 state using <register_link state="AArch32" id="AArch32-pmxevtyper.xml">PMXEVTYPER</register_link> when <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link>.SEL == 31.</para>
<para>Setting this field to 1 has no effect on accesses to <register_link state="AArch64" id="AArch64-pmxevtyper_el0.xml">PMXEVTYPER_EL0</register_link> and <register_link state="AArch32" id="AArch32-pmxevtyper.xml">PMXEVTYPER</register_link>, regardless of the value of <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link>.SEL or <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link>.SEL.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmccfiltr_el0.xml">PMCCFILTR_EL0</register_link> at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmccfiltr.xml">PMCCFILTR</register_link> at EL0 using AArch32 are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state,  the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-pmccfiltr_el0.xml">PMCCFILTR_EL0</register_link> at EL1 and EL0 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads of <register_link state="AArch32" id="AArch32-pmccfiltr.xml">PMCCFILTR</register_link> at EL0 using AArch32 when EL1 is using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-14_14-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>14</field_msb>
    <field_lsb>14</field_lsb>
    <rel_range>14</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-13_13-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMEVTYPERn_EL0</field_name>
    <field_msb>13</field_msb>
    <field_lsb>13</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads and <instruction>MRC</instruction> reads of any of the following System registers to EL2:</para>
<list type="unordered">
<listitem><content>At EL1 and EL0 using AArch64: <register_link state="AArch64" id="AArch64-pmevtypern_el0.xml">PMEVTYPER&lt;n&gt;_EL0</register_link> and <register_link state="AArch64" id="AArch64-pmxevtyper_el0.xml">PMXEVTYPER_EL0</register_link>.</content>
</listitem><listitem><content>At EL0 using AArch32 when EL1 is using AArch64: <register_link state="AArch32" id="AArch32-pmevtypern.xml">PMEVTYPER&lt;n&gt;</register_link> and <register_link state="AArch32" id="AArch32-pmxevtyper.xml">PMXEVTYPER</register_link>.</content>
</listitem></list></field_description>
    <field_description order="after"><para>Regardless of the value of this field, for each value n:</para>
<list type="unordered">
<listitem><content>If event counter n is not implemented, the following accesses are <arm-defined-word>UNDEFINED</arm-defined-word>:<list type="unordered">
<listitem><content>In AArch64 state, a read of <register_link state="AArch64" id="AArch64-pmevtypern_el0.xml">PMEVTYPER&lt;n&gt;_EL0</register_link>, or, if n is not 31, a read of <register_link state="AArch64" id="AArch64-pmxevtyper_el0.xml">PMXEVTYPER_EL0</register_link> when <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link>.SEL == n.</content>
</listitem><listitem><content>In AArch32 state, a read of <register_link state="AArch32" id="AArch32-pmevtypern.xml">PMEVTYPER&lt;n&gt;</register_link>, or, if n is not 31, a read of <register_link state="AArch32" id="AArch32-pmxevtyper.xml">PMXEVTYPER</register_link> when <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link>.SEL == n.</content>
</listitem></list>
</content>
</listitem><listitem><content>If event counter n is implemented, n is greater-than-or-equal-to <register_link state="AArch64" id="AArch64-mdcr_el2.xml">MDCR_EL2</register_link>.HPMN, and EL2 is implemented and enabled in the current Security state, the following generate a Trap exception to EL2 from EL0 or EL1:<list type="unordered">
<listitem><content>In AArch64 state, a read of <register_link state="AArch64" id="AArch64-pmevtypern_el0.xml">PMEVTYPER&lt;n&gt;_EL0</register_link>, or a read of <register_link state="AArch64" id="AArch64-pmxevtyper_el0.xml">PMXEVTYPER_EL0</register_link> when <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link>.SEL == n, reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content>In AArch32 state, a read of <register_link state="AArch32" id="AArch32-pmevtypern.xml">PMEVTYPER&lt;n&gt;</register_link>, or a read of <register_link state="AArch32" id="AArch32-pmxevtyper.xml">PMXEVTYPER</register_link> when <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link>.SEL == n, reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list>
</content>
</listitem></list>
<para>See also HDFGRTR_EL2.PMCCFILTR_EL0.</para></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads at EL0 using AArch32 of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state, the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then  unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads at EL1 and EL0 using AArch64 of any of the specified AArch64 System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads at EL0 using AArch32 when EL1 is using AArch64 of any of the specified AArch32 System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-13_13-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>13</field_msb>
    <field_lsb>13</field_lsb>
    <rel_range>13</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-12_12-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>PMEVCNTRn_EL0</field_name>
    <field_msb>12</field_msb>
    <field_lsb>12</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads and <instruction>MRC</instruction> reads of any of the following System registers to EL2:</para>
<list type="unordered">
<listitem><content>At EL1 and EL0 using AArch64: <register_link state="AArch64" id="AArch64-pmevcntrn_el0.xml">PMEVCNTR&lt;n&gt;_EL0</register_link> and <register_link state="AArch64" id="AArch64-pmxevcntr_el0.xml">PMXEVCNTR_EL0</register_link>.</content>
</listitem><listitem><content>At EL0 using AArch32 when EL1 is using AArch64: <register_link state="AArch32" id="AArch32-pmevcntrn.xml">PMEVCNTR&lt;n&gt;</register_link> and <register_link state="AArch32" id="AArch32-pmxevcntr.xml">PMXEVCNTR</register_link>.</content>
</listitem></list></field_description>
    <field_description order="after"><para>Regardless of the value of this field, for each value n:</para>
<list type="unordered">
<listitem><content>If event counter n is not implemented, the following accesses are <arm-defined-word>UNDEFINED</arm-defined-word>:<list type="unordered">
<listitem><content>In AArch64 state, a read of <register_link state="AArch64" id="AArch64-pmevcntrn_el0.xml">PMEVCNTR&lt;n&gt;_EL0</register_link>, or a read of <register_link state="AArch64" id="AArch64-pmxevcntr_el0.xml">PMXEVCNTR_EL0</register_link> when <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link>.SEL is n.</content>
</listitem><listitem><content>In AArch32 state, a read of <register_link state="AArch32" id="AArch32-pmevcntrn.xml">PMEVCNTR&lt;n&gt;</register_link>, or a read of <register_link state="AArch32" id="AArch32-pmxevcntr.xml">PMXEVCNTR</register_link> when <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link>.SEL is n.</content>
</listitem></list>
</content>
</listitem><listitem><content>If event counter n is implemented, n is greater than or equal to <register_link state="AArch64" id="AArch64-mdcr_el2.xml">MDCR_EL2</register_link>.HPMN, and EL2 is implemented and enabled in the current Security state, the following generate a Trap exception to EL2 from EL0 or EL1:<list type="unordered">
<listitem><content>In AArch64 state, a read of <register_link state="AArch64" id="AArch64-pmevcntrn_el0.xml">PMEVCNTR&lt;n&gt;_EL0</register_link>, or a read of <register_link state="AArch64" id="AArch64-pmxevcntr_el0.xml">PMXEVCNTR_EL0</register_link> when <register_link state="AArch64" id="AArch64-pmselr_el0.xml">PMSELR_EL0</register_link>.SEL is n, reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content>In AArch32 state, a read of <register_link state="AArch32" id="AArch32-pmevcntrn.xml">PMEVCNTR&lt;n&gt;</register_link>, or a read of <register_link state="AArch32" id="AArch32-pmxevcntr.xml">PMXEVCNTR</register_link> when <register_link state="AArch32" id="AArch32-pmselr.xml">PMSELR</register_link>.SEL is n, reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list>
</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads at EL1 and EL0 using AArch64 and <instruction>MRC</instruction> reads at EL0 using AArch32 of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description><para>If EL2 is implemented and enabled in the current Security state, the Effective value of <register_link state="AArch64" id="AArch64-hcr_el2.xml">HCR_EL2</register_link>.{E2H, TGE} is not {1, 1}, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then  unless the read generates a higher priority exception:</para>
<list type="unordered">
<listitem><content><instruction>MRS</instruction> reads at EL1 and EL0 using AArch64 of any of the specified AArch64 System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>.</content>
</listitem><listitem><content><instruction>MRC</instruction> reads at EL0 using AArch32 when EL1 is using AArch64 of any of the specified AArch32 System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x03</hexnumber>.</content>
</listitem></list></field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_PMUv3 is implemented</fields_condition>
  </field>
  <field id="fieldset_0-12_12-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>12</field_msb>
    <field_lsb>12</field_lsb>
    <rel_range>12</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-11_11-1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" reserved_type="RES0">
    <field_name>OSDLR_EL1</field_name>
    <field_msb>11</field_msb>
    <field_lsb>11</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-osdlr_el1.xml">OSDLR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-osdlr_el1.xml">OSDLR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-osdlr_el1.xml">OSDLR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
    <fields_condition>When FEAT_DoubleLock is implemented</fields_condition>
  </field>
  <field id="fieldset_0-11_11-2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>11</field_msb>
    <field_lsb>11</field_lsb>
    <rel_range>11</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
    <fields_condition>Otherwise</fields_condition>
  </field>
  <field id="fieldset_0-10_10" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>OSECCR_EL1</field_name>
    <field_msb>10</field_msb>
    <field_lsb>10</field_lsb>
    <rel_range>10</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-oseccr_el1.xml">OSECCR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-oseccr_el1.xml">OSECCR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-oseccr_el1.xml">OSECCR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-9_9" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>OSLSR_EL1</field_name>
    <field_msb>9</field_msb>
    <field_lsb>9</field_lsb>
    <rel_range>9</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-oslsr_el1.xml">OSLSR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-oslsr_el1.xml">OSLSR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-oslsr_el1.xml">OSLSR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-8_8" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>8</field_msb>
    <field_lsb>8</field_lsb>
    <rel_range>8</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
  </field>
  <field id="fieldset_0-7_7" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>DBGPRCR_EL1</field_name>
    <field_msb>7</field_msb>
    <field_lsb>7</field_lsb>
    <rel_range>7</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgprcr_el1.xml">DBGPRCR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgprcr_el1.xml">DBGPRCR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgprcr_el1.xml">DBGPRCR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-6_6" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>DBGAUTHSTATUS_EL1</field_name>
    <field_msb>6</field_msb>
    <field_lsb>6</field_lsb>
    <rel_range>6</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgauthstatus_el1.xml">DBGAUTHSTATUS_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgauthstatus_el1.xml">DBGAUTHSTATUS_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgauthstatus_el1.xml">DBGAUTHSTATUS_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-5_5" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>DBGCLAIM</field_name>
    <field_msb>5</field_msb>
    <field_lsb>5</field_lsb>
    <rel_range>5</rel_range>
    <field_description order="before"><para>Trap <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the following AArch64 System registers to EL2:</para>
<list type="unordered">
<listitem><content><register_link state="AArch64" id="AArch64-dbgclaimclr_el1.xml">DBGCLAIMCLR_EL1</register_link>.</content>
</listitem><listitem><content><register_link state="AArch64" id="AArch64-dbgclaimset_el1.xml">DBGCLAIMSET_EL1</register_link>.</content>
</listitem></list></field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of the specified System registers are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads at EL1 using AArch64 of any of the specified System registers are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-4_4" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>MDSCR_EL1</field_name>
    <field_msb>4</field_msb>
    <field_lsb>4</field_lsb>
    <rel_range>4</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-mdscr_el1.xml">MDSCR_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-mdscr_el1.xml">MDSCR_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-mdscr_el1.xml">MDSCR_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-3_3" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>DBGWVRn_EL1</field_name>
    <field_msb>3</field_msb>
    <field_lsb>3</field_lsb>
    <rel_range>3</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgwvrn_el1.xml">DBGWVR&lt;n&gt;_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_description order="after">
      <para>If watchpoint n is not implemented, a read of <register_link state="AArch64" id="AArch64-dbgwvrn_el1.xml">DBGWVR&lt;n&gt;_EL1</register_link> is <arm-defined-word>UNDEFINED</arm-defined-word>.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgwvrn_el1.xml">DBGWVR&lt;n&gt;_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgwvrn_el1.xml">DBGWVR&lt;n&gt;_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-2_2" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>DBGWCRn_EL1</field_name>
    <field_msb>2</field_msb>
    <field_lsb>2</field_lsb>
    <rel_range>2</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgwcrn_el1.xml">DBGWCR&lt;n&gt;_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_description order="after">
      <para>If watchpoint n is not implemented, a read of <register_link state="AArch64" id="AArch64-dbgwcrn_el1.xml">DBGWCR&lt;n&gt;_EL1</register_link> is <arm-defined-word>UNDEFINED</arm-defined-word>.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgwcrn_el1.xml">DBGWCR&lt;n&gt;_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgwcrn_el1.xml">DBGWCR&lt;n&gt;_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-1_1" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>DBGBVRn_EL1</field_name>
    <field_msb>1</field_msb>
    <field_lsb>1</field_lsb>
    <rel_range>1</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgbvrn_el1.xml">DBGBVR&lt;n&gt;_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_description order="after">
      <para>If breakpoint n is not implemented, a read of <register_link state="AArch64" id="AArch64-dbgbvrn_el1.xml">DBGBVR&lt;n&gt;_EL1</register_link> is <arm-defined-word>UNDEFINED</arm-defined-word>.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgbvrn_el1.xml">DBGBVR&lt;n&gt;_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgbvrn_el1.xml">DBGBVR&lt;n&gt;_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <field id="fieldset_0-0_0" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False">
    <field_name>DBGBCRn_EL1</field_name>
    <field_msb>0</field_msb>
    <field_lsb>0</field_lsb>
    <rel_range>0</rel_range>
    <field_description order="before">
      <para>Trap <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgbcrn_el1.xml">DBGBCR&lt;n&gt;_EL1</register_link> at EL1 using AArch64 to EL2.</para>
    </field_description>
    <field_description order="after">
      <para>If breakpoint n is not implemented, a read of <register_link state="AArch64" id="AArch64-dbgbcrn_el1.xml">DBGBCR&lt;n&gt;_EL1</register_link> is <arm-defined-word>UNDEFINED</arm-defined-word>.</para>
    </field_description>
    <field_values impdef="False">
      <field_value_instance>
        <field_value>0b0</field_value>
        <field_value_description>
          <para><instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgbcrn_el1.xml">DBGBCR&lt;n&gt;_EL1</register_link> are not trapped by this mechanism.</para>
        </field_value_description>
      </field_value_instance>
      <field_value_instance>
        <field_value>0b1</field_value>
        <field_value_description>
          <para>If EL2 is implemented and enabled in the current Security state, and either EL3 is not implemented or <register_link state="AArch64" id="AArch64-scr_el3.xml">SCR_EL3</register_link>.FGTEn == 1, then <instruction>MRS</instruction> reads of <register_link state="AArch64" id="AArch64-dbgbcrn_el1.xml">DBGBCR&lt;n&gt;_EL1</register_link> at EL1 using AArch64 are trapped to EL2 and reported with EC syndrome value <hexnumber>0x18</hexnumber>, unless the read generates a higher priority exception.</para>
        </field_value_description>
      </field_value_instance>
    </field_values>
    <field_resets>
      <field_reset reset_type="Warm">
        <field_reset_conditions>
          <field_reset_condition condition="the highest implemented Exception level is EL2">
            <field_reset>
              <field_reset_number>'0'</field_reset_number>
            </field_reset>
          </field_reset_condition>
          <field_reset_condition>
            <field_reset>
              <field_reset_standard_text>AU</field_reset_standard_text>
            </field_reset>
          </field_reset_condition>
        </field_reset_conditions>
      </field_reset>
    </field_resets>
  </field>
  <text_after_fields/>
</fields>




<reg_fieldset length="64">
  <fieldat id="fieldset_0-63_63-1" msb="63" lsb="63"/>
  <fieldat id="fieldset_0-62_62-1" msb="62" lsb="62"/>
  <fieldat id="fieldset_0-61_61-1" msb="61" lsb="61"/>
  <fieldat id="fieldset_0-60_60-1" msb="60" lsb="60"/>
  <fieldat id="fieldset_0-59_59-1" msb="59" lsb="59"/>
  <fieldat id="fieldset_0-58_58-1" msb="58" lsb="58"/>
  <fieldat id="fieldset_0-57_57-1" msb="57" lsb="57"/>
  <fieldat id="fieldset_0-56_56-1" msb="56" lsb="56"/>
  <fieldat id="fieldset_0-55_55-1" msb="55" lsb="55"/>
  <fieldat id="fieldset_0-54_54-1" msb="54" lsb="54"/>
  <fieldat id="fieldset_0-53_53-1" msb="53" lsb="53"/>
  <fieldat id="fieldset_0-52_52-1" msb="52" lsb="52"/>
  <fieldat id="fieldset_0-51_51-1" msb="51" lsb="51"/>
  <fieldat id="fieldset_0-50_50-1" msb="50" lsb="50"/>
  <fieldat id="fieldset_0-49_49" msb="49" lsb="49"/>
  <fieldat id="fieldset_0-48_48-1" msb="48" lsb="48"/>
  <fieldat id="fieldset_0-47_47-1" msb="47" lsb="47"/>
  <fieldat id="fieldset_0-46_46-1" msb="46" lsb="46"/>
  <fieldat id="fieldset_0-45_45-1" msb="45" lsb="45"/>
  <fieldat id="fieldset_0-44_44-1" msb="44" lsb="44"/>
  <fieldat id="fieldset_0-43_43-1" msb="43" lsb="43"/>
  <fieldat id="fieldset_0-42_42" msb="42" lsb="42"/>
  <fieldat id="fieldset_0-41_41-1" msb="41" lsb="41"/>
  <fieldat id="fieldset_0-40_40-1" msb="40" lsb="40"/>
  <fieldat id="fieldset_0-39_38" msb="39" lsb="38"/>
  <fieldat id="fieldset_0-37_37-1" msb="37" lsb="37"/>
  <fieldat id="fieldset_0-36_36-1" msb="36" lsb="36"/>
  <fieldat id="fieldset_0-35_35-1" msb="35" lsb="35"/>
  <fieldat id="fieldset_0-34_34-1" msb="34" lsb="34"/>
  <fieldat id="fieldset_0-33_33-1" msb="33" lsb="33"/>
  <fieldat id="fieldset_0-32_32-1" msb="32" lsb="32"/>
  <fieldat id="fieldset_0-31_31-1" msb="31" lsb="31"/>
  <fieldat id="fieldset_0-30_30-1" msb="30" lsb="30"/>
  <fieldat id="fieldset_0-29_29-1" msb="29" lsb="29"/>
  <fieldat id="fieldset_0-28_28-1" msb="28" lsb="28"/>
  <fieldat id="fieldset_0-27_27-1" msb="27" lsb="27"/>
  <fieldat id="fieldset_0-26_26-1" msb="26" lsb="26"/>
  <fieldat id="fieldset_0-25_25-1" msb="25" lsb="25"/>
  <fieldat id="fieldset_0-24_24-1" msb="24" lsb="24"/>
  <fieldat id="fieldset_0-23_23-1" msb="23" lsb="23"/>
  <fieldat id="fieldset_0-22_22-1" msb="22" lsb="22"/>
  <fieldat id="fieldset_0-21_20" msb="21" lsb="20"/>
  <fieldat id="fieldset_0-19_19-1" msb="19" lsb="19"/>
  <fieldat id="fieldset_0-18_18-1" msb="18" lsb="18"/>
  <fieldat id="fieldset_0-17_17-1" msb="17" lsb="17"/>
  <fieldat id="fieldset_0-16_16-1" msb="16" lsb="16"/>
  <fieldat id="fieldset_0-15_15-1" msb="15" lsb="15"/>
  <fieldat id="fieldset_0-14_14-1" msb="14" lsb="14"/>
  <fieldat id="fieldset_0-13_13-1" msb="13" lsb="13"/>
  <fieldat id="fieldset_0-12_12-1" msb="12" lsb="12"/>
  <fieldat id="fieldset_0-11_11-1" msb="11" lsb="11"/>
  <fieldat id="fieldset_0-10_10" msb="10" lsb="10"/>
  <fieldat id="fieldset_0-9_9" msb="9" lsb="9"/>
  <fieldat id="fieldset_0-8_8" msb="8" lsb="8"/>
  <fieldat id="fieldset_0-7_7" msb="7" lsb="7"/>
  <fieldat id="fieldset_0-6_6" msb="6" lsb="6"/>
  <fieldat id="fieldset_0-5_5" msb="5" lsb="5"/>
  <fieldat id="fieldset_0-4_4" msb="4" lsb="4"/>
  <fieldat id="fieldset_0-3_3" msb="3" lsb="3"/>
  <fieldat id="fieldset_0-2_2" msb="2" lsb="2"/>
  <fieldat id="fieldset_0-1_1" msb="1" lsb="1"/>
  <fieldat id="fieldset_0-0_0" msb="0" lsb="0"/>
</reg_fieldset>


      </reg_fieldsets>

      <access_mechanisms>
          






    
        
        <access_mechanism accessor="MRS HDFGRTR_EL2" type="SystemAccessor">
            <encoding>
            <access_instruction>MRS &lt;Xt&gt;, HDFGRTR_EL2</access_instruction>
                
                <enc n="op0" v="0b11"/>
                
                <enc n="op1" v="0b100"/>
                
                <enc n="CRn" v="0b0011"/>
                
                <enc n="CRm" v="0b0001"/>
                
                <enc n="op2" v="0b100"/>
            </encoding>
            <access_permission>
                <ps name="MRS" sections="1" secttype="access_permission">
                <pstext>
if !(IsFeatureImplemented(FEAT_FGT) &amp;&amp; IsFeatureImplemented(FEAT_AA64)) then
    Undefined();
elsif PSTATE.EL == EL0 then
    Undefined();
elsif PSTATE.EL == EL1 then
    if EffectiveHCR_EL2_NVx() IN {'1x1'} then
        X{64}(t) = NVMem(0x1D0);
    elsif EffectiveHCR_EL2_NVx() IN {'xx1'} then
        AArch64_SystemAccessTrap(EL2, 0x18);
    else
        Undefined();
    end;
elsif PSTATE.EL == EL2 then
    if HaveEL(EL3) &amp;&amp; EL3SDDUndefPriority() &amp;&amp; SCR_EL3().FGTEn == '0' then
        Undefined();
    elsif HaveEL(EL3) &amp;&amp; SCR_EL3().FGTEn == '0' then
        if EL3SDDUndef() then
            Undefined();
        else
            AArch64_SystemAccessTrap(EL3, 0x18);
        end;
    else
        X{64}(t) = HDFGRTR_EL2();
    end;
elsif PSTATE.EL == EL3 then
    X{64}(t) = HDFGRTR_EL2();
end;
                </pstext>
                </ps>
            </access_permission>
        </access_mechanism>
    
        
        <access_mechanism accessor="MSRregister HDFGRTR_EL2" type="SystemAccessor">
            <encoding>
            <access_instruction>MSR HDFGRTR_EL2, &lt;Xt&gt;</access_instruction>
                
                <enc n="op0" v="0b11"/>
                
                <enc n="op1" v="0b100"/>
                
                <enc n="CRn" v="0b0011"/>
                
                <enc n="CRm" v="0b0001"/>
                
                <enc n="op2" v="0b100"/>
            </encoding>
            <access_permission>
                <ps name="MSRregister" sections="1" secttype="access_permission">
                <pstext>
if !(IsFeatureImplemented(FEAT_FGT) &amp;&amp; IsFeatureImplemented(FEAT_AA64)) then
    Undefined();
elsif PSTATE.EL == EL0 then
    Undefined();
elsif PSTATE.EL == EL1 then
    if EffectiveHCR_EL2_NVx() IN {'1x1'} then
        NVMem(0x1D0) = X{64}(t);
    elsif EffectiveHCR_EL2_NVx() IN {'xx1'} then
        AArch64_SystemAccessTrap(EL2, 0x18);
    else
        Undefined();
    end;
elsif PSTATE.EL == EL2 then
    if HaveEL(EL3) &amp;&amp; EL3SDDUndefPriority() &amp;&amp; SCR_EL3().FGTEn == '0' then
        Undefined();
    elsif HaveEL(EL3) &amp;&amp; SCR_EL3().FGTEn == '0' then
        if EL3SDDUndef() then
            Undefined();
        else
            AArch64_SystemAccessTrap(EL3, 0x18);
        end;
    else
        HDFGRTR_EL2() = X{64}(t);
    end;
elsif PSTATE.EL == EL3 then
    HDFGRTR_EL2() = X{64}(t);
end;
                </pstext>
                </ps>
            </access_permission>
        </access_mechanism>

      </access_mechanisms>

      <arch_variants>
      </arch_variants>
  </register>
</registers>
<timestamp>2026-03-26 20:27:25</timestamp>
<commit_id>2026-03_rel</commit_id>
</register_page>