18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* This file is meant to be include multiple times by other headers */ 38c2ecf20Sopenharmony_ci/* last 2 argments are used by platforms/cell/io-workarounds.[ch] */ 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(readb, u8, (const PCI_IO_ADDR addr), (addr), mem, addr) 68c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(readw, u16, (const PCI_IO_ADDR addr), (addr), mem, addr) 78c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(readl, u32, (const PCI_IO_ADDR addr), (addr), mem, addr) 88c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(readw_be, u16, (const PCI_IO_ADDR addr), (addr), mem, addr) 98c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(readl_be, u32, (const PCI_IO_ADDR addr), (addr), mem, addr) 108c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writeb, (u8 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 118c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writew, (u16 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 128c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writel, (u32 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 138c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writew_be, (u16 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 148c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writel_be, (u32 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ci#ifdef __powerpc64__ 178c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(readq, u64, (const PCI_IO_ADDR addr), (addr), mem, addr) 188c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(readq_be, u64, (const PCI_IO_ADDR addr), (addr), mem, addr) 198c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writeq, (u64 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 208c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writeq_be, (u64 val, PCI_IO_ADDR addr), (val, addr), mem, addr) 218c2ecf20Sopenharmony_ci#endif /* __powerpc64__ */ 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(inb, u8, (unsigned long port), (port), pio, port) 248c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(inw, u16, (unsigned long port), (port), pio, port) 258c2ecf20Sopenharmony_ciDEF_PCI_AC_RET(inl, u32, (unsigned long port), (port), pio, port) 268c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(outb, (u8 val, unsigned long port), (val, port), pio, port) 278c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(outw, (u16 val, unsigned long port), (val, port), pio, port) 288c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(outl, (u32 val, unsigned long port), (val, port), pio, port) 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(readsb, (const PCI_IO_ADDR a, void *b, unsigned long c), 318c2ecf20Sopenharmony_ci (a, b, c), mem, a) 328c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(readsw, (const PCI_IO_ADDR a, void *b, unsigned long c), 338c2ecf20Sopenharmony_ci (a, b, c), mem, a) 348c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(readsl, (const PCI_IO_ADDR a, void *b, unsigned long c), 358c2ecf20Sopenharmony_ci (a, b, c), mem, a) 368c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writesb, (PCI_IO_ADDR a, const void *b, unsigned long c), 378c2ecf20Sopenharmony_ci (a, b, c), mem, a) 388c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writesw, (PCI_IO_ADDR a, const void *b, unsigned long c), 398c2ecf20Sopenharmony_ci (a, b, c), mem, a) 408c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(writesl, (PCI_IO_ADDR a, const void *b, unsigned long c), 418c2ecf20Sopenharmony_ci (a, b, c), mem, a) 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(insb, (unsigned long p, void *b, unsigned long c), 448c2ecf20Sopenharmony_ci (p, b, c), pio, p) 458c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(insw, (unsigned long p, void *b, unsigned long c), 468c2ecf20Sopenharmony_ci (p, b, c), pio, p) 478c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(insl, (unsigned long p, void *b, unsigned long c), 488c2ecf20Sopenharmony_ci (p, b, c), pio, p) 498c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(outsb, (unsigned long p, const void *b, unsigned long c), 508c2ecf20Sopenharmony_ci (p, b, c), pio, p) 518c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(outsw, (unsigned long p, const void *b, unsigned long c), 528c2ecf20Sopenharmony_ci (p, b, c), pio, p) 538c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(outsl, (unsigned long p, const void *b, unsigned long c), 548c2ecf20Sopenharmony_ci (p, b, c), pio, p) 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(memset_io, (PCI_IO_ADDR a, int c, unsigned long n), 578c2ecf20Sopenharmony_ci (a, c, n), mem, a) 588c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(memcpy_fromio, (void *d, const PCI_IO_ADDR s, unsigned long n), 598c2ecf20Sopenharmony_ci (d, s, n), mem, s) 608c2ecf20Sopenharmony_ciDEF_PCI_AC_NORET(memcpy_toio, (PCI_IO_ADDR d, const void *s, unsigned long n), 618c2ecf20Sopenharmony_ci (d, s, n), mem, d) 62