1 /* SPDX-License-Identifier: GPL-2.0 */ 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* DTLB ** ICACHE line 1: Context 0 check and 2 /* DTLB ** ICACHE line 1: Context 0 check and TSB load */ 3 ldxa [%g0] ASI_DMMU_TSB_8KB_PTR, %g 3 ldxa [%g0] ASI_DMMU_TSB_8KB_PTR, %g1 ! Get TSB 8K pointer 4 ldxa [%g0] ASI_DMMU, %g6 4 ldxa [%g0] ASI_DMMU, %g6 ! Get TAG TARGET 5 srlx %g6, 48, %g5 5 srlx %g6, 48, %g5 ! Get context 6 sllx %g6, 22, %g6 6 sllx %g6, 22, %g6 ! Zero out context 7 brz,pn %g5, kvmap_dtlb 7 brz,pn %g5, kvmap_dtlb ! Context 0 processing 8 srlx %g6, 22, %g6 8 srlx %g6, 22, %g6 ! Delay slot 9 TSB_LOAD_QUAD(%g1, %g4) 9 TSB_LOAD_QUAD(%g1, %g4) ! Load TSB entry 10 cmp %g4, %g6 10 cmp %g4, %g6 ! Compare TAG 11 11 12 /* DTLB ** ICACHE line 2: TSB compare and TLB 12 /* DTLB ** ICACHE line 2: TSB compare and TLB load */ 13 bne,pn %xcc, tsb_miss_dtlb 13 bne,pn %xcc, tsb_miss_dtlb ! Miss 14 mov FAULT_CODE_DTLB, %g3 14 mov FAULT_CODE_DTLB, %g3 15 stxa %g5, [%g0] ASI_DTLB_DATA_IN 15 stxa %g5, [%g0] ASI_DTLB_DATA_IN ! Load TLB 16 retry 16 retry ! Trap done 17 nop 17 nop 18 nop 18 nop 19 nop 19 nop 20 nop 20 nop 21 21 22 /* DTLB ** ICACHE line 3: 22 /* DTLB ** ICACHE line 3: */ 23 nop 23 nop 24 nop 24 nop 25 nop 25 nop 26 nop 26 nop 27 nop 27 nop 28 nop 28 nop 29 nop 29 nop 30 nop 30 nop 31 31 32 /* DTLB ** ICACHE line 4: 32 /* DTLB ** ICACHE line 4: */ 33 nop 33 nop 34 nop 34 nop 35 nop 35 nop 36 nop 36 nop 37 nop 37 nop 38 nop 38 nop 39 nop 39 nop 40 nop 40 nop
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.