Lines Matching +full:non +full:- +full:volatile

1 /* SPDX-License-Identifier: GPL-2.0-or-later */
66 * set when the platform supports "special" PIO accesses via a non memory
82 * This provides the non-bus specific accessors to MMIO. Those are PowerPC
101 static inline u##size name(const volatile u##size __iomem *addr) \
110 static inline void name(volatile u##size __iomem *addr, u##size val) \
118 static inline u##size name(const volatile u##size __iomem *addr) \
127 static inline void name(volatile u##size __iomem *addr, u##size val) \
167 static inline u64 in_le64(const volatile u64 __iomem *addr) in in_le64()
172 static inline void out_le64(volatile u64 __iomem *addr, u64 val) in out_le64()
181 static inline u64 in_be64(const volatile u64 __iomem *addr) in in_be64()
186 static inline void out_be64(volatile u64 __iomem *addr, u64 val) in out_be64()
197 extern void _insb(const volatile u8 __iomem *addr, void *buf, long count);
198 extern void _outsb(volatile u8 __iomem *addr,const void *buf,long count);
199 extern void _insw_ns(const volatile u16 __iomem *addr, void *buf, long count);
200 extern void _outsw_ns(volatile u16 __iomem *addr, const void *buf, long count);
201 extern void _insl_ns(const volatile u32 __iomem *addr, void *buf, long count);
202 extern void _outsl_ns(volatile u32 __iomem *addr, const void *buf, long count);
205 * the non _ns equivalent names
217 extern void _memset_io(volatile void __iomem *addr, int c, unsigned long n);
218 extern void _memcpy_fromio(void *dest, const volatile void __iomem *src,
220 extern void _memcpy_toio(volatile void __iomem *dest, const void *src,
230 * provides fairly heavy weight barriers for the non-raw versions
246 #define PCI_IO_ADDR volatile void __iomem *
295 * Non ordered and non-swapping "raw" accessors
298 static inline unsigned char __raw_readb(const volatile void __iomem *addr) in __raw_readb()
300 return *(volatile unsigned char __force *)PCI_FIX_ADDR(addr); in __raw_readb()
304 static inline unsigned short __raw_readw(const volatile void __iomem *addr) in __raw_readw()
306 return *(volatile unsigned short __force *)PCI_FIX_ADDR(addr); in __raw_readw()
310 static inline unsigned int __raw_readl(const volatile void __iomem *addr) in __raw_readl()
312 return *(volatile unsigned int __force *)PCI_FIX_ADDR(addr); in __raw_readl()
316 static inline void __raw_writeb(unsigned char v, volatile void __iomem *addr) in __raw_writeb()
318 *(volatile unsigned char __force *)PCI_FIX_ADDR(addr) = v; in __raw_writeb()
322 static inline void __raw_writew(unsigned short v, volatile void __iomem *addr) in __raw_writew()
324 *(volatile unsigned short __force *)PCI_FIX_ADDR(addr) = v; in __raw_writew()
328 static inline void __raw_writel(unsigned int v, volatile void __iomem *addr) in __raw_writel()
330 *(volatile unsigned int __force *)PCI_FIX_ADDR(addr) = v; in __raw_writel()
335 static inline unsigned long __raw_readq(const volatile void __iomem *addr) in __raw_readq()
337 return *(volatile unsigned long __force *)PCI_FIX_ADDR(addr); in __raw_readq()
341 static inline void __raw_writeq(unsigned long v, volatile void __iomem *addr) in __raw_writeq()
343 *(volatile unsigned long __force *)PCI_FIX_ADDR(addr) = v; in __raw_writeq()
347 static inline void __raw_writeq_be(unsigned long v, volatile void __iomem *addr) in __raw_writeq_be()
357 static inline void __raw_rm_writeb(u8 val, volatile void __iomem *paddr) in __raw_rm_writeb()
366 static inline void __raw_rm_writew(u16 val, volatile void __iomem *paddr) in __raw_rm_writew()
375 static inline void __raw_rm_writel(u32 val, volatile void __iomem *paddr) in __raw_rm_writel()
384 static inline void __raw_rm_writeq(u64 val, volatile void __iomem *paddr) in __raw_rm_writeq()
393 static inline void __raw_rm_writeq_be(u64 val, volatile void __iomem *paddr) in __raw_rm_writeq_be()
398 static inline u8 __raw_rm_readb(volatile void __iomem *paddr) in __raw_rm_readb()
409 static inline u16 __raw_rm_readw(volatile void __iomem *paddr) in __raw_rm_readw()
420 static inline u32 __raw_rm_readl(volatile void __iomem *paddr) in __raw_rm_readl()
431 static inline u64 __raw_rm_readq(volatile void __iomem *paddr) in __raw_rm_readq()
449 * machine checks (which they occasionally do when probing non existing
471 "5: li %0,-1\n" \
615 #include <asm/io-defs.h>
640 #include <asm/io-defs.h>
699 #include <asm-generic/iomap.h>
804 /* Enforce in-order execution of data I/O.
831 * ioremap - map bus memory into CPU space
843 * * ioremap is the standard one and provides non-cacheable guarded mappings
877 extern void iounmap(volatile void __iomem *addr);
897 #define PIO_MASK (FULL_IO_SIZE - 1)
914 * virt_to_phys - map virtual addresses to physical
925 static inline unsigned long virt_to_phys(volatile void * address) in virt_to_phys()
934 * phys_to_virt - map physical address to virtual
971 static inline unsigned long virt_to_bus(volatile void * address) in virt_to_bus()
983 return __va(address - PCI_DRAM_OFFSET); in bus_to_virt()
1000 * set multiple bits in a register using a single read-modify-write. These
1001 * macros can also be used to set a multiple-bit bit pattern using a mask,
1022 #include <asm-generic/io.h>