Lines Matching refs:addr

52 #define IO_COND(addr, is_pio, is_mmio) do {			\
53 unsigned long port = (unsigned long __force)addr; \
69 #define mmio_read16be(addr) swab16(readw(addr))
70 #define mmio_read32be(addr) swab32(readl(addr))
71 #define mmio_read64be(addr) swab64(readq(addr))
79 unsigned int ioread8(const void __iomem *addr)
81 IO_COND(addr, return inb(port), return readb(addr));
85 unsigned int ioread16(const void __iomem *addr)
87 IO_COND(addr, return inw(port), return readw(addr));
91 unsigned int ioread16be(const void __iomem *addr)
93 IO_COND(addr, return pio_read16be(port), return mmio_read16be(addr));
97 unsigned int ioread32(const void __iomem *addr)
99 IO_COND(addr, return inl(port), return readl(addr));
103 unsigned int ioread32be(const void __iomem *addr)
105 IO_COND(addr, return pio_read32be(port), return mmio_read32be(addr));
156 u64 ioread64_lo_hi(const void __iomem *addr)
158 IO_COND(addr, return pio_read64_lo_hi(port), return readq(addr));
163 u64 ioread64_hi_lo(const void __iomem *addr)
165 IO_COND(addr, return pio_read64_hi_lo(port), return readq(addr));
170 u64 ioread64be_lo_hi(const void __iomem *addr)
172 IO_COND(addr, return pio_read64be_lo_hi(port),
173 return mmio_read64be(addr));
178 u64 ioread64be_hi_lo(const void __iomem *addr)
180 IO_COND(addr, return pio_read64be_hi_lo(port),
181 return mmio_read64be(addr));
203 void iowrite8(u8 val, void __iomem *addr)
207 IO_COND(addr, outb(val,port), writeb(val, addr));
209 void iowrite16(u16 val, void __iomem *addr)
213 IO_COND(addr, outw(val,port), writew(val, addr));
215 void iowrite16be(u16 val, void __iomem *addr)
219 IO_COND(addr, pio_write16be(val,port), mmio_write16be(val, addr));
221 void iowrite32(u32 val, void __iomem *addr)
225 IO_COND(addr, outl(val,port), writel(val, addr));
227 void iowrite32be(u32 val, void __iomem *addr)
231 IO_COND(addr, pio_write32be(val,port), mmio_write32be(val, addr));
264 void iowrite64_lo_hi(u64 val, void __iomem *addr)
268 IO_COND(addr, pio_write64_lo_hi(val, port),
269 writeq(val, addr));
272 void iowrite64_hi_lo(u64 val, void __iomem *addr)
276 IO_COND(addr, pio_write64_hi_lo(val, port),
277 writeq(val, addr));
280 void iowrite64be_lo_hi(u64 val, void __iomem *addr)
284 IO_COND(addr, pio_write64be_lo_hi(val, port),
285 mmio_write64be(val, addr));
288 void iowrite64be_hi_lo(u64 val, void __iomem *addr)
292 IO_COND(addr, pio_write64be_hi_lo(val, port),
293 mmio_write64be(val, addr));
310 static inline void mmio_insb(const void __iomem *addr, u8 *dst, int count)
313 u8 data = __raw_readb(addr);
318 static inline void mmio_insw(const void __iomem *addr, u16 *dst, int count)
321 u16 data = __raw_readw(addr);
326 static inline void mmio_insl(const void __iomem *addr, u32 *dst, int count)
329 u32 data = __raw_readl(addr);
337 static inline void mmio_outsb(void __iomem *addr, const u8 *src, int count)
340 __raw_writeb(*src, addr);
344 static inline void mmio_outsw(void __iomem *addr, const u16 *src, int count)
347 __raw_writew(*src, addr);
351 static inline void mmio_outsl(void __iomem *addr, const u32 *src, int count)
354 __raw_writel(*src, addr);
360 void ioread8_rep(const void __iomem *addr, void *dst, unsigned long count)
362 IO_COND(addr, insb(port,dst,count), mmio_insb(addr, dst, count));
366 void ioread16_rep(const void __iomem *addr, void *dst, unsigned long count)
368 IO_COND(addr, insw(port,dst,count), mmio_insw(addr, dst, count));
372 void ioread32_rep(const void __iomem *addr, void *dst, unsigned long count)
374 IO_COND(addr, insl(port,dst,count), mmio_insl(addr, dst, count));
382 void iowrite8_rep(void __iomem *addr, const void *src, unsigned long count)
386 IO_COND(addr, outsb(port, src, count), mmio_outsb(addr, src, count));
388 void iowrite16_rep(void __iomem *addr, const void *src, unsigned long count)
392 IO_COND(addr, outsw(port, src, count), mmio_outsw(addr, src, count));
394 void iowrite32_rep(void __iomem *addr, const void *src, unsigned long count)
398 IO_COND(addr, outsl(port, src,count), mmio_outsl(addr, src, count));
413 void ioport_unmap(void __iomem *addr)
424 void pci_iounmap(struct pci_dev *dev, void __iomem * addr)
426 IO_COND(addr, /* nothing */, iounmap(addr));