Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1136)

Side by Side Diff: arch/arm/mach-tegra/nv/include/ap20/arfic_proc_if.h

Issue 3256004: [ARM] tegra: add nvos/nvrm/nvmap drivers (Closed) Base URL: ssh://git@gitrw.chromium.org/kernel.git
Patch Set: remove ap15 headers Created 10 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * Copyright (c) 2009 NVIDIA Corporation.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 *
8 * Redistributions of source code must retain the above copyright notice,
9 * this list of conditions and the following disclaimer.
10 *
11 * Redistributions in binary form must reproduce the above copyright notice,
12 * this list of conditions and the following disclaimer in the documentation
13 * and/or other materials provided with the distribution.
14 *
15 * Neither the name of the NVIDIA Corporation nor the names of its contributors
16 * may be used to endorse or promote products derived from this software
17 * without specific prior written permission.
18 *
19 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
23 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 * POSSIBILITY OF SUCH DAMAGE.
30 *
31 */
32 //
33 // DO NOT EDIT - generated by simspec!
34 //
35
36 #ifndef ___ARFIC_PROC_IF_H_INC_
37 #define ___ARFIC_PROC_IF_H_INC_
38
39 // Register FIC_PROC_IF_CONTROL_0
40 #define FIC_PROC_IF_CONTROL_0 _MK_ADDR_CONST(0x100)
41 #define FIC_PROC_IF_CONTROL_0_SECURE 0x0
42 #define FIC_PROC_IF_CONTROL_0_WORD_COUNT 0x1
43 #define FIC_PROC_IF_CONTROL_0_RESET_VAL _MK_MASK_CONST(0 x0)
44 #define FIC_PROC_IF_CONTROL_0_RESET_MASK _MK_MASK_CONST(0 x1f)
45 #define FIC_PROC_IF_CONTROL_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
46 #define FIC_PROC_IF_CONTROL_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
47 #define FIC_PROC_IF_CONTROL_0_READ_MASK _MK_MASK_CONST(0 x1f)
48 #define FIC_PROC_IF_CONTROL_0_WRITE_MASK _MK_MASK_CONST(0 x1f)
49 // Secure enable for the Cortex-A9 processor interface
50 #define FIC_PROC_IF_CONTROL_0_ENABLE_S_SHIFT _MK_SHIFT_CONST( 0)
51 #define FIC_PROC_IF_CONTROL_0_ENABLE_S_FIELD (_MK_MASK_CONST( 0x1) << FIC_PROC_IF_CONTROL_0_ENABLE_S_SHIFT)
52 #define FIC_PROC_IF_CONTROL_0_ENABLE_S_RANGE 0:0
53 #define FIC_PROC_IF_CONTROL_0_ENABLE_S_WOFFSET 0x0
54 #define FIC_PROC_IF_CONTROL_0_ENABLE_S_DEFAULT _MK_MASK_CONST(0 x0)
55 #define FIC_PROC_IF_CONTROL_0_ENABLE_S_DEFAULT_MASK _MK_MASK _CONST(0x1)
56 #define FIC_PROC_IF_CONTROL_0_ENABLE_S_SW_DEFAULT _MK_MASK _CONST(0x0)
57 #define FIC_PROC_IF_CONTROL_0_ENABLE_S_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
58
59 // Non-secure enable for the Cortex-A9 processor interface
60 #define FIC_PROC_IF_CONTROL_0_ENABLE_NS_SHIFT _MK_SHIFT_CONST( 1)
61 #define FIC_PROC_IF_CONTROL_0_ENABLE_NS_FIELD (_MK_MASK_CONST( 0x1) << FIC_PROC_IF_CONTROL_0_ENABLE_NS_SHIFT)
62 #define FIC_PROC_IF_CONTROL_0_ENABLE_NS_RANGE 1:1
63 #define FIC_PROC_IF_CONTROL_0_ENABLE_NS_WOFFSET 0x0
64 #define FIC_PROC_IF_CONTROL_0_ENABLE_NS_DEFAULT _MK_MASK_CONST(0 x0)
65 #define FIC_PROC_IF_CONTROL_0_ENABLE_NS_DEFAULT_MASK _MK_MASK _CONST(0x1)
66 #define FIC_PROC_IF_CONTROL_0_ENABLE_NS_SW_DEFAULT _MK_MASK _CONST(0x0)
67 #define FIC_PROC_IF_CONTROL_0_ENABLE_NS_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
68
69 // When a Cortex-A9 processor performs a secure read of
70 // the int_ack Register and the highest
71 // priority interrupt is non-secure, this bit controls
72 // the acknowledge response as follows:
73 // 0 = The Cortex-A9 processor interface returns an INTID
74 // value of 1022 and the interrupt remains Pending.
75 // 1 = The Cortex-A9 processor interface returns the INTID
76 // value of the non-secure interrupt and
77 // acknowledges the interrupt. The interrupt changes state
78 // to Active, or Active-and-pending.
79 // When a Cortex-A9 processor performs a secure write to
80 // the EOI Register to signal the completion
81 // of a non-secure interrupt, this bit controls if the
82 // Interrupt Controller clears the interrupt as follows:
83 // 0 = the Interrupt Controller ignores the write and the
84 // interrupt remains Active, or
85 // Active-and-pending
86 // 1 = the Interrupt Controller changes the interrupt
87 // status to Inactive, or Pending.
88 #define FIC_PROC_IF_CONTROL_0_ACK_CTL_SHIFT _MK_SHIFT_CONST( 2)
89 #define FIC_PROC_IF_CONTROL_0_ACK_CTL_FIELD (_MK_MASK_CONST( 0x1) << FIC_PROC_IF_CONTROL_0_ACK_CTL_SHIFT)
90 #define FIC_PROC_IF_CONTROL_0_ACK_CTL_RANGE 2:2
91 #define FIC_PROC_IF_CONTROL_0_ACK_CTL_WOFFSET 0x0
92 #define FIC_PROC_IF_CONTROL_0_ACK_CTL_DEFAULT _MK_MASK_CONST(0 x0)
93 #define FIC_PROC_IF_CONTROL_0_ACK_CTL_DEFAULT_MASK _MK_MASK _CONST(0x1)
94 #define FIC_PROC_IF_CONTROL_0_ACK_CTL_SW_DEFAULT _MK_MASK _CONST(0x0)
95 #define FIC_PROC_IF_CONTROL_0_ACK_CTL_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
96
97 // Enables the Cortex-A9 processor interface to send
98 // secure interrupts using the nFIQ signal.
99 #define FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_SHIFT _MK_SHIFT_CONST( 3)
100 #define FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_FIELD (_MK_MASK_CONST( 0x1) << FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_SHIFT)
101 #define FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_RANGE 3:3
102 #define FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_WOFFSET 0x0
103 #define FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_DEFAULT _MK_MASK _CONST(0x0)
104 #define FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_DEFAULT_MASK _MK_MASK _CONST(0x1)
105 #define FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_SW_DEFAULT _MK_MASK _CONST(0x0)
106 #define FIC_PROC_IF_CONTROL_0_FIQ_ENABLE_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
107
108 // Controls which Binary Pointer Register the Cortex-A9
109 // processor interface uses when it performs
110 // a pre-emptive calculation. The options are:
111 // 0 = secure interrupts use the bin_pt_s Register and
112 // non-secure interrupts use the bin_pt_ns Register
113 // 1 = secure read and writes access the secure binary
114 // point register directly. Non-secure writes are
115 // ignored, and non-secure reads return the value in the
116 // secure binary point register plus 1, with the
117 // addition saturating at a value of 7.
118 #define FIC_PROC_IF_CONTROL_0_SBPR_SHIFT _MK_SHIFT_CONST( 4)
119 #define FIC_PROC_IF_CONTROL_0_SBPR_FIELD (_MK_MASK_CONST( 0x1) << FIC_PROC_IF_CONTROL_0_SBPR_SHIFT)
120 #define FIC_PROC_IF_CONTROL_0_SBPR_RANGE 4:4
121 #define FIC_PROC_IF_CONTROL_0_SBPR_WOFFSET 0x0
122 #define FIC_PROC_IF_CONTROL_0_SBPR_DEFAULT _MK_MASK_CONST(0 x0)
123 #define FIC_PROC_IF_CONTROL_0_SBPR_DEFAULT_MASK _MK_MASK_CONST(0 x1)
124 #define FIC_PROC_IF_CONTROL_0_SBPR_SW_DEFAULT _MK_MASK_CONST(0 x0)
125 #define FIC_PROC_IF_CONTROL_0_SBPR_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
126
127
128 // Register FIC_PROC_IF_PRIORITY_MASK_0
129 #define FIC_PROC_IF_PRIORITY_MASK_0 _MK_ADDR_CONST(0x104)
130 #define FIC_PROC_IF_PRIORITY_MASK_0_SECURE 0x0
131 #define FIC_PROC_IF_PRIORITY_MASK_0_WORD_COUNT 0x1
132 #define FIC_PROC_IF_PRIORITY_MASK_0_RESET_VAL _MK_MASK_CONST(0 x0)
133 #define FIC_PROC_IF_PRIORITY_MASK_0_RESET_MASK _MK_MASK_CONST(0 xf8)
134 #define FIC_PROC_IF_PRIORITY_MASK_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
135 #define FIC_PROC_IF_PRIORITY_MASK_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
136 #define FIC_PROC_IF_PRIORITY_MASK_0_READ_MASK _MK_MASK_CONST(0 xf8)
137 #define FIC_PROC_IF_PRIORITY_MASK_0_WRITE_MASK _MK_MASK_CONST(0 xf8)
138 // Configures the priorty mask level for the Cortex-A9 processor.
139 #define FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_SHIFT _MK_SHIF T_CONST(3)
140 #define FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_FIELD (_MK_MAS K_CONST(0x1f) << FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_SHIFT)
141 #define FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_RANGE 7:3
142 #define FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_WOFFSET 0x0
143 #define FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_DEFAULT _MK_MASK _CONST(0x0)
144 #define FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_DEFAULT_MASK _MK_MASK_CONST(0x1f)
145 #define FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_SW_DEFAULT _MK_MASK _CONST(0x0)
146 #define FIC_PROC_IF_PRIORITY_MASK_0_PRIORITY_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
147
148
149 // Register FIC_PROC_IF_BIN_PT_0
150 #define FIC_PROC_IF_BIN_PT_0 _MK_ADDR_CONST(0x108)
151 #define FIC_PROC_IF_BIN_PT_0_SECURE 0x0
152 #define FIC_PROC_IF_BIN_PT_0_WORD_COUNT 0x1
153 #define FIC_PROC_IF_BIN_PT_0_RESET_VAL _MK_MASK_CONST(0x0)
154 #define FIC_PROC_IF_BIN_PT_0_RESET_MASK _MK_MASK_CONST(0 x7)
155 #define FIC_PROC_IF_BIN_PT_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
156 #define FIC_PROC_IF_BIN_PT_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
157 #define FIC_PROC_IF_BIN_PT_0_READ_MASK _MK_MASK_CONST(0x7)
158 #define FIC_PROC_IF_BIN_PT_0_WRITE_MASK _MK_MASK_CONST(0 x7)
159 // Configures the value of the binary point mask.
160 #define FIC_PROC_IF_BIN_PT_0_BINARY_POINT_SHIFT _MK_SHIFT_CONST( 0)
161 #define FIC_PROC_IF_BIN_PT_0_BINARY_POINT_FIELD (_MK_MASK_CONST( 0x7) << FIC_PROC_IF_BIN_PT_0_BINARY_POINT_SHIFT)
162 #define FIC_PROC_IF_BIN_PT_0_BINARY_POINT_RANGE 2:0
163 #define FIC_PROC_IF_BIN_PT_0_BINARY_POINT_WOFFSET 0x0
164 #define FIC_PROC_IF_BIN_PT_0_BINARY_POINT_DEFAULT _MK_MASK _CONST(0x0)
165 #define FIC_PROC_IF_BIN_PT_0_BINARY_POINT_DEFAULT_MASK _MK_MASK _CONST(0x7)
166 #define FIC_PROC_IF_BIN_PT_0_BINARY_POINT_SW_DEFAULT _MK_MASK _CONST(0x0)
167 #define FIC_PROC_IF_BIN_PT_0_BINARY_POINT_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
168
169
170 // Register FIC_PROC_IF_INT_ACK_0
171 #define FIC_PROC_IF_INT_ACK_0 _MK_ADDR_CONST(0x10c)
172 #define FIC_PROC_IF_INT_ACK_0_SECURE 0x0
173 #define FIC_PROC_IF_INT_ACK_0_WORD_COUNT 0x1
174 #define FIC_PROC_IF_INT_ACK_0_RESET_VAL _MK_MASK_CONST(0 x0)
175 #define FIC_PROC_IF_INT_ACK_0_RESET_MASK _MK_MASK_CONST(0 x1fff)
176 #define FIC_PROC_IF_INT_ACK_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
177 #define FIC_PROC_IF_INT_ACK_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
178 #define FIC_PROC_IF_INT_ACK_0_READ_MASK _MK_MASK_CONST(0 x1fff)
179 #define FIC_PROC_IF_INT_ACK_0_WRITE_MASK _MK_MASK_CONST(0 x0)
180 // Returns the INTID of the interrupt that requries
181 // servicing by the Cortex-A9 processor :
182 // 15-0 = STI[15:0]
183 // 31-16 = PPI[15:0]
184 // 255-32 = SPI[223:0]
185 // 1020 = reserved
186 // 1021 = reserved
187 // 1022 = the highest priority interrutp that requires
188 // servicing is non-secure
189 // 1023 = no outstanding interrupts
190 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_SHIFT _MK_SHIFT_CONST( 0)
191 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_FIELD (_MK_MASK_CONST( 0x3ff) << FIC_PROC_IF_INT_ACK_0_ACK_INTID_SHIFT)
192 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_RANGE 9:0
193 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_WOFFSET 0x0
194 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_DEFAULT _MK_MASK_CONST(0 x0)
195 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_DEFAULT_MASK _MK_MASK _CONST(0x3ff)
196 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_SW_DEFAULT _MK_MASK _CONST(0x0)
197 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
198 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_STI_LOW _MK_ENUM_CONST(0 )
199 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_STI_HIGH _MK_ENUM _CONST(15)
200 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_PPI_LOW _MK_ENUM_CONST(1 6)
201 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_PPI_HIGH _MK_ENUM _CONST(31)
202 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_SPI_LOW _MK_ENUM_CONST(3 2)
203 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_SPI_HIGH _MK_ENUM _CONST(160)
204 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_HIGHEST_PRI_NONSECURE _MK_ENUM_CONST(1022)
205 #define FIC_PROC_IF_INT_ACK_0_ACK_INTID_NO_OUTSTANDING_INTR _MK_ENUM_CONST(1023)
206
207 // Returns the CPUID of the Cortex-A9 processor that
208 // requested the software interrupt
209 #define FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_SHIFT _MK_SHIF T_CONST(10)
210 #define FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_FIELD (_MK_MAS K_CONST(0x7) << FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_SHIFT)
211 #define FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_RANGE 12:10
212 #define FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_WOFFSET 0x0
213 #define FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_DEFAULT _MK_MASK _CONST(0x0)
214 #define FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_DEFAULT_MASK _MK_MASK_CONST(0x7)
215 #define FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_SW_DEFAULT _MK_MASK_CONST(0x0)
216 #define FIC_PROC_IF_INT_ACK_0_ACK_SOURCE_CPUID_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
217
218
219 // Register FIC_PROC_IF_EOI_0
220 #define FIC_PROC_IF_EOI_0 _MK_ADDR_CONST(0x110)
221 #define FIC_PROC_IF_EOI_0_SECURE 0x0
222 #define FIC_PROC_IF_EOI_0_WORD_COUNT 0x1
223 #define FIC_PROC_IF_EOI_0_RESET_VAL _MK_MASK_CONST(0x0)
224 #define FIC_PROC_IF_EOI_0_RESET_MASK _MK_MASK_CONST(0x1fff)
225 #define FIC_PROC_IF_EOI_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
226 #define FIC_PROC_IF_EOI_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
227 #define FIC_PROC_IF_EOI_0_READ_MASK _MK_MASK_CONST(0x0)
228 #define FIC_PROC_IF_EOI_0_WRITE_MASK _MK_MASK_CONST(0x1fff)
229 // After the Cortex-A9 processor completes its interrupt
230 // service routine, it sets this field to the
231 // INTID of the interrupt that it serviced:
232 // 15-0 = STI[15:0]
233 // 31-16 = PPI[15:0]
234 // 255-32 = SPI[223:0]
235 // 1023-1020 = reserved
236 #define FIC_PROC_IF_EOI_0_EOI_INTID_SHIFT _MK_SHIFT_CONST( 0)
237 #define FIC_PROC_IF_EOI_0_EOI_INTID_FIELD (_MK_MASK_CONST( 0x3ff) << FIC_PROC_IF_EOI_0_EOI_INTID_SHIFT)
238 #define FIC_PROC_IF_EOI_0_EOI_INTID_RANGE 9:0
239 #define FIC_PROC_IF_EOI_0_EOI_INTID_WOFFSET 0x0
240 #define FIC_PROC_IF_EOI_0_EOI_INTID_DEFAULT _MK_MASK_CONST(0 x0)
241 #define FIC_PROC_IF_EOI_0_EOI_INTID_DEFAULT_MASK _MK_MASK _CONST(0x3ff)
242 #define FIC_PROC_IF_EOI_0_EOI_INTID_SW_DEFAULT _MK_MASK_CONST(0 x0)
243 #define FIC_PROC_IF_EOI_0_EOI_INTID_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
244
245 // After the Cortex-A9 processor completes the interrupt
246 // service routine for an STI, it sets this to the source
247 // CPUID of the STI that it serviced
248 #define FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_SHIFT _MK_SHIF T_CONST(10)
249 #define FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_FIELD (_MK_MAS K_CONST(0x7) << FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_SHIFT)
250 #define FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_RANGE 12:10
251 #define FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_WOFFSET 0x0
252 #define FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_DEFAULT _MK_MASK _CONST(0x0)
253 #define FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_DEFAULT_MASK _MK_MASK _CONST(0x7)
254 #define FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_SW_DEFAULT _MK_MASK _CONST(0x0)
255 #define FIC_PROC_IF_EOI_0_EOI_SOURCE_CPUID_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
256
257
258 // Register FIC_PROC_IF_RUN_PRIORITY_0
259 #define FIC_PROC_IF_RUN_PRIORITY_0 _MK_ADDR_CONST(0x114)
260 #define FIC_PROC_IF_RUN_PRIORITY_0_SECURE 0x0
261 #define FIC_PROC_IF_RUN_PRIORITY_0_WORD_COUNT 0x1
262 #define FIC_PROC_IF_RUN_PRIORITY_0_RESET_VAL _MK_MASK_CONST(0 x0)
263 #define FIC_PROC_IF_RUN_PRIORITY_0_RESET_MASK _MK_MASK_CONST(0 xf0)
264 #define FIC_PROC_IF_RUN_PRIORITY_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
265 #define FIC_PROC_IF_RUN_PRIORITY_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
266 #define FIC_PROC_IF_RUN_PRIORITY_0_READ_MASK _MK_MASK_CONST(0 xf0)
267 #define FIC_PROC_IF_RUN_PRIORITY_0_WRITE_MASK _MK_MASK_CONST(0 x0)
268 // Returns the priority level of the highest priority
269 // interrupt that is running on the Cortex-A9 processor
270 #define FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_SHIFT _MK_SHIF T_CONST(4)
271 #define FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_FIELD (_MK_MAS K_CONST(0xf) << FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_SHIFT)
272 #define FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_RANGE 7:4
273 #define FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_WOFFSET 0x0
274 #define FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_DEFAULT _MK_MASK _CONST(0x0)
275 #define FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_DEFAULT_MASK _MK_MASK_CONST(0xf)
276 #define FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_SW_DEFAULT _MK_MASK_CONST(0x0)
277 #define FIC_PROC_IF_RUN_PRIORITY_0_RUN_PRIORITY_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
278
279
280 // Register FIC_PROC_IF_HI_PEND_0
281 #define FIC_PROC_IF_HI_PEND_0 _MK_ADDR_CONST(0x118)
282 #define FIC_PROC_IF_HI_PEND_0_SECURE 0x0
283 #define FIC_PROC_IF_HI_PEND_0_WORD_COUNT 0x1
284 #define FIC_PROC_IF_HI_PEND_0_RESET_VAL _MK_MASK_CONST(0 x0)
285 #define FIC_PROC_IF_HI_PEND_0_RESET_MASK _MK_MASK_CONST(0 x1fff)
286 #define FIC_PROC_IF_HI_PEND_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
287 #define FIC_PROC_IF_HI_PEND_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
288 #define FIC_PROC_IF_HI_PEND_0_READ_MASK _MK_MASK_CONST(0 x1fff)
289 #define FIC_PROC_IF_HI_PEND_0_WRITE_MASK _MK_MASK_CONST(0 x0)
290 // Returns the INTID of the highest priority pending interrupt
291 // 15-0 = STI[15:0]
292 // 31-16 = PPI[15:0]
293 // 255-32 = SPI[223:0]
294 // 1020 = reserved
295 // 1021 = reserved
296 // 1022 = the highest priority interrupT that requires
297 // servicing is non-secure
298 // 1023 = no outstanding interrupts
299 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_SHIFT _MK_SHIFT_CONST( 0)
300 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_FIELD (_MK_MASK_CONST( 0x3ff) << FIC_PROC_IF_HI_PEND_0_PEND_INTID_SHIFT)
301 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_RANGE 9:0
302 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_WOFFSET 0x0
303 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_DEFAULT _MK_MASK _CONST(0x0)
304 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_DEFAULT_MASK _MK_MASK _CONST(0x3ff)
305 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_SW_DEFAULT _MK_MASK _CONST(0x0)
306 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
307 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_STI_LOW _MK_ENUM _CONST(0)
308 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_STI_HIGH _MK_ENUM _CONST(15)
309 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_PPI_LOW _MK_ENUM _CONST(16)
310 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_PPI_HIGH _MK_ENUM _CONST(31)
311 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_SPI_LOW _MK_ENUM _CONST(32)
312 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_SPI_HIGH _MK_ENUM _CONST(160)
313 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_HIGHEST_PRI_NONSECURE _MK_ENUM_CONST(1022)
314 #define FIC_PROC_IF_HI_PEND_0_PEND_INTID_NO_OUTSTANDING_INTR _MK_ENUM_CONST(1023)
315
316 // Returns the CPUID of the Cortex-A9 processor that is
317 // requesting the software interrupt
318 #define FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_SHIFT _MK_SHIF T_CONST(10)
319 #define FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_FIELD (_MK_MAS K_CONST(0x7) << FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_SHIFT)
320 #define FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_RANGE 12:10
321 #define FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_WOFFSET 0x0
322 #define FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_DEFAULT _MK_MASK _CONST(0x0)
323 #define FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_DEFAULT_MASK _MK_MASK_CONST(0x7)
324 #define FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_SW_DEFAULT _MK_MASK_CONST(0x0)
325 #define FIC_PROC_IF_HI_PEND_0_PEND_SOURCE_CPUID_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
326
327
328 // Register FIC_PROC_IF_ALIAS_BIN_PT_NS_0
329 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0 _MK_ADDR_CONST(0x11c)
330 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_SECURE 0x0
331 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_WORD_COUNT 0x1
332 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_RESET_VAL _MK_MASK _CONST(0x0)
333 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_RESET_MASK _MK_MASK _CONST(0x7)
334 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
335 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
336 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_READ_MASK _MK_MASK _CONST(0x7)
337 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_WRITE_MASK _MK_MASK _CONST(0x7)
338 // Alias of the BIN_PT_NS regiter. Only accessible in secure mode
339 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_SHIFT _MK_SHIFT_CONST(0)
340 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_FIELD (_MK_MASK_CONST(0x7) << FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_SHIFT)
341 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_RANGE 2:0
342 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_WOFFSET 0x0
343 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_DEFAULT _MK_MASK_CONST(0x0)
344 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_DEFAULT_MASK _MK_MASK_CONST(0x7)
345 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_SW_DEFAULT _MK_MASK_CONST(0x0)
346 #define FIC_PROC_IF_ALIAS_BIN_PT_NS_0_BINARY_POINT_NS_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
347
348
349 // Register FIC_PROC_IF_CPU_IF_IDENT_0
350 #define FIC_PROC_IF_CPU_IF_IDENT_0 _MK_ADDR_CONST(0x120)
351 #define FIC_PROC_IF_CPU_IF_IDENT_0_SECURE 0x0
352 #define FIC_PROC_IF_CPU_IF_IDENT_0_WORD_COUNT 0x1
353 #define FIC_PROC_IF_CPU_IF_IDENT_0_RESET_VAL _MK_MASK_CONST(0 x3901043b)
354 #define FIC_PROC_IF_CPU_IF_IDENT_0_RESET_MASK _MK_MASK_CONST(0 xffffffff)
355 #define FIC_PROC_IF_CPU_IF_IDENT_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
356 #define FIC_PROC_IF_CPU_IF_IDENT_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
357 #define FIC_PROC_IF_CPU_IF_IDENT_0_READ_MASK _MK_MASK_CONST(0 xffffffff)
358 #define FIC_PROC_IF_CPU_IF_IDENT_0_WRITE_MASK _MK_MASK_CONST(0 x0)
359 // Returns the JEP106 code of the company that implemented
360 // the Cortex-A9 processor interface RTL.
361 #define FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_SHIFT _MK_SHIF T_CONST(0)
362 #define FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_FIELD (_MK_MAS K_CONST(0xfff) << FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_SHIFT)
363 #define FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_RANGE 11:0
364 #define FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_WOFFSET 0x0
365 #define FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_DEFAULT _MK_MASK _CONST(0x43b)
366 #define FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_DEFAULT_MASK _MK_MASK_CONST(0xfff)
367 #define FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_SW_DEFAULT _MK_MASK_CONST(0x0)
368 #define FIC_PROC_IF_CPU_IF_IDENT_0_IMPLEMENTOR_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
369
370 // Returns the revision number of the Interrupt Controller
371 #define FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_SHIFT _MK_SHIFT_CONST(12)
372 #define FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_FIELD (_MK_MASK_CONST(0xf) << FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_SHIFT)
373 #define FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_RANGE 15:12
374 #define FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_WOFFSET 0x0
375 #define FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_DEFAULT _MK_MASK_CONST(0x0)
376 #define FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_DEFAULT_MASK _MK_MASK_CONST(0xf)
377 #define FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_SW_DEFAULT _MK_MASK_CONST(0x0)
378 #define FIC_PROC_IF_CPU_IF_IDENT_0_REVISION_NUMBER_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
379
380 // Identifies the architecture version
381 #define FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_SHIFT _MK_SHIFT_CONST(16)
382 #define FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_FIELD (_MK_MASK_CONST(0xf) << FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_SHIFT)
383 #define FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_RANGE 19:16
384 #define FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_WOFFSET 0x0
385 #define FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_DEFAULT _MK_MASK_CONST(0x1)
386 #define FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_DEFAULT_MASK _MK_MASK_CONST(0xf)
387 #define FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_SW_DEFAULT _MK_MASK_CONST(0x0)
388 #define FIC_PROC_IF_CPU_IF_IDENT_0_ARCHITECTURE_VERSION_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
389
390 // Identifies the peripheral
391 #define FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_SHIFT _MK_SHIF T_CONST(20)
392 #define FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_FIELD (_MK_MAS K_CONST(0xfff) << FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_SHIFT)
393 #define FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_RANGE 31:20
394 #define FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_WOFFSET 0x0
395 #define FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_DEFAULT _MK_MASK _CONST(0x390)
396 #define FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_DEFAULT_MASK _MK_MASK_CONST(0xfff)
397 #define FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_SW_DEFAULT _MK_MASK_CONST(0x0)
398 #define FIC_PROC_IF_CPU_IF_IDENT_0_PART_NUMBER_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
399
400
401 //
402 // REGISTER LIST
403 //
404 #define LIST_ARFIC_PROC_IF_REGS(_op_) \
405 _op_(FIC_PROC_IF_CONTROL_0) \
406 _op_(FIC_PROC_IF_PRIORITY_MASK_0) \
407 _op_(FIC_PROC_IF_BIN_PT_0) \
408 _op_(FIC_PROC_IF_INT_ACK_0) \
409 _op_(FIC_PROC_IF_EOI_0) \
410 _op_(FIC_PROC_IF_RUN_PRIORITY_0) \
411 _op_(FIC_PROC_IF_HI_PEND_0) \
412 _op_(FIC_PROC_IF_ALIAS_BIN_PT_NS_0) \
413 _op_(FIC_PROC_IF_CPU_IF_IDENT_0)
414
415
416 //
417 // ADDRESS SPACES
418 //
419
420 #define BASE_ADDRESS_FIC_PROC_IF 0x00000100
421
422 //
423 // ARFIC_PROC_IF REGISTER BANKS
424 //
425
426 #define FIC_PROC_IF0_FIRST_REG 0x0100 // FIC_PROC_IF_CONTROL_0
427 #define FIC_PROC_IF0_LAST_REG 0x0120 // FIC_PROC_IF_CPU_IF_IDENT_0
428
429 #ifndef _MK_SHIFT_CONST
430 #define _MK_SHIFT_CONST(_constant_) _constant_
431 #endif
432 #ifndef _MK_MASK_CONST
433 #define _MK_MASK_CONST(_constant_) _constant_
434 #endif
435 #ifndef _MK_ENUM_CONST
436 #define _MK_ENUM_CONST(_constant_) (_constant_ ## UL)
437 #endif
438 #ifndef _MK_ADDR_CONST
439 #define _MK_ADDR_CONST(_constant_) _constant_
440 #endif
441
442 #endif // ifndef ___ARFIC_PROC_IF_H_INC_
OLDNEW
« no previous file with comments | « arch/arm/mach-tegra/nv/include/ap20/arevp.h ('k') | arch/arm/mach-tegra/nv/include/ap20/arflow_ctlr.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698