Commit 8aee0772 authored by Christophe Leroy's avatar Christophe Leroy Committed by Michael Ellerman

powerpc/mm: drop ppc_md.iounmap() and __iounmap()

ppc_md.iounmap() is never set, drop it.

Once ppc_md.iounmap() is gone, iounmap() remains the only user of
__iounmap() and iounmap() does nothing else than calling __iounmap().
So drop iounmap() and make __iounmap() the new iounmap().
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarChristophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/d73ba92bb7a387cc58cc34666d7f5158a45851b0.1566309262.git.christophe.leroy@c-s.fr
parent 6f57e663
...@@ -712,9 +712,6 @@ static inline void iosync(void) ...@@ -712,9 +712,6 @@ static inline void iosync(void)
* * __ioremap_caller is the same as above but takes an explicit caller * * __ioremap_caller is the same as above but takes an explicit caller
* reference rather than using __builtin_return_address(0) * reference rather than using __builtin_return_address(0)
* *
* * __iounmap, is the low level implementation used by iounmap and cannot
* be hooked (but can be used by a hook on iounmap)
*
*/ */
extern void __iomem *ioremap(phys_addr_t address, unsigned long size); extern void __iomem *ioremap(phys_addr_t address, unsigned long size);
extern void __iomem *ioremap_prot(phys_addr_t address, unsigned long size, extern void __iomem *ioremap_prot(phys_addr_t address, unsigned long size,
...@@ -734,8 +731,6 @@ extern void __iomem *__ioremap(phys_addr_t, unsigned long size, ...@@ -734,8 +731,6 @@ extern void __iomem *__ioremap(phys_addr_t, unsigned long size,
extern void __iomem *__ioremap_caller(phys_addr_t, unsigned long size, extern void __iomem *__ioremap_caller(phys_addr_t, unsigned long size,
pgprot_t prot, void *caller); pgprot_t prot, void *caller);
extern void __iounmap(volatile void __iomem *addr);
extern void __iomem * __ioremap_at(phys_addr_t pa, void *ea, extern void __iomem * __ioremap_at(phys_addr_t pa, void *ea,
unsigned long size, pgprot_t prot); unsigned long size, pgprot_t prot);
extern void __iounmap_at(void *ea, unsigned long size); extern void __iounmap_at(void *ea, unsigned long size);
......
...@@ -33,8 +33,6 @@ struct machdep_calls { ...@@ -33,8 +33,6 @@ struct machdep_calls {
#ifdef CONFIG_PPC64 #ifdef CONFIG_PPC64
void __iomem * (*ioremap)(phys_addr_t addr, unsigned long size, void __iomem * (*ioremap)(phys_addr_t addr, unsigned long size,
pgprot_t prot, void *caller); pgprot_t prot, void *caller);
void (*iounmap)(volatile void __iomem *token);
#ifdef CONFIG_PM #ifdef CONFIG_PM
void (*iommu_save)(void); void (*iommu_save)(void);
void (*iommu_restore)(void); void (*iommu_restore)(void);
......
...@@ -266,7 +266,7 @@ void __iomem * ioremap_prot(phys_addr_t addr, unsigned long size, ...@@ -266,7 +266,7 @@ void __iomem * ioremap_prot(phys_addr_t addr, unsigned long size,
* Unmap an IO region and remove it from imalloc'd list. * Unmap an IO region and remove it from imalloc'd list.
* Access to IO memory should be serialized by driver. * Access to IO memory should be serialized by driver.
*/ */
void __iounmap(volatile void __iomem *token) void iounmap(volatile void __iomem *token)
{ {
void *addr; void *addr;
...@@ -283,21 +283,12 @@ void __iounmap(volatile void __iomem *token) ...@@ -283,21 +283,12 @@ void __iounmap(volatile void __iomem *token)
vunmap(addr); vunmap(addr);
} }
void iounmap(volatile void __iomem *token)
{
if (ppc_md.iounmap)
ppc_md.iounmap(token);
else
__iounmap(token);
}
EXPORT_SYMBOL(ioremap); EXPORT_SYMBOL(ioremap);
EXPORT_SYMBOL(ioremap_wc); EXPORT_SYMBOL(ioremap_wc);
EXPORT_SYMBOL(ioremap_prot); EXPORT_SYMBOL(ioremap_prot);
EXPORT_SYMBOL(__ioremap); EXPORT_SYMBOL(__ioremap);
EXPORT_SYMBOL(__ioremap_at); EXPORT_SYMBOL(__ioremap_at);
EXPORT_SYMBOL(iounmap); EXPORT_SYMBOL(iounmap);
EXPORT_SYMBOL(__iounmap);
EXPORT_SYMBOL(__iounmap_at); EXPORT_SYMBOL(__iounmap_at);
#ifndef __PAGETABLE_PUD_FOLDED #ifndef __PAGETABLE_PUD_FOLDED
......
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