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