| /* SPDX-License-Identifier: GPL-2.0 */ | 
 | /* | 
 |  *  linux/include/asm-parisc/ide.h | 
 |  * | 
 |  *  Copyright (C) 1994-1996  Linus Torvalds & authors | 
 |  */ | 
 |  | 
 | /* | 
 |  *  This file contains the PARISC architecture specific IDE code. | 
 |  */ | 
 |  | 
 | #ifndef __ASM_PARISC_IDE_H | 
 | #define __ASM_PARISC_IDE_H | 
 |  | 
 | #ifdef __KERNEL__ | 
 |  | 
 | /* Generic I/O and MEMIO string operations.  */ | 
 |  | 
 | #define __ide_insw	insw | 
 | #define __ide_insl	insl | 
 | #define __ide_outsw	outsw | 
 | #define __ide_outsl	outsl | 
 |  | 
 | static __inline__ void __ide_mm_insw(void __iomem *port, void *addr, u32 count) | 
 | { | 
 | 	while (count--) { | 
 | 		*(u16 *)addr = __raw_readw(port); | 
 | 		addr += 2; | 
 | 	} | 
 | } | 
 |  | 
 | static __inline__ void __ide_mm_insl(void __iomem *port, void *addr, u32 count) | 
 | { | 
 | 	while (count--) { | 
 | 		*(u32 *)addr = __raw_readl(port); | 
 | 		addr += 4; | 
 | 	} | 
 | } | 
 |  | 
 | static __inline__ void __ide_mm_outsw(void __iomem *port, void *addr, u32 count) | 
 | { | 
 | 	while (count--) { | 
 | 		__raw_writew(*(u16 *)addr, port); | 
 | 		addr += 2; | 
 | 	} | 
 | } | 
 |  | 
 | static __inline__ void __ide_mm_outsl(void __iomem *port, void *addr, u32 count) | 
 | { | 
 | 	while (count--) { | 
 | 		__raw_writel(*(u32 *)addr, port); | 
 | 		addr += 4; | 
 | 	} | 
 | } | 
 |  | 
 | #endif /* __KERNEL__ */ | 
 |  | 
 | #endif /* __ASM_PARISC_IDE_H */ |