1/* 2 * Copyright (c) 2010 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 86 unchanged lines hidden (view full) --- 95 if (supersection()) 96 panic("Super sections not implemented\n"); 97 return bits(data, 31,20); 98 } 99 100 /** Is the translation global (no asid used)? */ 101 bool global() const 102 { |
103 return bits(data, 4); |
104 } 105 106 /** Is the translation not allow execution? */ 107 bool xn() const 108 { 109 return bits(data, 17); 110 } 111 --- 13 unchanged lines hidden (view full) --- 125 Addr l2Addr() const 126 { 127 return mbits(data, 31,10); 128 } 129 130 /** Memory region attributes: ARM DDI 0406B: B3-32 */ 131 uint8_t texcb() const 132 { |
133 return bits(data, 2) | bits(data,3) << 1 | bits(data, 14, 12) << 2; |
134 } 135 136 }; 137 138 /** Level 2 page table descriptor */ 139 struct L2Descriptor { 140 141 uint32_t data; --- 27 unchanged lines hidden (view full) --- 169 { 170 return bits(data, 5, 4) | (bits(data, 9) << 2); 171 } 172 173 /** Memory region attributes: ARM DDI 0406B: B3-32 */ 174 uint8_t texcb() const 175 { 176 return large() ? |
177 (bits(data, 2) | (bits(data,3) << 1) | (bits(data, 14, 12) << 2)) : 178 (bits(data, 2) | (bits(data,3) << 1) | (bits(data, 8, 6) << 2)); |
179 } 180 181 /** Return the physical frame, bits shifted right */ 182 Addr pfn() const 183 { 184 return large() ? bits(data, 31, 16) : bits(data, 31, 12); 185 } 186 --- 86 unchanged lines hidden --- |