Message ID | 20220519024359.10824-1-ycliang@andestech.com |
---|---|
State | Superseded |
Delegated to: | Andes |
Headers | show |
Series | [1/1] riscv: Clean up asm/io.h | expand |
On Thu, May 19, 2022 at 10:44 AM Leo Yu-Chi Liang <ycliang@andestech.com> wrote: > > Clean up asm/io.h by > - removing commented code > - removing outdated comments > - removing unused definitions (for mem_isa, mem_pci) > > Suggested by commits: > (7ab2e47d27) arm: Clean up asm/io.h > (909d0399a5) ARM: asm/io.h: kill off confusing #ifdef __mem_pci block nits: the commits format is not correct > > This massively improves the readability of the file. > > Signed-off-by: Leo Yu-Chi Liang <ycliang@andestech.com> > --- > arch/riscv/include/asm/io.h | 117 +----------------------------------- > 1 file changed, 1 insertion(+), 116 deletions(-) > > diff --git a/arch/riscv/include/asm/io.h b/arch/riscv/include/asm/io.h > index fc39bb2c70..49bffac03c 100644 > --- a/arch/riscv/include/asm/io.h > +++ b/arch/riscv/include/asm/io.h > @@ -7,8 +7,6 @@ > #ifndef __ASM_RISCV_IO_H > #define __ASM_RISCV_IO_H > > -#ifdef __KERNEL__ > - > #include <linux/types.h> > #include <asm/barrier.h> > #include <asm/byteorder.h> > @@ -39,11 +37,7 @@ static inline phys_addr_t map_to_sysmem(const void *ptr) > } > #endif > > -/* > - * Generic virtual read/write. Note that we don't support half-word > - * read/writes. We define __arch_*[bl] here, and leave __arch_*w > - * to the architecture specific code. > - */ > +/* Generic virtual read/write. */ > #define __arch_getb(a) (*(volatile unsigned char *)(a)) > #define __arch_getw(a) (*(volatile unsigned short *)(a)) > #define __arch_getl(a) (*(volatile unsigned int *)(a)) > @@ -352,115 +346,6 @@ static inline void writesl(unsigned int *addr, const void *data, int longlen) > #define insw_p(port, to, len) insw(port, to, len) > #define insl_p(port, to, len) insl(port, to, len) > > -/* > - * DMA-consistent mapping functions. These allocate/free a region of > - * uncached, unwrite-buffered mapped memory space for use with DMA > - * devices. This is the "generic" version. The PCI specific version > - * is in pci.h > - */ > - > -/* > - * String version of IO memory access ops: > - */ > - > -/* > - * If this architecture has PCI memory IO, then define the read/write > - * macros. These should only be used with the cookie passed from > - * ioremap. > - */ > -#ifdef __mem_pci > - > -#define readb(c) ({ unsigned int __v = \ > - __raw_readb(__mem_pci(c)); __v; }) > -#define readw(c) ({ unsigned int __v = \ > - le16_to_cpu(__raw_readw(__mem_pci(c))); __v; }) > -#define readl(c) ({ unsigned int __v = \ > - le32_to_cpu(__raw_readl(__mem_pci(c))); __v; }) > - > -#define writeb(v, c) __raw_writeb(v, __mem_pci(c)) > -#define writew(v, c) __raw_writew(cpu_to_le16(v), __mem_pci(c)) > -#define writel(v, c) __raw_writel(cpu_to_le32(v), __mem_pci(c)) > - > -#define memset_io(c, v, l) _memset_io(__mem_pci(c), (v), (l)) > -#define memcpy_fromio(a, c, l) _memcpy_fromio((a), __mem_pci(c), (l)) > -#define memcpy_toio(c, a, l) _memcpy_toio(__mem_pci(c), (a), (l)) > - > -#define eth_io_copy_and_sum(s, c, l, b) \ > - eth_copy_and_sum((s), __mem_pci(c), (l), (b)) > - > -static inline int check_signature(ulong io_addr, const uchar *s, int len) > -{ > - int retval = 0; > - > - do { > - if (readb(io_addr) != *s) > - goto out; > - io_addr++; > - s++; > - len--; > - } while (len); > - retval = 1; > -out: > - return retval; > -} > -#endif /* __mem_pci */ > - > -/* > - * If this architecture has ISA IO, then define the isa_read/isa_write > - * macros. > - */ > -#ifdef __mem_isa > - > -#define isa_readb(addr) __raw_readb(__mem_isa(addr)) > -#define isa_readw(addr) __raw_readw(__mem_isa(addr)) > -#define isa_readl(addr) __raw_readl(__mem_isa(addr)) > -#define isa_writeb(val, addr) __raw_writeb(val, __mem_isa(addr)) > -#define isa_writew(val, addr) __raw_writew(val, __mem_isa(addr)) > -#define isa_writel(val, addr) __raw_writel(val, __mem_isa(addr)) > -#define isa_memset_io(a, b, c) _memset_io(__mem_isa(a), (b), (c)) > -#define isa_memcpy_fromio(a, b, c) _memcpy_fromio((a), __mem_isa(b), (c)) > -#define isa_memcpy_toio(a, b, c) _memcpy_toio(__mem_isa((a)), (b), (c)) > - > -#define isa_eth_io_copy_and_sum(a, b, c, d) \ > - eth_copy_and_sum((a), __mem_isa(b), (c), (d)) > - > -static inline int > -isa_check_signature(ulong io_addr, const uchar *s, int len) > -{ > - int retval = 0; > - > - do { > - if (isa_readb(io_addr) != *s) > - goto out; > - io_addr++; > - s++; > - len--; > - } while (len); > - retval = 1; > -out: > - return retval; > -} > - > -#else /* __mem_isa */ > - > -#define isa_readb(addr) (__readwrite_bug("isa_readb"), 0) > -#define isa_readw(addr) (__readwrite_bug("isa_readw"), 0) > -#define isa_readl(addr) (__readwrite_bug("isa_readl"), 0) > -#define isa_writeb(val, addr) __readwrite_bug("isa_writeb") > -#define isa_writew(val, addr) __readwrite_bug("isa_writew") > -#define isa_writel(val, addr) __readwrite_bug("isa_writel") > -#define isa_memset_io(a, b, c) __readwrite_bug("isa_memset_io") > -#define isa_memcpy_fromio(a, b, c) __readwrite_bug("isa_memcpy_fromio") > -#define isa_memcpy_toio(a, b, c) __readwrite_bug("isa_memcpy_toio") > - > -#define isa_eth_io_copy_and_sum(a, b, c, d) \ > - __readwrite_bug("isa_eth_io_copy_and_sum") > - > -#define isa_check_signature(io, sig, len) (0) > - > -#endif /* __mem_isa */ > -#endif /* __KERNEL__ */ > - > #include <asm-generic/io.h> > > #endif /* __ASM_RISCV_IO_H */ > -- Otherwise, Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
diff --git a/arch/riscv/include/asm/io.h b/arch/riscv/include/asm/io.h index fc39bb2c70..49bffac03c 100644 --- a/arch/riscv/include/asm/io.h +++ b/arch/riscv/include/asm/io.h @@ -7,8 +7,6 @@ #ifndef __ASM_RISCV_IO_H #define __ASM_RISCV_IO_H -#ifdef __KERNEL__ - #include <linux/types.h> #include <asm/barrier.h> #include <asm/byteorder.h> @@ -39,11 +37,7 @@ static inline phys_addr_t map_to_sysmem(const void *ptr) } #endif -/* - * Generic virtual read/write. Note that we don't support half-word - * read/writes. We define __arch_*[bl] here, and leave __arch_*w - * to the architecture specific code. - */ +/* Generic virtual read/write. */ #define __arch_getb(a) (*(volatile unsigned char *)(a)) #define __arch_getw(a) (*(volatile unsigned short *)(a)) #define __arch_getl(a) (*(volatile unsigned int *)(a)) @@ -352,115 +346,6 @@ static inline void writesl(unsigned int *addr, const void *data, int longlen) #define insw_p(port, to, len) insw(port, to, len) #define insl_p(port, to, len) insl(port, to, len) -/* - * DMA-consistent mapping functions. These allocate/free a region of - * uncached, unwrite-buffered mapped memory space for use with DMA - * devices. This is the "generic" version. The PCI specific version - * is in pci.h - */ - -/* - * String version of IO memory access ops: - */ - -/* - * If this architecture has PCI memory IO, then define the read/write - * macros. These should only be used with the cookie passed from - * ioremap. - */ -#ifdef __mem_pci - -#define readb(c) ({ unsigned int __v = \ - __raw_readb(__mem_pci(c)); __v; }) -#define readw(c) ({ unsigned int __v = \ - le16_to_cpu(__raw_readw(__mem_pci(c))); __v; }) -#define readl(c) ({ unsigned int __v = \ - le32_to_cpu(__raw_readl(__mem_pci(c))); __v; }) - -#define writeb(v, c) __raw_writeb(v, __mem_pci(c)) -#define writew(v, c) __raw_writew(cpu_to_le16(v), __mem_pci(c)) -#define writel(v, c) __raw_writel(cpu_to_le32(v), __mem_pci(c)) - -#define memset_io(c, v, l) _memset_io(__mem_pci(c), (v), (l)) -#define memcpy_fromio(a, c, l) _memcpy_fromio((a), __mem_pci(c), (l)) -#define memcpy_toio(c, a, l) _memcpy_toio(__mem_pci(c), (a), (l)) - -#define eth_io_copy_and_sum(s, c, l, b) \ - eth_copy_and_sum((s), __mem_pci(c), (l), (b)) - -static inline int check_signature(ulong io_addr, const uchar *s, int len) -{ - int retval = 0; - - do { - if (readb(io_addr) != *s) - goto out; - io_addr++; - s++; - len--; - } while (len); - retval = 1; -out: - return retval; -} -#endif /* __mem_pci */ - -/* - * If this architecture has ISA IO, then define the isa_read/isa_write - * macros. - */ -#ifdef __mem_isa - -#define isa_readb(addr) __raw_readb(__mem_isa(addr)) -#define isa_readw(addr) __raw_readw(__mem_isa(addr)) -#define isa_readl(addr) __raw_readl(__mem_isa(addr)) -#define isa_writeb(val, addr) __raw_writeb(val, __mem_isa(addr)) -#define isa_writew(val, addr) __raw_writew(val, __mem_isa(addr)) -#define isa_writel(val, addr) __raw_writel(val, __mem_isa(addr)) -#define isa_memset_io(a, b, c) _memset_io(__mem_isa(a), (b), (c)) -#define isa_memcpy_fromio(a, b, c) _memcpy_fromio((a), __mem_isa(b), (c)) -#define isa_memcpy_toio(a, b, c) _memcpy_toio(__mem_isa((a)), (b), (c)) - -#define isa_eth_io_copy_and_sum(a, b, c, d) \ - eth_copy_and_sum((a), __mem_isa(b), (c), (d)) - -static inline int -isa_check_signature(ulong io_addr, const uchar *s, int len) -{ - int retval = 0; - - do { - if (isa_readb(io_addr) != *s) - goto out; - io_addr++; - s++; - len--; - } while (len); - retval = 1; -out: - return retval; -} - -#else /* __mem_isa */ - -#define isa_readb(addr) (__readwrite_bug("isa_readb"), 0) -#define isa_readw(addr) (__readwrite_bug("isa_readw"), 0) -#define isa_readl(addr) (__readwrite_bug("isa_readl"), 0) -#define isa_writeb(val, addr) __readwrite_bug("isa_writeb") -#define isa_writew(val, addr) __readwrite_bug("isa_writew") -#define isa_writel(val, addr) __readwrite_bug("isa_writel") -#define isa_memset_io(a, b, c) __readwrite_bug("isa_memset_io") -#define isa_memcpy_fromio(a, b, c) __readwrite_bug("isa_memcpy_fromio") -#define isa_memcpy_toio(a, b, c) __readwrite_bug("isa_memcpy_toio") - -#define isa_eth_io_copy_and_sum(a, b, c, d) \ - __readwrite_bug("isa_eth_io_copy_and_sum") - -#define isa_check_signature(io, sig, len) (0) - -#endif /* __mem_isa */ -#endif /* __KERNEL__ */ - #include <asm-generic/io.h> #endif /* __ASM_RISCV_IO_H */
Clean up asm/io.h by - removing commented code - removing outdated comments - removing unused definitions (for mem_isa, mem_pci) Suggested by commits: (7ab2e47d27) arm: Clean up asm/io.h (909d0399a5) ARM: asm/io.h: kill off confusing #ifdef __mem_pci block This massively improves the readability of the file. Signed-off-by: Leo Yu-Chi Liang <ycliang@andestech.com> --- arch/riscv/include/asm/io.h | 117 +----------------------------------- 1 file changed, 1 insertion(+), 116 deletions(-)