Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

sh: machvec: Remove custom ioport_{un,}map()

These functions were only used on the microdev board that is now gone,
so remove them to simplify the ioport handling. This could be further
simplified to use the generic I/O port accessors now.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Link: https://lore.kernel.org/r/20230914155523.3839811-4-arnd@kernel.org
Signed-off-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>

authored by

Arnd Bergmann and committed by
John Paul Adrian Glaubitz
4c02add1 8daaed76

+3 -19
+2 -2
arch/sh/include/asm/io.h
··· 181 181 { \ 182 182 volatile type *__addr; \ 183 183 \ 184 - __addr = __ioport_map(port, sizeof(type)); \ 184 + __addr = (void __iomem *)sh_io_port_base + port; \ 185 185 *__addr = val; \ 186 186 slow; \ 187 187 } \ ··· 191 191 volatile type *__addr; \ 192 192 type __val; \ 193 193 \ 194 - __addr = __ioport_map(port, sizeof(type)); \ 194 + __addr = (void __iomem *)sh_io_port_base + port; \ 195 195 __val = *__addr; \ 196 196 slow; \ 197 197 \
-5
arch/sh/include/asm/machvec.h
··· 19 19 int (*mv_irq_demux)(int irq); 20 20 void (*mv_init_irq)(void); 21 21 22 - #ifdef CONFIG_HAS_IOPORT_MAP 23 - void __iomem *(*mv_ioport_map)(unsigned long port, unsigned int size); 24 - void (*mv_ioport_unmap)(void __iomem *); 25 - #endif 26 - 27 22 int (*mv_clk_init)(void); 28 23 int (*mv_mode_pins)(void); 29 24
+1 -12
arch/sh/kernel/ioport.c
··· 12 12 unsigned long sh_io_port_base __read_mostly = -1; 13 13 EXPORT_SYMBOL(sh_io_port_base); 14 14 15 - void __iomem *__ioport_map(unsigned long addr, unsigned int size) 16 - { 17 - if (sh_mv.mv_ioport_map) 18 - return sh_mv.mv_ioport_map(addr, size); 19 - 20 - return (void __iomem *)(addr + sh_io_port_base); 21 - } 22 - EXPORT_SYMBOL(__ioport_map); 23 - 24 15 void __iomem *ioport_map(unsigned long port, unsigned int nr) 25 16 { 26 17 void __iomem *ret; ··· 20 29 if (ret) 21 30 return ret; 22 31 23 - return __ioport_map(port, nr); 32 + return (void __iomem *)(port + sh_io_port_base); 24 33 } 25 34 EXPORT_SYMBOL(ioport_map); 26 35 27 36 void ioport_unmap(void __iomem *addr) 28 37 { 29 - if (sh_mv.mv_ioport_unmap) 30 - sh_mv.mv_ioport_unmap(addr); 31 38 } 32 39 EXPORT_SYMBOL(ioport_unmap);