imx23_uartdbgreg.h revision 1.1 1 1.1 jkunz /* $Id: imx23_uartdbgreg.h,v 1.1 2012/11/20 19:06:14 jkunz Exp $ */
2 1.1 jkunz
3 1.1 jkunz /*
4 1.1 jkunz * Copyright (c) 2012 The NetBSD Foundation, Inc.
5 1.1 jkunz * All rights reserved.
6 1.1 jkunz *
7 1.1 jkunz * This code is derived from software contributed to The NetBSD Foundation
8 1.1 jkunz * by Petri Laakso.
9 1.1 jkunz *
10 1.1 jkunz * Redistribution and use in source and binary forms, with or without
11 1.1 jkunz * modification, are permitted provided that the following conditions
12 1.1 jkunz * are met:
13 1.1 jkunz * 1. Redistributions of source code must retain the above copyright
14 1.1 jkunz * notice, this list of conditions and the following disclaimer.
15 1.1 jkunz * 2. Redistributions in binary form must reproduce the above copyright
16 1.1 jkunz * notice, this list of conditions and the following disclaimer in the
17 1.1 jkunz * documentation and/or other materials provided with the distribution.
18 1.1 jkunz *
19 1.1 jkunz * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20 1.1 jkunz * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21 1.1 jkunz * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22 1.1 jkunz * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23 1.1 jkunz * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 1.1 jkunz * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 1.1 jkunz * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 1.1 jkunz * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 1.1 jkunz * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 1.1 jkunz * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 1.1 jkunz * POSSIBILITY OF SUCH DAMAGE.
30 1.1 jkunz */
31 1.1 jkunz
32 1.1 jkunz #ifndef _ARM_IMX_IMX23_UARTDBGREG_H_
33 1.1 jkunz #define _ARM_IMX_IMX23_UARTDBGREG_H_
34 1.1 jkunz
35 1.1 jkunz #ifdef _LOCORE
36 1.1 jkunz #include <machine/asm.h>
37 1.1 jkunz #else
38 1.1 jkunz #include <sys/cdefs.h>
39 1.1 jkunz #endif /* !_LOCORE */
40 1.1 jkunz
41 1.1 jkunz #define HW_UARTDBG_BASE 0x80070000
42 1.1 jkunz #define HW_UARTDBG_SIZE 0x00002000 /* 8kB */
43 1.1 jkunz
44 1.1 jkunz /*
45 1.1 jkunz * UART Data Register.
46 1.1 jkunz */
47 1.1 jkunz #define HW_UARTDBGDR 0x000
48 1.1 jkunz
49 1.1 jkunz #define HW_UARTDBGDR_UNAVAILABLE __BITS(31, 16)
50 1.1 jkunz #define HW_UARTDBGDR_RESERVED __BITS(15, 12)
51 1.1 jkunz #define HW_UARTDBGDR_OE __BIT(11)
52 1.1 jkunz #define HW_UARTDBGDR_BE __BIT(10)
53 1.1 jkunz #define HW_UARTDBGDR_PE __BIT(9)
54 1.1 jkunz #define HW_UARTDBGDR_FE __BIT(8)
55 1.1 jkunz #define HW_UARTDBGDR_DATA __BITS(7,0)
56 1.1 jkunz
57 1.1 jkunz /*
58 1.1 jkunz * UART Receive Status Register.
59 1.1 jkunz */
60 1.1 jkunz #define HW_UARTDBGRSR_ECR 0x004
61 1.1 jkunz
62 1.1 jkunz #define HW_UARTDBGRSR_ECR_UNAVAILABLE __BITS(31, 8)
63 1.1 jkunz #define HW_UARTDBGRSR_ECR_EC __BITS(7, 4)
64 1.1 jkunz #define HW_UARTDBGRSR_ECR_OE __BIT(3)
65 1.1 jkunz #define HW_UARTDBGRSR_ECR_BE __BIT(2)
66 1.1 jkunz #define HW_UARTDBGRSR_ECR_PE __BIT(1)
67 1.1 jkunz #define HW_UARTDBGRSR_ECR_FE __BIT(0)
68 1.1 jkunz
69 1.1 jkunz /*
70 1.1 jkunz * UART Flag Register.
71 1.1 jkunz */
72 1.1 jkunz #define HW_UARTDBGFR 0x018
73 1.1 jkunz
74 1.1 jkunz #define HW_UARTDBGFR_RUNAVAILABLE __BITS(31, 16)
75 1.1 jkunz #define HW_UARTDBGFR_RESERVED __BITS(15, 9)
76 1.1 jkunz #define HW_UARTDBGFR_RI __BIT(8)
77 1.1 jkunz #define HW_UARTDBGFR_TXFE __BIT(7)
78 1.1 jkunz #define HW_UARTDBGFR_RXFF __BIT(6)
79 1.1 jkunz #define HW_UARTDBGFR_TXFF __BIT(5)
80 1.1 jkunz #define HW_UARTDBGFR_RXFE __BIT(4)
81 1.1 jkunz #define HW_UARTDBGFR_BUSY __BIT(3)
82 1.1 jkunz #define HW_UARTDBGFR_DCD __BIT(2)
83 1.1 jkunz #define HW_UARTDBGFR_DSR __BIT(1)
84 1.1 jkunz #define HW_UARTDBGFR_CTS __BIT(0)
85 1.1 jkunz
86 1.1 jkunz /*
87 1.1 jkunz * UART IrDA Low-Power Counter Register.
88 1.1 jkunz */
89 1.1 jkunz #define HW_UARTDBGILPR 0x020
90 1.1 jkunz
91 1.1 jkunz #define HW_UARTDBGILPR_UNAVAILABLE __BITS(31, 8)
92 1.1 jkunz #define HW_UARTDBGILPR_ILPDVSR __BIT(7, 0)
93 1.1 jkunz
94 1.1 jkunz /*
95 1.1 jkunz * UART Integer Baud Rate Divisor Register.
96 1.1 jkunz */
97 1.1 jkunz #define HW_UARTDBGIBRD 0x024
98 1.1 jkunz
99 1.1 jkunz #define HW_UARTDBGIBRD_UNAVAILABLE __BITS(31, 16)
100 1.1 jkunz #define HW_UARTDBGIBRD_BAUD_DIVINT __BITS(15, 0)
101 1.1 jkunz
102 1.1 jkunz /*
103 1.1 jkunz * UART Fractional Baud Rate Divisor Register.
104 1.1 jkunz */
105 1.1 jkunz #define HW_UARTDBGFBRD 0x028
106 1.1 jkunz
107 1.1 jkunz #define HW_UARTDBGFBRD_UNAVAILABLE __BITS(31, 8)
108 1.1 jkunz #define HW_UARTDBGFBRD_RESERVED __BITS(7, 6)
109 1.1 jkunz #define HW_UARTDBGFBRD_BAUD_DIVFRAC __BITS(5, 0)
110 1.1 jkunz
111 1.1 jkunz /*
112 1.1 jkunz * UART Line Control Register.
113 1.1 jkunz */
114 1.1 jkunz #define HW_UARTDBGLCR_H 0x02C
115 1.1 jkunz
116 1.1 jkunz #define HW_UARTDBGLCR_H_UNAVAILABLE __BITS(31, 16)
117 1.1 jkunz #define HW_UARTDBGLCR_H_RESERVED __BITS(15, 8)
118 1.1 jkunz #define HW_UARTDBGLCR_H_SPS __BIT(7)
119 1.1 jkunz #define HW_UARTDBGLCR_H_WLEN __BITS(6, 5)
120 1.1 jkunz #define HW_UARTDBGLCR_H_FEN __BIT(4)
121 1.1 jkunz #define HW_UARTDBGLCR_H_STP2 __BIT(3)
122 1.1 jkunz #define HW_UARTDBGLCR_H_EPS __BIT(2)
123 1.1 jkunz #define HW_UARTDBGLCR_H_PEN __BIT(1)
124 1.1 jkunz #define HW_UARTDBGLCR_H_BRK __BIT(0)
125 1.1 jkunz
126 1.1 jkunz /*
127 1.1 jkunz * UART Control Register.
128 1.1 jkunz */
129 1.1 jkunz #define HW_UARTDBGCR 0x030
130 1.1 jkunz
131 1.1 jkunz #define HW_UARTDBGCR_UNAVAILABLE __BITS(31, 16)
132 1.1 jkunz #define HW_UARTDBGCR_CTSEN __BIT(15)
133 1.1 jkunz #define HW_UARTDBGCR_RTSEN __BIT(14)
134 1.1 jkunz #define HW_UARTDBGCR_OUT2 __BIT(13)
135 1.1 jkunz #define HW_UARTDBGCR_OUT1 __BIT(12)
136 1.1 jkunz #define HW_UARTDBGCR_RTS __BIT(11)
137 1.1 jkunz #define HW_UARTDBGCR_DTR __BIT(10)
138 1.1 jkunz #define HW_UARTDBGCR_RXE __BIT(9)
139 1.1 jkunz #define HW_UARTDBGCR_TXE __BIT(8)
140 1.1 jkunz #define HW_UARTDBGCR_LBE __BIT(7)
141 1.1 jkunz #define HW_UARTDBGCR_RESERVED __BITS(6, 3)
142 1.1 jkunz #define HW_UARTDBGCR_SIRLP __BIT(2)
143 1.1 jkunz #define HW_UARTDBGCR_SIREN __BIT(1)
144 1.1 jkunz #define HW_UARTDBGCR_UARTEN __BIT(0)
145 1.1 jkunz
146 1.1 jkunz /*
147 1.1 jkunz * UART Interrupt FIFO Level Select Register.
148 1.1 jkunz */
149 1.1 jkunz #define HW_UARTDBGIFLS 0x034
150 1.1 jkunz
151 1.1 jkunz #define HW_UARTDBGIFLS_UNAVAILABLE __BITS(31, 16)
152 1.1 jkunz #define HW_UARTDBGIFLS_RESERVED __BITS(15, 6)
153 1.1 jkunz #define HW_UARTDBGIFLS_RXIFLSEL __BITS(5, 3)
154 1.1 jkunz #define HW_UARTDBGIFLS_TXIFLSEL __BITS(2, 0)
155 1.1 jkunz
156 1.1 jkunz /*
157 1.1 jkunz * UART Interrupt Mask Set/Clear Register.
158 1.1 jkunz */
159 1.1 jkunz #define HW_UARTDBGIMSC 0x038
160 1.1 jkunz
161 1.1 jkunz #define HW_UARTDBGIMSC_UNAVAILABLE __BITS(31, 16)
162 1.1 jkunz #define HW_UARTDBGIMSC_RESERVED __BITS(15, 11)
163 1.1 jkunz #define HW_UARTDBGIMSC_OEIM __BIT(10)
164 1.1 jkunz #define HW_UARTDBGIMSC_BEIM __BIT(9)
165 1.1 jkunz #define HW_UARTDBGIMSC_PEIM __BIT(8)
166 1.1 jkunz #define HW_UARTDBGIMSC_FEIM __BIT(7)
167 1.1 jkunz #define HW_UARTDBGIMSC_RTIM __BIT(6)
168 1.1 jkunz #define HW_UARTDBGIMSC_TXIM __BIT(5)
169 1.1 jkunz #define HW_UARTDBGIMSC_RXIM __BIT(4)
170 1.1 jkunz #define HW_UARTDBGIMSC_DSRMIM __BIT(3)
171 1.1 jkunz #define HW_UARTDBGIMSC_DCDMIM __BIT(2)
172 1.1 jkunz #define HW_UARTDBGIMSC_CTSMIM __BIT(1)
173 1.1 jkunz #define HW_UARTDBGIMSC_RIMIM __BIT(0)
174 1.1 jkunz
175 1.1 jkunz /*
176 1.1 jkunz * UART Raw Interrupt Status Register.
177 1.1 jkunz */
178 1.1 jkunz #define HW_UARTDBGRIS 0x03C
179 1.1 jkunz
180 1.1 jkunz #define HW_UARTDBGRIS_UNAVAILABLE __BITS(31, 16)
181 1.1 jkunz #define HW_UARTDBGRIS_RESERVED __BITS(15, 11)
182 1.1 jkunz #define HW_UARTDBGRIS_OERIS __BIT(10)
183 1.1 jkunz #define HW_UARTDBGRIS_BERIS __BIT(9)
184 1.1 jkunz #define HW_UARTDBGRIS_PERIS __BIT(8)
185 1.1 jkunz #define HW_UARTDBGRIS_FERIS __BIT(7)
186 1.1 jkunz #define HW_UARTDBGRIS_RTRIS __BIT(6)
187 1.1 jkunz #define HW_UARTDBGRIS_TXRIS __BIT(5)
188 1.1 jkunz #define HW_UARTDBGRIS_RXRIS __BIT(4)
189 1.1 jkunz #define HW_UARTDBGRIS_DSRRMIS __BIT(3)
190 1.1 jkunz #define HW_UARTDBGRIS_DCDRMIS __BIT(2)
191 1.1 jkunz #define HW_UARTDBGRIS_CTSRMIS __BIT(1)
192 1.1 jkunz #define HW_UARTDBGRIS_RIRMIS __BIT(0)
193 1.1 jkunz
194 1.1 jkunz /*
195 1.1 jkunz * UART Masked Interrupt Status Register.
196 1.1 jkunz */
197 1.1 jkunz #define HW_UARTDBGMIS 0x040
198 1.1 jkunz
199 1.1 jkunz #define HW_UARTDBGMIS_UNAVAILABLE __BITS(31, 16)
200 1.1 jkunz #define HW_UARTDBGMIS_RESERVED __BITS(15, 11)
201 1.1 jkunz #define HW_UARTDBGMIS_OEMIS __BIT(10)
202 1.1 jkunz #define HW_UARTDBGMIS_BEMIS __BIT(9)
203 1.1 jkunz #define HW_UARTDBGMIS_PEMIS __BIT(8)
204 1.1 jkunz #define HW_UARTDBGMIS_FEMIS __BIT(7)
205 1.1 jkunz #define HW_UARTDBGMIS_RTMIS __BIT(6)
206 1.1 jkunz #define HW_UARTDBGMIS_TXMIS __BIT(5)
207 1.1 jkunz #define HW_UARTDBGMIS_RXMIS __BIT(4)
208 1.1 jkunz #define HW_UARTDBGMIS_DSRMMIS __BIT(3)
209 1.1 jkunz #define HW_UARTDBGMIS_DCDMMIS __BIT(2)
210 1.1 jkunz #define HW_UARTDBGMIS_CTSMMIS __BIT(1)
211 1.1 jkunz #define HW_UARTDBGMIS_RIMMIS __BIT(0)
212 1.1 jkunz
213 1.1 jkunz /*
214 1.1 jkunz * UART Interrupt Clear Register.
215 1.1 jkunz */
216 1.1 jkunz #define HW_UARTDBGICR 0x044
217 1.1 jkunz
218 1.1 jkunz #define HW_UARTDBGICR_UNAVAILABLE __BITS(31, 16)
219 1.1 jkunz #define HW_UARTDBGICR_RESERVED __BITS(15, 11)
220 1.1 jkunz #define HW_UARTDBGICR_OEIC __BIT(10)
221 1.1 jkunz #define HW_UARTDBGICR_BEIC __BIT(9)
222 1.1 jkunz #define HW_UARTDBGICR_PEIC __BIT(8)
223 1.1 jkunz #define HW_UARTDBGICR_FEIC __BIT(7)
224 1.1 jkunz #define HW_UARTDBGICR_RTIC __BIT(6)
225 1.1 jkunz #define HW_UARTDBGICR_TXIC __BIT(5)
226 1.1 jkunz #define HW_UARTDBGICR_RXIC __BIT(4)
227 1.1 jkunz #define HW_UARTDBGICR_DSRMIC __BIT(3)
228 1.1 jkunz #define HW_UARTDBGICR_DCDMIC __BIT(2)
229 1.1 jkunz #define HW_UARTDBGICR_CTSMIC __BIT(1)
230 1.1 jkunz #define HW_UARTDBGICR_RIMIC __BIT(0)
231 1.1 jkunz
232 1.1 jkunz /*
233 1.1 jkunz * UART DMA Control Register.
234 1.1 jkunz */
235 1.1 jkunz #define HW_UARTDBGDMACR 0x048
236 1.1 jkunz
237 1.1 jkunz #define HW_UARTDBGDMACR_UNAVAILABLE __BITS(31, 16)
238 1.1 jkunz #define HW_UARTDBGDMACR_RESERVED __BITS(15, 3)
239 1.1 jkunz #define HW_UARTDBGDMACR_DMAONERR __BIT(2)
240 1.1 jkunz #define HW_UARTDBGDMACR_TXDMAE __BIT(1)
241 1.1 jkunz #define HW_UARTDBGDMACR_RXDMAE __BIT(0)
242 1.1 jkunz
243 1.1 jkunz #endif /* !_ARM_IMX_IMX23_UARTDBGREG_H_ */
244