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

1 /* SPDX-License-Identifier: GPL-2.0-or-later */
69 * set when the platform supports "special" PIO accesses via a non memory
85 * This provides the non-bus specific accessors to MMIO. Those are PowerPC
104 static inline u##size name(const volatile u##size __iomem *addr) \
113 static inline void name(volatile u##size __iomem *addr, u##size val) \
121 static inline u##size name(const volatile u##size __iomem *addr) \
130 static inline void name(volatile u##size __iomem *addr, u##size val) \
170 static inline u64 in_le64(const volatile u64 __iomem *addr) in in_le64()
175 static inline void out_le64(volatile u64 __iomem *addr, u64 val) in out_le64()
184 static inline u64 in_be64(const volatile u64 __iomem *addr) in in_be64()
189 static inline void out_be64(volatile u64 __iomem *addr, u64 val) in out_be64()
200 extern void _insb(const volatile u8 __iomem *addr, void *buf, long count);
201 extern void _outsb(volatile u8 __iomem *addr,const void *buf,long count);
202 extern void _insw_ns(const volatile u16 __iomem *addr, void *buf, long count);
203 extern void _outsw_ns(volatile u16 __iomem *addr, const void *buf, long count);
204 extern void _insl_ns(const volatile u32 __iomem *addr, void *buf, long count);
205 extern void _outsl_ns(volatile u32 __iomem *addr, const void *buf, long count);
208 * the non _ns equivalent names
220 extern void _memset_io(volatile void __iomem *addr, int c, unsigned long n);
221 extern void _memcpy_fromio(void *dest, const volatile void __iomem *src,
223 extern void _memcpy_toio(volatile void __iomem *dest, const void *src,
233 * provides fairly heavy weight barriers for the non-raw versions
249 #define PCI_IO_ADDR volatile void __iomem *
298 * Non ordered and non-swapping "raw" accessors
301 static inline unsigned char __raw_readb(const volatile void __iomem *addr) in __raw_readb()
303 return *(volatile unsigned char __force *)PCI_FIX_ADDR(addr); in __raw_readb()
307 static inline unsigned short __raw_readw(const volatile void __iomem *addr) in __raw_readw()
309 return *(volatile unsigned short __force *)PCI_FIX_ADDR(addr); in __raw_readw()
313 static inline unsigned int __raw_readl(const volatile void __iomem *addr) in __raw_readl()
315 return *(volatile unsigned int __force *)PCI_FIX_ADDR(addr); in __raw_readl()
319 static inline void __raw_writeb(unsigned char v, volatile void __iomem *addr) in __raw_writeb()
321 *(volatile unsigned char __force *)PCI_FIX_ADDR(addr) = v; in __raw_writeb()
325 static inline void __raw_writew(unsigned short v, volatile void __iomem *addr) in __raw_writew()
327 *(volatile unsigned short __force *)PCI_FIX_ADDR(addr) = v; in __raw_writew()
331 static inline void __raw_writel(unsigned int v, volatile void __iomem *addr) in __raw_writel()
333 *(volatile unsigned int __force *)PCI_FIX_ADDR(addr) = v; in __raw_writel()
338 static inline unsigned long __raw_readq(const volatile void __iomem *addr) in __raw_readq()
340 return *(volatile unsigned long __force *)PCI_FIX_ADDR(addr); in __raw_readq()
344 static inline void __raw_writeq(unsigned long v, volatile void __iomem *addr) in __raw_writeq()
346 *(volatile unsigned long __force *)PCI_FIX_ADDR(addr) = v; in __raw_writeq()
350 static inline void __raw_writeq_be(unsigned long v, volatile void __iomem *addr) in __raw_writeq_be()
360 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()
372 static inline void __raw_rm_writel(u32 val, volatile void __iomem *paddr) in __raw_rm_writel()
378 static inline void __raw_rm_writeq(u64 val, volatile void __iomem *paddr) in __raw_rm_writeq()
384 static inline void __raw_rm_writeq_be(u64 val, volatile void __iomem *paddr) in __raw_rm_writeq_be()
389 static inline u8 __raw_rm_readb(volatile void __iomem *paddr) in __raw_rm_readb()
397 static inline u16 __raw_rm_readw(volatile void __iomem *paddr) in __raw_rm_readw()
405 static inline u32 __raw_rm_readl(volatile void __iomem *paddr) in __raw_rm_readl()
413 static inline u64 __raw_rm_readq(volatile void __iomem *paddr) in __raw_rm_readq()
428 * machine checks (which they occasionally do when probing non existing
450 "5: li %0,-1\n" \
594 #include <asm/io-defs.h>
619 #include <asm/io-defs.h>
678 #include <asm-generic/iomap.h>
783 /* Enforce in-order execution of data I/O.
810 * ioremap - map bus memory into CPU space
822 * * ioremap is the standard one and provides non-cacheable guarded mappings
856 extern void iounmap(volatile void __iomem *addr);
876 #define PIO_MASK (FULL_IO_SIZE - 1)
893 * virt_to_phys - map virtual addresses to physical
904 static inline unsigned long virt_to_phys(volatile void * address) in virt_to_phys()
913 * phys_to_virt - map physical address to virtual
950 static inline unsigned long virt_to_bus(volatile void * address) in virt_to_bus()
962 return __va(address - PCI_DRAM_OFFSET); in bus_to_virt()
981 * set multiple bits in a register using a single read-modify-write. These
982 * macros can also be used to set a multiple-bit bit pattern using a mask,
1003 #include <asm-generic/io.h>