1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* This file is meant to be include multiple times by other headers */ 3 /* last 2 argments are used by platforms/cell/io-workarounds.[ch] */ 4 5 DEF_PCI_AC_RET(readb, u8, (const PCI_IO_ADDR addr), (addr), mem, addr) 6 DEF_PCI_AC_RET(readw, u16, (const PCI_IO_ADDR addr), (addr), mem, addr) 7 DEF_PCI_AC_RET(readl, u32, (const PCI_IO_ADDR addr), (addr), mem, addr) 8 DEF_PCI_AC_RET(readw_be, u16, (const PCI_IO_ADDR addr), (addr), mem, addr) 9 DEF_PCI_AC_RET(readl_be, u32, (const PCI_IO_ADDR addr), (addr), mem, addr) 10 DEF_PCI_AC_NORET(writeb, (u8 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 11 DEF_PCI_AC_NORET(writew, (u16 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 12 DEF_PCI_AC_NORET(writel, (u32 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 13 DEF_PCI_AC_NORET(writew_be, (u16 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 14 DEF_PCI_AC_NORET(writel_be, (u32 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 15 16 #ifdef __powerpc64__ 17 DEF_PCI_AC_RET(readq, u64, (const PCI_IO_ADDR addr), (addr), mem, addr) 18 DEF_PCI_AC_RET(readq_be, u64, (const PCI_IO_ADDR addr), (addr), mem, addr) 19 DEF_PCI_AC_NORET(writeq, (u64 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 20 DEF_PCI_AC_NORET(writeq_be, (u64 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 21 #endif /* __powerpc64__ */ 22 23 DEF_PCI_AC_RET(inb, u8, (unsigned long port), (port), pio, port) 24 DEF_PCI_AC_RET(inw, u16, (unsigned long port), (port), pio, port) 25 DEF_PCI_AC_RET(inl, u32, (unsigned long port), (port), pio, port) 26 DEF_PCI_AC_NORET(outb, (u8 val, unsigned long port), (val, port), pio, port) 27 DEF_PCI_AC_NORET(outw, (u16 val, unsigned long port), (val, port), pio, port) 28 DEF_PCI_AC_NORET(outl, (u32 val, unsigned long port), (val, port), pio, port) 29 30 DEF_PCI_AC_NORET(readsb, (const PCI_IO_ADDR a, void *b, unsigned long c), 31 (a, b, c), mem, a) 32 DEF_PCI_AC_NORET(readsw, (const PCI_IO_ADDR a, void *b, unsigned long c), 33 (a, b, c), mem, a) 34 DEF_PCI_AC_NORET(readsl, (const PCI_IO_ADDR a, void *b, unsigned long c), 35 (a, b, c), mem, a) 36 DEF_PCI_AC_NORET(writesb, (PCI_IO_ADDR a, const void *b, unsigned long c), 37 (a, b, c), mem, a) 38 DEF_PCI_AC_NORET(writesw, (PCI_IO_ADDR a, const void *b, unsigned long c), 39 (a, b, c), mem, a) 40 DEF_PCI_AC_NORET(writesl, (PCI_IO_ADDR a, const void *b, unsigned long c), 41 (a, b, c), mem, a) 42 43 DEF_PCI_AC_NORET(insb, (unsigned long p, void *b, unsigned long c), 44 (p, b, c), pio, p) 45 DEF_PCI_AC_NORET(insw, (unsigned long p, void *b, unsigned long c), 46 (p, b, c), pio, p) 47 DEF_PCI_AC_NORET(insl, (unsigned long p, void *b, unsigned long c), 48 (p, b, c), pio, p) 49 DEF_PCI_AC_NORET(outsb, (unsigned long p, const void *b, unsigned long c), 50 (p, b, c), pio, p) 51 DEF_PCI_AC_NORET(outsw, (unsigned long p, const void *b, unsigned long c), 52 (p, b, c), pio, p) 53 DEF_PCI_AC_NORET(outsl, (unsigned long p, const void *b, unsigned long c), 54 (p, b, c), pio, p) 55 56 DEF_PCI_AC_NORET(memset_io, (PCI_IO_ADDR a, int c, unsigned long n), 57 (a, c, n), mem, a) 58 DEF_PCI_AC_NORET(memcpy_fromio, (void *d, const PCI_IO_ADDR s, unsigned long n), 59 (d, s, n), mem, s) 60 DEF_PCI_AC_NORET(memcpy_toio, (PCI_IO_ADDR d, const void *s, unsigned long n), 61 (d, s, n), mem, d) 62