1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * Trivial I/O routine definitions, intentionally meant to be included 4*4882a593Smuzhiyun * multiple times. Ugly I/O routine concatenation helpers taken from 5*4882a593Smuzhiyun * alpha. Must be included _before_ io.h to avoid preprocessor-induced 6*4882a593Smuzhiyun * routine mismatch. 7*4882a593Smuzhiyun */ 8*4882a593Smuzhiyun #define IO_CONCAT(a,b) _IO_CONCAT(a,b) 9*4882a593Smuzhiyun #define _IO_CONCAT(a,b) a ## _ ## b 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #ifndef __IO_PREFIX 12*4882a593Smuzhiyun #error "Don't include this header without a valid system prefix" 13*4882a593Smuzhiyun #endif 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun void __iomem *IO_CONCAT(__IO_PREFIX,ioport_map)(unsigned long addr, unsigned int size); 16*4882a593Smuzhiyun void IO_CONCAT(__IO_PREFIX,ioport_unmap)(void __iomem *addr); 17*4882a593Smuzhiyun void IO_CONCAT(__IO_PREFIX,mem_init)(void); 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun #undef __IO_PREFIX 20