]> Pileus Git - ~andy/linux/blobdiff - arch/sh/include/asm/io.h
sh: P4 ioremap pass-through
[~andy/linux] / arch / sh / include / asm / io.h
index 65eaae34e753035209455a1916dc68cc4e7b22d6..61f6dae40534831195c12972091f859ad2d14214 100644 (file)
@@ -260,6 +260,10 @@ __ioremap_mode(unsigned long offset, unsigned long size, unsigned long flags)
 
                return (void __iomem *)P2SEGADDR(offset);
        }
+
+       /* P4 above the store queues are always mapped. */
+       if (unlikely(offset >= P3_ADDR_MAX))
+               return (void __iomem *)P4SEGADDR(offset);
 #endif
 
        return __ioremap(offset, size, flags);