Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/iommu/iommu.h
Show First 20 Lines • Show All 50 Lines • ▼ Show 20 Lines | |||||
struct iommu_map_entry { | struct iommu_map_entry { | ||||
iommu_gaddr_t start; | iommu_gaddr_t start; | ||||
iommu_gaddr_t end; | iommu_gaddr_t end; | ||||
iommu_gaddr_t first; /* Least start in subtree */ | iommu_gaddr_t first; /* Least start in subtree */ | ||||
iommu_gaddr_t last; /* Greatest end in subtree */ | iommu_gaddr_t last; /* Greatest end in subtree */ | ||||
iommu_gaddr_t free_down; /* Max free space below the | iommu_gaddr_t free_down; /* Max free space below the | ||||
current R/B tree node */ | current R/B tree node */ | ||||
u_int flags; | u_int flags; | ||||
TAILQ_ENTRY(iommu_map_entry) dmamap_link; /* Link for dmamap entries */ | union { | ||||
TAILQ_ENTRY(iommu_map_entry) dmamap_link; /* DMA map entries */ | |||||
struct iommu_map_entry *tlb_flush_next; | |||||
}; | |||||
RB_ENTRY(iommu_map_entry) rb_entry; /* Links for domain entries */ | RB_ENTRY(iommu_map_entry) rb_entry; /* Links for domain entries */ | ||||
struct iommu_domain *domain; | struct iommu_domain *domain; | ||||
struct iommu_qi_genseq gseq; | struct iommu_qi_genseq gseq; | ||||
}; | }; | ||||
struct iommu_unit { | struct iommu_unit { | ||||
struct mtx lock; | struct mtx lock; | ||||
device_t dev; | device_t dev; | ||||
▲ Show 20 Lines • Show All 134 Lines • Show Last 20 Lines |