Lines Matching refs:dmar_unit

36 struct dmar_unit;
66 struct dmar_unit *dmar; /* (c) */
89 __containerof((dmar), struct dmar_unit, iommu)
107 struct dmar_unit { struct
169 struct dmar_unit *dmar_find(device_t dev, bool verbose); argument
170 struct dmar_unit *dmar_find_hpet(device_t dev, uint16_t *rid);
171 struct dmar_unit *dmar_find_ioapic(u_int apic_id, uint16_t *rid);
174 bool dmar_pglvl_supported(struct dmar_unit *unit, int pglvl);
176 int dmar_maxaddr2mgaw(struct dmar_unit *unit, iommu_gaddr_t maxaddr,
180 int calc_am(struct dmar_unit *unit, iommu_gaddr_t base, iommu_gaddr_t size,
182 int dmar_load_root_entry_ptr(struct dmar_unit *unit);
183 int dmar_inv_ctx_glob(struct dmar_unit *unit);
184 int dmar_inv_iotlb_glob(struct dmar_unit *unit);
185 int dmar_flush_write_bufs(struct dmar_unit *unit);
186 void dmar_flush_pte_to_ram(struct dmar_unit *unit, iommu_pte_t *dst);
187 void dmar_flush_ctx_to_ram(struct dmar_unit *unit, dmar_ctx_entry_t *dst);
188 void dmar_flush_root_to_ram(struct dmar_unit *unit, dmar_root_entry_t *dst);
189 int dmar_disable_protected_regions(struct dmar_unit *unit);
190 int dmar_enable_translation(struct dmar_unit *unit);
191 int dmar_disable_translation(struct dmar_unit *unit);
192 int dmar_load_irt_ptr(struct dmar_unit *unit);
193 int dmar_enable_ir(struct dmar_unit *unit);
194 int dmar_disable_ir(struct dmar_unit *unit);
195 bool dmar_barrier_enter(struct dmar_unit *dmar, u_int barrier_id);
196 void dmar_barrier_exit(struct dmar_unit *dmar, u_int barrier_id);
203 int dmar_init_fault_log(struct dmar_unit *unit);
204 void dmar_fini_fault_log(struct dmar_unit *unit);
209 int dmar_init_qi(struct dmar_unit *unit);
210 void dmar_fini_qi(struct dmar_unit *unit);
215 void dmar_qi_invalidate_ctx_glob_locked(struct dmar_unit *unit);
216 void dmar_qi_invalidate_iotlb_glob_locked(struct dmar_unit *unit);
217 void dmar_qi_invalidate_iec_glob(struct dmar_unit *unit);
218 void dmar_qi_invalidate_iec(struct dmar_unit *unit, u_int start, u_int cnt);
232 struct dmar_ctx *dmar_get_ctx_for_dev(struct dmar_unit *dmar, device_t dev,
234 struct dmar_ctx *dmar_get_ctx_for_devpath(struct dmar_unit *dmar, uint16_t rid,
240 struct dmar_ctx *dmar_find_ctx_locked(struct dmar_unit *dmar, uint16_t rid);
253 void dmar_quirks_post_ident(struct dmar_unit *dmar);
256 int dmar_init_irt(struct dmar_unit *unit);
257 void dmar_fini_irt(struct dmar_unit *unit);
272 dmar_read4(const struct dmar_unit *unit, int reg) in dmar_read4()
279 dmar_read8(const struct dmar_unit *unit, int reg) in dmar_read8()
293 dmar_write4(const struct dmar_unit *unit, int reg, uint32_t val) in dmar_write4()
304 dmar_write8(const struct dmar_unit *unit, int reg, uint64_t val) in dmar_write8()