| /OK3568_Linux_fs/kernel/drivers/iommu/ |
| H A D | io-pgtable-arm.c | 943 typeof(&cfg->arm_lpae_s2_cfg.vtcr) vtcr = &cfg->arm_lpae_s2_cfg.vtcr; in arm_64_lpae_alloc_pgtable_s2() local 969 vtcr->sh = ARM_LPAE_TCR_SH_IS; in arm_64_lpae_alloc_pgtable_s2() 970 vtcr->irgn = ARM_LPAE_TCR_RGN_WBWA; in arm_64_lpae_alloc_pgtable_s2() 971 vtcr->orgn = ARM_LPAE_TCR_RGN_WBWA; in arm_64_lpae_alloc_pgtable_s2() 973 vtcr->sh = ARM_LPAE_TCR_SH_OS; in arm_64_lpae_alloc_pgtable_s2() 974 vtcr->irgn = ARM_LPAE_TCR_RGN_NC; in arm_64_lpae_alloc_pgtable_s2() 975 vtcr->orgn = ARM_LPAE_TCR_RGN_NC; in arm_64_lpae_alloc_pgtable_s2() 982 vtcr->tg = ARM_LPAE_TCR_TG0_4K; in arm_64_lpae_alloc_pgtable_s2() 986 vtcr->tg = ARM_LPAE_TCR_TG0_16K; in arm_64_lpae_alloc_pgtable_s2() 989 vtcr->tg = ARM_LPAE_TCR_TG0_64K; in arm_64_lpae_alloc_pgtable_s2() [all …]
|
| /OK3568_Linux_fs/kernel/arch/arm64/include/asm/ |
| H A D | kvm_mmu.h | 144 #define kvm_phys_shift(kvm) VTCR_EL2_IPA(kvm->arch.vtcr) 273 static __always_inline void __load_stage2(struct kvm_s2_mmu *mmu, unsigned long vtcr) in __load_stage2() argument 275 write_sysreg(vtcr, vtcr_el2); in __load_stage2() 288 __load_stage2(mmu, kern_hyp_va(mmu->arch)->vtcr); in __load_guest_stage2()
|
| H A D | kvm_arm.h | 190 #define VTCR_EL2_LVLS(vtcr) \ argument 191 VTCR_EL2_SL0_TO_LVLS(((vtcr) & VTCR_EL2_SL0_MASK) >> VTCR_EL2_SL0_SHIFT) 194 #define VTCR_EL2_IPA(vtcr) (64 - ((vtcr) & VTCR_EL2_T0SZ_MASK)) argument
|
| H A D | stage2_pgtable.h | 31 #define kvm_stage2_levels(kvm) VTCR_EL2_LVLS(kvm->arch.vtcr)
|
| H A D | kvm_asm.h | 165 unsigned long vtcr; member
|
| H A D | kvm_host.h | 108 u64 vtcr; member
|
| /OK3568_Linux_fs/kernel/drivers/iommu/arm/arm-smmu/ |
| H A D | arm-smmu.h | 410 FIELD_PREP(ARM_SMMU_VTCR_PS, cfg->arm_lpae_s2_cfg.vtcr.ps) | in arm_smmu_lpae_vtcr() 411 FIELD_PREP(ARM_SMMU_VTCR_TG0, cfg->arm_lpae_s2_cfg.vtcr.tg) | in arm_smmu_lpae_vtcr() 412 FIELD_PREP(ARM_SMMU_VTCR_SH0, cfg->arm_lpae_s2_cfg.vtcr.sh) | in arm_smmu_lpae_vtcr() 413 FIELD_PREP(ARM_SMMU_VTCR_ORGN0, cfg->arm_lpae_s2_cfg.vtcr.orgn) | in arm_smmu_lpae_vtcr() 414 FIELD_PREP(ARM_SMMU_VTCR_IRGN0, cfg->arm_lpae_s2_cfg.vtcr.irgn) | in arm_smmu_lpae_vtcr() 415 FIELD_PREP(ARM_SMMU_VTCR_SL0, cfg->arm_lpae_s2_cfg.vtcr.sl) | in arm_smmu_lpae_vtcr() 416 FIELD_PREP(ARM_SMMU_VTCR_T0SZ, cfg->arm_lpae_s2_cfg.vtcr.tsz); in arm_smmu_lpae_vtcr()
|
| /OK3568_Linux_fs/kernel/arch/arm64/kvm/hyp/nvhe/ |
| H A D | mem_protect.c | 96 host_kvm.arch.vtcr = kvm_get_vtcr(id_aa64mmfr0_el1_sys_val, in prepare_host_vtcr() 132 params->vtcr = host_kvm.arch.vtcr; in __pkvm_prot_finalize() 137 __load_stage2(&host_kvm.arch.mmu, host_kvm.arch.vtcr); in __pkvm_prot_finalize()
|
| /OK3568_Linux_fs/kernel/arch/arm64/kvm/hyp/ |
| H A D | pgtable.c | 482 u64 vtcr = VTCR_EL2_FLAGS; in kvm_get_vtcr() local 485 vtcr |= kvm_get_parange(mmfr0) << VTCR_EL2_PS_SHIFT; in kvm_get_vtcr() 486 vtcr |= VTCR_EL2_T0SZ(phys_shift); in kvm_get_vtcr() 494 vtcr |= VTCR_EL2_LVLS_TO_SL0(lvls); in kvm_get_vtcr() 501 vtcr |= VTCR_EL2_HA; in kvm_get_vtcr() 504 vtcr |= (get_vmid_bits(mmfr1) == 16) ? in kvm_get_vtcr() 508 return vtcr; in kvm_get_vtcr() 1018 u64 vtcr = arch->vtcr; in kvm_pgtable_stage2_init_flags() local 1019 u32 ia_bits = VTCR_EL2_IPA(vtcr); in kvm_pgtable_stage2_init_flags() 1020 u32 sl0 = FIELD_GET(VTCR_EL2_SL0_MASK, vtcr); in kvm_pgtable_stage2_init_flags()
|
| /OK3568_Linux_fs/kernel/arch/arm64/kvm/hyp/include/nvhe/ |
| H A D | mem_protect.h | 32 __load_stage2(&host_kvm.arch.mmu, host_kvm.arch.vtcr); in __load_host_stage2()
|
| /OK3568_Linux_fs/kernel/drivers/iommu/arm/arm-smmu-v3/ |
| H A D | arm-smmu-v3.c | 1289 FIELD_PREP(STRTAB_STE_2_VTCR, s2_cfg->vtcr) | in arm_smmu_write_strtab_ent() 1904 typeof(&pgtbl_cfg->arm_lpae_s2_cfg.vtcr) vtcr; in arm_smmu_domain_finalise_s2() local 1910 vtcr = &pgtbl_cfg->arm_lpae_s2_cfg.vtcr; in arm_smmu_domain_finalise_s2() 1913 cfg->vtcr = FIELD_PREP(STRTAB_STE_2_VTCR_S2T0SZ, vtcr->tsz) | in arm_smmu_domain_finalise_s2() 1914 FIELD_PREP(STRTAB_STE_2_VTCR_S2SL0, vtcr->sl) | in arm_smmu_domain_finalise_s2() 1915 FIELD_PREP(STRTAB_STE_2_VTCR_S2IR0, vtcr->irgn) | in arm_smmu_domain_finalise_s2() 1916 FIELD_PREP(STRTAB_STE_2_VTCR_S2OR0, vtcr->orgn) | in arm_smmu_domain_finalise_s2() 1917 FIELD_PREP(STRTAB_STE_2_VTCR_S2SH0, vtcr->sh) | in arm_smmu_domain_finalise_s2() 1918 FIELD_PREP(STRTAB_STE_2_VTCR_S2TG, vtcr->tg) | in arm_smmu_domain_finalise_s2() 1919 FIELD_PREP(STRTAB_STE_2_VTCR_S2PS, vtcr->ps); in arm_smmu_domain_finalise_s2()
|
| H A D | arm-smmu-v3.h | 570 u64 vtcr; member
|
| /OK3568_Linux_fs/kernel/include/linux/ |
| H A D | io-pgtable.h | 120 } vtcr; member
|
| /OK3568_Linux_fs/kernel/arch/arm64/kvm/ |
| H A D | reset.c | 393 kvm->arch.vtcr = kvm_get_vtcr(mmfr0, mmfr1, phys_shift); in kvm_arm_setup_stage2()
|
| H A D | arm.c | 1443 params->vttbr = params->vtcr = 0; in cpu_prepare_hyp_mode()
|
| /OK3568_Linux_fs/kernel/arch/arm64/kernel/ |
| H A D | asm-offsets.c | 129 DEFINE(NVHE_INIT_VTCR, offsetof(struct kvm_nvhe_init_params, vtcr)); in main()
|