• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/arch/arm/plat-omap/include/plat/

Lines Matching refs:iommu

2  * omap iommu: main structures
28 struct iommu {
40 * but share it globally for each iommu.
50 int (*isr)(struct iommu *obj);
52 void *ctx; /* iommu context: registres saved area */
81 int (*enable)(struct iommu *obj);
82 void (*disable)(struct iommu *obj);
83 void (*set_twl)(struct iommu *obj, bool on);
84 u32 (*fault_isr)(struct iommu *obj, u32 *ra);
86 void (*tlb_read_cr)(struct iommu *obj, struct cr_regs *cr);
87 void (*tlb_load_cr)(struct iommu *obj, struct cr_regs *cr);
89 struct cr_regs *(*alloc_cr)(struct iommu *obj, struct iotlb_entry *e);
93 ssize_t (*dump_cr)(struct iommu *obj, struct cr_regs *cr, char *buf);
97 void (*save_ctx)(struct iommu *obj);
98 void (*restore_ctx)(struct iommu *obj);
99 ssize_t (*dump_ctx)(struct iommu *obj, char *buf, ssize_t len);
109 #error "iommu for this processor not implemented yet"
146 extern int load_iotlb_entry(struct iommu *obj, struct iotlb_entry *e);
147 extern void iommu_set_twl(struct iommu *obj, bool on);
148 extern void flush_iotlb_page(struct iommu *obj, u32 da);
149 extern void flush_iotlb_range(struct iommu *obj, u32 start, u32 end);
150 extern void flush_iotlb_all(struct iommu *obj);
152 extern int iopgtable_store_entry(struct iommu *obj, struct iotlb_entry *e);
153 extern size_t iopgtable_clear_entry(struct iommu *obj, u32 iova);
155 extern struct iommu *iommu_get(const char *name);
156 extern void iommu_put(struct iommu *obj);
158 extern void iommu_save_ctx(struct iommu *obj);
159 extern void iommu_restore_ctx(struct iommu *obj);
167 extern ssize_t iommu_dump_ctx(struct iommu *obj, char *buf, ssize_t len);
168 extern size_t dump_tlb_entries(struct iommu *obj, char *buf, ssize_t len);