diff options
author | Paul Mundt <lethal@linux-sh.org> | 2010-01-18 13:30:29 +0100 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-01-18 13:30:29 +0100 |
commit | 4f744affc345f8b158615e0cdd01d1f4985837c3 (patch) | |
tree | eab721c5f19274e986fce7be609890159ffe63b9 /arch/sh/mm | |
parent | sh: Merge _32/_64 ioremap implementations. (diff) | |
download | linux-4f744affc345f8b158615e0cdd01d1f4985837c3.tar.xz linux-4f744affc345f8b158615e0cdd01d1f4985837c3.zip |
sh: Make iounmap_fixed() return success/failure for iounmap() path.
This converts iounmap_fixed() to return success/error if it handled the
unmap request or not. At the same time, drop the __init label, as this
can be called in to later.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/mm')
-rw-r--r-- | arch/sh/mm/ioremap_fixed.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/sh/mm/ioremap_fixed.c b/arch/sh/mm/ioremap_fixed.c index 3a9d3d88fe8d..425f6c6bf250 100644 --- a/arch/sh/mm/ioremap_fixed.c +++ b/arch/sh/mm/ioremap_fixed.c @@ -103,7 +103,7 @@ ioremap_fixed(resource_size_t phys_addr, unsigned long size, pgprot_t prot) return map->addr; } -void __init iounmap_fixed(void __iomem *addr) +int iounmap_fixed(void __iomem *addr) { enum fixed_addresses idx; unsigned long virt_addr; @@ -122,8 +122,11 @@ void __init iounmap_fixed(void __iomem *addr) } } + /* + * If we don't match, it's not for us. + */ if (slot < 0) - return; + return -EINVAL; virt_addr = (unsigned long)addr; @@ -141,4 +144,6 @@ void __init iounmap_fixed(void __iomem *addr) map->size = 0; map->addr = NULL; + + return 0; } |