• Home
  • Raw
  • Download

Lines Matching refs:pasid

48 void intel_pasid_free_id(int pasid)  in intel_pasid_free_id()  argument
51 idr_remove(&pasid_idr, pasid); in intel_pasid_free_id()
55 void *intel_pasid_lookup_id(int pasid) in intel_pasid_lookup_id() argument
60 p = idr_find(&pasid_idr, pasid); in intel_pasid_lookup_id()
224 struct pasid_entry *intel_pasid_get_entry(struct device *dev, int pasid) in intel_pasid_get_entry() argument
233 if (WARN_ON(!pasid_table || pasid < 0 || in intel_pasid_get_entry()
234 pasid >= intel_pasid_get_dev_max_id(dev))) in intel_pasid_get_entry()
239 dir_index = pasid >> PASID_PDE_SHIFT; in intel_pasid_get_entry()
240 index = pasid & PASID_PTE_MASK; in intel_pasid_get_entry()
274 static void intel_pasid_clear_entry(struct device *dev, int pasid) in intel_pasid_clear_entry() argument
278 pe = intel_pasid_get_entry(dev, pasid); in intel_pasid_clear_entry()
400 u16 did, int pasid) in pasid_cache_invalidation_with_pasid() argument
404 desc.qw0 = QI_PC_DID(did) | QI_PC_PASID_SEL | QI_PC_PASID(pasid); in pasid_cache_invalidation_with_pasid()
413 iotlb_invalidation_with_pasid(struct intel_iommu *iommu, u16 did, u32 pasid) in iotlb_invalidation_with_pasid() argument
417 desc.qw0 = QI_EIOTLB_PASID(pasid) | QI_EIOTLB_DID(did) | in iotlb_invalidation_with_pasid()
428 struct device *dev, int pasid) in devtlb_invalidation_with_pasid() argument
445 struct device *dev, int pasid) in intel_pasid_tear_down_entry() argument
450 pte = intel_pasid_get_entry(dev, pasid); in intel_pasid_tear_down_entry()
455 intel_pasid_clear_entry(dev, pasid); in intel_pasid_tear_down_entry()
460 pasid_cache_invalidation_with_pasid(iommu, did, pasid); in intel_pasid_tear_down_entry()
461 iotlb_invalidation_with_pasid(iommu, did, pasid); in intel_pasid_tear_down_entry()
465 devtlb_invalidation_with_pasid(iommu, dev, pasid); in intel_pasid_tear_down_entry()
474 int pasid, u16 did, int flags) in intel_pasid_setup_first_level() argument
484 pte = intel_pasid_get_entry(dev, pasid); in intel_pasid_setup_first_level()
518 pasid_cache_invalidation_with_pasid(iommu, did, pasid); in intel_pasid_setup_first_level()
519 iotlb_invalidation_with_pasid(iommu, did, pasid); in intel_pasid_setup_first_level()
532 struct device *dev, int pasid) in intel_pasid_setup_second_level() argument
566 pte = intel_pasid_get_entry(dev, pasid); in intel_pasid_setup_second_level()
568 dev_err(dev, "Failed to get pasid entry of PASID %d\n", pasid); in intel_pasid_setup_second_level()
591 pasid_cache_invalidation_with_pasid(iommu, did, pasid); in intel_pasid_setup_second_level()
592 iotlb_invalidation_with_pasid(iommu, did, pasid); in intel_pasid_setup_second_level()
605 struct device *dev, int pasid) in intel_pasid_setup_pass_through() argument
610 pte = intel_pasid_get_entry(dev, pasid); in intel_pasid_setup_pass_through()
612 dev_err(dev, "Failed to get pasid entry of PASID %d\n", pasid); in intel_pasid_setup_pass_through()
634 pasid_cache_invalidation_with_pasid(iommu, did, pasid); in intel_pasid_setup_pass_through()
635 iotlb_invalidation_with_pasid(iommu, did, pasid); in intel_pasid_setup_pass_through()