sa1111_reg.h revision 1.3 1 1.3 bsh /* $NetBSD: sa1111_reg.h,v 1.3 2002/12/18 04:09:31 bsh Exp $ */
2 1.1 rjs
3 1.1 rjs /*-
4 1.1 rjs * Copyright (c) 2001 The NetBSD Foundation, Inc.
5 1.1 rjs * All rights reserved.
6 1.1 rjs *
7 1.1 rjs * This code is derived from software contributed to The NetBSD Foundation
8 1.1 rjs * by IWAMOTO Toshihiro.
9 1.1 rjs *
10 1.1 rjs * Redistribution and use in source and binary forms, with or without
11 1.1 rjs * modification, are permitted provided that the following conditions
12 1.1 rjs * are met:
13 1.1 rjs * 1. Redistributions of source code must retain the above copyright
14 1.1 rjs * notice, this list of conditions and the following disclaimer.
15 1.1 rjs * 2. Redistributions in binary form must reproduce the above copyright
16 1.1 rjs * notice, this list of conditions and the following disclaimer in the
17 1.1 rjs * documentation and/or other materials provided with the distribution.
18 1.1 rjs * 3. All advertising materials mentioning features or use of this software
19 1.1 rjs * must display the following acknowledgement:
20 1.1 rjs * This product includes software developed by the NetBSD
21 1.1 rjs * Foundation, Inc. and its contributors.
22 1.1 rjs * 4. Neither the name of The NetBSD Foundation nor the names of its
23 1.1 rjs * contributors may be used to endorse or promote products derived
24 1.1 rjs * from this software without specific prior written permission.
25 1.1 rjs *
26 1.1 rjs * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
27 1.1 rjs * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
28 1.1 rjs * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29 1.1 rjs * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
30 1.1 rjs * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
31 1.1 rjs * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
32 1.1 rjs * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
33 1.1 rjs * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
34 1.1 rjs * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35 1.1 rjs * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36 1.1 rjs * POSSIBILITY OF SUCH DAMAGE.
37 1.1 rjs */
38 1.1 rjs
39 1.3 bsh #ifndef _ARM_SA11X0_SA1111_REG_H
40 1.3 bsh #define _ARM_SA11X0_SA1111_REG_H
41 1.3 bsh
42 1.3 bsh
43 1.1 rjs /* Interrupt Controller */
44 1.1 rjs
45 1.1 rjs /* number of interrupt bits */
46 1.1 rjs #define SACCIC_LEN 55
47 1.1 rjs
48 1.1 rjs /* System Bus Interface */
49 1.2 rjs #define SACCSBI_SKCR 0x0000
50 1.3 bsh #define SKCR_PLLBYPASS (1<<0)
51 1.3 bsh #define SKCR_RCLKEN (1<<1)
52 1.3 bsh #define SKCR_SLEEP (1<<2)
53 1.3 bsh #define SKCR_DOZE (1<<3)
54 1.3 bsh #define SKCR_VCOOFF (1<<4)
55 1.3 bsh #define SKCR_RDYEN (1<<7)
56 1.3 bsh #define SKCR_SELAC (1<<8) /* AC Link or I2S */
57 1.3 bsh #define SKCR_NOEEN (1<<12) /* Enable nOE */
58 1.2 rjs #define SACCSBI_SMCR 0x0004
59 1.1 rjs #define SACCSBI_SKID 0x0008
60 1.1 rjs
61 1.2 rjs /* System Controller */
62 1.2 rjs #define SACCSC_SKPCR 0x0200
63 1.2 rjs
64 1.2 rjs /* USB Host Controller */
65 1.2 rjs #define SACCUSB_REVISION 0x0400
66 1.2 rjs #define SACCUSB_CONTROL 0x0404
67 1.2 rjs #define SACCUSB_STATUS 0x0408
68 1.2 rjs #define SACCUSB_RESET 0x051C
69 1.2 rjs
70 1.1 rjs /* Interrupt Controller */
71 1.1 rjs #define SACCIC_INTTEST0 0x1600
72 1.1 rjs #define SACCIC_INTTEST1 0x1604
73 1.1 rjs #define SACCIC_INTEN0 0x1608
74 1.1 rjs #define SACCIC_INTEN1 0x160C
75 1.1 rjs #define SACCIC_INTPOL0 0x1610
76 1.1 rjs #define SACCIC_INTPOL1 0x1614
77 1.1 rjs #define SACCIC_INTTSTSEL 0x1618
78 1.1 rjs #define SACCIC_INTSTATCLR0 0x161C
79 1.1 rjs #define SACCIC_INTSTATCLR1 0x1620
80 1.1 rjs #define SACCIC_INTSET0 0x1624
81 1.1 rjs #define SACCIC_INTSET1 0x1628
82 1.1 rjs #define SACCIC_WAKE_EN0 0x162C
83 1.1 rjs #define SACCIC_WAKE_EN1 0x1630
84 1.1 rjs #define SACCIC_WAKE_POL0 0x1634
85 1.1 rjs #define SACCIC_WAKE_POL1 0x1638
86 1.1 rjs
87 1.1 rjs /* GPIO registers */
88 1.1 rjs #define SACCGPIOA_DDR 0x1000 /* data direction */
89 1.1 rjs #define SACCGPIOA_DVR 0x1004 /* data value */
90 1.1 rjs #define SACCGPIOA_SDR 0x1008 /* sleep direction */
91 1.1 rjs #define SACCGPIOA_SSR 0x100C /* sleep state */
92 1.1 rjs #define SACCGPIOB_DDR 0x1010
93 1.1 rjs #define SACCGPIOB_DVR 0x1014
94 1.1 rjs #define SACCGPIOB_SDR 0x1018
95 1.1 rjs #define SACCGPIOB_SSR 0x101C
96 1.1 rjs #define SACCGPIOC_DDR 0x1020
97 1.1 rjs #define SACCGPIOC_DVR 0x1024
98 1.1 rjs #define SACCGPIOC_SDR 0x1028
99 1.1 rjs #define SACCGPIOC_SSR 0x102C
100 1.2 rjs
101 1.3 bsh #define SACC_KBD0 0x0a00
102 1.3 bsh #define SACC_KBD1 0x0c00
103 1.3 bsh
104 1.3 bsh #define SACCKBD_CR 0x00
105 1.3 bsh #define KBDCR_FKC (1<<0) /* Force MSCLK/TPCLK low */
106 1.3 bsh #define KBDCR_FKD (1<<1) /* Force MSDATA/TPDATA low */
107 1.3 bsh #define KBDCR_ENA (1<<3) /* Enable */
108 1.3 bsh #define SACCKBD_STAT 0x04
109 1.3 bsh #define KBDSTAT_KBC (1<<0) /* KBCLK pin value */
110 1.3 bsh #define KBDSTAT_KBD (1<<1) /* KBDATA pin value */
111 1.3 bsh #define KBDSTAT_RXP (1<<2) /* Parity */
112 1.3 bsh #define KBDSTAT_ENA (1<<3) /* Enable */
113 1.3 bsh #define KBDSTAT_RXB (1<<4) /* Rx busy */
114 1.3 bsh #define KBDSTAT_RXF (1<<5) /* Rx full */
115 1.3 bsh #define KBDSTAT_TXB (1<<6) /* Tx busy */
116 1.3 bsh #define KBDSTAT_TXE (1<<7) /* Tx empty */
117 1.3 bsh #define KBDSTAT_STP (1<<8) /* Stop bit error */
118 1.3 bsh #define SACCKBD_DATA 0x08
119 1.3 bsh #define SACCKBD_CLKDIV 0x0c
120 1.3 bsh #define KBDCLKDIV_DIV8 0
121 1.3 bsh #define KBDCLKDIV_DIV4 1
122 1.3 bsh #define KBDCLKDIV_DIV2 2
123 1.3 bsh #define SACCKBD_CLKPRECNT 0x10
124 1.3 bsh #define SACCKBD_KBDITR 0x14 /* Interrupt test */
125 1.3 bsh
126 1.3 bsh #define SACCKBD_SIZE 0x18
127 1.3 bsh
128 1.3 bsh #endif /* _ARM_SA11X0_SA1111_REG_H */
129