|
204 | 204 | orr x0, x0, #(1 << 62)
|
205 | 205 |
|
206 | 206 | .Lskip_spe_fgt_\@:
|
| 207 | + |
| 208 | +.Lset_debug_fgt_\@: |
207 | 209 | msr_s SYS_HDFGRTR_EL2, x0
|
208 | 210 | msr_s SYS_HDFGWTR_EL2, x0
|
209 | 211 |
|
210 | 212 | mov x0, xzr
|
211 | 213 | mrs x1, id_aa64pfr1_el1
|
212 | 214 | ubfx x1, x1, #ID_AA64PFR1_EL1_SME_SHIFT, #4
|
213 |
| - cbz x1, .Lskip_debug_fgt_\@ |
| 215 | + cbz x1, .Lskip_sme_fgt_\@ |
214 | 216 |
|
215 | 217 | /* Disable nVHE traps of TPIDR2 and SMPRI */
|
216 | 218 | orr x0, x0, #HFGxTR_EL2_nSMPRI_EL1_MASK
|
217 | 219 | orr x0, x0, #HFGxTR_EL2_nTPIDR2_EL0_MASK
|
218 | 220 |
|
219 |
| -.Lskip_debug_fgt_\@: |
| 221 | +.Lskip_sme_fgt_\@: |
220 | 222 | mrs_s x1, SYS_ID_AA64MMFR3_EL1
|
221 | 223 | ubfx x1, x1, #ID_AA64MMFR3_EL1_S1PIE_SHIFT, #4
|
222 | 224 | cbz x1, .Lskip_pie_fgt_\@
|
|
237 | 239 | /* GCS depends on PIE so we don't check it if PIE is absent */
|
238 | 240 | mrs_s x1, SYS_ID_AA64PFR1_EL1
|
239 | 241 | ubfx x1, x1, #ID_AA64PFR1_EL1_GCS_SHIFT, #4
|
240 |
| - cbz x1, .Lset_fgt_\@ |
| 242 | + cbz x1, .Lskip_gce_fgt_\@ |
241 | 243 |
|
242 | 244 | /* Disable traps of access to GCS registers at EL0 and EL1 */
|
243 | 245 | orr x0, x0, #HFGxTR_EL2_nGCS_EL1_MASK
|
244 | 246 | orr x0, x0, #HFGxTR_EL2_nGCS_EL0_MASK
|
245 | 247 |
|
| 248 | +.Lskip_gce_fgt_\@: |
| 249 | + |
246 | 250 | .Lset_fgt_\@:
|
247 | 251 | msr_s SYS_HFGRTR_EL2, x0
|
248 | 252 | msr_s SYS_HFGWTR_EL2, x0
|
|
0 commit comments