2 * arch/sh/kernel/ioport.c
4 * Copyright (C) 2000 Niibe Yutaka
5 * Copyright (C) 2005 - 2007 Paul Mundt
7 * This file is subject to the terms and conditions of the GNU General Public
8 * License. See the file "COPYING" in the main directory of this archive
11 #include <linux/module.h>
14 unsigned long sh_io_port_base __read_mostly
= -1;
15 EXPORT_SYMBOL(sh_io_port_base
);
17 void __iomem
*__ioport_map(unsigned long addr
, unsigned int size
)
19 if (sh_mv
.mv_ioport_map
)
20 return sh_mv
.mv_ioport_map(addr
, size
);
22 return (void __iomem
*)(addr
+ sh_io_port_base
);
24 EXPORT_SYMBOL(__ioport_map
);
26 void __iomem
*ioport_map(unsigned long port
, unsigned int nr
)
30 ret
= __ioport_map_trapped(port
, nr
);
34 return __ioport_map(port
, nr
);
36 EXPORT_SYMBOL(ioport_map
);
38 void ioport_unmap(void __iomem
*addr
)
40 if (sh_mv
.mv_ioport_unmap
)
41 sh_mv
.mv_ioport_unmap(addr
);
43 EXPORT_SYMBOL(ioport_unmap
);