1/* 2 * linux/include/asm-parisc/ide.h 3 * 4 * Copyright (C) 1994-1996 Linus Torvalds & authors 5 */ 6 7/* 8 * This file contains the PARISC architecture specific IDE code. 9 */ 10 11#ifndef __ASM_PARISC_IDE_H 12#define __ASM_PARISC_IDE_H 13 14#ifdef __KERNEL__ 15 16/* Generic I/O and MEMIO string operations. */ 17 18#define __ide_insw insw 19#define __ide_insl insl 20#define __ide_outsw outsw 21#define __ide_outsl outsl 22 23static __inline__ void __ide_mm_insw(void __iomem *port, void *addr, u32 count) 24{ 25 while (count--) { 26 *(u16 *)addr = __raw_readw(port); 27 addr += 2; 28 } 29} 30 31static __inline__ void __ide_mm_insl(void __iomem *port, void *addr, u32 count) 32{ 33 while (count--) { 34 *(u32 *)addr = __raw_readl(port); 35 addr += 4; 36 } 37} 38 39static __inline__ void __ide_mm_outsw(void __iomem *port, void *addr, u32 count) 40{ 41 while (count--) { 42 __raw_writew(*(u16 *)addr, port); 43 addr += 2; 44 } 45} 46 47static __inline__ void __ide_mm_outsl(void __iomem *port, void *addr, u32 count) 48{ 49 while (count--) { 50 __raw_writel(*(u32 *)addr, port); 51 addr += 4; 52 } 53} 54 55#endif /* __KERNEL__ */ 56 57#endif /* __ASM_PARISC_IDE_H */ 58