iommu_softc
iommu_set_rtaddr(struct iommu_softc *iommu, paddr_t paddr)
iommu_alloc_page(struct iommu_softc *iommu, paddr_t *paddr, int nowait)
iommu_issue_qi(struct iommu_softc *iommu, struct qi_entry *qi)
iommu_flush_tlb_qi(struct iommu_softc *iommu, int mode, int did)
iommu_flush_ctx_qi(struct iommu_softc *iommu, int mode, int did,
iommu_flush_write_buffer(struct iommu_softc *iommu)
struct iommu_softc *iommu;
iommu_flush_cache(struct iommu_softc *iommu, void *addr, size_t size)
iommu_flush_tlb_reg(struct iommu_softc *iommu, int mode, int did)
iommu_flush_tlb(struct iommu_softc *iommu, int mode, int did)
iommu_flush_tlb_page(struct iommu_softc *iommu, int did, bus_addr_t iova)
iommu_flush_tlb_segs(struct iommu_softc *iommu, int did,
iommu_flush_ctx(struct iommu_softc *iommu, int mode, int did, int sid, int fm)
iommu_enable_qi(struct iommu_softc *iommu, int enable)
iommu_enable_translation(struct iommu_softc *iommu, int enable)
iommu_init(struct acpidmar_softc *sc, struct iommu_softc *iommu,
struct iommu_softc *iommu;
iommu_read_4(struct iommu_softc *iommu, int reg)
iommu_write_4(struct iommu_softc *iommu, int reg, uint32_t v)
iommu_read_8(struct iommu_softc *iommu, int reg)
iommu_write_8(struct iommu_softc *iommu, int reg, uint64_t v)
TAILQ_ENTRY(iommu_softc)link;
domain_create(struct iommu_softc *iommu, int did)
struct iommu_softc *iommu;
struct iommu_softc *iommu;
struct iommu_softc *iommu;
struct iommu_softc *iommu;
iommu_bad(struct iommu_softc *sc)
struct iommu_softc *iommu;
iommu_enabled(struct iommu_softc *sc)
int ivhd_iommu_init(struct acpidmar_softc *, struct iommu_softc *,
int _ivhd_issue_command(struct iommu_softc *, const struct ivhd_command *);
void ivhd_show_event(struct iommu_softc *, struct ivhd_event *evt, int);
int ivhd_issue_command(struct iommu_softc *, const struct ivhd_command *, int);
int ivhd_invalidate_domain(struct iommu_softc *, int);
void ivhd_intr_map(struct iommu_softc *, int);
void ivhd_checkerr(struct iommu_softc *iommu);
struct iommu_softc *iommu = ctx;
ivhd_intr_map(struct iommu_softc *iommu, int devid) {
ivhd_showpage(struct iommu_softc *iommu, int sid, paddr_t paddr)
ivhd_show_event(struct iommu_softc *iommu, struct ivhd_event *evt, int head)
TAILQ_HEAD(,iommu_softc)sc_drhds;
ivhd_poll_events(struct iommu_softc *iommu)
_ivhd_issue_command(struct iommu_softc *iommu, const struct ivhd_command *cmd)
ivhd_issue_command(struct iommu_softc *iommu, const struct ivhd_command *cmd,
ivhd_flush_devtab(struct iommu_softc *iommu, int devid)
ivhd_invalidate_iommu_all(struct iommu_softc *iommu)
ivhd_invalidate_interrupt_table(struct iommu_softc *iommu, int devid)
ivhd_invalidate_domain(struct iommu_softc *iommu, int did)
ivhd_completion_wait(struct iommu_softc *iommu)
ivhd_invalidate_page(struct iommu_softc *iommu, int did, bus_addr_t iova)
ivhd_invalidate_segs(struct iommu_softc *iommu, int did, bus_dma_segment_t *segs,
ivhd_showreg(struct iommu_softc *iommu)
ivhd_checkerr(struct iommu_softc *iommu)
ivhd_showdte(struct iommu_softc *iommu)
struct domain *domain_create(struct iommu_softc *, int);
ivhd_showcmd(struct iommu_softc *iommu)
ivhd_iommu_init(struct acpidmar_softc *sc, struct iommu_softc *iommu,
struct iommu_softc *iommu;
void iommu_write_4(struct iommu_softc *, int, uint32_t);
uint32_t iommu_read_4(struct iommu_softc *, int);
void iommu_write_8(struct iommu_softc *, int, uint64_t);
uint64_t iommu_read_8(struct iommu_softc *, int);
void iommu_showfault(struct iommu_softc *, int,
void iommu_showcfg(struct iommu_softc *, int);
int iommu_init(struct acpidmar_softc *, struct iommu_softc *,
int iommu_enable_translation(struct iommu_softc *, int);
void iommu_enable_qi(struct iommu_softc *, int);
acpiivhd_activate(struct iommu_softc *iommu, int act)
void iommu_flush_cache(struct iommu_softc *, void *, size_t);
void *iommu_alloc_page(struct iommu_softc *, paddr_t *, int);
struct iommu_softc *iommu;
void iommu_flush_write_buffer(struct iommu_softc *);
void iommu_issue_qi(struct iommu_softc *, struct qi_entry *);
void iommu_flush_ctx(struct iommu_softc *, int, int, int, int);
void iommu_flush_ctx_qi(struct iommu_softc *, int, int, int, int);
void iommu_flush_tlb(struct iommu_softc *, int, int);
static void iommu_flush_tlb_reg(struct iommu_softc *, int, int);
void iommu_flush_tlb_qi(struct iommu_softc *, int, int);
void iommu_flush_tlb_page(struct iommu_softc *, int, bus_addr_t);
struct iommu_softc *iommu = ip->iommu;
static void iommu_flush_tlb_segs(struct iommu_softc *, int, bus_dma_segment_t *, int);
struct iommu_softc *iommu = ip->iommu;
struct iommu_softc *iommu = ip->iommu;
static int ivhd_invalidate_page(struct iommu_softc *, int, bus_addr_t);
static void ivhd_completion_wait(struct iommu_softc *);
static void ivhd_invalidate_segs(struct iommu_softc *, int, bus_dma_segment_t *, int);
struct iommu_softc *iommu = ctx;
void iommu_set_rtaddr(struct iommu_softc *, paddr_t);
struct iommu_softc *iommu = ctx;
iommu_showcfg(struct iommu_softc *iommu, int sid)
iommu_showfault(struct iommu_softc *iommu, int fri, struct fault_entry *fe)
int ivhd_poll_events(struct iommu_softc *);
void ivhd_showreg(struct iommu_softc *);
void ivhd_showdte(struct iommu_softc *);
void ivhd_showcmd(struct iommu_softc *);
struct iommu_softc *iommu;
struct iommu_softc *iommu;
struct iommu_softc *iommu = dom->iommu;
struct iommu_softc *iommu;
struct iommu_softc *iommu = dom->iommu;
struct iommu_softc *iommu;
struct iommu_softc *iommu;
struct iommu_softc *iommu;
struct iommu_softc;
struct iommu_softc;
int ivhd_flush_devtab(struct iommu_softc *, int);
int ivhd_invalidate_iommu_all(struct iommu_softc *);
int ivhd_invalidate_interrupt_table(struct iommu_softc *, int);
int ivhd_issue_command(struct iommu_softc *, const struct ivhd_command *, int);
int ivhd_invalidate_domain(struct iommu_softc *, int);