1/* 2 * include/asm-sh/snapgear.h 3 * 4 * Modified version of io_se.h for the snapgear-specific functions. 5 * 6 * May be copied or modified under the terms of the GNU General Public 7 * License. See linux/COPYING for more information. 8 * 9 * IO functions for a SnapGear 10 */ 11 12#ifndef _ASM_SH_IO_SNAPGEAR_H 13#define _ASM_SH_IO_SNAPGEAR_H 14 15#if defined(CONFIG_CPU_SH4) 16/* 17 * The external interrupt lines, these take up ints 0 - 15 inclusive 18 * depending on the priority for the interrupt. In fact the priority 19 * is the interrupt :-) 20 */ 21 22#define IRL0_IRQ 2 23#define IRL0_IPR_ADDR INTC_IPRD 24#define IRL0_IPR_POS 3 25#define IRL0_PRIORITY 13 26 27#define IRL1_IRQ 5 28#define IRL1_IPR_ADDR INTC_IPRD 29#define IRL1_IPR_POS 2 30#define IRL1_PRIORITY 10 31 32#define IRL2_IRQ 8 33#define IRL2_IPR_ADDR INTC_IPRD 34#define IRL2_IPR_POS 1 35#define IRL2_PRIORITY 7 36 37#define IRL3_IRQ 11 38#define IRL3_IPR_ADDR INTC_IPRD 39#define IRL3_IPR_POS 0 40#define IRL3_PRIORITY 4 41#endif 42 43#define __IO_PREFIX snapgear 44#include <asm/io_generic.h> 45 46#ifdef CONFIG_SH_SECUREEDGE5410 47/* 48 * We need to remember what was written to the ioport as some bits 49 * are shared with other functions and you cannot read back what was 50 * written :-| 51 * 52 * Bit Read Write 53 * ----------------------------------------------- 54 * D0 DCD on ttySC1 power 55 * D1 Reset Switch heatbeat 56 * D2 ttySC0 CTS (7100) LAN 57 * D3 - WAN 58 * D4 ttySC0 DCD (7100) CONSOLE 59 * D5 - ONLINE 60 * D6 - VPN 61 * D7 - DTR on ttySC1 62 * D8 - ttySC0 RTS (7100) 63 * D9 - ttySC0 DTR (7100) 64 * D10 - RTC SCLK 65 * D11 RTC DATA RTC DATA 66 * D12 - RTS RESET 67 */ 68 69#define SECUREEDGE_IOPORT_ADDR ((volatile short *) 0xb0000000) 70extern unsigned short secureedge5410_ioport; 71 72#define SECUREEDGE_WRITE_IOPORT(val, mask) (*SECUREEDGE_IOPORT_ADDR = \ 73 (secureedge5410_ioport = \ 74 ((secureedge5410_ioport & ~(mask)) | ((val) & (mask))))) 75#define SECUREEDGE_READ_IOPORT() \ 76 ((*SECUREEDGE_IOPORT_ADDR&0x0817) | (secureedge5410_ioport&~0x0817)) 77#endif 78 79#endif /* _ASM_SH_IO_SNAPGEAR_H */ 80