Lines Matching refs:e

232 static u32 get_iopte_attr(struct iotlb_entry *e)  in get_iopte_attr()  argument
236 attr = e->mixed << 5; in get_iopte_attr()
237 attr |= e->endian; in get_iopte_attr()
238 attr |= e->elsz >> 3; in get_iopte_attr()
239 attr <<= (((e->pgsz == MMU_CAM_PGSZ_4K) || in get_iopte_attr()
240 (e->pgsz == MMU_CAM_PGSZ_64K)) ? 0 : 6); in get_iopte_attr()
315 struct iotlb_entry *e) in iotlb_alloc_cr() argument
319 if (!e) in iotlb_alloc_cr()
322 if (e->da & ~(get_cam_va_mask(e->pgsz))) { in iotlb_alloc_cr()
324 e->da); in iotlb_alloc_cr()
332 cr->cam = (e->da & MMU_CAM_VATAG_MASK) | e->prsvd | e->pgsz | e->valid; in iotlb_alloc_cr()
333 cr->ram = e->pa | e->endian | e->elsz | e->mixed; in iotlb_alloc_cr()
343 static int load_iotlb_entry(struct omap_iommu *obj, struct iotlb_entry *e) in load_iotlb_entry() argument
349 if (!obj || !obj->nr_tlb_entries || !e) in load_iotlb_entry()
360 if (!e->prsvd) { in load_iotlb_entry()
380 cr = iotlb_alloc_cr(obj, e); in load_iotlb_entry()
389 if (e->prsvd) in load_iotlb_entry()
402 static int load_iotlb_entry(struct omap_iommu *obj, struct iotlb_entry *e) in load_iotlb_entry() argument
409 static int prefetch_iotlb_entry(struct omap_iommu *obj, struct iotlb_entry *e) in prefetch_iotlb_entry() argument
411 return load_iotlb_entry(obj, e); in prefetch_iotlb_entry()
733 iopgtable_store_entry_core(struct omap_iommu *obj, struct iotlb_entry *e) in iopgtable_store_entry_core() argument
739 if (!obj || !e) in iopgtable_store_entry_core()
742 switch (e->pgsz) { in iopgtable_store_entry_core()
761 prot = get_iopte_attr(e); in iopgtable_store_entry_core()
764 err = fn(obj, e->da, e->pa, prot); in iopgtable_store_entry_core()
776 omap_iopgtable_store_entry(struct omap_iommu *obj, struct iotlb_entry *e) in omap_iopgtable_store_entry() argument
780 flush_iotlb_page(obj, e->da); in omap_iopgtable_store_entry()
781 err = iopgtable_store_entry_core(obj, e); in omap_iopgtable_store_entry()
783 prefetch_iotlb_entry(obj, e); in omap_iopgtable_store_entry()
1108 static u32 iotlb_init_entry(struct iotlb_entry *e, u32 da, u32 pa, int pgsz) in iotlb_init_entry() argument
1110 memset(e, 0, sizeof(*e)); in iotlb_init_entry()
1112 e->da = da; in iotlb_init_entry()
1113 e->pa = pa; in iotlb_init_entry()
1114 e->valid = MMU_CAM_V; in iotlb_init_entry()
1115 e->pgsz = pgsz; in iotlb_init_entry()
1116 e->endian = MMU_RAM_ENDIAN_LITTLE; in iotlb_init_entry()
1117 e->elsz = MMU_RAM_ELSZ_8; in iotlb_init_entry()
1118 e->mixed = 0; in iotlb_init_entry()
1120 return iopgsz_to_bytes(e->pgsz); in iotlb_init_entry()
1129 struct iotlb_entry e; in omap_iommu_map() local
1141 iotlb_init_entry(&e, da, pa, omap_pgsz); in omap_iommu_map()
1143 ret = omap_iopgtable_store_entry(oiommu, &e); in omap_iommu_map()