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

Side by Side Diff: arch/arm/mach-tegra/nv/include/ap20/ari2c.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 ___ARI2C_H_INC_
37 #define ___ARI2C_H_INC_
38
39 // Register I2C_I2C_CNFG_0
40 #define I2C_I2C_CNFG_0 _MK_ADDR_CONST(0x0)
41 #define I2C_I2C_CNFG_0_SECURE 0x0
42 #define I2C_I2C_CNFG_0_WORD_COUNT 0x1
43 #define I2C_I2C_CNFG_0_RESET_VAL _MK_MASK_CONST(0x0)
44 #define I2C_I2C_CNFG_0_RESET_MASK _MK_MASK_CONST(0x7fff)
45 #define I2C_I2C_CNFG_0_SW_DEFAULT_VAL _MK_MASK_CONST(0x0)
46 #define I2C_I2C_CNFG_0_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
47 #define I2C_I2C_CNFG_0_READ_MASK _MK_MASK_CONST(0x7fff)
48 #define I2C_I2C_CNFG_0_WRITE_MASK _MK_MASK_CONST(0x7fff)
49 // Debounce period for sda and scl lines
50 // 0 = No debounce
51 // 1 = 2T
52 // 2 = 4T
53 // 3 = 6T etc
54 // where T is the period of the fix PLL
55 //clk source coming to i2c.
56 //Maximum debounce period programmable is
57 //14T.A debounce period of >50ns is desirable
58 #define I2C_I2C_CNFG_0_DEBOUNCE_CNT_SHIFT _MK_SHIFT_CONST( 12)
59 #define I2C_I2C_CNFG_0_DEBOUNCE_CNT_FIELD (_MK_MASK_CONST( 0x7) << I2C_I2C_CNFG_0_DEBOUNCE_CNT_SHIFT)
60 #define I2C_I2C_CNFG_0_DEBOUNCE_CNT_RANGE 14:12
61 #define I2C_I2C_CNFG_0_DEBOUNCE_CNT_WOFFSET 0x0
62 #define I2C_I2C_CNFG_0_DEBOUNCE_CNT_DEFAULT _MK_MASK_CONST(0 x0)
63 #define I2C_I2C_CNFG_0_DEBOUNCE_CNT_DEFAULT_MASK _MK_MASK _CONST(0x7)
64 #define I2C_I2C_CNFG_0_DEBOUNCE_CNT_SW_DEFAULT _MK_MASK_CONST(0 x0)
65 #define I2C_I2C_CNFG_0_DEBOUNCE_CNT_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
66
67 // Write 1 to enable new master fsm
68 // 0 = old fsm
69 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_SHIFT _MK_SHIFT_CONST( 11)
70 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_FIELD (_MK_MASK_CONST( 0x1) << I2C_I2C_CNFG_0_NEW_MASTER_FSM_SHIFT)
71 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_RANGE 11:11
72 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_WOFFSET 0x0
73 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_DEFAULT _MK_MASK_CONST(0 x0)
74 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_DEFAULT_MASK _MK_MASK _CONST(0x1)
75 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_SW_DEFAULT _MK_MASK _CONST(0x0)
76 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
77 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_DISABLE _MK_ENUM_CONST(0 )
78 #define I2C_I2C_CNFG_0_NEW_MASTER_FSM_ENABLE _MK_ENUM_CONST(1 )
79
80 // Write 1 to initiate transfer in packet mode.
81 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_SHIFT _MK_SHIFT_CONST( 10)
82 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_FIELD (_MK_MASK_CONST( 0x1) << I2C_I2C_CNFG_0_PACKET_MODE_EN_SHIFT)
83 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_RANGE 10:10
84 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_WOFFSET 0x0
85 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_DEFAULT _MK_MASK_CONST(0 x0)
86 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_DEFAULT_MASK _MK_MASK _CONST(0x1)
87 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_SW_DEFAULT _MK_MASK _CONST(0x0)
88 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
89 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_NOP _MK_ENUM_CONST(0 )
90 #define I2C_I2C_CNFG_0_PACKET_MODE_EN_GO _MK_ENUM_CONST(1 )
91
92 // Writing a 1 causes the master to initiate the
93 // transaction in normal mode. Values of other bits are not
94 // affected when this bit is 1,Cleared by
95 // hardware. Other bits of the register are
96 // masked for writes when this bit is programmed
97 // to one.hence,firware should first configure
98 // all other registrs and bits [8:0] of
99 // I2C_CNFG register before the bit
100 // I2C_CNFG[9] is programmed to Zero.
101 #define I2C_I2C_CNFG_0_SEND_SHIFT _MK_SHIFT_CONST(9)
102 #define I2C_I2C_CNFG_0_SEND_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_CNFG_0_SEND_SHIFT)
103 #define I2C_I2C_CNFG_0_SEND_RANGE 9:9
104 #define I2C_I2C_CNFG_0_SEND_WOFFSET 0x0
105 #define I2C_I2C_CNFG_0_SEND_DEFAULT _MK_MASK_CONST(0x0)
106 #define I2C_I2C_CNFG_0_SEND_DEFAULT_MASK _MK_MASK_CONST(0 x1)
107 #define I2C_I2C_CNFG_0_SEND_SW_DEFAULT _MK_MASK_CONST(0x0)
108 #define I2C_I2C_CNFG_0_SEND_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
109 #define I2C_I2C_CNFG_0_SEND_NOP _MK_ENUM_CONST(0)
110 #define I2C_I2C_CNFG_0_SEND_GO _MK_ENUM_CONST(1)
111
112 // Enable mode to handle devices that do not generate ACK.
113 // 1 - dont look for an ack at the end of the Enable
114 #define I2C_I2C_CNFG_0_NOACK_SHIFT _MK_SHIFT_CONST(8)
115 #define I2C_I2C_CNFG_0_NOACK_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_CNFG_0_NOACK_SHIFT)
116 #define I2C_I2C_CNFG_0_NOACK_RANGE 8:8
117 #define I2C_I2C_CNFG_0_NOACK_WOFFSET 0x0
118 #define I2C_I2C_CNFG_0_NOACK_DEFAULT _MK_MASK_CONST(0x0)
119 #define I2C_I2C_CNFG_0_NOACK_DEFAULT_MASK _MK_MASK_CONST(0 x1)
120 #define I2C_I2C_CNFG_0_NOACK_SW_DEFAULT _MK_MASK_CONST(0x0)
121 #define I2C_I2C_CNFG_0_NOACK_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
122 #define I2C_I2C_CNFG_0_NOACK_DISABLE _MK_ENUM_CONST(0)
123 #define I2C_I2C_CNFG_0_NOACK_ENABLE _MK_ENUM_CONST(1)
124
125 // Read/Write Command for Slave 2:
126 // 1 - Read Transaction; 0 - write Transaction.
127 // For a 7-bit slave address,this bit must match
128 // with the LSB of address byte for slave 2.
129 // Valid only when bit-4 of this register is
130 // set
131 #define I2C_I2C_CNFG_0_CMD2_SHIFT _MK_SHIFT_CONST(7)
132 #define I2C_I2C_CNFG_0_CMD2_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_CNFG_0_CMD2_SHIFT)
133 #define I2C_I2C_CNFG_0_CMD2_RANGE 7:7
134 #define I2C_I2C_CNFG_0_CMD2_WOFFSET 0x0
135 #define I2C_I2C_CNFG_0_CMD2_DEFAULT _MK_MASK_CONST(0x0)
136 #define I2C_I2C_CNFG_0_CMD2_DEFAULT_MASK _MK_MASK_CONST(0 x1)
137 #define I2C_I2C_CNFG_0_CMD2_SW_DEFAULT _MK_MASK_CONST(0x0)
138 #define I2C_I2C_CNFG_0_CMD2_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
139 #define I2C_I2C_CNFG_0_CMD2_DISABLE _MK_ENUM_CONST(0)
140 #define I2C_I2C_CNFG_0_CMD2_ENABLE _MK_ENUM_CONST(1)
141
142 // Read/Write Command for Slave 1:
143 // 1 - Read Transaction; 0 - write Transaction.
144 // Command for Slave 1: For a 7-bit slave address
145 // this bit must match with the LSB of address
146 // byte for slave1.
147 #define I2C_I2C_CNFG_0_CMD1_SHIFT _MK_SHIFT_CONST(6)
148 #define I2C_I2C_CNFG_0_CMD1_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_CNFG_0_CMD1_SHIFT)
149 #define I2C_I2C_CNFG_0_CMD1_RANGE 6:6
150 #define I2C_I2C_CNFG_0_CMD1_WOFFSET 0x0
151 #define I2C_I2C_CNFG_0_CMD1_DEFAULT _MK_MASK_CONST(0x0)
152 #define I2C_I2C_CNFG_0_CMD1_DEFAULT_MASK _MK_MASK_CONST(0 x1)
153 #define I2C_I2C_CNFG_0_CMD1_SW_DEFAULT _MK_MASK_CONST(0x0)
154 #define I2C_I2C_CNFG_0_CMD1_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
155 #define I2C_I2C_CNFG_0_CMD1_DISABLE _MK_ENUM_CONST(0)
156 #define I2C_I2C_CNFG_0_CMD1_ENABLE _MK_ENUM_CONST(1)
157
158 // 1 = Yes, a Start byte needs to be sent.
159 #define I2C_I2C_CNFG_0_START_SHIFT _MK_SHIFT_CONST(5)
160 #define I2C_I2C_CNFG_0_START_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_CNFG_0_START_SHIFT)
161 #define I2C_I2C_CNFG_0_START_RANGE 5:5
162 #define I2C_I2C_CNFG_0_START_WOFFSET 0x0
163 #define I2C_I2C_CNFG_0_START_DEFAULT _MK_MASK_CONST(0x0)
164 #define I2C_I2C_CNFG_0_START_DEFAULT_MASK _MK_MASK_CONST(0 x1)
165 #define I2C_I2C_CNFG_0_START_SW_DEFAULT _MK_MASK_CONST(0x0)
166 #define I2C_I2C_CNFG_0_START_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
167 #define I2C_I2C_CNFG_0_START_DISABLE _MK_ENUM_CONST(0)
168 #define I2C_I2C_CNFG_0_START_ENABLE _MK_ENUM_CONST(1)
169
170 // 1 - Enables a two slave transaction ;
171 // 0 = No command for Slave 2 present.
172 #define I2C_I2C_CNFG_0_SLV2_SHIFT _MK_SHIFT_CONST(4)
173 #define I2C_I2C_CNFG_0_SLV2_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_CNFG_0_SLV2_SHIFT)
174 #define I2C_I2C_CNFG_0_SLV2_RANGE 4:4
175 #define I2C_I2C_CNFG_0_SLV2_WOFFSET 0x0
176 #define I2C_I2C_CNFG_0_SLV2_DEFAULT _MK_MASK_CONST(0x0)
177 #define I2C_I2C_CNFG_0_SLV2_DEFAULT_MASK _MK_MASK_CONST(0 x1)
178 #define I2C_I2C_CNFG_0_SLV2_SW_DEFAULT _MK_MASK_CONST(0x0)
179 #define I2C_I2C_CNFG_0_SLV2_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
180 #define I2C_I2C_CNFG_0_SLV2_DISABLE _MK_ENUM_CONST(0)
181 #define I2C_I2C_CNFG_0_SLV2_ENABLE _MK_ENUM_CONST(1)
182
183 // The Number of bytes to be transmitted per
184 // transaction 000= 1byte ... 111 = 8bytes;
185 // In a two slave transaction number of bytes
186 // should be programmed less than 011.
187 #define I2C_I2C_CNFG_0_LENGTH_SHIFT _MK_SHIFT_CONST(1)
188 #define I2C_I2C_CNFG_0_LENGTH_FIELD (_MK_MASK_CONST(0x7) << I2C_I2C_CNFG_0_LENGTH_SHIFT)
189 #define I2C_I2C_CNFG_0_LENGTH_RANGE 3:1
190 #define I2C_I2C_CNFG_0_LENGTH_WOFFSET 0x0
191 #define I2C_I2C_CNFG_0_LENGTH_DEFAULT _MK_MASK_CONST(0x0)
192 #define I2C_I2C_CNFG_0_LENGTH_DEFAULT_MASK _MK_MASK_CONST(0 x7)
193 #define I2C_I2C_CNFG_0_LENGTH_SW_DEFAULT _MK_MASK_CONST(0 x0)
194 #define I2C_I2C_CNFG_0_LENGTH_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
195
196 // Address mode defines whether a 7-bit or a
197 // 10-bit slave address is programmed. 1 = 10-bit
198 // device address 0 = 7-bit device address
199 #define I2C_I2C_CNFG_0_A_MOD_SHIFT _MK_SHIFT_CONST(0)
200 #define I2C_I2C_CNFG_0_A_MOD_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_CNFG_0_A_MOD_SHIFT)
201 #define I2C_I2C_CNFG_0_A_MOD_RANGE 0:0
202 #define I2C_I2C_CNFG_0_A_MOD_WOFFSET 0x0
203 #define I2C_I2C_CNFG_0_A_MOD_DEFAULT _MK_MASK_CONST(0x0)
204 #define I2C_I2C_CNFG_0_A_MOD_DEFAULT_MASK _MK_MASK_CONST(0 x1)
205 #define I2C_I2C_CNFG_0_A_MOD_SW_DEFAULT _MK_MASK_CONST(0x0)
206 #define I2C_I2C_CNFG_0_A_MOD_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
207 #define I2C_I2C_CNFG_0_A_MOD_SEVEN_BIT_DEVICE_ADDRESS _MK_ENUM _CONST(0)
208 #define I2C_I2C_CNFG_0_A_MOD_TEN_BIT_DEVICE_ADDRESS _MK_ENUM _CONST(1)
209
210
211 // Register I2C_I2C_CMD_ADDR0_0
212 #define I2C_I2C_CMD_ADDR0_0 _MK_ADDR_CONST(0x4)
213 #define I2C_I2C_CMD_ADDR0_0_SECURE 0x0
214 #define I2C_I2C_CMD_ADDR0_0_WORD_COUNT 0x1
215 #define I2C_I2C_CMD_ADDR0_0_RESET_VAL _MK_MASK_CONST(0x0)
216 #define I2C_I2C_CMD_ADDR0_0_RESET_MASK _MK_MASK_CONST(0x3ff)
217 #define I2C_I2C_CMD_ADDR0_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
218 #define I2C_I2C_CMD_ADDR0_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
219 #define I2C_I2C_CMD_ADDR0_0_READ_MASK _MK_MASK_CONST(0x3ff)
220 #define I2C_I2C_CMD_ADDR0_0_WRITE_MASK _MK_MASK_CONST(0x3ff)
221 // In case of 7-Bit mode address is written in the
222 // I2C_CMD_ADDR0[7:1] and I2C_CMD_ADDR0[0] indicates the
223 // read/write transaction.I2C_CMD_ADDR0[0] bit must match
224 // with the I2C_CNFG[6].
225 // In case of 10-Bit mode addess is written in
226 // I2C_CMD_ADDR0[9:0] and I2C_CNFG[6] indicates the
227 // read/write transaction.
228 #define I2C_I2C_CMD_ADDR0_0_ADDR0_SHIFT _MK_SHIFT_CONST(0)
229 #define I2C_I2C_CMD_ADDR0_0_ADDR0_FIELD (_MK_MASK_CONST(0x3ff) < < I2C_I2C_CMD_ADDR0_0_ADDR0_SHIFT)
230 #define I2C_I2C_CMD_ADDR0_0_ADDR0_RANGE 9:0
231 #define I2C_I2C_CMD_ADDR0_0_ADDR0_WOFFSET 0x0
232 #define I2C_I2C_CMD_ADDR0_0_ADDR0_DEFAULT _MK_MASK_CONST(0 x0)
233 #define I2C_I2C_CMD_ADDR0_0_ADDR0_DEFAULT_MASK _MK_MASK_CONST(0 x3ff)
234 #define I2C_I2C_CMD_ADDR0_0_ADDR0_SW_DEFAULT _MK_MASK_CONST(0 x0)
235 #define I2C_I2C_CMD_ADDR0_0_ADDR0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
236
237
238 // Register I2C_I2C_CMD_ADDR1_0
239 #define I2C_I2C_CMD_ADDR1_0 _MK_ADDR_CONST(0x8)
240 #define I2C_I2C_CMD_ADDR1_0_SECURE 0x0
241 #define I2C_I2C_CMD_ADDR1_0_WORD_COUNT 0x1
242 #define I2C_I2C_CMD_ADDR1_0_RESET_VAL _MK_MASK_CONST(0x0)
243 #define I2C_I2C_CMD_ADDR1_0_RESET_MASK _MK_MASK_CONST(0x3ff)
244 #define I2C_I2C_CMD_ADDR1_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
245 #define I2C_I2C_CMD_ADDR1_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
246 #define I2C_I2C_CMD_ADDR1_0_READ_MASK _MK_MASK_CONST(0x3ff)
247 #define I2C_I2C_CMD_ADDR1_0_WRITE_MASK _MK_MASK_CONST(0x3ff)
248 // In case of 7-Bit mode address is written in the
249 // I2C_CMD_ADDR0[7:1] and I2C_CMD_ADDR0[0] indicates the
250 // read/write transaction.I2C_CMD_ADDR0[0] bit must match
251 // with the I2C_CNFG[7].
252 // In case of 10-Bit mode addess is written in
253 // I2C_CMD_ADDR0[9:0] and I2C_CNFG[7] indicates the
254 // read/write transaction.
255 #define I2C_I2C_CMD_ADDR1_0_ADDR1_SHIFT _MK_SHIFT_CONST(0)
256 #define I2C_I2C_CMD_ADDR1_0_ADDR1_FIELD (_MK_MASK_CONST(0x3ff) < < I2C_I2C_CMD_ADDR1_0_ADDR1_SHIFT)
257 #define I2C_I2C_CMD_ADDR1_0_ADDR1_RANGE 9:0
258 #define I2C_I2C_CMD_ADDR1_0_ADDR1_WOFFSET 0x0
259 #define I2C_I2C_CMD_ADDR1_0_ADDR1_DEFAULT _MK_MASK_CONST(0 x0)
260 #define I2C_I2C_CMD_ADDR1_0_ADDR1_DEFAULT_MASK _MK_MASK_CONST(0 x3ff)
261 #define I2C_I2C_CMD_ADDR1_0_ADDR1_SW_DEFAULT _MK_MASK_CONST(0 x0)
262 #define I2C_I2C_CMD_ADDR1_0_ADDR1_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
263
264
265 // Register I2C_I2C_CMD_DATA1_0
266 #define I2C_I2C_CMD_DATA1_0 _MK_ADDR_CONST(0xc)
267 #define I2C_I2C_CMD_DATA1_0_SECURE 0x0
268 #define I2C_I2C_CMD_DATA1_0_WORD_COUNT 0x1
269 #define I2C_I2C_CMD_DATA1_0_RESET_VAL _MK_MASK_CONST(0x0)
270 #define I2C_I2C_CMD_DATA1_0_RESET_MASK _MK_MASK_CONST(0xfffffff f)
271 #define I2C_I2C_CMD_DATA1_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
272 #define I2C_I2C_CMD_DATA1_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
273 #define I2C_I2C_CMD_DATA1_0_READ_MASK _MK_MASK_CONST(0xfffffff f)
274 #define I2C_I2C_CMD_DATA1_0_WRITE_MASK _MK_MASK_CONST(0xfffffff f)
275 // Fourth data byte to be sent/received
276 #define I2C_I2C_CMD_DATA1_0_DATA4_SHIFT _MK_SHIFT_CONST(24)
277 #define I2C_I2C_CMD_DATA1_0_DATA4_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_CMD_DATA1_0_DATA4_SHIFT)
278 #define I2C_I2C_CMD_DATA1_0_DATA4_RANGE 31:24
279 #define I2C_I2C_CMD_DATA1_0_DATA4_WOFFSET 0x0
280 #define I2C_I2C_CMD_DATA1_0_DATA4_DEFAULT _MK_MASK_CONST(0 x0)
281 #define I2C_I2C_CMD_DATA1_0_DATA4_DEFAULT_MASK _MK_MASK_CONST(0 xff)
282 #define I2C_I2C_CMD_DATA1_0_DATA4_SW_DEFAULT _MK_MASK_CONST(0 x0)
283 #define I2C_I2C_CMD_DATA1_0_DATA4_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
284
285 // Third data byte to be sent/received
286 #define I2C_I2C_CMD_DATA1_0_DATA3_SHIFT _MK_SHIFT_CONST(16)
287 #define I2C_I2C_CMD_DATA1_0_DATA3_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_CMD_DATA1_0_DATA3_SHIFT)
288 #define I2C_I2C_CMD_DATA1_0_DATA3_RANGE 23:16
289 #define I2C_I2C_CMD_DATA1_0_DATA3_WOFFSET 0x0
290 #define I2C_I2C_CMD_DATA1_0_DATA3_DEFAULT _MK_MASK_CONST(0 x0)
291 #define I2C_I2C_CMD_DATA1_0_DATA3_DEFAULT_MASK _MK_MASK_CONST(0 xff)
292 #define I2C_I2C_CMD_DATA1_0_DATA3_SW_DEFAULT _MK_MASK_CONST(0 x0)
293 #define I2C_I2C_CMD_DATA1_0_DATA3_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
294
295 // Second data byte to be sent/received
296 #define I2C_I2C_CMD_DATA1_0_DATA2_SHIFT _MK_SHIFT_CONST(8)
297 #define I2C_I2C_CMD_DATA1_0_DATA2_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_CMD_DATA1_0_DATA2_SHIFT)
298 #define I2C_I2C_CMD_DATA1_0_DATA2_RANGE 15:8
299 #define I2C_I2C_CMD_DATA1_0_DATA2_WOFFSET 0x0
300 #define I2C_I2C_CMD_DATA1_0_DATA2_DEFAULT _MK_MASK_CONST(0 x0)
301 #define I2C_I2C_CMD_DATA1_0_DATA2_DEFAULT_MASK _MK_MASK_CONST(0 xff)
302 #define I2C_I2C_CMD_DATA1_0_DATA2_SW_DEFAULT _MK_MASK_CONST(0 x0)
303 #define I2C_I2C_CMD_DATA1_0_DATA2_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
304
305 // This register contains the first data byte to be sent/received.
306 #define I2C_I2C_CMD_DATA1_0_DATA1_SHIFT _MK_SHIFT_CONST(0)
307 #define I2C_I2C_CMD_DATA1_0_DATA1_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_CMD_DATA1_0_DATA1_SHIFT)
308 #define I2C_I2C_CMD_DATA1_0_DATA1_RANGE 7:0
309 #define I2C_I2C_CMD_DATA1_0_DATA1_WOFFSET 0x0
310 #define I2C_I2C_CMD_DATA1_0_DATA1_DEFAULT _MK_MASK_CONST(0 x0)
311 #define I2C_I2C_CMD_DATA1_0_DATA1_DEFAULT_MASK _MK_MASK_CONST(0 xff)
312 #define I2C_I2C_CMD_DATA1_0_DATA1_SW_DEFAULT _MK_MASK_CONST(0 x0)
313 #define I2C_I2C_CMD_DATA1_0_DATA1_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
314
315
316 // Register I2C_I2C_CMD_DATA2_0
317 #define I2C_I2C_CMD_DATA2_0 _MK_ADDR_CONST(0x10)
318 #define I2C_I2C_CMD_DATA2_0_SECURE 0x0
319 #define I2C_I2C_CMD_DATA2_0_WORD_COUNT 0x1
320 #define I2C_I2C_CMD_DATA2_0_RESET_VAL _MK_MASK_CONST(0x0)
321 #define I2C_I2C_CMD_DATA2_0_RESET_MASK _MK_MASK_CONST(0xfffffff f)
322 #define I2C_I2C_CMD_DATA2_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
323 #define I2C_I2C_CMD_DATA2_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
324 #define I2C_I2C_CMD_DATA2_0_READ_MASK _MK_MASK_CONST(0xfffffff f)
325 #define I2C_I2C_CMD_DATA2_0_WRITE_MASK _MK_MASK_CONST(0xfffffff f)
326 // Eighth data byte to be sent/received
327 #define I2C_I2C_CMD_DATA2_0_DATA8_SHIFT _MK_SHIFT_CONST(24)
328 #define I2C_I2C_CMD_DATA2_0_DATA8_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_CMD_DATA2_0_DATA8_SHIFT)
329 #define I2C_I2C_CMD_DATA2_0_DATA8_RANGE 31:24
330 #define I2C_I2C_CMD_DATA2_0_DATA8_WOFFSET 0x0
331 #define I2C_I2C_CMD_DATA2_0_DATA8_DEFAULT _MK_MASK_CONST(0 x0)
332 #define I2C_I2C_CMD_DATA2_0_DATA8_DEFAULT_MASK _MK_MASK_CONST(0 xff)
333 #define I2C_I2C_CMD_DATA2_0_DATA8_SW_DEFAULT _MK_MASK_CONST(0 x0)
334 #define I2C_I2C_CMD_DATA2_0_DATA8_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
335
336 // Seventh data byte to be sent/received
337 #define I2C_I2C_CMD_DATA2_0_DATA7_SHIFT _MK_SHIFT_CONST(16)
338 #define I2C_I2C_CMD_DATA2_0_DATA7_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_CMD_DATA2_0_DATA7_SHIFT)
339 #define I2C_I2C_CMD_DATA2_0_DATA7_RANGE 23:16
340 #define I2C_I2C_CMD_DATA2_0_DATA7_WOFFSET 0x0
341 #define I2C_I2C_CMD_DATA2_0_DATA7_DEFAULT _MK_MASK_CONST(0 x0)
342 #define I2C_I2C_CMD_DATA2_0_DATA7_DEFAULT_MASK _MK_MASK_CONST(0 xff)
343 #define I2C_I2C_CMD_DATA2_0_DATA7_SW_DEFAULT _MK_MASK_CONST(0 x0)
344 #define I2C_I2C_CMD_DATA2_0_DATA7_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
345
346 // Sixth data byte to be sent/received
347 #define I2C_I2C_CMD_DATA2_0_DATA6_SHIFT _MK_SHIFT_CONST(8)
348 #define I2C_I2C_CMD_DATA2_0_DATA6_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_CMD_DATA2_0_DATA6_SHIFT)
349 #define I2C_I2C_CMD_DATA2_0_DATA6_RANGE 15:8
350 #define I2C_I2C_CMD_DATA2_0_DATA6_WOFFSET 0x0
351 #define I2C_I2C_CMD_DATA2_0_DATA6_DEFAULT _MK_MASK_CONST(0 x0)
352 #define I2C_I2C_CMD_DATA2_0_DATA6_DEFAULT_MASK _MK_MASK_CONST(0 xff)
353 #define I2C_I2C_CMD_DATA2_0_DATA6_SW_DEFAULT _MK_MASK_CONST(0 x0)
354 #define I2C_I2C_CMD_DATA2_0_DATA6_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
355
356 // This register contains the Fifth data byte to be sent/received.
357 #define I2C_I2C_CMD_DATA2_0_DATA5_SHIFT _MK_SHIFT_CONST(0)
358 #define I2C_I2C_CMD_DATA2_0_DATA5_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_CMD_DATA2_0_DATA5_SHIFT)
359 #define I2C_I2C_CMD_DATA2_0_DATA5_RANGE 7:0
360 #define I2C_I2C_CMD_DATA2_0_DATA5_WOFFSET 0x0
361 #define I2C_I2C_CMD_DATA2_0_DATA5_DEFAULT _MK_MASK_CONST(0 x0)
362 #define I2C_I2C_CMD_DATA2_0_DATA5_DEFAULT_MASK _MK_MASK_CONST(0 xff)
363 #define I2C_I2C_CMD_DATA2_0_DATA5_SW_DEFAULT _MK_MASK_CONST(0 x0)
364 #define I2C_I2C_CMD_DATA2_0_DATA5_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
365
366
367 // Reserved address 20 [0x14]
368
369 // Reserved address 24 [0x18]
370
371 // Register I2C_I2C_STATUS_0
372 #define I2C_I2C_STATUS_0 _MK_ADDR_CONST(0x1c)
373 #define I2C_I2C_STATUS_0_SECURE 0x0
374 #define I2C_I2C_STATUS_0_WORD_COUNT 0x1
375 #define I2C_I2C_STATUS_0_RESET_VAL _MK_MASK_CONST(0x0)
376 #define I2C_I2C_STATUS_0_RESET_MASK _MK_MASK_CONST(0x1ff)
377 #define I2C_I2C_STATUS_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
378 #define I2C_I2C_STATUS_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
379 #define I2C_I2C_STATUS_0_READ_MASK _MK_MASK_CONST(0x1ff)
380 #define I2C_I2C_STATUS_0_WRITE_MASK _MK_MASK_CONST(0x0)
381 // 1 = Busy.
382 #define I2C_I2C_STATUS_0_BUSY_SHIFT _MK_SHIFT_CONST(8)
383 #define I2C_I2C_STATUS_0_BUSY_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_STATUS_0_BUSY_SHIFT)
384 #define I2C_I2C_STATUS_0_BUSY_RANGE 8:8
385 #define I2C_I2C_STATUS_0_BUSY_WOFFSET 0x0
386 #define I2C_I2C_STATUS_0_BUSY_DEFAULT _MK_MASK_CONST(0x0)
387 #define I2C_I2C_STATUS_0_BUSY_DEFAULT_MASK _MK_MASK_CONST(0 x1)
388 #define I2C_I2C_STATUS_0_BUSY_SW_DEFAULT _MK_MASK_CONST(0 x0)
389 #define I2C_I2C_STATUS_0_BUSY_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
390 #define I2C_I2C_STATUS_0_BUSY_NOT_BUSY _MK_ENUM_CONST(0)
391 #define I2C_I2C_STATUS_0_BUSY_BUSY _MK_ENUM_CONST(1)
392
393 // Transaction for Slave2 for x byte failed. x is 'h0 to 'ha.
394 // all others invalid
395 #define I2C_I2C_STATUS_0_CMD2_STAT_SHIFT _MK_SHIFT_CONST( 4)
396 #define I2C_I2C_STATUS_0_CMD2_STAT_FIELD (_MK_MASK_CONST( 0xf) << I2C_I2C_STATUS_0_CMD2_STAT_SHIFT)
397 #define I2C_I2C_STATUS_0_CMD2_STAT_RANGE 7:4
398 #define I2C_I2C_STATUS_0_CMD2_STAT_WOFFSET 0x0
399 #define I2C_I2C_STATUS_0_CMD2_STAT_DEFAULT _MK_MASK_CONST(0 x0)
400 #define I2C_I2C_STATUS_0_CMD2_STAT_DEFAULT_MASK _MK_MASK_CONST(0 xf)
401 #define I2C_I2C_STATUS_0_CMD2_STAT_SW_DEFAULT _MK_MASK_CONST(0 x0)
402 #define I2C_I2C_STATUS_0_CMD2_STAT_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
403 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_XFER_SUCCESSFUL _MK_ENUM _CONST(0)
404 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE1 _MK_ENUM _CONST(1)
405 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE2 _MK_ENUM _CONST(2)
406 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE3 _MK_ENUM _CONST(3)
407 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE4 _MK_ENUM _CONST(4)
408 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE5 _MK_ENUM _CONST(5)
409 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE6 _MK_ENUM _CONST(6)
410 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE7 _MK_ENUM _CONST(7)
411 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE8 _MK_ENUM _CONST(8)
412 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE9 _MK_ENUM _CONST(9)
413 #define I2C_I2C_STATUS_0_CMD2_STAT_SL2_NOACK_FOR_BYTE10 _MK_ENUM _CONST(10)
414
415 // Transaction for Slave1 for x byte failed. x is 'h0 to 'ha.
416 // all others invalid
417 #define I2C_I2C_STATUS_0_CMD1_STAT_SHIFT _MK_SHIFT_CONST( 0)
418 #define I2C_I2C_STATUS_0_CMD1_STAT_FIELD (_MK_MASK_CONST( 0xf) << I2C_I2C_STATUS_0_CMD1_STAT_SHIFT)
419 #define I2C_I2C_STATUS_0_CMD1_STAT_RANGE 3:0
420 #define I2C_I2C_STATUS_0_CMD1_STAT_WOFFSET 0x0
421 #define I2C_I2C_STATUS_0_CMD1_STAT_DEFAULT _MK_MASK_CONST(0 x0)
422 #define I2C_I2C_STATUS_0_CMD1_STAT_DEFAULT_MASK _MK_MASK_CONST(0 xf)
423 #define I2C_I2C_STATUS_0_CMD1_STAT_SW_DEFAULT _MK_MASK_CONST(0 x0)
424 #define I2C_I2C_STATUS_0_CMD1_STAT_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
425 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_XFER_SUCCESSFUL _MK_ENUM _CONST(0)
426 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE1 _MK_ENUM _CONST(1)
427 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE2 _MK_ENUM _CONST(2)
428 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE3 _MK_ENUM _CONST(3)
429 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE4 _MK_ENUM _CONST(4)
430 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE5 _MK_ENUM _CONST(5)
431 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE6 _MK_ENUM _CONST(6)
432 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE7 _MK_ENUM _CONST(7)
433 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE8 _MK_ENUM _CONST(8)
434 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE9 _MK_ENUM _CONST(9)
435 #define I2C_I2C_STATUS_0_CMD1_STAT_SL1_NOACK_FOR_BYTE10 _MK_ENUM _CONST(10)
436
437
438 // Register I2C_I2C_SL_CNFG_0
439 #define I2C_I2C_SL_CNFG_0 _MK_ADDR_CONST(0x20)
440 #define I2C_I2C_SL_CNFG_0_SECURE 0x0
441 #define I2C_I2C_SL_CNFG_0_WORD_COUNT 0x1
442 #define I2C_I2C_SL_CNFG_0_RESET_VAL _MK_MASK_CONST(0x0)
443 #define I2C_I2C_SL_CNFG_0_RESET_MASK _MK_MASK_CONST(0x7)
444 #define I2C_I2C_SL_CNFG_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
445 #define I2C_I2C_SL_CNFG_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
446 #define I2C_I2C_SL_CNFG_0_READ_MASK _MK_MASK_CONST(0x7)
447 #define I2C_I2C_SL_CNFG_0_WRITE_MASK _MK_MASK_CONST(0x7)
448 // New Slave
449 // 1 - use new slave
450 #define I2C_I2C_SL_CNFG_0_NEWSL_SHIFT _MK_SHIFT_CONST(2)
451 #define I2C_I2C_SL_CNFG_0_NEWSL_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_SL_CNFG_0_NEWSL_SHIFT)
452 #define I2C_I2C_SL_CNFG_0_NEWSL_RANGE 2:2
453 #define I2C_I2C_SL_CNFG_0_NEWSL_WOFFSET 0x0
454 #define I2C_I2C_SL_CNFG_0_NEWSL_DEFAULT _MK_MASK_CONST(0x0)
455 #define I2C_I2C_SL_CNFG_0_NEWSL_DEFAULT_MASK _MK_MASK_CONST(0 x1)
456 #define I2C_I2C_SL_CNFG_0_NEWSL_SW_DEFAULT _MK_MASK_CONST(0 x0)
457 #define I2C_I2C_SL_CNFG_0_NEWSL_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
458 #define I2C_I2C_SL_CNFG_0_NEWSL_DISABLE _MK_ENUM_CONST(0)
459 #define I2C_I2C_SL_CNFG_0_NEWSL_ENABLE _MK_ENUM_CONST(1)
460
461 // Disable Slave Ack.
462 // 1 - slave will not ack reception of address or data byte.
463 #define I2C_I2C_SL_CNFG_0_NACK_SHIFT _MK_SHIFT_CONST(1)
464 #define I2C_I2C_SL_CNFG_0_NACK_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_SL_CNFG_0_NACK_SHIFT)
465 #define I2C_I2C_SL_CNFG_0_NACK_RANGE 1:1
466 #define I2C_I2C_SL_CNFG_0_NACK_WOFFSET 0x0
467 #define I2C_I2C_SL_CNFG_0_NACK_DEFAULT _MK_MASK_CONST(0x0)
468 #define I2C_I2C_SL_CNFG_0_NACK_DEFAULT_MASK _MK_MASK_CONST(0 x1)
469 #define I2C_I2C_SL_CNFG_0_NACK_SW_DEFAULT _MK_MASK_CONST(0 x0)
470 #define I2C_I2C_SL_CNFG_0_NACK_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
471 #define I2C_I2C_SL_CNFG_0_NACK_DISABLE _MK_ENUM_CONST(0)
472 #define I2C_I2C_SL_CNFG_0_NACK_ENABLE _MK_ENUM_CONST(1)
473
474 // Slave response to general call address (zero address)
475 // 1 - Enable.
476 #define I2C_I2C_SL_CNFG_0_RESP_SHIFT _MK_SHIFT_CONST(0)
477 #define I2C_I2C_SL_CNFG_0_RESP_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_SL_CNFG_0_RESP_SHIFT)
478 #define I2C_I2C_SL_CNFG_0_RESP_RANGE 0:0
479 #define I2C_I2C_SL_CNFG_0_RESP_WOFFSET 0x0
480 #define I2C_I2C_SL_CNFG_0_RESP_DEFAULT _MK_MASK_CONST(0x0)
481 #define I2C_I2C_SL_CNFG_0_RESP_DEFAULT_MASK _MK_MASK_CONST(0 x1)
482 #define I2C_I2C_SL_CNFG_0_RESP_SW_DEFAULT _MK_MASK_CONST(0 x0)
483 #define I2C_I2C_SL_CNFG_0_RESP_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
484 #define I2C_I2C_SL_CNFG_0_RESP_DISABLE _MK_ENUM_CONST(0)
485 #define I2C_I2C_SL_CNFG_0_RESP_ENABLE _MK_ENUM_CONST(1)
486
487
488 // Register I2C_I2C_SL_RCVD_0
489 #define I2C_I2C_SL_RCVD_0 _MK_ADDR_CONST(0x24)
490 #define I2C_I2C_SL_RCVD_0_SECURE 0x0
491 #define I2C_I2C_SL_RCVD_0_WORD_COUNT 0x1
492 #define I2C_I2C_SL_RCVD_0_RESET_VAL _MK_MASK_CONST(0x0)
493 #define I2C_I2C_SL_RCVD_0_RESET_MASK _MK_MASK_CONST(0xff)
494 #define I2C_I2C_SL_RCVD_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
495 #define I2C_I2C_SL_RCVD_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
496 #define I2C_I2C_SL_RCVD_0_READ_MASK _MK_MASK_CONST(0xff)
497 #define I2C_I2C_SL_RCVD_0_WRITE_MASK _MK_MASK_CONST(0xff)
498 //slave Received data
499 #define I2C_I2C_SL_RCVD_0_SL_DATA_SHIFT _MK_SHIFT_CONST(0)
500 #define I2C_I2C_SL_RCVD_0_SL_DATA_FIELD (_MK_MASK_CONST(0xff) << I2C_I2C_SL_RCVD_0_SL_DATA_SHIFT)
501 #define I2C_I2C_SL_RCVD_0_SL_DATA_RANGE 7:0
502 #define I2C_I2C_SL_RCVD_0_SL_DATA_WOFFSET 0x0
503 #define I2C_I2C_SL_RCVD_0_SL_DATA_DEFAULT _MK_MASK_CONST(0 x0)
504 #define I2C_I2C_SL_RCVD_0_SL_DATA_DEFAULT_MASK _MK_MASK_CONST(0 xff)
505 #define I2C_I2C_SL_RCVD_0_SL_DATA_SW_DEFAULT _MK_MASK_CONST(0 x0)
506 #define I2C_I2C_SL_RCVD_0_SL_DATA_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
507
508
509 // Register I2C_I2C_SL_STATUS_0
510 #define I2C_I2C_SL_STATUS_0 _MK_ADDR_CONST(0x28)
511 #define I2C_I2C_SL_STATUS_0_SECURE 0x0
512 #define I2C_I2C_SL_STATUS_0_WORD_COUNT 0x1
513 #define I2C_I2C_SL_STATUS_0_RESET_VAL _MK_MASK_CONST(0x0)
514 #define I2C_I2C_SL_STATUS_0_RESET_MASK _MK_MASK_CONST(0x7fff)
515 #define I2C_I2C_SL_STATUS_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
516 #define I2C_I2C_SL_STATUS_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
517 #define I2C_I2C_SL_STATUS_0_READ_MASK _MK_MASK_CONST(0x7fff)
518 #define I2C_I2C_SL_STATUS_0_WRITE_MASK _MK_MASK_CONST(0x0)
519 // HW master addr received via general call addressing.
520 // This field is meaningful only if HW_MSTR_INT is set.
521 #define I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_SHIFT _MK_SHIFT_CONST( 8)
522 #define I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_FIELD (_MK_MASK_CONST( 0x7f) << I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_SHIFT)
523 #define I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_RANGE 14:8
524 #define I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_WOFFSET 0x0
525 #define I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_DEFAULT _MK_MASK_CONST(0 x0)
526 #define I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_DEFAULT_MASK _MK_MASK _CONST(0x7f)
527 #define I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_SW_DEFAULT _MK_MASK _CONST(0x0)
528 #define I2C_I2C_SL_STATUS_0_HW_MSTR_ADR_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
529
530 // 1 = Interrupt has been generated by slave
531 // Hardware Master Address is received after
532 // General Call Address.
533 // 1 = Received HW Master Address
534 // 0 = No event.
535 #define I2C_I2C_SL_STATUS_0_HW_MSTR_INT_SHIFT _MK_SHIFT_CONST( 7)
536 #define I2C_I2C_SL_STATUS_0_HW_MSTR_INT_FIELD (_MK_MASK_CONST( 0x1) << I2C_I2C_SL_STATUS_0_HW_MSTR_INT_SHIFT)
537 #define I2C_I2C_SL_STATUS_0_HW_MSTR_INT_RANGE 7:7
538 #define I2C_I2C_SL_STATUS_0_HW_MSTR_INT_WOFFSET 0x0
539 #define I2C_I2C_SL_STATUS_0_HW_MSTR_INT_DEFAULT _MK_MASK_CONST(0 x0)
540 #define I2C_I2C_SL_STATUS_0_HW_MSTR_INT_DEFAULT_MASK _MK_MASK _CONST(0x1)
541 #define I2C_I2C_SL_STATUS_0_HW_MSTR_INT_SW_DEFAULT _MK_MASK _CONST(0x0)
542 #define I2C_I2C_SL_STATUS_0_HW_MSTR_INT_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
543
544 // 1 = Interrupt has been generated by slave
545 // By after General Call Address is 0x04.
546 // 1 = Reprogram slave address.
547 // 0 = No action.
548 #define I2C_I2C_SL_STATUS_0_REPROG_SL_SHIFT _MK_SHIFT_CONST( 6)
549 #define I2C_I2C_SL_STATUS_0_REPROG_SL_FIELD (_MK_MASK_CONST( 0x1) << I2C_I2C_SL_STATUS_0_REPROG_SL_SHIFT)
550 #define I2C_I2C_SL_STATUS_0_REPROG_SL_RANGE 6:6
551 #define I2C_I2C_SL_STATUS_0_REPROG_SL_WOFFSET 0x0
552 #define I2C_I2C_SL_STATUS_0_REPROG_SL_DEFAULT _MK_MASK_CONST(0 x0)
553 #define I2C_I2C_SL_STATUS_0_REPROG_SL_DEFAULT_MASK _MK_MASK _CONST(0x1)
554 #define I2C_I2C_SL_STATUS_0_REPROG_SL_SW_DEFAULT _MK_MASK _CONST(0x0)
555 #define I2C_I2C_SL_STATUS_0_REPROG_SL_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
556
557 // 1 = Interrupt has been generated by slave
558 // By after General Call Address is 0x06.
559 // 1 = Reset and reprogram slave address.
560 // 0 = No action.
561 #define I2C_I2C_SL_STATUS_0_RST_SL_SHIFT _MK_SHIFT_CONST( 5)
562 #define I2C_I2C_SL_STATUS_0_RST_SL_FIELD (_MK_MASK_CONST( 0x1) << I2C_I2C_SL_STATUS_0_RST_SL_SHIFT)
563 #define I2C_I2C_SL_STATUS_0_RST_SL_RANGE 5:5
564 #define I2C_I2C_SL_STATUS_0_RST_SL_WOFFSET 0x0
565 #define I2C_I2C_SL_STATUS_0_RST_SL_DEFAULT _MK_MASK_CONST(0 x0)
566 #define I2C_I2C_SL_STATUS_0_RST_SL_DEFAULT_MASK _MK_MASK_CONST(0 x1)
567 #define I2C_I2C_SL_STATUS_0_RST_SL_SW_DEFAULT _MK_MASK_CONST(0 x0)
568 #define I2C_I2C_SL_STATUS_0_RST_SL_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
569
570 // 1 = Interrupt has been generated by slave
571 // Transaction completed as indicated by stop/repeat start condition.
572 // 1 = Transaction completed.
573 // 0 = No transaction occurred or transaction in progress.
574 #define I2C_I2C_SL_STATUS_0_END_TRANS_SHIFT _MK_SHIFT_CONST( 4)
575 #define I2C_I2C_SL_STATUS_0_END_TRANS_FIELD (_MK_MASK_CONST( 0x1) << I2C_I2C_SL_STATUS_0_END_TRANS_SHIFT)
576 #define I2C_I2C_SL_STATUS_0_END_TRANS_RANGE 4:4
577 #define I2C_I2C_SL_STATUS_0_END_TRANS_WOFFSET 0x0
578 #define I2C_I2C_SL_STATUS_0_END_TRANS_DEFAULT _MK_MASK_CONST(0 x0)
579 #define I2C_I2C_SL_STATUS_0_END_TRANS_DEFAULT_MASK _MK_MASK _CONST(0x1)
580 #define I2C_I2C_SL_STATUS_0_END_TRANS_SW_DEFAULT _MK_MASK _CONST(0x0)
581 #define I2C_I2C_SL_STATUS_0_END_TRANS_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
582
583 // 1 = Interrupt has been generated by slave
584 // 0 = No interrupt generated
585 #define I2C_I2C_SL_STATUS_0_SL_IRQ_SHIFT _MK_SHIFT_CONST( 3)
586 #define I2C_I2C_SL_STATUS_0_SL_IRQ_FIELD (_MK_MASK_CONST( 0x1) << I2C_I2C_SL_STATUS_0_SL_IRQ_SHIFT)
587 #define I2C_I2C_SL_STATUS_0_SL_IRQ_RANGE 3:3
588 #define I2C_I2C_SL_STATUS_0_SL_IRQ_WOFFSET 0x0
589 #define I2C_I2C_SL_STATUS_0_SL_IRQ_DEFAULT _MK_MASK_CONST(0 x0)
590 #define I2C_I2C_SL_STATUS_0_SL_IRQ_DEFAULT_MASK _MK_MASK_CONST(0 x1)
591 #define I2C_I2C_SL_STATUS_0_SL_IRQ_SW_DEFAULT _MK_MASK_CONST(0 x0)
592 #define I2C_I2C_SL_STATUS_0_SL_IRQ_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
593 #define I2C_I2C_SL_STATUS_0_SL_IRQ_UNSET _MK_ENUM_CONST(0 )
594 #define I2C_I2C_SL_STATUS_0_SL_IRQ_SET _MK_ENUM_CONST(1)
595
596 // New Transaction Receieved status
597 // 1 = Transaction occurred.
598 // 0 = No transaction occurred
599 #define I2C_I2C_SL_STATUS_0_RCVD_SHIFT _MK_SHIFT_CONST(2)
600 #define I2C_I2C_SL_STATUS_0_RCVD_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_SL_STATUS_0_RCVD_SHIFT)
601 #define I2C_I2C_SL_STATUS_0_RCVD_RANGE 2:2
602 #define I2C_I2C_SL_STATUS_0_RCVD_WOFFSET 0x0
603 #define I2C_I2C_SL_STATUS_0_RCVD_DEFAULT _MK_MASK_CONST(0 x0)
604 #define I2C_I2C_SL_STATUS_0_RCVD_DEFAULT_MASK _MK_MASK_CONST(0 x1)
605 #define I2C_I2C_SL_STATUS_0_RCVD_SW_DEFAULT _MK_MASK_CONST(0 x0)
606 #define I2C_I2C_SL_STATUS_0_RCVD_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
607 #define I2C_I2C_SL_STATUS_0_RCVD_NO_TRANSACTION_OCCURED _MK_ENUM _CONST(0)
608 #define I2C_I2C_SL_STATUS_0_RCVD_TRANSACTION_OCCURED _MK_ENUM _CONST(1)
609
610 // Slave Transaction status
611 // 0 = Write
612 // 1=Read
613 #define I2C_I2C_SL_STATUS_0_RNW_SHIFT _MK_SHIFT_CONST(1)
614 #define I2C_I2C_SL_STATUS_0_RNW_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_SL_STATUS_0_RNW_SHIFT)
615 #define I2C_I2C_SL_STATUS_0_RNW_RANGE 1:1
616 #define I2C_I2C_SL_STATUS_0_RNW_WOFFSET 0x0
617 #define I2C_I2C_SL_STATUS_0_RNW_DEFAULT _MK_MASK_CONST(0x0)
618 #define I2C_I2C_SL_STATUS_0_RNW_DEFAULT_MASK _MK_MASK_CONST(0 x1)
619 #define I2C_I2C_SL_STATUS_0_RNW_SW_DEFAULT _MK_MASK_CONST(0 x0)
620 #define I2C_I2C_SL_STATUS_0_RNW_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
621 #define I2C_I2C_SL_STATUS_0_RNW_WRITE _MK_ENUM_CONST(0)
622 #define I2C_I2C_SL_STATUS_0_RNW_READ _MK_ENUM_CONST(1)
623
624 // Zero Address Status
625 // 1 = Yes, slave responded
626 // 0 = No, slave did not respond
627 #define I2C_I2C_SL_STATUS_0_ZA_SHIFT _MK_SHIFT_CONST(0)
628 #define I2C_I2C_SL_STATUS_0_ZA_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_SL_STATUS_0_ZA_SHIFT)
629 #define I2C_I2C_SL_STATUS_0_ZA_RANGE 0:0
630 #define I2C_I2C_SL_STATUS_0_ZA_WOFFSET 0x0
631 #define I2C_I2C_SL_STATUS_0_ZA_DEFAULT _MK_MASK_CONST(0x0)
632 #define I2C_I2C_SL_STATUS_0_ZA_DEFAULT_MASK _MK_MASK_CONST(0 x1)
633 #define I2C_I2C_SL_STATUS_0_ZA_SW_DEFAULT _MK_MASK_CONST(0 x0)
634 #define I2C_I2C_SL_STATUS_0_ZA_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
635 #define I2C_I2C_SL_STATUS_0_ZA_NO_SLAVE_RESPONSE _MK_ENUM _CONST(0)
636 #define I2C_I2C_SL_STATUS_0_ZA_SLAVE_RESPONSE _MK_ENUM_CONST(1 )
637
638
639 // Register I2C_I2C_SL_ADDR1_0
640 #define I2C_I2C_SL_ADDR1_0 _MK_ADDR_CONST(0x2c)
641 #define I2C_I2C_SL_ADDR1_0_SECURE 0x0
642 #define I2C_I2C_SL_ADDR1_0_WORD_COUNT 0x1
643 #define I2C_I2C_SL_ADDR1_0_RESET_VAL _MK_MASK_CONST(0x0)
644 #define I2C_I2C_SL_ADDR1_0_RESET_MASK _MK_MASK_CONST(0xff)
645 #define I2C_I2C_SL_ADDR1_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
646 #define I2C_I2C_SL_ADDR1_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
647 #define I2C_I2C_SL_ADDR1_0_READ_MASK _MK_MASK_CONST(0xff)
648 #define I2C_I2C_SL_ADDR1_0_WRITE_MASK _MK_MASK_CONST(0xff)
649 // For a 10-bit slave address, this field is the least significant 8 bits.
650 #define I2C_I2C_SL_ADDR1_0_SL_ADDR0_SHIFT _MK_SHIFT_CONST( 0)
651 #define I2C_I2C_SL_ADDR1_0_SL_ADDR0_FIELD (_MK_MASK_CONST( 0xff) << I2C_I2C_SL_ADDR1_0_SL_ADDR0_SHIFT)
652 #define I2C_I2C_SL_ADDR1_0_SL_ADDR0_RANGE 7:0
653 #define I2C_I2C_SL_ADDR1_0_SL_ADDR0_WOFFSET 0x0
654 #define I2C_I2C_SL_ADDR1_0_SL_ADDR0_DEFAULT _MK_MASK_CONST(0 x0)
655 #define I2C_I2C_SL_ADDR1_0_SL_ADDR0_DEFAULT_MASK _MK_MASK _CONST(0xff)
656 #define I2C_I2C_SL_ADDR1_0_SL_ADDR0_SW_DEFAULT _MK_MASK_CONST(0 x0)
657 #define I2C_I2C_SL_ADDR1_0_SL_ADDR0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
658
659
660 // Register I2C_I2C_SL_ADDR2_0
661 #define I2C_I2C_SL_ADDR2_0 _MK_ADDR_CONST(0x30)
662 #define I2C_I2C_SL_ADDR2_0_SECURE 0x0
663 #define I2C_I2C_SL_ADDR2_0_WORD_COUNT 0x1
664 #define I2C_I2C_SL_ADDR2_0_RESET_VAL _MK_MASK_CONST(0x0)
665 #define I2C_I2C_SL_ADDR2_0_RESET_MASK _MK_MASK_CONST(0x7)
666 #define I2C_I2C_SL_ADDR2_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
667 #define I2C_I2C_SL_ADDR2_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
668 #define I2C_I2C_SL_ADDR2_0_READ_MASK _MK_MASK_CONST(0x7)
669 #define I2C_I2C_SL_ADDR2_0_WRITE_MASK _MK_MASK_CONST(0x7)
670 // In 7 bit address mode these bits are dont care;
671 // In 10 bit address mode they represent the 2 MSB of the address.
672 #define I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_SHIFT _MK_SHIFT_CONST( 1)
673 #define I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_FIELD (_MK_MASK_CONST( 0x3) << I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_SHIFT)
674 #define I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_RANGE 2:1
675 #define I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_WOFFSET 0x0
676 #define I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_DEFAULT _MK_MASK_CONST(0 x0)
677 #define I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_DEFAULT_MASK _MK_MASK _CONST(0x3)
678 #define I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_SW_DEFAULT _MK_MASK _CONST(0x0)
679 #define I2C_I2C_SL_ADDR2_0_SL_ADDR_HI_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
680
681 // 0 = 7-bit addressing.
682 // 1 - 10 bit addressing.
683 #define I2C_I2C_SL_ADDR2_0_VLD_SHIFT _MK_SHIFT_CONST(0)
684 #define I2C_I2C_SL_ADDR2_0_VLD_FIELD (_MK_MASK_CONST(0x1) << I2C_I2C_SL_ADDR2_0_VLD_SHIFT)
685 #define I2C_I2C_SL_ADDR2_0_VLD_RANGE 0:0
686 #define I2C_I2C_SL_ADDR2_0_VLD_WOFFSET 0x0
687 #define I2C_I2C_SL_ADDR2_0_VLD_DEFAULT _MK_MASK_CONST(0x0)
688 #define I2C_I2C_SL_ADDR2_0_VLD_DEFAULT_MASK _MK_MASK_CONST(0 x1)
689 #define I2C_I2C_SL_ADDR2_0_VLD_SW_DEFAULT _MK_MASK_CONST(0 x0)
690 #define I2C_I2C_SL_ADDR2_0_VLD_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
691 #define I2C_I2C_SL_ADDR2_0_VLD_SEVEN_BIT_ADDR_MODE _MK_ENUM _CONST(0)
692 #define I2C_I2C_SL_ADDR2_0_VLD_TEN_BIT_ADDR_MODE _MK_ENUM _CONST(1)
693
694
695 // Reserved address 52 [0x34]
696
697 // Reserved address 56 [0x38]
698
699 // Register I2C_I2C_SL_DELAY_COUNT_0
700 #define I2C_I2C_SL_DELAY_COUNT_0 _MK_ADDR_CONST(0x3c)
701 #define I2C_I2C_SL_DELAY_COUNT_0_SECURE 0x0
702 #define I2C_I2C_SL_DELAY_COUNT_0_WORD_COUNT 0x1
703 #define I2C_I2C_SL_DELAY_COUNT_0_RESET_VAL _MK_MASK_CONST(0 x1e)
704 #define I2C_I2C_SL_DELAY_COUNT_0_RESET_MASK _MK_MASK_CONST(0 xffff)
705 #define I2C_I2C_SL_DELAY_COUNT_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
706 #define I2C_I2C_SL_DELAY_COUNT_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
707 #define I2C_I2C_SL_DELAY_COUNT_0_READ_MASK _MK_MASK_CONST(0 xffff)
708 #define I2C_I2C_SL_DELAY_COUNT_0_WRITE_MASK _MK_MASK_CONST(0 xffff)
709 // The value determines the timing between an address
710 // cycle and a subsequent data cycle or two consecutive
711 // data cycles on the bus.The I2C_SL_DELAY_COUNT is valid
712 // only when internal slave is accessed.
713 // I2C_SL_DELAY_COUNT has to be programmed such that
714 // TIMING = T * DLY where T is period of clock source
715 // selected for I2c; and DLY is I2C_SL_DELAY_COUNT ;
716 // TIMING is the desired timing, A value of >= 1250 ns is
717 // advisable.
718 #define I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_SHIFT _MK_SHIF T_CONST(0)
719 #define I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_FIELD (_MK_MAS K_CONST(0xffff) << I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_SHIFT)
720 #define I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_RANGE 15:0
721 #define I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_WOFFSET 0x0
722 #define I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_DEFAULT _MK_MASK _CONST(0x1e)
723 #define I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_DEFAULT_MASK _MK_MASK_CONST(0xffff)
724 #define I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_SW_DEFAULT _MK_MASK_CONST(0x0)
725 #define I2C_I2C_SL_DELAY_COUNT_0_SL_DELAY_COUNT_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
726
727
728 // Reserved address 64 [0x40]
729
730 // Reserved address 68 [0x44]
731
732 // Reserved address 72 [0x48]
733
734 // Reserved address 76 [0x4c]
735
736 // Packet I2C_IO_PACKET_HEADER_0
737 #define I2C_IO_PACKET_HEADER_0_SIZE 32
738
739 #define I2C_IO_PACKET_HEADER_0_RESERVED0_3_SHIFT _MK_SHIF T_CONST(30)
740 #define I2C_IO_PACKET_HEADER_0_RESERVED0_3_FIELD (_MK_MAS K_CONST(0x3) << I2C_IO_PACKET_HEADER_0_RESERVED0_3_SHIFT)
741 #define I2C_IO_PACKET_HEADER_0_RESERVED0_3_RANGE _MK_SHIF T_CONST(31):_MK_SHIFT_CONST(30)
742 #define I2C_IO_PACKET_HEADER_0_RESERVED0_3_ROW 0
743
744 #define I2C_IO_PACKET_HEADER_0_HDRSZ_SHIFT _MK_SHIFT_CONST( 28)
745 #define I2C_IO_PACKET_HEADER_0_HDRSZ_FIELD (_MK_MASK_CONST( 0x3) << I2C_IO_PACKET_HEADER_0_HDRSZ_SHIFT)
746 #define I2C_IO_PACKET_HEADER_0_HDRSZ_RANGE _MK_SHIFT_CONST( 29):_MK_SHIFT_CONST(28)
747 #define I2C_IO_PACKET_HEADER_0_HDRSZ_ROW 0
748 #define I2C_IO_PACKET_HEADER_0_HDRSZ_ONE _MK_ENUM_CONST(0 )
749 #define I2C_IO_PACKET_HEADER_0_HDRSZ_TWO _MK_ENUM_CONST(1 )
750 #define I2C_IO_PACKET_HEADER_0_HDRSZ_THREE _MK_ENUM_CONST(2 )
751 #define I2C_IO_PACKET_HEADER_0_HDRSZ_FOUR _MK_ENUM_CONST(3 )
752
753 #define I2C_IO_PACKET_HEADER_0_RESERVED0_2_SHIFT _MK_SHIF T_CONST(24)
754 #define I2C_IO_PACKET_HEADER_0_RESERVED0_2_FIELD (_MK_MAS K_CONST(0xf) << I2C_IO_PACKET_HEADER_0_RESERVED0_2_SHIFT)
755 #define I2C_IO_PACKET_HEADER_0_RESERVED0_2_RANGE _MK_SHIF T_CONST(27):_MK_SHIFT_CONST(24)
756 #define I2C_IO_PACKET_HEADER_0_RESERVED0_2_ROW 0
757
758 #define I2C_IO_PACKET_HEADER_0_PKTID_SHIFT _MK_SHIFT_CONST( 16)
759 #define I2C_IO_PACKET_HEADER_0_PKTID_FIELD (_MK_MASK_CONST( 0xff) << I2C_IO_PACKET_HEADER_0_PKTID_SHIFT)
760 #define I2C_IO_PACKET_HEADER_0_PKTID_RANGE _MK_SHIFT_CONST( 23):_MK_SHIFT_CONST(16)
761 #define I2C_IO_PACKET_HEADER_0_PKTID_ROW 0
762
763 #define I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_SHIFT _MK_SHIF T_CONST(12)
764 #define I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_FIELD (_MK_MAS K_CONST(0xf) << I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_SHIFT)
765 #define I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_RANGE _MK_SHIF T_CONST(15):_MK_SHIFT_CONST(12)
766 #define I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_ROW 0
767 #define I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_I2C1 _MK_ENUM _CONST(0)
768 #define I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_I2C2 _MK_ENUM _CONST(1)
769 #define I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_I2C3 _MK_ENUM _CONST(2)
770 #define I2C_IO_PACKET_HEADER_0_CONTROLLER_ID_DVC_I2C _MK_ENUM _CONST(3)
771
772 #define I2C_IO_PACKET_HEADER_0_RESERVED0_1_SHIFT _MK_SHIF T_CONST(8)
773 #define I2C_IO_PACKET_HEADER_0_RESERVED0_1_FIELD (_MK_MAS K_CONST(0xf) << I2C_IO_PACKET_HEADER_0_RESERVED0_1_SHIFT)
774 #define I2C_IO_PACKET_HEADER_0_RESERVED0_1_RANGE _MK_SHIF T_CONST(11):_MK_SHIFT_CONST(8)
775 #define I2C_IO_PACKET_HEADER_0_RESERVED0_1_ROW 0
776
777 #define I2C_IO_PACKET_HEADER_0_PROTOCOL_SHIFT _MK_SHIFT_CONST( 4)
778 #define I2C_IO_PACKET_HEADER_0_PROTOCOL_FIELD (_MK_MASK_CONST( 0xf) << I2C_IO_PACKET_HEADER_0_PROTOCOL_SHIFT)
779 #define I2C_IO_PACKET_HEADER_0_PROTOCOL_RANGE _MK_SHIFT_CONST( 7):_MK_SHIFT_CONST(4)
780 #define I2C_IO_PACKET_HEADER_0_PROTOCOL_ROW 0
781 #define I2C_IO_PACKET_HEADER_0_PROTOCOL_RESERVED _MK_ENUM _CONST(0)
782 #define I2C_IO_PACKET_HEADER_0_PROTOCOL_I2C _MK_ENUM_CONST(1 )
783
784 #define I2C_IO_PACKET_HEADER_0_RESERVED0_0_SHIFT _MK_SHIF T_CONST(3)
785 #define I2C_IO_PACKET_HEADER_0_RESERVED0_0_FIELD (_MK_MAS K_CONST(0x1) << I2C_IO_PACKET_HEADER_0_RESERVED0_0_SHIFT)
786 #define I2C_IO_PACKET_HEADER_0_RESERVED0_0_RANGE _MK_SHIF T_CONST(3):_MK_SHIFT_CONST(3)
787 #define I2C_IO_PACKET_HEADER_0_RESERVED0_0_ROW 0
788
789 #define I2C_IO_PACKET_HEADER_0_PKTTYPE_SHIFT _MK_SHIFT_CONST( 0)
790 #define I2C_IO_PACKET_HEADER_0_PKTTYPE_FIELD (_MK_MASK_CONST( 0x7) << I2C_IO_PACKET_HEADER_0_PKTTYPE_SHIFT)
791 #define I2C_IO_PACKET_HEADER_0_PKTTYPE_RANGE _MK_SHIFT_CONST( 2):_MK_SHIFT_CONST(0)
792 #define I2C_IO_PACKET_HEADER_0_PKTTYPE_ROW 0
793
794 #define I2C_IO_PACKET_HEADER_0_RESERVED1_0_SHIFT _MK_SHIF T_CONST(12)
795 #define I2C_IO_PACKET_HEADER_0_RESERVED1_0_FIELD (_MK_MAS K_CONST(0xfffff) << I2C_IO_PACKET_HEADER_0_RESERVED1_0_SHIFT)
796 #define I2C_IO_PACKET_HEADER_0_RESERVED1_0_RANGE _MK_SHIF T_CONST(31):_MK_SHIFT_CONST(12)
797 #define I2C_IO_PACKET_HEADER_0_RESERVED1_0_ROW 1
798
799 #define I2C_IO_PACKET_HEADER_0_PAYLOADSIZE_SHIFT _MK_SHIF T_CONST(0)
800 #define I2C_IO_PACKET_HEADER_0_PAYLOADSIZE_FIELD (_MK_MAS K_CONST(0xfff) << I2C_IO_PACKET_HEADER_0_PAYLOADSIZE_SHIFT)
801 #define I2C_IO_PACKET_HEADER_0_PAYLOADSIZE_RANGE _MK_SHIF T_CONST(11):_MK_SHIFT_CONST(0)
802 #define I2C_IO_PACKET_HEADER_0_PAYLOADSIZE_ROW 1
803
804 #define I2C_IO_PACKET_HEADER_0_RESERVED2_0_SHIFT _MK_SHIF T_CONST(23)
805 #define I2C_IO_PACKET_HEADER_0_RESERVED2_0_FIELD (_MK_MAS K_CONST(0x1ff) << I2C_IO_PACKET_HEADER_0_RESERVED2_0_SHIFT)
806 #define I2C_IO_PACKET_HEADER_0_RESERVED2_0_RANGE _MK_SHIF T_CONST(31):_MK_SHIFT_CONST(23)
807 #define I2C_IO_PACKET_HEADER_0_RESERVED2_0_ROW 2
808
809 #define I2C_IO_PACKET_HEADER_0_HS_MODE_SHIFT _MK_SHIFT_CONST( 22)
810 #define I2C_IO_PACKET_HEADER_0_HS_MODE_FIELD (_MK_MASK_CONST( 0x1) << I2C_IO_PACKET_HEADER_0_HS_MODE_SHIFT)
811 #define I2C_IO_PACKET_HEADER_0_HS_MODE_RANGE _MK_SHIFT_CONST( 22):_MK_SHIFT_CONST(22)
812 #define I2C_IO_PACKET_HEADER_0_HS_MODE_ROW 2
813 #define I2C_IO_PACKET_HEADER_0_HS_MODE_DISABLE _MK_ENUM_CONST(0 )
814 #define I2C_IO_PACKET_HEADER_0_HS_MODE_ENABLE _MK_ENUM_CONST(1 )
815
816 #define I2C_IO_PACKET_HEADER_0_CONTUNE_ON_NACK_SHIFT _MK_SHIF T_CONST(21)
817 #define I2C_IO_PACKET_HEADER_0_CONTUNE_ON_NACK_FIELD (_MK_MAS K_CONST(0x1) << I2C_IO_PACKET_HEADER_0_CONTUNE_ON_NACK_SHIFT)
818 #define I2C_IO_PACKET_HEADER_0_CONTUNE_ON_NACK_RANGE _MK_SHIF T_CONST(21):_MK_SHIFT_CONST(21)
819 #define I2C_IO_PACKET_HEADER_0_CONTUNE_ON_NACK_ROW 2
820 #define I2C_IO_PACKET_HEADER_0_CONTUNE_ON_NACK_DISABLE _MK_ENUM _CONST(0)
821 #define I2C_IO_PACKET_HEADER_0_CONTUNE_ON_NACK_ENABLE _MK_ENUM _CONST(1)
822
823 #define I2C_IO_PACKET_HEADER_0_SEND_START_BYTE_SHIFT _MK_SHIF T_CONST(20)
824 #define I2C_IO_PACKET_HEADER_0_SEND_START_BYTE_FIELD (_MK_MAS K_CONST(0x1) << I2C_IO_PACKET_HEADER_0_SEND_START_BYTE_SHIFT)
825 #define I2C_IO_PACKET_HEADER_0_SEND_START_BYTE_RANGE _MK_SHIF T_CONST(20):_MK_SHIFT_CONST(20)
826 #define I2C_IO_PACKET_HEADER_0_SEND_START_BYTE_ROW 2
827 #define I2C_IO_PACKET_HEADER_0_SEND_START_BYTE_DISABLE _MK_ENUM _CONST(0)
828 #define I2C_IO_PACKET_HEADER_0_SEND_START_BYTE_ENABLE _MK_ENUM _CONST(1)
829
830 #define I2C_IO_PACKET_HEADER_0_READ_SHIFT _MK_SHIFT_CONST( 19)
831 #define I2C_IO_PACKET_HEADER_0_READ_FIELD (_MK_MASK_CONST( 0x1) << I2C_IO_PACKET_HEADER_0_READ_SHIFT)
832 #define I2C_IO_PACKET_HEADER_0_READ_RANGE _MK_SHIFT_CONST( 19):_MK_SHIFT_CONST(19)
833 #define I2C_IO_PACKET_HEADER_0_READ_ROW 2
834 #define I2C_IO_PACKET_HEADER_0_READ_WRITE _MK_ENUM_CONST(0 )
835 #define I2C_IO_PACKET_HEADER_0_READ_READ _MK_ENUM_CONST(1 )
836
837 #define I2C_IO_PACKET_HEADER_0_ADDR_MODE_SHIFT _MK_SHIFT_CONST( 18)
838 #define I2C_IO_PACKET_HEADER_0_ADDR_MODE_FIELD (_MK_MASK_CONST( 0x1) << I2C_IO_PACKET_HEADER_0_ADDR_MODE_SHIFT)
839 #define I2C_IO_PACKET_HEADER_0_ADDR_MODE_RANGE _MK_SHIFT_CONST( 18):_MK_SHIFT_CONST(18)
840 #define I2C_IO_PACKET_HEADER_0_ADDR_MODE_ROW 2
841 #define I2C_IO_PACKET_HEADER_0_ADDR_MODE_SEVEN_BIT _MK_ENUM _CONST(0)
842 #define I2C_IO_PACKET_HEADER_0_ADDR_MODE_TEN_BIT _MK_ENUM _CONST(1)
843
844 #define I2C_IO_PACKET_HEADER_0_IE_SHIFT _MK_SHIFT_CONST(17)
845 #define I2C_IO_PACKET_HEADER_0_IE_FIELD (_MK_MASK_CONST(0x1) << I2C_IO_PACKET_HEADER_0_IE_SHIFT)
846 #define I2C_IO_PACKET_HEADER_0_IE_RANGE _MK_SHIFT_CONST(17):_MK_ SHIFT_CONST(17)
847 #define I2C_IO_PACKET_HEADER_0_IE_ROW 2
848 #define I2C_IO_PACKET_HEADER_0_IE_DISABLE _MK_ENUM_CONST(0 )
849 #define I2C_IO_PACKET_HEADER_0_IE_ENABLE _MK_ENUM_CONST(1 )
850
851 #define I2C_IO_PACKET_HEADER_0_REPEAT_START_SHIFT _MK_SHIF T_CONST(16)
852 #define I2C_IO_PACKET_HEADER_0_REPEAT_START_FIELD (_MK_MAS K_CONST(0x1) << I2C_IO_PACKET_HEADER_0_REPEAT_START_SHIFT)
853 #define I2C_IO_PACKET_HEADER_0_REPEAT_START_RANGE _MK_SHIF T_CONST(16):_MK_SHIFT_CONST(16)
854 #define I2C_IO_PACKET_HEADER_0_REPEAT_START_ROW 2
855 #define I2C_IO_PACKET_HEADER_0_REPEAT_START_STOP _MK_ENUM _CONST(0)
856 #define I2C_IO_PACKET_HEADER_0_REPEAT_START_REPEAT_START _MK_ENUM_CONST(1)
857
858 #define I2C_IO_PACKET_HEADER_0_RESERVED2_1_SHIFT _MK_SHIF T_CONST(15)
859 #define I2C_IO_PACKET_HEADER_0_RESERVED2_1_FIELD (_MK_MAS K_CONST(0x1) << I2C_IO_PACKET_HEADER_0_RESERVED2_1_SHIFT)
860 #define I2C_IO_PACKET_HEADER_0_RESERVED2_1_RANGE _MK_SHIF T_CONST(15):_MK_SHIFT_CONST(15)
861 #define I2C_IO_PACKET_HEADER_0_RESERVED2_1_ROW 2
862
863 #define I2C_IO_PACKET_HEADER_0_HS_MASTER_ADDR_SHIFT _MK_SHIF T_CONST(12)
864 #define I2C_IO_PACKET_HEADER_0_HS_MASTER_ADDR_FIELD (_MK_MAS K_CONST(0x7) << I2C_IO_PACKET_HEADER_0_HS_MASTER_ADDR_SHIFT)
865 #define I2C_IO_PACKET_HEADER_0_HS_MASTER_ADDR_RANGE _MK_SHIF T_CONST(14):_MK_SHIFT_CONST(12)
866 #define I2C_IO_PACKET_HEADER_0_HS_MASTER_ADDR_ROW 2
867
868 #define I2C_IO_PACKET_HEADER_0_RESERVED2_2_SHIFT _MK_SHIF T_CONST(10)
869 #define I2C_IO_PACKET_HEADER_0_RESERVED2_2_FIELD (_MK_MAS K_CONST(0x3) << I2C_IO_PACKET_HEADER_0_RESERVED2_2_SHIFT)
870 #define I2C_IO_PACKET_HEADER_0_RESERVED2_2_RANGE _MK_SHIF T_CONST(11):_MK_SHIFT_CONST(10)
871 #define I2C_IO_PACKET_HEADER_0_RESERVED2_2_ROW 2
872
873 #define I2C_IO_PACKET_HEADER_0_SLAVE_ADDR_SHIFT _MK_SHIFT_CONST( 0)
874 #define I2C_IO_PACKET_HEADER_0_SLAVE_ADDR_FIELD (_MK_MASK_CONST( 0x3ff) << I2C_IO_PACKET_HEADER_0_SLAVE_ADDR_SHIFT)
875 #define I2C_IO_PACKET_HEADER_0_SLAVE_ADDR_RANGE _MK_SHIFT_CONST( 9):_MK_SHIFT_CONST(0)
876 #define I2C_IO_PACKET_HEADER_0_SLAVE_ADDR_ROW 2
877
878
879 // Register I2C_I2C_TX_PACKET_FIFO_0
880 #define I2C_I2C_TX_PACKET_FIFO_0 _MK_ADDR_CONST(0x50)
881 #define I2C_I2C_TX_PACKET_FIFO_0_SECURE 0x0
882 #define I2C_I2C_TX_PACKET_FIFO_0_WORD_COUNT 0x1
883 #define I2C_I2C_TX_PACKET_FIFO_0_RESET_VAL _MK_MASK_CONST(0 x0)
884 #define I2C_I2C_TX_PACKET_FIFO_0_RESET_MASK _MK_MASK_CONST(0 xffffffff)
885 #define I2C_I2C_TX_PACKET_FIFO_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
886 #define I2C_I2C_TX_PACKET_FIFO_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
887 #define I2C_I2C_TX_PACKET_FIFO_0_READ_MASK _MK_MASK_CONST(0 xffffffff)
888 #define I2C_I2C_TX_PACKET_FIFO_0_WRITE_MASK _MK_MASK_CONST(0 xffffffff)
889 //SW writes packets into this register
890 //A packet may contain generic
891 #define I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_SHIFT _MK_SHIF T_CONST(0)
892 #define I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_FIELD (_MK_MAS K_CONST(0xffffffff) << I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_SHIFT)
893 #define I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_RANGE 31:0
894 #define I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_WOFFSET 0x0
895 #define I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_DEFAULT _MK_MASK _CONST(0x0)
896 #define I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_DEFAULT_MASK _MK_MASK _CONST(0xffffffff)
897 #define I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_SW_DEFAULT _MK_MASK _CONST(0x0)
898 #define I2C_I2C_TX_PACKET_FIFO_0_TX_PACKET_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
899
900
901 // Register I2C_I2C_RX_FIFO_0
902 #define I2C_I2C_RX_FIFO_0 _MK_ADDR_CONST(0x54)
903 #define I2C_I2C_RX_FIFO_0_SECURE 0x0
904 #define I2C_I2C_RX_FIFO_0_WORD_COUNT 0x1
905 #define I2C_I2C_RX_FIFO_0_RESET_VAL _MK_MASK_CONST(0x0)
906 #define I2C_I2C_RX_FIFO_0_RESET_MASK _MK_MASK_CONST(0xfffffff f)
907 #define I2C_I2C_RX_FIFO_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
908 #define I2C_I2C_RX_FIFO_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
909 #define I2C_I2C_RX_FIFO_0_READ_MASK _MK_MASK_CONST(0xfffffff f)
910 #define I2C_I2C_RX_FIFO_0_WRITE_MASK _MK_MASK_CONST(0x0)
911 //SW Reads data from this register,causes pop
912 #define I2C_I2C_RX_FIFO_0_RD_DATA_SHIFT _MK_SHIFT_CONST(0)
913 #define I2C_I2C_RX_FIFO_0_RD_DATA_FIELD (_MK_MASK_CONST(0xffffff ff) << I2C_I2C_RX_FIFO_0_RD_DATA_SHIFT)
914 #define I2C_I2C_RX_FIFO_0_RD_DATA_RANGE 31:0
915 #define I2C_I2C_RX_FIFO_0_RD_DATA_WOFFSET 0x0
916 #define I2C_I2C_RX_FIFO_0_RD_DATA_DEFAULT _MK_MASK_CONST(0 x0)
917 #define I2C_I2C_RX_FIFO_0_RD_DATA_DEFAULT_MASK _MK_MASK_CONST(0 xffffffff)
918 #define I2C_I2C_RX_FIFO_0_RD_DATA_SW_DEFAULT _MK_MASK_CONST(0 x0)
919 #define I2C_I2C_RX_FIFO_0_RD_DATA_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
920
921
922 // Register I2C_PACKET_TRANSFER_STATUS_0
923 #define I2C_PACKET_TRANSFER_STATUS_0 _MK_ADDR_CONST(0x58)
924 #define I2C_PACKET_TRANSFER_STATUS_0_SECURE 0x0
925 #define I2C_PACKET_TRANSFER_STATUS_0_WORD_COUNT 0x1
926 #define I2C_PACKET_TRANSFER_STATUS_0_RESET_VAL _MK_MASK_CONST(0 x0)
927 #define I2C_PACKET_TRANSFER_STATUS_0_RESET_MASK _MK_MASK _CONST(0x1ffffff)
928 #define I2C_PACKET_TRANSFER_STATUS_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
929 #define I2C_PACKET_TRANSFER_STATUS_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
930 #define I2C_PACKET_TRANSFER_STATUS_0_READ_MASK _MK_MASK_CONST(0 x1ffffff)
931 #define I2C_PACKET_TRANSFER_STATUS_0_WRITE_MASK _MK_MASK _CONST(0x0)
932 //The packet transfer for which last packet is set has been
933 //completed
934 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_SHIFT _MK_SHIFT_CONST(24)
935 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_FIELD (_MK_MASK_CONST(0x1) << I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_SHIFT)
936 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_RANGE 24:24
937 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_WOFFSET 0x0
938 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_DEFAULT _MK_MASK_CONST(0x0)
939 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_DEFAULT_MASK _MK_MASK_CONST(0x1)
940 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_SW_DEFAULT _MK_MASK_CONST(0x0)
941 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
942 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_UNSET _MK_ENUM_CONST(0)
943 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_COMPLETE_SET _MK_ENUM_CONST(1)
944
945 //The current packet id for which the transaction is
946 //happening on the bus
947 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_SHIFT _MK_SHIFT_CONST(16)
948 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_FIELD (_MK_MASK_CONST(0xff) << I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_SHIFT)
949 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_RANGE 23:16
950 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_WOFFSET 0x0
951 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_DEFAULT _MK_MASK_CONST(0x0)
952 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_DEFAULT_MASK _MK_MASK_CONST(0xff)
953 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_SW_DEFAULT _MK_MASK_CONST(0x0)
954 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_PKT_ID_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
955
956 //The number of bytes transferred in the current packet
957 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_SHIFT _MK_SHIFT_CONST(4)
958 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_FIELD (_MK_MASK_CONST(0xfff) << I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_SHIFT)
959 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_RANGE 15:4
960 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_WOFFSET 0x0
961 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_DEFAULT _MK_MASK_CONST(0x0)
962 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_DEFAULT_MASK _MK_MASK_CONST(0xfff)
963 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_SW_DEFAULT _MK_MASK_CONST(0x0)
964 #define I2C_PACKET_TRANSFER_STATUS_0_TRANSFER_BYTENUM_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
965
966 //No ack recieved for the addr byte
967 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_SHIFT _MK_SHIFT_CONST(3)
968 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_FIELD (_MK_MASK_CONST(0x1) << I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_SHIFT)
969 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_RANGE 3:3
970 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_WOFFSET 0x0
971 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_DEFAULT _MK_MASK_CONST(0x0)
972 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_DEFAULT_MASK _MK_MASK_CONST(0x1)
973 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_SW_DEFAULT _MK_MASK_CONST(0x0)
974 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
975 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_UNSET _MK_ENUM_CONST(0)
976 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_ADDR_SET _MK_ENUM _CONST(1)
977
978 //No ack recieved for the data byte
979 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_SHIFT _MK_SHIFT_CONST(2)
980 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_FIELD (_MK_MASK_CONST(0x1) << I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_SHIFT)
981 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_RANGE 2:2
982 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_WOFFSET 0x0
983 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_DEFAULT _MK_MASK_CONST(0x0)
984 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_DEFAULT_MASK _MK_MASK_CONST(0x1)
985 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_SW_DEFAULT _MK_MASK_CONST(0x0)
986 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
987 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_UNSET _MK_ENUM_CONST(0)
988 #define I2C_PACKET_TRANSFER_STATUS_0_NOACK_FOR_DATA_SET _MK_ENUM _CONST(1)
989
990 //Arbitration lost for the current byte
991 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_SHIFT _MK_SHIF T_CONST(1)
992 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_FIELD (_MK_MAS K_CONST(0x1) << I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_SHIFT)
993 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_RANGE 1:1
994 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_WOFFSET 0x0
995 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_DEFAULT _MK_MASK _CONST(0x0)
996 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_DEFAULT_MASK _MK_MASK_CONST(0x1)
997 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_SW_DEFAULT _MK_MASK_CONST(0x0)
998 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
999 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_UNSET _MK_ENUM _CONST(0)
1000 #define I2C_PACKET_TRANSFER_STATUS_0_ARB_LOST_SET _MK_ENUM _CONST(1)
1001
1002 //1 = Controller is busy
1003 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_SHIFT _MK_SHIFT_CONST(0)
1004 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_FIELD (_MK_MASK_CONST(0x1) << I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_SHIFT)
1005 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_RANGE 0:0
1006 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_WOFFSET 0x0
1007 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_DEFAULT _MK_MASK_CONST(0x0)
1008 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_DEFAULT_MASK _MK_MASK_CONST(0x1)
1009 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_SW_DEFAULT _MK_MASK_CONST(0x0)
1010 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1011 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_UNSET _MK_ENUM_CONST(0)
1012 #define I2C_PACKET_TRANSFER_STATUS_0_CONTROLLER_BUSY_SET _MK_ENUM_CONST(1)
1013
1014
1015 // Register I2C_FIFO_CONTROL_0
1016 #define I2C_FIFO_CONTROL_0 _MK_ADDR_CONST(0x5c)
1017 #define I2C_FIFO_CONTROL_0_SECURE 0x0
1018 #define I2C_FIFO_CONTROL_0_WORD_COUNT 0x1
1019 #define I2C_FIFO_CONTROL_0_RESET_VAL _MK_MASK_CONST(0x0)
1020 #define I2C_FIFO_CONTROL_0_RESET_MASK _MK_MASK_CONST(0xff)
1021 #define I2C_FIFO_CONTROL_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
1022 #define I2C_FIFO_CONTROL_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
1023 #define I2C_FIFO_CONTROL_0_READ_MASK _MK_MASK_CONST(0xff)
1024 #define I2C_FIFO_CONTROL_0_WRITE_MASK _MK_MASK_CONST(0xff)
1025 //Transmit fifo trigger level
1026 //000 = 1 word, Dma trigger is asserted when
1027 //at least one word empty in the fifo
1028 //010 = 2 word, Dma trigger is asserted when
1029 //at least 2 words empty in the fifo
1030 #define I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_SHIFT _MK_SHIFT_CONST( 5)
1031 #define I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_FIELD (_MK_MASK_CONST( 0x7) << I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_SHIFT)
1032 #define I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_RANGE 7:5
1033 #define I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_WOFFSET 0x0
1034 #define I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_DEFAULT _MK_MASK_CONST(0 x0)
1035 #define I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_DEFAULT_MASK _MK_MASK _CONST(0x7)
1036 #define I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_SW_DEFAULT _MK_MASK _CONST(0x0)
1037 #define I2C_FIFO_CONTROL_0_TX_FIFO_TRIG_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
1038
1039 //Receive fifo trigger level
1040 //000 = 1 word Dma trigger is asserted when
1041 //at least one word full in the fifo
1042 //010 = 2 word Dma trigger is asserted when
1043 //at least 2 word full in the fifo
1044 #define I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_SHIFT _MK_SHIFT_CONST( 2)
1045 #define I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_FIELD (_MK_MASK_CONST( 0x7) << I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_SHIFT)
1046 #define I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_RANGE 4:2
1047 #define I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_WOFFSET 0x0
1048 #define I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_DEFAULT _MK_MASK_CONST(0 x0)
1049 #define I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_DEFAULT_MASK _MK_MASK _CONST(0x7)
1050 #define I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_SW_DEFAULT _MK_MASK _CONST(0x0)
1051 #define I2C_FIFO_CONTROL_0_RX_FIFO_TRIG_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
1052
1053 //1= flush the tx fifo,cleared after fifo is flushed
1054 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_SHIFT _MK_SHIFT_CONST( 1)
1055 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_FIELD (_MK_MASK_CONST( 0x1) << I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_SHIFT)
1056 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_RANGE 1:1
1057 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_WOFFSET 0x0
1058 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_DEFAULT _MK_MASK _CONST(0x0)
1059 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_DEFAULT_MASK _MK_MASK _CONST(0x1)
1060 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_SW_DEFAULT _MK_MASK _CONST(0x0)
1061 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1062 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_UNSET _MK_ENUM_CONST(0 )
1063 #define I2C_FIFO_CONTROL_0_TX_FIFO_FLUSH_SET _MK_ENUM_CONST(1 )
1064
1065 //1= flush the rx fifo,cleared after fifo is flushed
1066 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_SHIFT _MK_SHIFT_CONST( 0)
1067 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_FIELD (_MK_MASK_CONST( 0x1) << I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_SHIFT)
1068 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_RANGE 0:0
1069 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_WOFFSET 0x0
1070 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_DEFAULT _MK_MASK _CONST(0x0)
1071 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_DEFAULT_MASK _MK_MASK _CONST(0x1)
1072 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_SW_DEFAULT _MK_MASK _CONST(0x0)
1073 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1074 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_UNSET _MK_ENUM_CONST(0 )
1075 #define I2C_FIFO_CONTROL_0_RX_FIFO_FLUSH_SET _MK_ENUM_CONST(1 )
1076
1077
1078 // Register I2C_FIFO_STATUS_0
1079 #define I2C_FIFO_STATUS_0 _MK_ADDR_CONST(0x60)
1080 #define I2C_FIFO_STATUS_0_SECURE 0x0
1081 #define I2C_FIFO_STATUS_0_WORD_COUNT 0x1
1082 #define I2C_FIFO_STATUS_0_RESET_VAL _MK_MASK_CONST(0x0)
1083 #define I2C_FIFO_STATUS_0_RESET_MASK _MK_MASK_CONST(0xff)
1084 #define I2C_FIFO_STATUS_0_SW_DEFAULT_VAL _MK_MASK_CONST(0 x0)
1085 #define I2C_FIFO_STATUS_0_SW_DEFAULT_MASK _MK_MASK_CONST(0 x0)
1086 #define I2C_FIFO_STATUS_0_READ_MASK _MK_MASK_CONST(0xff)
1087 #define I2C_FIFO_STATUS_0_WRITE_MASK _MK_MASK_CONST(0x0)
1088 //The number of slots that can be written to the tx fifo
1089 //0000 = tx_fifo full
1090 //0001 = 1 slot empty
1091 //0010 = 2 slots empty
1092 #define I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_SHIFT _MK_SHIF T_CONST(4)
1093 #define I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_FIELD (_MK_MAS K_CONST(0xf) << I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_SHIFT)
1094 #define I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_RANGE 7:4
1095 #define I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_WOFFSET 0x0
1096 #define I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_DEFAULT _MK_MASK _CONST(0x0)
1097 #define I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_DEFAULT_MASK _MK_MASK_CONST(0xf)
1098 #define I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_SW_DEFAULT _MK_MASK _CONST(0x0)
1099 #define I2C_FIFO_STATUS_0_TX_FIFO_EMPTY_CNT_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1100
1101 //The number of slots to be read from the rx fifo
1102 //0000 = rx_fifo empty
1103 //0001 = 1 slot full
1104 //0010 = 2 slots full
1105 #define I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_SHIFT _MK_SHIF T_CONST(0)
1106 #define I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_FIELD (_MK_MAS K_CONST(0xf) << I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_SHIFT)
1107 #define I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_RANGE 3:0
1108 #define I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_WOFFSET 0x0
1109 #define I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_DEFAULT _MK_MASK _CONST(0x0)
1110 #define I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_DEFAULT_MASK _MK_MASK _CONST(0xf)
1111 #define I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_SW_DEFAULT _MK_MASK _CONST(0x0)
1112 #define I2C_FIFO_STATUS_0_RX_FIFO_FULL_CNT_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1113
1114
1115 // Register I2C_INTERRUPT_MASK_REGISTER_0
1116 #define I2C_INTERRUPT_MASK_REGISTER_0 _MK_ADDR_CONST(0x64)
1117 #define I2C_INTERRUPT_MASK_REGISTER_0_SECURE 0x0
1118 #define I2C_INTERRUPT_MASK_REGISTER_0_WORD_COUNT 0x1
1119 #define I2C_INTERRUPT_MASK_REGISTER_0_RESET_VAL _MK_MASK _CONST(0x0)
1120 #define I2C_INTERRUPT_MASK_REGISTER_0_RESET_MASK _MK_MASK _CONST(0x7f)
1121 #define I2C_INTERRUPT_MASK_REGISTER_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
1122 #define I2C_INTERRUPT_MASK_REGISTER_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
1123 #define I2C_INTERRUPT_MASK_REGISTER_0_READ_MASK _MK_MASK _CONST(0x7f)
1124 #define I2C_INTERRUPT_MASK_REGISTER_0_WRITE_MASK _MK_MASK _CONST(0x7f)
1125 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_SHIFT _MK_SHIFT_CONST(6)
1126 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKET S_XFER_COMPLETE_INT_EN_SHIFT)
1127 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_RANGE 6:6
1128 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_WOFFSET 0x0
1129 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_DEFAULT _MK_MASK_CONST(0x0)
1130 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_DEFAULT_M ASK _MK_MASK_CONST(0x1)
1131 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_SW_DEFAUL T _MK_MASK_CONST(0x0)
1132 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_SW_DEFAUL T_MASK _MK_MASK_CONST(0x0)
1133 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_DISABLE _MK_ENUM_CONST(0)
1134 #define I2C_INTERRUPT_MASK_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_INT_EN_ENABLE _MK_ENUM_CONST(1)
1135
1136 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_SHIFT _MK_SHIFT_CONST(5)
1137 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_SHIFT)
1138 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_RANGE 5:5
1139 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_WOFFSET 0x0
1140 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_DEFAULT _MK_MASK_CONST(0x0)
1141 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_DEFAULT_MASK _MK_MASK_CONST(0x1)
1142 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_SW_DEFAULT _MK_MASK_CONST(0x0)
1143 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1144 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_DISABLE _MK_ENUM_CONST(0)
1145 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_OVF_INT_EN_ENABLE _MK_ENUM_CONST(1)
1146
1147 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_SHIFT _MK_SHIFT_CONST(4)
1148 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_SHIFT)
1149 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_RANGE 4:4
1150 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_WOFFSET 0x0
1151 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_DEFAULT _MK_MASK_CONST(0x0)
1152 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_DEFAULT_MASK _MK_MASK_CONST(0x1)
1153 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_SW_DEFAULT _MK_MASK_CONST(0x0)
1154 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1155 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_DISABLE _MK_ENUM_CONST(0)
1156 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_UNF_INT_EN_ENABLE _MK_ENUM_CONST(1)
1157
1158 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_SHIFT _MK_SHIFT_CONST(3)
1159 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_SHIFT)
1160 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_RANGE 3:3
1161 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_WOFFSET 0x0
1162 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_DEFAULT _MK_MASK_CONST(0x0)
1163 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_DEFAULT_MASK _MK_MASK_CONST(0x1)
1164 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_SW_DEFAULT _MK_MASK_CONST(0x0)
1165 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1166 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_DISABLE _MK_ENUM_CONST(0)
1167 #define I2C_INTERRUPT_MASK_REGISTER_0_NOACK_INT_EN_ENABLE _MK_ENUM_CONST(1)
1168
1169 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_SHIFT _MK_SHIFT_CONST(2)
1170 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_SHIFT)
1171 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_RANGE 2:2
1172 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_WOFFSET 0x0
1173 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_DEFAULT _MK_MASK_CONST(0x0)
1174 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_DEFAULT_MASK _MK_MASK_CONST(0x1)
1175 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_SW_DEFAULT _MK_MASK_CONST(0x0)
1176 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1177 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_DISABLE _MK_ENUM_CONST(0)
1178 #define I2C_INTERRUPT_MASK_REGISTER_0_ARB_LOST_INT_EN_ENABLE _MK_ENUM_CONST(1)
1179
1180 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_SHIFT _MK_SHIFT_CONST(1)
1181 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT _EN_SHIFT)
1182 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_RANGE 1:1
1183 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_WOFFSET 0x0
1184 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_DEFAULT _MK_MASK_CONST(0x0)
1185 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_DEFAULT_MASK _MK_MASK_CONST(0x1)
1186 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_SW_DEFAULT _MK_MASK_CONST(0x0)
1187 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1188 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_DISABLE _MK_ENUM_CONST(0)
1189 #define I2C_INTERRUPT_MASK_REGISTER_0_TFIFO_DATA_REQ_INT_EN_ENABLE _MK_ENUM_CONST(1)
1190
1191 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_SHIFT _MK_SHIFT_CONST(0)
1192 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT _EN_SHIFT)
1193 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_RANGE 0:0
1194 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_WOFFSET 0x0
1195 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_DEFAULT _MK_MASK_CONST(0x0)
1196 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_DEFAULT_MASK _MK_MASK_CONST(0x1)
1197 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_SW_DEFAULT _MK_MASK_CONST(0x0)
1198 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1199 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_DISABLE _MK_ENUM_CONST(0)
1200 #define I2C_INTERRUPT_MASK_REGISTER_0_RFIFO_DATA_REQ_INT_EN_ENABLE _MK_ENUM_CONST(1)
1201
1202
1203 // Register I2C_INTERRUPT_STATUS_REGISTER_0 //This register indicates the statu s bit for which the interrupt is set.If set,Write 1 to clear it
1204 //However TFIFO_DATA_REQ,RFIFO_DATA_REQ fields depend on the fifo trigger levels and cannot be cleared.
1205 #define I2C_INTERRUPT_STATUS_REGISTER_0 _MK_ADDR_CONST(0x68)
1206 #define I2C_INTERRUPT_STATUS_REGISTER_0_SECURE 0x0
1207 #define I2C_INTERRUPT_STATUS_REGISTER_0_WORD_COUNT 0x1
1208 #define I2C_INTERRUPT_STATUS_REGISTER_0_RESET_VAL _MK_MASK _CONST(0x0)
1209 #define I2C_INTERRUPT_STATUS_REGISTER_0_RESET_MASK _MK_MASK _CONST(0xff)
1210 #define I2C_INTERRUPT_STATUS_REGISTER_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
1211 #define I2C_INTERRUPT_STATUS_REGISTER_0_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1212 #define I2C_INTERRUPT_STATUS_REGISTER_0_READ_MASK _MK_MASK _CONST(0xff)
1213 #define I2C_INTERRUPT_STATUS_REGISTER_0_WRITE_MASK _MK_MASK _CONST(0xff)
1214 //A packet has been transferred succesfully.
1215 //TRANSFER_PKT_ID filed can be used to know the
1216 //current byte under transfer.This bit can be
1217 //masked by the IE field in the i2c specific header
1218 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_SHIFT _MK_SHIFT_CONST(7)
1219 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMP LETE_SHIFT)
1220 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_RANGE 7:7
1221 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_WOFFSET 0x0
1222 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_DEFAULT _MK_MASK_CONST(0x0)
1223 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_DEFAULT_MASK _MK_MASK_CONST(0x1)
1224 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_SW_DEFAULT _MK_MASK_CONST(0x0)
1225 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1226 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_UNSET _MK_ENUM_CONST(0)
1227 #define I2C_INTERRUPT_STATUS_REGISTER_0_PACKET_XFER_COMPLETE_SET _MK_ENUM_CONST(1)
1228
1229 //All the packets transferred succesfully
1230 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_SHIFT _MK_SHIFT_CONST(6)
1231 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER _COMPLETE_SHIFT)
1232 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_RANGE 6:6
1233 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_WOFFSET 0x0
1234 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_DEFAULT _MK_MASK_CONST(0x0)
1235 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_DEFAULT_MASK _MK_MASK_CONST(0x1)
1236 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_SW_DEFAULT _MK_MASK_CONST(0x0)
1237 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_SW_DEFAULT_MAS K _MK_MASK_CONST(0x0)
1238 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_UNSET _MK_ENUM_CONST(0)
1239 #define I2C_INTERRUPT_STATUS_REGISTER_0_ALL_PACKETS_XFER_COMPLETE_SET _MK_ENUM_CONST(1)
1240
1241 //Tx fifo overflow
1242 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_SHIFT _MK_SHIF T_CONST(5)
1243 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_FIELD (_MK_MAS K_CONST(0x1) << I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_SHIFT)
1244 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_RANGE 5:5
1245 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_WOFFSET 0x0
1246 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_DEFAULT _MK_MASK_CONST(0x0)
1247 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_DEFAULT_MASK _MK_MASK_CONST(0x1)
1248 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_SW_DEFAULT _MK_MASK_CONST(0x0)
1249 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1250 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_UNSET _MK_ENUM _CONST(0)
1251 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_OVF_SET _MK_ENUM _CONST(1)
1252
1253 //rx fifo underflow
1254 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_SHIFT _MK_SHIF T_CONST(4)
1255 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_FIELD (_MK_MAS K_CONST(0x1) << I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_SHIFT)
1256 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_RANGE 4:4
1257 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_WOFFSET 0x0
1258 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_DEFAULT _MK_MASK_CONST(0x0)
1259 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_DEFAULT_MASK _MK_MASK_CONST(0x1)
1260 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_SW_DEFAULT _MK_MASK_CONST(0x0)
1261 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1262 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_UNSET _MK_ENUM _CONST(0)
1263 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_UNF_SET _MK_ENUM _CONST(1)
1264
1265 //No ACK from slave
1266 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_SHIFT _MK_SHIF T_CONST(3)
1267 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_FIELD (_MK_MAS K_CONST(0x1) << I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_SHIFT)
1268 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_RANGE 3:3
1269 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_WOFFSET 0x0
1270 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_DEFAULT _MK_MASK _CONST(0x0)
1271 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_DEFAULT_MASK _MK_MASK_CONST(0x1)
1272 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_SW_DEFAULT _MK_MASK_CONST(0x0)
1273 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1274 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_UNSET _MK_ENUM _CONST(0)
1275 #define I2C_INTERRUPT_STATUS_REGISTER_0_NOACK_SET _MK_ENUM _CONST(1)
1276
1277 //Arbitration lost
1278 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_SHIFT _MK_SHIF T_CONST(2)
1279 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_FIELD (_MK_MAS K_CONST(0x1) << I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_SHIFT)
1280 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_RANGE 2:2
1281 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_WOFFSET 0x0
1282 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_DEFAULT _MK_MASK_CONST(0x0)
1283 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_DEFAULT_MASK _MK_MASK_CONST(0x1)
1284 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_SW_DEFAULT _MK_MASK_CONST(0x0)
1285 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1286 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_UNSET _MK_ENUM _CONST(0)
1287 #define I2C_INTERRUPT_STATUS_REGISTER_0_ARB_LOST_SET _MK_ENUM _CONST(1)
1288
1289 //Tx fifo data req
1290 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_SHIFT _MK_SHIFT_CONST(1)
1291 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_SHIFT)
1292 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_RANGE 1:1
1293 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_WOFFSET 0x0
1294 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_DEFAULT _MK_MASK_CONST(0x0)
1295 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_DEFAULT_MASK _MK_MASK_CONST(0x1)
1296 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_SW_DEFAULT _MK_MASK_CONST(0x0)
1297 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1298 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_UNSET _MK_ENUM_CONST(0)
1299 #define I2C_INTERRUPT_STATUS_REGISTER_0_TFIFO_DATA_REQ_SET _MK_ENUM_CONST(1)
1300
1301 //rx fifo data req
1302 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_SHIFT _MK_SHIFT_CONST(0)
1303 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_FIELD (_MK_MASK_CONST(0x1) << I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_SHIFT)
1304 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_RANGE 0:0
1305 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_WOFFSET 0x0
1306 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_DEFAULT _MK_MASK_CONST(0x0)
1307 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_DEFAULT_MASK _MK_MASK_CONST(0x1)
1308 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_SW_DEFAULT _MK_MASK_CONST(0x0)
1309 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1310 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_UNSET _MK_ENUM_CONST(0)
1311 #define I2C_INTERRUPT_STATUS_REGISTER_0_RFIFO_DATA_REQ_SET _MK_ENUM_CONST(1)
1312
1313
1314 // Register I2C_I2C_CLK_DIVISOR_REGISTER_0
1315 #define I2C_I2C_CLK_DIVISOR_REGISTER_0 _MK_ADDR_CONST(0x6c)
1316 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_SECURE 0x0
1317 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_WORD_COUNT 0x1
1318 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_RESET_VAL _MK_MASK _CONST(0x0)
1319 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_RESET_MASK _MK_MASK _CONST(0xffff)
1320 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_SW_DEFAULT_VAL _MK_MASK _CONST(0x0)
1321 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_SW_DEFAULT_MASK _MK_MASK _CONST(0x0)
1322 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_READ_MASK _MK_MASK _CONST(0xffff)
1323 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_WRITE_MASK _MK_MASK _CONST(0xffff)
1324 //N= divide by n+1
1325 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISOR_HSMODE_SHIFT _MK_SHIFT_CONST(0)
1326 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISOR_HSMODE_FIELD (_MK_MASK_CONST(0xffff) << I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISO R_HSMODE_SHIFT)
1327 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISOR_HSMODE_RANGE 15:0
1328 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISOR_HSMODE_WOFFSET 0x0
1329 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISOR_HSMODE_DEFAULT _MK_MASK_CONST(0x0)
1330 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISOR_HSMODE_DEFAULT_MASK _MK_MASK_CONST(0xffff)
1331 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISOR_HSMODE_SW_DEFAULT _MK_MASK_CONST(0x0)
1332 #define I2C_I2C_CLK_DIVISOR_REGISTER_0_I2C_CLK_DIVISOR_HSMODE_SW_DEFAULT_MASK _MK_MASK_CONST(0x0)
1333
1334
1335 //
1336 // REGISTER LIST
1337 //
1338 #define LIST_ARI2C_REGS(_op_) \
1339 _op_(I2C_I2C_CNFG_0) \
1340 _op_(I2C_I2C_CMD_ADDR0_0) \
1341 _op_(I2C_I2C_CMD_ADDR1_0) \
1342 _op_(I2C_I2C_CMD_DATA1_0) \
1343 _op_(I2C_I2C_CMD_DATA2_0) \
1344 _op_(I2C_I2C_STATUS_0) \
1345 _op_(I2C_I2C_SL_CNFG_0) \
1346 _op_(I2C_I2C_SL_RCVD_0) \
1347 _op_(I2C_I2C_SL_STATUS_0) \
1348 _op_(I2C_I2C_SL_ADDR1_0) \
1349 _op_(I2C_I2C_SL_ADDR2_0) \
1350 _op_(I2C_I2C_SL_DELAY_COUNT_0) \
1351 _op_(I2C_I2C_TX_PACKET_FIFO_0) \
1352 _op_(I2C_I2C_RX_FIFO_0) \
1353 _op_(I2C_PACKET_TRANSFER_STATUS_0) \
1354 _op_(I2C_FIFO_CONTROL_0) \
1355 _op_(I2C_FIFO_STATUS_0) \
1356 _op_(I2C_INTERRUPT_MASK_REGISTER_0) \
1357 _op_(I2C_INTERRUPT_STATUS_REGISTER_0) \
1358 _op_(I2C_I2C_CLK_DIVISOR_REGISTER_0)
1359
1360
1361 //
1362 // ADDRESS SPACES
1363 //
1364
1365 #define BASE_ADDRESS_I2C 0x00000000
1366
1367 //
1368 // ARI2C REGISTER BANKS
1369 //
1370
1371 #define I2C0_FIRST_REG 0x0000 // I2C_I2C_CNFG_0
1372 #define I2C0_LAST_REG 0x0010 // I2C_I2C_CMD_DATA2_0
1373 #define I2C1_FIRST_REG 0x001c // I2C_I2C_STATUS_0
1374 #define I2C1_LAST_REG 0x0030 // I2C_I2C_SL_ADDR2_0
1375 #define I2C2_FIRST_REG 0x003c // I2C_I2C_SL_DELAY_COUNT_0
1376 #define I2C2_LAST_REG 0x003c // I2C_I2C_SL_DELAY_COUNT_0
1377 #define I2C3_FIRST_REG 0x0050 // I2C_I2C_TX_PACKET_FIFO_0
1378 #define I2C3_LAST_REG 0x006c // I2C_I2C_CLK_DIVISOR_REGISTER_0
1379
1380 #ifndef _MK_SHIFT_CONST
1381 #define _MK_SHIFT_CONST(_constant_) _constant_
1382 #endif
1383 #ifndef _MK_MASK_CONST
1384 #define _MK_MASK_CONST(_constant_) _constant_
1385 #endif
1386 #ifndef _MK_ENUM_CONST
1387 #define _MK_ENUM_CONST(_constant_) (_constant_ ## UL)
1388 #endif
1389 #ifndef _MK_ADDR_CONST
1390 #define _MK_ADDR_CONST(_constant_) _constant_
1391 #endif
1392
1393 #endif // ifndef ___ARI2C_H_INC_
OLDNEW
« no previous file with comments | « arch/arm/mach-tegra/nv/include/ap20/arfuse.h ('k') | arch/arm/mach-tegra/nv/include/ap20/armc.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698