1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 * OpenRISC Linux 4 * 5 * Linux architectural port borrowing liberally from similar works of 6 * others. All original copyrights apply as per the original source 7 * declaration. 8 * 9 * OpenRISC implementation: 10 * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se> 11 * et al. 12 */ 13 14 #ifndef __ASM_OPENRISC_IO_H 15 #define __ASM_OPENRISC_IO_H 16 17 /* 18 * PCI: can we really do 0 here if we have no port IO? 19 */ 20 #define IO_SPACE_LIMIT 0 21 22 /* OpenRISC has no port IO */ 23 #define HAVE_ARCH_PIO_SIZE 1 24 #define PIO_RESERVED 0X0UL 25 #define PIO_OFFSET 0 26 #define PIO_MASK 0 27 28 #define ioremap_nocache ioremap_nocache 29 #include <asm-generic/io.h> 30 #include <asm/pgtable.h> 31 32 extern void __iomem *__ioremap(phys_addr_t offset, unsigned long size, 33 pgprot_t prot); 34 35 static inline void __iomem *ioremap(phys_addr_t offset, size_t size) 36 { 37 return __ioremap(offset, size, PAGE_KERNEL); 38 } 39 40 /* #define _PAGE_CI 0x002 */ 41 static inline void __iomem *ioremap_nocache(phys_addr_t offset, 42 unsigned long size) 43 { 44 return __ioremap(offset, size, 45 __pgprot(pgprot_val(PAGE_KERNEL) | _PAGE_CI)); 46 } 47 48 extern void iounmap(void *addr); 49 #endif 50