Re: [PATCHv5 3/4] omap: iovmm - replace __iounmap with omap_iounmap

From: Russell King - ARM Linux
Date: Thu Dec 02 2010 - 07:32:27 EST


On Mon, Oct 25, 2010 at 02:10:05PM -0500, Fernando Guzman Lugo wrote:
> Omap platform is omap_iounmap function.
>
> Signed-off-by: Fernando Guzman Lugo <x0095840@xxxxxx>
> ---
> arch/arm/plat-omap/iovmm.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/plat-omap/iovmm.c b/arch/arm/plat-omap/iovmm.c
> index 93a34d9..5489ca9 100644
> --- a/arch/arm/plat-omap/iovmm.c
> +++ b/arch/arm/plat-omap/iovmm.c
> @@ -821,7 +821,7 @@ void iommu_kunmap(struct iommu *obj, u32 da)
> struct sg_table *sgt;
> typedef void (*func_t)(const void *);
>
> - sgt = unmap_vm_area(obj, da, (func_t)__iounmap,
> + sgt = unmap_vm_area(obj, da, (func_t)omap_iounmap,
> IOVMF_LINEAR | IOVMF_MMIO);
> if (!sgt)
> dev_dbg(obj->dev, "%s: No sgt\n", __func__);

Err, this is wrong. Why are you breaking the layer separation and going
for the implementation detail of iounmap()?

plat/io.h:
#define __arch_ioremap(p,s,t) omap_ioremap(p,s,t)
#define __arch_iounmap(v) omap_iounmap(v)

void __iomem *omap_ioremap(unsigned long phys, size_t size, unsigned int type);
void omap_iounmap(volatile void __iomem *addr);

asm/io.h:
#define ioremap(cookie,size) __arch_ioremap((cookie), (size), MT_DEVICE)
#define iounmap(cookie) __arch_iounmap(cookie)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/