Lines Matching full:unit

43 	struct amdiommu_unit *unit;	/* (c) */  member
65 u_int unit_id; /* Hypertransport Unit ID, deprecated */
104 #define AMD2IOMMU(unit) (&((unit)->iommu)) argument
105 #define IOMMU2AMD(unit) \ argument
106 __containerof((unit), struct amdiommu_unit, iommu)
108 #define AMDIOMMU_LOCK(unit) mtx_lock(&AMD2IOMMU(unit)->lock) argument
109 #define AMDIOMMU_UNLOCK(unit) mtx_unlock(&AMD2IOMMU(unit)->lock) argument
110 #define AMDIOMMU_ASSERT_LOCKED(unit) mtx_assert(&AMD2IOMMU(unit)->lock, \ argument
113 #define AMDIOMMU_EVENT_LOCK(unit) mtx_lock_spin(&(unit)->event_lock) argument
114 #define AMDIOMMU_EVENT_UNLOCK(unit) mtx_unlock_spin(&(unit)->event_lock) argument
115 #define AMDIOMMU_EVENT_ASSERT_LOCKED(unit) \ argument
116 mtx_assert(&(unit)->event_lock, MA_OWNED)
127 #define CTX2AMD(ctx) (CTX2DOM(ctx)->unit)
128 #define DOM2AMD(domain) ((domain)->unit)
144 amdiommu_read4(const struct amdiommu_unit *unit, int reg) in amdiommu_read4() argument
147 return (bus_read_4(unit->mmio_res, reg)); in amdiommu_read4()
151 amdiommu_read8(const struct amdiommu_unit *unit, int reg) in amdiommu_read8() argument
156 low = bus_read_4(unit->mmio_res, reg); in amdiommu_read8()
157 high = bus_read_4(unit->mmio_res, reg + 4); in amdiommu_read8()
160 return (bus_read_8(unit->mmio_res, reg)); in amdiommu_read8()
165 amdiommu_write4(const struct amdiommu_unit *unit, int reg, uint32_t val) in amdiommu_write4() argument
167 bus_write_4(unit->mmio_res, reg, val); in amdiommu_write4()
171 amdiommu_write8(const struct amdiommu_unit *unit, int reg, uint64_t val) in amdiommu_write8() argument
178 bus_write_4(unit->mmio_res, reg, low); in amdiommu_write8()
179 bus_write_4(unit->mmio_res, reg + 4, high); in amdiommu_write8()
181 bus_write_8(unit->mmio_res, reg, val); in amdiommu_write8()
192 int amdiommu_init_cmd(struct amdiommu_unit *unit);
193 void amdiommu_fini_cmd(struct amdiommu_unit *unit);
195 void amdiommu_event_intr(struct amdiommu_unit *unit, uint64_t status);
196 int amdiommu_init_event(struct amdiommu_unit *unit);
197 void amdiommu_fini_event(struct amdiommu_unit *unit);
207 int amdiommu_init_irt(struct amdiommu_unit *unit);
208 void amdiommu_fini_irt(struct amdiommu_unit *unit);
216 struct amdiommu_ctx *amdiommu_get_ctx_for_dev(struct amdiommu_unit *unit,
221 struct amdiommu_ctx *amdiommu_find_ctx_locked(struct amdiommu_unit *unit,
225 struct amdiommu_domain *amdiommu_find_domain(struct amdiommu_unit *unit,
230 void amdiommu_qi_invalidate_ir_locked(struct amdiommu_unit *unit,
232 void amdiommu_qi_invalidate_ir_locked_nowait(struct amdiommu_unit *unit,