| 1 | <!-- interpreter=xml2reg args='-t' --> |
| 2 | <register_list> |
| 3 | <register name="L2_DIAG_DATA_ADDRESSING_FIELDS (L2_DIAG_DATA_ADDRESSING_FIELDS)"> |
| 4 | <class_name>N2_L2DiagDataAddressingFields</class_name> |
| 5 | <submodule>N2</submodule> |
| 6 | <comment> |
| 7 | This class is based on N2 PRM 1.1 Table 28-43 and splits a virtual |
| 8 | address into the bit fields needed to access the L2 diagnostic data |
| 9 | address space. |
| 10 | </comment> |
| 11 | <priv>yes</priv> |
| 12 | <field name="RSVD2"> |
| 13 | <start_offset>0</start_offset> |
| 14 | <end_offset>2</end_offset> |
| 15 | <initial_value>0</initial_value> |
| 16 | <protection>RO</protection> |
| 17 | <field_type>ZERO</field_type> |
| 18 | <comment> |
| 19 | All zero for 64-bit access. |
| 20 | </comment> |
| 21 | <format type="hex"/> |
| 22 | </field> |
| 23 | <field name="WORD"> |
| 24 | <start_offset>3</start_offset> |
| 25 | <end_offset>5</end_offset> |
| 26 | <initial_value>0</initial_value> |
| 27 | <protection>RW</protection> |
| 28 | <field_type>NORMAL</field_type> |
| 29 | <comment> |
| 30 | Selects 64-bit word in 64-byte cache line. |
| 31 | </comment> |
| 32 | <format type="hex"/> |
| 33 | </field> |
| 34 | <field name="BANK"> |
| 35 | <start_offset>6</start_offset> |
| 36 | <end_offset>8</end_offset> |
| 37 | <initial_value>0</initial_value> |
| 38 | <protection>RW</protection> |
| 39 | <field_type>NORMAL</field_type> |
| 40 | <comment> |
| 41 | Selects bank containing the cache line. |
| 42 | </comment> |
| 43 | <format type="hex"/> |
| 44 | </field> |
| 45 | <field name="SET"> |
| 46 | <start_offset>9</start_offset> |
| 47 | <end_offset>17</end_offset> |
| 48 | <initial_value>0</initial_value> |
| 49 | <protection>RW</protection> |
| 50 | <field_type>NORMAL</field_type> |
| 51 | <comment> |
| 52 | Selects cache set containing the cache line. Assumes L2 cache |
| 53 | hashing is disabled. |
| 54 | </comment> |
| 55 | </field> |
| 56 | <field name="WAY"> |
| 57 | <start_offset>18</start_offset> |
| 58 | <end_offset>21</end_offset> |
| 59 | <initial_value>0</initial_value> |
| 60 | <protection>RW</protection> |
| 61 | <field_type>NORMAL</field_type> |
| 62 | <comment> |
| 63 | Selects way in cache set. |
| 64 | </comment> |
| 65 | </field> |
| 66 | <field name="ODDEVEN"> |
| 67 | <start_offset>22</start_offset> |
| 68 | <end_offset>22</end_offset> |
| 69 | <initial_value>0</initial_value> |
| 70 | <protection>RW</protection> |
| 71 | <field_type>NORMAL</field_type> |
| 72 | <comment> |
| 73 | Selects 32-bit word for 64-bit word selected by WORD field. |
| 74 | </comment> |
| 75 | </field> |
| 76 | <field name="RSVD1"> |
| 77 | <start_offset>23</start_offset> |
| 78 | <end_offset>31</end_offset> |
| 79 | <initial_value>0</initial_value> |
| 80 | <protection>RO</protection> |
| 81 | <field_type>ZERO</field_type> |
| 82 | <comment> |
| 83 | Reserved, can be any value in PRM. In Riesling, we limit to 0. |
| 84 | </comment> |
| 85 | </field> |
| 86 | <field name="SELECT"> |
| 87 | <start_offset>32</start_offset> |
| 88 | <end_offset>39</end_offset> |
| 89 | <initial_value>0xA0</initial_value> |
| 90 | <protection>RO</protection> |
| 91 | <field_type>NORMAL</field_type> |
| 92 | <comment> |
| 93 | Must be 0xA0, 0xA1, 0xB0, or 0xB1 to select L2 diagnostic data access. |
| 94 | </comment> |
| 95 | </field> |
| 96 | <field name="RSVD0"> |
| 97 | <start_offset>40</start_offset> |
| 98 | <end_offset>63</end_offset> |
| 99 | <initial_value>0</initial_value> |
| 100 | <protection>RO</protection> |
| 101 | <field_type>ZERO</field_type> |
| 102 | <comment> |
| 103 | Reserved in PRM. In Riesling, we limit to 0. |
| 104 | </comment> |
| 105 | </field> |
| 106 | </register> |
| 107 | </register_list> |