sbi_hfence.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * SPDX-License-Identifier: BSD-2-Clause
  3. *
  4. * Copyright (c) 2019 Western Digital Corporation or its affiliates.
  5. *
  6. * Authors:
  7. * Atish Patra <atish.patra@wdc.com>
  8. * Anup Patel <anup.patel@wdc.com>
  9. */
  10. #ifndef __SBI_FENCE_H__
  11. #define __SBI_FENCE_H__
  12. /** Invalidate Stage2 TLBs for given VMID and guest physical address */
  13. void __sbi_hfence_gvma_vmid_gpa(unsigned long gpa_divby_4,
  14. unsigned long vmid);
  15. /** Invalidate Stage2 TLBs for given VMID */
  16. void __sbi_hfence_gvma_vmid(unsigned long vmid);
  17. /** Invalidate Stage2 TLBs for given guest physical address */
  18. void __sbi_hfence_gvma_gpa(unsigned long gpa_divby_4);
  19. /** Invalidate all possible Stage2 TLBs */
  20. void __sbi_hfence_gvma_all(void);
  21. /** Invalidate unified TLB entries for given asid and guest virtual address */
  22. void __sbi_hfence_vvma_asid_va(unsigned long va, unsigned long asid);
  23. /** Invalidate unified TLB entries for given ASID for a guest*/
  24. void __sbi_hfence_vvma_asid(unsigned long asid);
  25. /** Invalidate unified TLB entries for a given guest virtual address */
  26. void __sbi_hfence_vvma_va(unsigned long va);
  27. /** Invalidate all possible Stage2 TLBs */
  28. void __sbi_hfence_vvma_all(void);
  29. #endif