Commit 384fa675 authored by Ohad Ben-Cohen's avatar Ohad Ben-Cohen Committed by Joerg Roedel

omap: iommu: remove unused exported API

Remove unused public APIs from OMAP's iommu driver.

IOMMU functionality should be exposed only via the generic IOMMU API;
this way drivers stay generic, and different IOMMU drivers
don't need to duplicate similar functionalities.

The rest of the API still exposed by OMAP's iommu will be evaluated
and eventually either added to the generic IOMMU API (if relevant),
or completely removed.

The intention is that OMAP's iommu driver will eventually not expose
any public API.
Signed-off-by: default avatarOhad Ben-Cohen <ohad@wizery.com>
Acked-by: default avatarHiroshi DOYU <Hiroshi.DOYU@nokia.com>
Acked-by: default avatarTony Lindgren <tony@atomide.com>
Signed-off-by: default avatarJoerg Roedel <joerg.roedel@amd.com>
parent 5a6a5b1b
...@@ -153,12 +153,9 @@ struct iommu_platform_data { ...@@ -153,12 +153,9 @@ struct iommu_platform_data {
extern u32 iommu_arch_version(void); extern u32 iommu_arch_version(void);
extern void iotlb_cr_to_e(struct cr_regs *cr, struct iotlb_entry *e); extern void iotlb_cr_to_e(struct cr_regs *cr, struct iotlb_entry *e);
extern void iommu_set_twl(struct iommu *obj, bool on);
extern void flush_iotlb_range(struct iommu *obj, u32 start, u32 end);
extern int iopgtable_store_entry(struct iommu *obj, struct iotlb_entry *e); extern int iopgtable_store_entry(struct iommu *obj, struct iotlb_entry *e);
extern int iommu_set_da_range(struct iommu *obj, u32 start, u32 end);
extern int iommu_set_isr(const char *name, extern int iommu_set_isr(const char *name,
int (*isr)(struct iommu *obj, u32 da, u32 iommu_errs, int (*isr)(struct iommu *obj, u32 da, u32 iommu_errs,
void *priv), void *priv),
......
...@@ -362,26 +362,6 @@ static void flush_iotlb_page(struct iommu *obj, u32 da) ...@@ -362,26 +362,6 @@ static void flush_iotlb_page(struct iommu *obj, u32 da)
dev_dbg(obj->dev, "%s: no page for %08x\n", __func__, da); dev_dbg(obj->dev, "%s: no page for %08x\n", __func__, da);
} }
/**
* flush_iotlb_range - Clear an iommu tlb entries
* @obj: target iommu
* @start: iommu device virtual address(start)
* @end: iommu device virtual address(end)
*
* Clear an iommu tlb entry which includes 'da' address.
**/
void flush_iotlb_range(struct iommu *obj, u32 start, u32 end)
{
u32 da = start;
while (da < end) {
flush_iotlb_page(obj, da);
/* FIXME: Optimize for multiple page size */
da += IOPTE_SIZE;
}
}
EXPORT_SYMBOL_GPL(flush_iotlb_range);
/** /**
* flush_iotlb_all - Clear all iommu tlb entries * flush_iotlb_all - Clear all iommu tlb entries
* @obj: target iommu * @obj: target iommu
...@@ -401,23 +381,6 @@ static void flush_iotlb_all(struct iommu *obj) ...@@ -401,23 +381,6 @@ static void flush_iotlb_all(struct iommu *obj)
clk_disable(obj->clk); clk_disable(obj->clk);
} }
/**
* iommu_set_twl - enable/disable table walking logic
* @obj: target iommu
* @on: enable/disable
*
* Function used to enable/disable TWL. If one wants to work
* exclusively with locked TLB entries and receive notifications
* for TLB miss then call this function to disable TWL.
*/
void iommu_set_twl(struct iommu *obj, bool on)
{
clk_enable(obj->clk);
arch_iommu->set_twl(obj, on);
clk_disable(obj->clk);
}
EXPORT_SYMBOL_GPL(iommu_set_twl);
#if defined(CONFIG_OMAP_IOMMU_DEBUG_MODULE) #if defined(CONFIG_OMAP_IOMMU_DEBUG_MODULE)
ssize_t iommu_dump_ctx(struct iommu *obj, char *buf, ssize_t bytes) ssize_t iommu_dump_ctx(struct iommu *obj, char *buf, ssize_t bytes)
...@@ -853,28 +816,6 @@ static int device_match_by_alias(struct device *dev, void *data) ...@@ -853,28 +816,6 @@ static int device_match_by_alias(struct device *dev, void *data)
return strcmp(obj->name, name) == 0; return strcmp(obj->name, name) == 0;
} }
/**
* iommu_set_da_range - Set a valid device address range
* @obj: target iommu
* @start Start of valid range
* @end End of valid range
**/
int iommu_set_da_range(struct iommu *obj, u32 start, u32 end)
{
if (!obj)
return -EFAULT;
if (end < start || !PAGE_ALIGN(start | end))
return -EINVAL;
obj->da_start = start;
obj->da_end = end;
return 0;
}
EXPORT_SYMBOL_GPL(iommu_set_da_range);
/** /**
* omap_find_iommu_device() - find an omap iommu device by name * omap_find_iommu_device() - find an omap iommu device by name
* @name: name of the iommu device * @name: name of the iommu device
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment