Message ID | 20170320184253.4858.12956.stgit@bhelgaas-glaptop.roam.corp.google.com (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
Hi Björn, On Mon, Mar 20, 2017 at 7:42 PM, Bjorn Helgaas <bhelgaas@google.com> wrote: > Several arches use __ioremap() to help implement the generic ioremap(), > ioremap_nocache(), and ioremap_wc() interfaces, but this usage is all > inside the arch/ directory. > > The only __ioremap() uses outside arch/ are in the ZorroII RAM disk driver > and some framebuffer drivers that are only buildable on m68k and powerpc, > and they use the versions provided by those arches. > > There's no need for a generic version of __ioremap(), so remove it. These all predate the ioremap_*() variants, and can be converted to either ioremap_nocache() or ioremap_wt(). However, PPC doesn't implement ioremap_wt() yet, so asm-generic will fall back to the less-efficient nocache variant. PPC does support __ioremap(..., _PAGE_WRITETHRU), so adding a wrapper is trivial. > Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> > Reviewed-by: Arnd Bergmann <arnd@arndb.de> Regardless, Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
On Tue, Mar 21, 2017 at 11:37:11AM +0100, Geert Uytterhoeven wrote: > Hi Björn, > > On Mon, Mar 20, 2017 at 7:42 PM, Bjorn Helgaas <bhelgaas@google.com> wrote: > > Several arches use __ioremap() to help implement the generic ioremap(), > > ioremap_nocache(), and ioremap_wc() interfaces, but this usage is all > > inside the arch/ directory. > > > > The only __ioremap() uses outside arch/ are in the ZorroII RAM disk driver > > and some framebuffer drivers that are only buildable on m68k and powerpc, > > and they use the versions provided by those arches. > > > > There's no need for a generic version of __ioremap(), so remove it. > > These all predate the ioremap_*() variants, and can be converted to > either ioremap_nocache() or ioremap_wt(). > > However, PPC doesn't implement ioremap_wt() yet, so asm-generic will > fall back to the less-efficient nocache variant. > PPC does support __ioremap(..., _PAGE_WRITETHRU), so adding a wrapper > is trivial. Thanks, I'll try adding ioremap_wt() (at least for PPC32) and cleaning this up. > > Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> > > Reviewed-by: Arnd Bergmann <arnd@arndb.de> > > Regardless, > Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> > > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org > > In personal conversations with technical people, I call myself a hacker. But > when I'm talking to journalists I just say "programmer" or something like that. > -- Linus Torvalds
diff --git a/include/asm-generic/io.h b/include/asm-generic/io.h index 978d2e27ce1d..e0a331a22346 100644 --- a/include/asm-generic/io.h +++ b/include/asm-generic/io.h @@ -843,15 +843,6 @@ static inline void __iomem *ioremap(phys_addr_t offset, size_t size) } #endif -#ifndef __ioremap -#define __ioremap __ioremap -static inline void __iomem *__ioremap(phys_addr_t offset, size_t size, - unsigned long flags) -{ - return ioremap(offset, size); -} -#endif - #ifndef ioremap_nocache #define ioremap_nocache ioremap_nocache static inline void __iomem *ioremap_nocache(phys_addr_t offset, size_t size)