RTEMS 6.1-rc1
reg_dcan.h
1/* The header file is generated by make_header.py from DCAN.json */
2/* Current script's version can be found at: */
3/* https://github.com/AoLaD/rtems-tms570-utils/tree/headers/headers/python */
4
5/*
6 * Copyright (c) 2014-2015, Premysl Houdek <kom541000@gmail.com>
7 *
8 * Czech Technical University in Prague
9 * Zikova 1903/4
10 * 166 36 Praha 6
11 * Czech Republic
12 *
13 * All rights reserved.
14 *
15 * Redistribution and use in source and binary forms, with or without
16 * modification, are permitted provided that the following conditions are met:
17 *
18 * 1. Redistributions of source code must retain the above copyright notice, this
19 * list of conditions and the following disclaimer.
20 * 2. Redistributions in binary form must reproduce the above copyright notice,
21 * this list of conditions and the following disclaimer in the documentation
22 * and/or other materials provided with the distribution.
23 *
24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
25 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
26 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
28 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
29 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
30 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
31 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
33 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34 *
35 * The views and conclusions contained in the software and documentation are those
36 * of the authors and should not be interpreted as representing official policies,
37 * either expressed or implied, of the FreeBSD Project.
38*/
39#ifndef LIBBSP_ARM_TMS570_DCAN
40#define LIBBSP_ARM_TMS570_DCAN
41
42#include <bsp/utility.h>
43
44typedef struct{
45 uint32_t CTL; /*CAN Control Register*/
46 uint32_t ES; /*Error and Status Register*/
47 uint32_t ERRC; /*Error Counter Register*/
48 uint32_t BTR; /*Bit Timing Register*/
49 uint32_t INT; /*Interrupt Register*/
50 uint32_t TEST; /*Test Register*/
51 uint8_t reserved1 [4];
52 uint32_t PERR; /*Parity Error Code Register*/
53 uint8_t reserved2 [96];
54 uint32_t ABOTR; /*Auto-Bus-On Time Register*/
55 uint32_t TXRQX; /*Transmission Request X Register*/
56 uint32_t TXRQx[4]; /*Transmission Request Register*/
57 uint32_t NWDATX; /*New Data X Register*/
58 uint32_t NWDATx[4]; /*New Data Register*/
59 uint32_t INTPNDX; /*Interrupt Pending X Register*/
60 uint32_t INTPNDx[4]; /*Interrupt Pending Register*/
61 uint32_t MSGVALX; /*Message Valid X Register*/
62 uint32_t MSGVALx[4]; /*Message Valid Register*/
63 uint8_t reserved3 [4];
64 uint32_t INTMUXx[4]; /*Interrupt Multiplexer Register*/
65 uint8_t reserved4 [24];
66 uint32_t IF1CMD; /*IF1 Command Register*/
67 uint32_t IF1MSK; /*IF1 Mask Register*/
68 uint32_t IF1ARB; /*IF1 Arbitration Register*/
69 uint32_t IF1MCTL; /*IF1 Message Control Register*/
70 uint32_t IF1DATA; /*IF1 Data A Register*/
71 uint32_t IF1DATB; /*IF1 Data B Register*/
72 uint8_t reserved5 [8];
73 uint32_t IF2CMD; /*IF2 Command Register*/
74 uint32_t IF2MSK; /*IF2 Mask Register*/
75 uint32_t IF2ARB; /*IF2 Arbitration Register*/
76 uint32_t IF2MCTL; /*IF2 Message Control Register*/
77 uint32_t IF2DATA; /*IF2 Data A Register*/
78 uint32_t IF2DATB; /*IF2 Data B Register*/
79 uint8_t reserved6 [8];
80 uint32_t IF3OBS; /*IF3 Observation Register*/
81 uint32_t IF3MSK; /*IF3 Mask Register*/
82 uint32_t IF3ARB; /*IF3 Arbitration Register*/
83 uint32_t IF3MCTL; /*IF3 Message Control Register*/
84 uint32_t IF3DATA; /*IF3 Data A Register*/
85 uint32_t IF3DATB; /*IF3 Data B Register*/
86 uint8_t reserved7 [8];
87 uint32_t IF3UEy[4]; /*IF3 Update Enable Register*/
88 uint8_t reserved8 [112];
89 uint32_t TIOC; /*CAN TX IO Control Register*/
90 uint32_t RIOC; /*CAN RX IO Control Register*/
92
93
94/*----------------------TMS570_DCAN_CTL----------------------*/
95/* field: WUBA - Automatic wake up on bus activity when in local power down mode */
96#define TMS570_DCAN_CTL_WUBA BSP_BIT32(25)
97
98/* field: PDR - Request for local low power down mode */
99#define TMS570_DCAN_CTL_PDR BSP_BIT32(24)
100
101/* field: DE3 - Enable DMA request line for IF3 */
102#define TMS570_DCAN_CTL_DE3 BSP_BIT32(20)
103
104/* field: DE2 - Enable DMA request line for IF2 */
105#define TMS570_DCAN_CTL_DE2 BSP_BIT32(19)
106
107/* field: DE1 - Enable DMA request line for IF1 */
108#define TMS570_DCAN_CTL_DE1 BSP_BIT32(18)
109
110/* field: IE1 - Interrupt line 1 Enable */
111#define TMS570_DCAN_CTL_IE1 BSP_BIT32(17)
112
113/* field: InitDbg - Internal Init state while debug access */
114#define TMS570_DCAN_CTL_InitDbg BSP_BIT32(16)
115
116/* field: SWR - SW Reset Enable */
117#define TMS570_DCAN_CTL_SWR BSP_BIT32(15)
118
119/* field: PMD - Parity on/off */
120#define TMS570_DCAN_CTL_PMD(val) BSP_FLD32(val,10, 13)
121#define TMS570_DCAN_CTL_PMD_GET(reg) BSP_FLD32GET(reg,10, 13)
122#define TMS570_DCAN_CTL_PMD_SET(reg,val) BSP_FLD32SET(reg, val,10, 13)
123
124/* field: ABO - Auto-Bus-On Enable */
125#define TMS570_DCAN_CTL_ABO BSP_BIT32(9)
126
127/* field: IDS - Interruption Debug Support Enable */
128#define TMS570_DCAN_CTL_IDS BSP_BIT32(8)
129
130/* field: Test - Test Mode Enable */
131#define TMS570_DCAN_CTL_Test BSP_BIT32(7)
132
133/* field: CCE - Configuration Change Enable */
134#define TMS570_DCAN_CTL_CCE BSP_BIT32(6)
135
136/* field: DAR - Disable Automatic Retransmission */
137#define TMS570_DCAN_CTL_DAR BSP_BIT32(5)
138
139/* field: EIE - Error Interrupt Enable */
140#define TMS570_DCAN_CTL_EIE BSP_BIT32(3)
141
142/* field: SIE - Status Change Interrupt Enable */
143#define TMS570_DCAN_CTL_SIE BSP_BIT32(2)
144
145/* field: IE0 - Interrupt line 0 Enable */
146#define TMS570_DCAN_CTL_IE0 BSP_BIT32(1)
147
148/* field: Init - Initialization */
149#define TMS570_DCAN_CTL_Init BSP_BIT32(0)
150
151
152/*-----------------------TMS570_DCAN_ES-----------------------*/
153/* field: PDA - Local power down mode acknowledge */
154#define TMS570_DCAN_ES_PDA BSP_BIT32(10)
155
156/* field: WakeUp_Pnd - Wake Up Pending */
157#define TMS570_DCAN_ES_WakeUp_Pnd BSP_BIT32(9)
158
159/* field: PER - Parity Error Detected */
160#define TMS570_DCAN_ES_PER BSP_BIT32(8)
161
162/* field: BOff - Bus-Off State */
163#define TMS570_DCAN_ES_BOff BSP_BIT32(7)
164
165/* field: EWarn - Warning State */
166#define TMS570_DCAN_ES_EWarn BSP_BIT32(6)
167
168/* field: EPass - Error Passive State */
169#define TMS570_DCAN_ES_EPass BSP_BIT32(5)
170
171/* field: RxOK - Received a message successfully */
172#define TMS570_DCAN_ES_RxOK BSP_BIT32(4)
173
174/* field: TxOK - Transmitted a message successfully */
175#define TMS570_DCAN_ES_TxOK BSP_BIT32(3)
176
177/* field: LEC - Last Error Code */
178#define TMS570_DCAN_ES_LEC(val) BSP_FLD32(val,0, 2)
179#define TMS570_DCAN_ES_LEC_GET(reg) BSP_FLD32GET(reg,0, 2)
180#define TMS570_DCAN_ES_LEC_SET(reg,val) BSP_FLD32SET(reg, val,0, 2)
181
182
183/*----------------------TMS570_DCAN_ERRC----------------------*/
184/* field: RP - Receive Error Passive */
185#define TMS570_DCAN_ERRC_RP BSP_BIT32(15)
186
187/* field: REC - Receive Error Counter. Actual state of the Receive Error Counter. (values from 0 to 255). */
188#define TMS570_DCAN_ERRC_REC(val) BSP_FLD32(val,8, 14)
189#define TMS570_DCAN_ERRC_REC_GET(reg) BSP_FLD32GET(reg,8, 14)
190#define TMS570_DCAN_ERRC_REC_SET(reg,val) BSP_FLD32SET(reg, val,8, 14)
191
192/* field: TEC - Transmit Error Counter. Actual state of the Transmit Error Counter. (values from 0 to 255). */
193#define TMS570_DCAN_ERRC_TEC(val) BSP_FLD32(val,0, 7)
194#define TMS570_DCAN_ERRC_TEC_GET(reg) BSP_FLD32GET(reg,0, 7)
195#define TMS570_DCAN_ERRC_TEC_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
196
197
198/*----------------------TMS570_DCAN_BTR----------------------*/
199/* field: BRPE - Baud Rate Prescaler Extension. */
200#define TMS570_DCAN_BTR_BRPE(val) BSP_FLD32(val,16, 19)
201#define TMS570_DCAN_BTR_BRPE_GET(reg) BSP_FLD32GET(reg,16, 19)
202#define TMS570_DCAN_BTR_BRPE_SET(reg,val) BSP_FLD32SET(reg, val,16, 19)
203
204/* field: TSeg2 - Time segment after the sample point */
205#define TMS570_DCAN_BTR_TSeg2(val) BSP_FLD32(val,12, 14)
206#define TMS570_DCAN_BTR_TSeg2_GET(reg) BSP_FLD32GET(reg,12, 14)
207#define TMS570_DCAN_BTR_TSeg2_SET(reg,val) BSP_FLD32SET(reg, val,12, 14)
208
209/* field: TSeg1 - Time segment before the sample point */
210#define TMS570_DCAN_BTR_TSeg1(val) BSP_FLD32(val,8, 11)
211#define TMS570_DCAN_BTR_TSeg1_GET(reg) BSP_FLD32GET(reg,8, 11)
212#define TMS570_DCAN_BTR_TSeg1_SET(reg,val) BSP_FLD32SET(reg, val,8, 11)
213
214/* field: SJW - Synchronization Jump Width */
215#define TMS570_DCAN_BTR_SJW(val) BSP_FLD32(val,6, 7)
216#define TMS570_DCAN_BTR_SJW_GET(reg) BSP_FLD32GET(reg,6, 7)
217#define TMS570_DCAN_BTR_SJW_SET(reg,val) BSP_FLD32SET(reg, val,6, 7)
218
219/* field: BRP - Baud Rate Prescaler */
220#define TMS570_DCAN_BTR_BRP(val) BSP_FLD32(val,0, 5)
221#define TMS570_DCAN_BTR_BRP_GET(reg) BSP_FLD32GET(reg,0, 5)
222#define TMS570_DCAN_BTR_BRP_SET(reg,val) BSP_FLD32SET(reg, val,0, 5)
223
224
225/*----------------------TMS570_DCAN_INT----------------------*/
226/* field: Int1ID - Interrupt 1 Identifier (indicates the message object with the highest pending interrupt) */
227#define TMS570_DCAN_INT_Int1ID(val) BSP_FLD32(val,16, 23)
228#define TMS570_DCAN_INT_Int1ID_GET(reg) BSP_FLD32GET(reg,16, 23)
229#define TMS570_DCAN_INT_Int1ID_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
230
231/* field: Int0ID - Interrupt Identifier (the number here indicates the source of the interrupt) */
232#define TMS570_DCAN_INT_Int0ID(val) BSP_FLD32(val,0, 15)
233#define TMS570_DCAN_INT_Int0ID_GET(reg) BSP_FLD32GET(reg,0, 15)
234#define TMS570_DCAN_INT_Int0ID_SET(reg,val) BSP_FLD32SET(reg, val,0, 15)
235
236
237/*----------------------TMS570_DCAN_TEST----------------------*/
238/* field: RDA - RAM Direct Access Enable */
239#define TMS570_DCAN_TEST_RDA BSP_BIT32(9)
240
241/* field: EXL - External Loop Back Mode */
242#define TMS570_DCAN_TEST_EXL BSP_BIT32(8)
243
244/* field: Rx - Receive Pin. Monitors the actual value of the CAN_RX pin. */
245#define TMS570_DCAN_TEST_Rx BSP_BIT32(7)
246
247/* field: Tx - Control of CAN_TX pin */
248#define TMS570_DCAN_TEST_Tx(val) BSP_FLD32(val,5, 6)
249#define TMS570_DCAN_TEST_Tx_GET(reg) BSP_FLD32GET(reg,5, 6)
250#define TMS570_DCAN_TEST_Tx_SET(reg,val) BSP_FLD32SET(reg, val,5, 6)
251
252/* field: LBack - Loop Back Mode */
253#define TMS570_DCAN_TEST_LBack BSP_BIT32(4)
254
255/* field: Silent - Silent Mode */
256#define TMS570_DCAN_TEST_Silent BSP_BIT32(3)
257
258
259/*----------------------TMS570_DCAN_PERR----------------------*/
260/* field: Word_Number - Word number where parity error has been detected */
261#define TMS570_DCAN_PERR_Word_Number(val) BSP_FLD32(val,8, 10)
262#define TMS570_DCAN_PERR_Word_Number_GET(reg) BSP_FLD32GET(reg,8, 10)
263#define TMS570_DCAN_PERR_Word_Number_SET(reg,val) BSP_FLD32SET(reg, val,8, 10)
264
265/* field: Message_Number - */
266#define TMS570_DCAN_PERR_Message_Number(val) BSP_FLD32(val,0, 7)
267#define TMS570_DCAN_PERR_Message_Number_GET(reg) BSP_FLD32GET(reg,0, 7)
268#define TMS570_DCAN_PERR_Message_Number_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
269
270
271/*---------------------TMS570_DCAN_ABOTR---------------------*/
272/* field: ABO_Time - Number of VBUS clock cycles before a Bus-Off recovery sequence is */
273/* Whole 32 bits */
274
275/*---------------------TMS570_DCAN_TXRQX---------------------*/
276/* field: TxRqstReg8 - TxRqstReg8 */
277#define TMS570_DCAN_TXRQX_TxRqstReg8(val) BSP_FLD32(val,14, 15)
278#define TMS570_DCAN_TXRQX_TxRqstReg8_GET(reg) BSP_FLD32GET(reg,14, 15)
279#define TMS570_DCAN_TXRQX_TxRqstReg8_SET(reg,val) BSP_FLD32SET(reg, val,14, 15)
280
281/* field: TxRqstReg7 - TxRqstReg8 */
282#define TMS570_DCAN_TXRQX_TxRqstReg7(val) BSP_FLD32(val,12, 13)
283#define TMS570_DCAN_TXRQX_TxRqstReg7_GET(reg) BSP_FLD32GET(reg,12, 13)
284#define TMS570_DCAN_TXRQX_TxRqstReg7_SET(reg,val) BSP_FLD32SET(reg, val,12, 13)
285
286/* field: TxRqstReg6 - TxRqstReg8 */
287#define TMS570_DCAN_TXRQX_TxRqstReg6(val) BSP_FLD32(val,10, 11)
288#define TMS570_DCAN_TXRQX_TxRqstReg6_GET(reg) BSP_FLD32GET(reg,10, 11)
289#define TMS570_DCAN_TXRQX_TxRqstReg6_SET(reg,val) BSP_FLD32SET(reg, val,10, 11)
290
291/* field: TxRqstReg5 - TxRqstReg8 */
292#define TMS570_DCAN_TXRQX_TxRqstReg5(val) BSP_FLD32(val,8, 9)
293#define TMS570_DCAN_TXRQX_TxRqstReg5_GET(reg) BSP_FLD32GET(reg,8, 9)
294#define TMS570_DCAN_TXRQX_TxRqstReg5_SET(reg,val) BSP_FLD32SET(reg, val,8, 9)
295
296/* field: TxRqstReg4 - TxRqstReg8 */
297#define TMS570_DCAN_TXRQX_TxRqstReg4(val) BSP_FLD32(val,6, 7)
298#define TMS570_DCAN_TXRQX_TxRqstReg4_GET(reg) BSP_FLD32GET(reg,6, 7)
299#define TMS570_DCAN_TXRQX_TxRqstReg4_SET(reg,val) BSP_FLD32SET(reg, val,6, 7)
300
301/* field: TxRqstReg3 - TxRqstReg8 */
302#define TMS570_DCAN_TXRQX_TxRqstReg3(val) BSP_FLD32(val,4, 5)
303#define TMS570_DCAN_TXRQX_TxRqstReg3_GET(reg) BSP_FLD32GET(reg,4, 5)
304#define TMS570_DCAN_TXRQX_TxRqstReg3_SET(reg,val) BSP_FLD32SET(reg, val,4, 5)
305
306/* field: TxRqstReg2 - TxRqstReg8 */
307#define TMS570_DCAN_TXRQX_TxRqstReg2(val) BSP_FLD32(val,2, 3)
308#define TMS570_DCAN_TXRQX_TxRqstReg2_GET(reg) BSP_FLD32GET(reg,2, 3)
309#define TMS570_DCAN_TXRQX_TxRqstReg2_SET(reg,val) BSP_FLD32SET(reg, val,2, 3)
310
311/* field: TxRqstReg1 - TxRqstReg8 */
312#define TMS570_DCAN_TXRQX_TxRqstReg1(val) BSP_FLD32(val,0, 1)
313#define TMS570_DCAN_TXRQX_TxRqstReg1_GET(reg) BSP_FLD32GET(reg,0, 1)
314#define TMS570_DCAN_TXRQX_TxRqstReg1_SET(reg,val) BSP_FLD32SET(reg, val,0, 1)
315
316
317/*---------------------TMS570_DCAN_TXRQx---------------------*/
318/* field: TxRqsX - Transmission Request Bits (for all message objects) */
319/* Whole 32 bits */
320
321/*---------------------TMS570_DCAN_NWDATX---------------------*/
322/* field: NewDatReg8 - TxRqstReg8 */
323#define TMS570_DCAN_NWDATX_NewDatReg8(val) BSP_FLD32(val,14, 15)
324#define TMS570_DCAN_NWDATX_NewDatReg8_GET(reg) BSP_FLD32GET(reg,14, 15)
325#define TMS570_DCAN_NWDATX_NewDatReg8_SET(reg,val) BSP_FLD32SET(reg, val,14, 15)
326
327/* field: NewDatReg7 - TxRqstReg8 */
328#define TMS570_DCAN_NWDATX_NewDatReg7(val) BSP_FLD32(val,12, 13)
329#define TMS570_DCAN_NWDATX_NewDatReg7_GET(reg) BSP_FLD32GET(reg,12, 13)
330#define TMS570_DCAN_NWDATX_NewDatReg7_SET(reg,val) BSP_FLD32SET(reg, val,12, 13)
331
332/* field: NewDatReg6 - TxRqstReg8 */
333#define TMS570_DCAN_NWDATX_NewDatReg6(val) BSP_FLD32(val,10, 11)
334#define TMS570_DCAN_NWDATX_NewDatReg6_GET(reg) BSP_FLD32GET(reg,10, 11)
335#define TMS570_DCAN_NWDATX_NewDatReg6_SET(reg,val) BSP_FLD32SET(reg, val,10, 11)
336
337/* field: NewDatReg5 - TxRqstReg8 */
338#define TMS570_DCAN_NWDATX_NewDatReg5(val) BSP_FLD32(val,8, 9)
339#define TMS570_DCAN_NWDATX_NewDatReg5_GET(reg) BSP_FLD32GET(reg,8, 9)
340#define TMS570_DCAN_NWDATX_NewDatReg5_SET(reg,val) BSP_FLD32SET(reg, val,8, 9)
341
342/* field: NewDatReg4 - TxRqstReg8 */
343#define TMS570_DCAN_NWDATX_NewDatReg4(val) BSP_FLD32(val,6, 7)
344#define TMS570_DCAN_NWDATX_NewDatReg4_GET(reg) BSP_FLD32GET(reg,6, 7)
345#define TMS570_DCAN_NWDATX_NewDatReg4_SET(reg,val) BSP_FLD32SET(reg, val,6, 7)
346
347/* field: NewDatReg3 - TxRqstReg8 */
348#define TMS570_DCAN_NWDATX_NewDatReg3(val) BSP_FLD32(val,4, 5)
349#define TMS570_DCAN_NWDATX_NewDatReg3_GET(reg) BSP_FLD32GET(reg,4, 5)
350#define TMS570_DCAN_NWDATX_NewDatReg3_SET(reg,val) BSP_FLD32SET(reg, val,4, 5)
351
352/* field: NewDatReg2 - TxRqstReg8 */
353#define TMS570_DCAN_NWDATX_NewDatReg2(val) BSP_FLD32(val,2, 3)
354#define TMS570_DCAN_NWDATX_NewDatReg2_GET(reg) BSP_FLD32GET(reg,2, 3)
355#define TMS570_DCAN_NWDATX_NewDatReg2_SET(reg,val) BSP_FLD32SET(reg, val,2, 3)
356
357/* field: NewDatReg1 - TxRqstReg8 */
358#define TMS570_DCAN_NWDATX_NewDatReg1(val) BSP_FLD32(val,0, 1)
359#define TMS570_DCAN_NWDATX_NewDatReg1_GET(reg) BSP_FLD32GET(reg,0, 1)
360#define TMS570_DCAN_NWDATX_NewDatReg1_SET(reg,val) BSP_FLD32SET(reg, val,0, 1)
361
362
363/*---------------------TMS570_DCAN_NWDATx---------------------*/
364/* field: NewDatX - New Data Bits (for all message objects) */
365/* Whole 32 bits */
366
367/*--------------------TMS570_DCAN_INTPNDX--------------------*/
368/* field: IntPndReg8 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Interrupt Pending X Register will be set. */
369#define TMS570_DCAN_INTPNDX_IntPndReg8(val) BSP_FLD32(val,14, 15)
370#define TMS570_DCAN_INTPNDX_IntPndReg8_GET(reg) BSP_FLD32GET(reg,14, 15)
371#define TMS570_DCAN_INTPNDX_IntPndReg8_SET(reg,val) BSP_FLD32SET(reg, val,14, 15)
372
373/* field: IntPndReg7 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Interrupt Pending X Register will be set. */
374#define TMS570_DCAN_INTPNDX_IntPndReg7(val) BSP_FLD32(val,12, 13)
375#define TMS570_DCAN_INTPNDX_IntPndReg7_GET(reg) BSP_FLD32GET(reg,12, 13)
376#define TMS570_DCAN_INTPNDX_IntPndReg7_SET(reg,val) BSP_FLD32SET(reg, val,12, 13)
377
378/* field: IntPndReg6 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Interrupt Pending X Register will be set. */
379#define TMS570_DCAN_INTPNDX_IntPndReg6(val) BSP_FLD32(val,10, 11)
380#define TMS570_DCAN_INTPNDX_IntPndReg6_GET(reg) BSP_FLD32GET(reg,10, 11)
381#define TMS570_DCAN_INTPNDX_IntPndReg6_SET(reg,val) BSP_FLD32SET(reg, val,10, 11)
382
383/* field: IntPndReg5 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Interrupt Pending X Register will be set. */
384#define TMS570_DCAN_INTPNDX_IntPndReg5(val) BSP_FLD32(val,8, 9)
385#define TMS570_DCAN_INTPNDX_IntPndReg5_GET(reg) BSP_FLD32GET(reg,8, 9)
386#define TMS570_DCAN_INTPNDX_IntPndReg5_SET(reg,val) BSP_FLD32SET(reg, val,8, 9)
387
388/* field: IntPndReg4 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Interrupt Pending X Register will be set. */
389#define TMS570_DCAN_INTPNDX_IntPndReg4(val) BSP_FLD32(val,6, 7)
390#define TMS570_DCAN_INTPNDX_IntPndReg4_GET(reg) BSP_FLD32GET(reg,6, 7)
391#define TMS570_DCAN_INTPNDX_IntPndReg4_SET(reg,val) BSP_FLD32SET(reg, val,6, 7)
392
393/* field: IntPndReg3 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Interrupt Pending X Register will be set. */
394#define TMS570_DCAN_INTPNDX_IntPndReg3(val) BSP_FLD32(val,4, 5)
395#define TMS570_DCAN_INTPNDX_IntPndReg3_GET(reg) BSP_FLD32GET(reg,4, 5)
396#define TMS570_DCAN_INTPNDX_IntPndReg3_SET(reg,val) BSP_FLD32SET(reg, val,4, 5)
397
398/* field: IntPndReg2 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Interrupt Pending X Register will be set. */
399#define TMS570_DCAN_INTPNDX_IntPndReg2(val) BSP_FLD32(val,2, 3)
400#define TMS570_DCAN_INTPNDX_IntPndReg2_GET(reg) BSP_FLD32GET(reg,2, 3)
401#define TMS570_DCAN_INTPNDX_IntPndReg2_SET(reg,val) BSP_FLD32SET(reg, val,2, 3)
402
403/* field: IntPndReg1 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Interrupt Pending X Register will be set. */
404#define TMS570_DCAN_INTPNDX_IntPndReg1(val) BSP_FLD32(val,0, 1)
405#define TMS570_DCAN_INTPNDX_IntPndReg1_GET(reg) BSP_FLD32GET(reg,0, 1)
406#define TMS570_DCAN_INTPNDX_IntPndReg1_SET(reg,val) BSP_FLD32SET(reg, val,0, 1)
407
408
409/*--------------------TMS570_DCAN_INTPNDx--------------------*/
410/* field: IntPndX - Interrupt Pending Bits (for all message objects) */
411/* Whole 32 bits */
412
413/*--------------------TMS570_DCAN_MSGVALX--------------------*/
414/* field: MsgValReg8 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Message Valid X Register will be set. */
415#define TMS570_DCAN_MSGVALX_MsgValReg8(val) BSP_FLD32(val,14, 15)
416#define TMS570_DCAN_MSGVALX_MsgValReg8_GET(reg) BSP_FLD32GET(reg,14, 15)
417#define TMS570_DCAN_MSGVALX_MsgValReg8_SET(reg,val) BSP_FLD32SET(reg, val,14, 15)
418
419/* field: MsgValReg7 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Message Valid X Register will be set. */
420#define TMS570_DCAN_MSGVALX_MsgValReg7(val) BSP_FLD32(val,12, 13)
421#define TMS570_DCAN_MSGVALX_MsgValReg7_GET(reg) BSP_FLD32GET(reg,12, 13)
422#define TMS570_DCAN_MSGVALX_MsgValReg7_SET(reg,val) BSP_FLD32SET(reg, val,12, 13)
423
424/* field: MsgValReg6 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Message Valid X Register will be set. */
425#define TMS570_DCAN_MSGVALX_MsgValReg6(val) BSP_FLD32(val,10, 11)
426#define TMS570_DCAN_MSGVALX_MsgValReg6_GET(reg) BSP_FLD32GET(reg,10, 11)
427#define TMS570_DCAN_MSGVALX_MsgValReg6_SET(reg,val) BSP_FLD32SET(reg, val,10, 11)
428
429/* field: MsgValReg5 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Message Valid X Register will be set. */
430#define TMS570_DCAN_MSGVALX_MsgValReg5(val) BSP_FLD32(val,8, 9)
431#define TMS570_DCAN_MSGVALX_MsgValReg5_GET(reg) BSP_FLD32GET(reg,8, 9)
432#define TMS570_DCAN_MSGVALX_MsgValReg5_SET(reg,val) BSP_FLD32SET(reg, val,8, 9)
433
434/* field: MsgValReg4 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Message Valid X Register will be set. */
435#define TMS570_DCAN_MSGVALX_MsgValReg4(val) BSP_FLD32(val,6, 7)
436#define TMS570_DCAN_MSGVALX_MsgValReg4_GET(reg) BSP_FLD32GET(reg,6, 7)
437#define TMS570_DCAN_MSGVALX_MsgValReg4_SET(reg,val) BSP_FLD32SET(reg, val,6, 7)
438
439/* field: MsgValReg3 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Message Valid X Register will be set. */
440#define TMS570_DCAN_MSGVALX_MsgValReg3(val) BSP_FLD32(val,4, 5)
441#define TMS570_DCAN_MSGVALX_MsgValReg3_GET(reg) BSP_FLD32GET(reg,4, 5)
442#define TMS570_DCAN_MSGVALX_MsgValReg3_SET(reg,val) BSP_FLD32SET(reg, val,4, 5)
443
444/* field: MsgValReg2 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Message Valid X Register will be set. */
445#define TMS570_DCAN_MSGVALX_MsgValReg2(val) BSP_FLD32(val,2, 3)
446#define TMS570_DCAN_MSGVALX_MsgValReg2_GET(reg) BSP_FLD32GET(reg,2, 3)
447#define TMS570_DCAN_MSGVALX_MsgValReg2_SET(reg,val) BSP_FLD32SET(reg, val,2, 3)
448
449/* field: MsgValReg1 - If at least one of the IntPnd bits of these message objects are set, the corresponding bit in the Message Valid X Register will be set. */
450#define TMS570_DCAN_MSGVALX_MsgValReg1(val) BSP_FLD32(val,0, 1)
451#define TMS570_DCAN_MSGVALX_MsgValReg1_GET(reg) BSP_FLD32GET(reg,0, 1)
452#define TMS570_DCAN_MSGVALX_MsgValReg1_SET(reg,val) BSP_FLD32SET(reg, val,0, 1)
453
454
455/*--------------------TMS570_DCAN_MSGVALx--------------------*/
456/* field: MsgVal1To32 - Message Valid Bits (for all message objects) */
457/* Whole 32 bits */
458
459/*--------------------TMS570_DCAN_INTMUXx--------------------*/
460/* field: IntMux1To32 - Multiplexes IntPnd value to either DCAN0INT or DCAN1INT interrupt lines. */
461/* Whole 32 bits */
462
463/*---------------------TMS570_DCAN_IF1CMD---------------------*/
464/* field: WR_RD - Write/Read */
465#define TMS570_DCAN_IF1CMD_WR_RD BSP_BIT32(23)
466
467/* field: Mask - Access Mask bits */
468#define TMS570_DCAN_IF1CMD_Mask BSP_BIT32(22)
469
470/* field: Arb - Access Arbitration bits */
471#define TMS570_DCAN_IF1CMD_Arb BSP_BIT32(21)
472
473/* field: Control - Access Control bits */
474#define TMS570_DCAN_IF1CMD_Control BSP_BIT32(20)
475
476/* field: ClrIntPnd - Clear Interrupt Pending bit */
477#define TMS570_DCAN_IF1CMD_ClrIntPnd BSP_BIT32(19)
478
479/* field: TxRqst_NewDat - Access Transmission Request bit */
480#define TMS570_DCAN_IF1CMD_TxRqst_NewDat BSP_BIT32(18)
481
482/* field: Data_A - Access Data Bytes 0-3 */
483#define TMS570_DCAN_IF1CMD_Data_A BSP_BIT32(17)
484
485/* field: Data_B - Access Data Bytes 4-7 */
486#define TMS570_DCAN_IF1CMD_Data_B BSP_BIT32(16)
487
488/* field: Busy - Busy flag */
489#define TMS570_DCAN_IF1CMD_Busy BSP_BIT32(15)
490
491/* field: DMA_Active - Activation of DMA feature for subsequent internal IF1/IF2 update */
492#define TMS570_DCAN_IF1CMD_DMA_Active BSP_BIT32(14)
493
494/* field: Message_Number - Number of message object in Message RAM that is used for data transfer */
495#define TMS570_DCAN_IF1CMD_Message_Number(val) BSP_FLD32(val,0, 7)
496#define TMS570_DCAN_IF1CMD_Message_Number_GET(reg) BSP_FLD32GET(reg,0, 7)
497#define TMS570_DCAN_IF1CMD_Message_Number_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
498
499
500/*---------------------TMS570_DCAN_IF1MSK---------------------*/
501/* field: MXtd - Mask Extended Identifier */
502#define TMS570_DCAN_IF1MSK_MXtd BSP_BIT32(31)
503
504/* field: MDir - Mask Message Direction */
505#define TMS570_DCAN_IF1MSK_MDir BSP_BIT32(30)
506
507/* field: Msk - Identifier Mask */
508#define TMS570_DCAN_IF1MSK_Msk(val) BSP_FLD32(val,0, 28)
509#define TMS570_DCAN_IF1MSK_Msk_GET(reg) BSP_FLD32GET(reg,0, 28)
510#define TMS570_DCAN_IF1MSK_Msk_SET(reg,val) BSP_FLD32SET(reg, val,0, 28)
511
512
513/*---------------------TMS570_DCAN_IF1ARB---------------------*/
514/* field: MsgVal - Message Valid */
515#define TMS570_DCAN_IF1ARB_MsgVal BSP_BIT32(31)
516
517/* field: Xtd - Extended Identifier */
518#define TMS570_DCAN_IF1ARB_Xtd BSP_BIT32(30)
519
520/* field: Dir - Message direction */
521#define TMS570_DCAN_IF1ARB_Dir BSP_BIT32(29)
522
523/* field: ID - Message Identifier */
524#define TMS570_DCAN_IF1ARB_ID(val) BSP_FLD32(val,0, 28)
525#define TMS570_DCAN_IF1ARB_ID_GET(reg) BSP_FLD32GET(reg,0, 28)
526#define TMS570_DCAN_IF1ARB_ID_SET(reg,val) BSP_FLD32SET(reg, val,0, 28)
527
528
529/*--------------------TMS570_DCAN_IF1MCTL--------------------*/
530/* field: NewDat - New Data */
531#define TMS570_DCAN_IF1MCTL_NewDat BSP_BIT32(15)
532
533/* field: MsgLst - Message Lost (only valid for message objects with direction = receive) */
534#define TMS570_DCAN_IF1MCTL_MsgLst BSP_BIT32(14)
535
536/* field: IntPnd - Interrupt Pending */
537#define TMS570_DCAN_IF1MCTL_IntPnd BSP_BIT32(13)
538
539/* field: UMask - Use Acceptance Mask */
540#define TMS570_DCAN_IF1MCTL_UMask BSP_BIT32(12)
541
542/* field: TxIE - Transmit Interrupt Enable */
543#define TMS570_DCAN_IF1MCTL_TxIE BSP_BIT32(11)
544
545/* field: RxIE - Receive Interrupt Enable */
546#define TMS570_DCAN_IF1MCTL_RxIE BSP_BIT32(10)
547
548/* field: RmtEn - Remote Enable */
549#define TMS570_DCAN_IF1MCTL_RmtEn BSP_BIT32(9)
550
551/* field: TxRqst - Transmit Request */
552#define TMS570_DCAN_IF1MCTL_TxRqst BSP_BIT32(8)
553
554/* field: EoB - Data Frame has 0-8 data bits */
555#define TMS570_DCAN_IF1MCTL_EoB BSP_BIT32(7)
556
557/* field: DLC - Data Length Code */
558#define TMS570_DCAN_IF1MCTL_DLC(val) BSP_FLD32(val,0, 3)
559#define TMS570_DCAN_IF1MCTL_DLC_GET(reg) BSP_FLD32GET(reg,0, 3)
560#define TMS570_DCAN_IF1MCTL_DLC_SET(reg,val) BSP_FLD32SET(reg, val,0, 3)
561
562
563/*--------------------TMS570_DCAN_IF1DATA--------------------*/
564/* field: Data0 - Data 0 */
565#define TMS570_DCAN_IF1DATA_Data0(val) BSP_FLD32(val,0, 7)
566#define TMS570_DCAN_IF1DATA_Data0_GET(reg) BSP_FLD32GET(reg,0, 7)
567#define TMS570_DCAN_IF1DATA_Data0_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
568
569/* field: Data1 - Data 1 */
570#define TMS570_DCAN_IF1DATA_Data1(val) BSP_FLD32(val,8, 15)
571#define TMS570_DCAN_IF1DATA_Data1_GET(reg) BSP_FLD32GET(reg,8, 15)
572#define TMS570_DCAN_IF1DATA_Data1_SET(reg,val) BSP_FLD32SET(reg, val,8, 15)
573
574/* field: Data2 - Data 2 */
575#define TMS570_DCAN_IF1DATA_Data2(val) BSP_FLD32(val,16, 23)
576#define TMS570_DCAN_IF1DATA_Data2_GET(reg) BSP_FLD32GET(reg,16, 23)
577#define TMS570_DCAN_IF1DATA_Data2_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
578
579/* field: Data3 - Data 3 */
580#define TMS570_DCAN_IF1DATA_Data3(val) BSP_FLD32(val,24, 31)
581#define TMS570_DCAN_IF1DATA_Data3_GET(reg) BSP_FLD32GET(reg,24, 31)
582#define TMS570_DCAN_IF1DATA_Data3_SET(reg,val) BSP_FLD32SET(reg, val,24, 31)
583
584
585/*--------------------TMS570_DCAN_IF1DATB--------------------*/
586/* field: Data4 - Data 4 */
587#define TMS570_DCAN_IF1DATB_Data4(val) BSP_FLD32(val,0, 7)
588#define TMS570_DCAN_IF1DATB_Data4_GET(reg) BSP_FLD32GET(reg,0, 7)
589#define TMS570_DCAN_IF1DATB_Data4_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
590
591/* field: Data5 - Data 5 */
592#define TMS570_DCAN_IF1DATB_Data5(val) BSP_FLD32(val,8, 15)
593#define TMS570_DCAN_IF1DATB_Data5_GET(reg) BSP_FLD32GET(reg,8, 15)
594#define TMS570_DCAN_IF1DATB_Data5_SET(reg,val) BSP_FLD32SET(reg, val,8, 15)
595
596/* field: Data6 - Data 6 */
597#define TMS570_DCAN_IF1DATB_Data6(val) BSP_FLD32(val,16, 23)
598#define TMS570_DCAN_IF1DATB_Data6_GET(reg) BSP_FLD32GET(reg,16, 23)
599#define TMS570_DCAN_IF1DATB_Data6_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
600
601/* field: Data7 - Data 7 */
602#define TMS570_DCAN_IF1DATB_Data7(val) BSP_FLD32(val,24, 31)
603#define TMS570_DCAN_IF1DATB_Data7_GET(reg) BSP_FLD32GET(reg,24, 31)
604#define TMS570_DCAN_IF1DATB_Data7_SET(reg,val) BSP_FLD32SET(reg, val,24, 31)
605
606
607/*---------------------TMS570_DCAN_IF2CMD---------------------*/
608/* field: WR_RD - Write/Read */
609#define TMS570_DCAN_IF2CMD_WR_RD BSP_BIT32(23)
610
611/* field: Mask - Access Mask bits */
612#define TMS570_DCAN_IF2CMD_Mask BSP_BIT32(22)
613
614/* field: Arb - Access Arbitration bits */
615#define TMS570_DCAN_IF2CMD_Arb BSP_BIT32(21)
616
617/* field: Control - Access Control bits */
618#define TMS570_DCAN_IF2CMD_Control BSP_BIT32(20)
619
620/* field: ClrIntPnd - Clear Interrupt Pending bit */
621#define TMS570_DCAN_IF2CMD_ClrIntPnd BSP_BIT32(19)
622
623/* field: TxRqst_NewDat - Access Transmission Request bit */
624#define TMS570_DCAN_IF2CMD_TxRqst_NewDat BSP_BIT32(18)
625
626/* field: Data_A - Access Data Bytes 0-3 */
627#define TMS570_DCAN_IF2CMD_Data_A BSP_BIT32(17)
628
629/* field: Data_B - Access Data Bytes 4-7 */
630#define TMS570_DCAN_IF2CMD_Data_B BSP_BIT32(16)
631
632/* field: Busy - Busy flag */
633#define TMS570_DCAN_IF2CMD_Busy BSP_BIT32(15)
634
635/* field: DMA_Active - Activation of DMA feature for subsequent internal IF1/IF2 update */
636#define TMS570_DCAN_IF2CMD_DMA_Active BSP_BIT32(14)
637
638/* field: Message_Number - Number of message object in Message RAM that is used for data transfer */
639#define TMS570_DCAN_IF2CMD_Message_Number(val) BSP_FLD32(val,0, 7)
640#define TMS570_DCAN_IF2CMD_Message_Number_GET(reg) BSP_FLD32GET(reg,0, 7)
641#define TMS570_DCAN_IF2CMD_Message_Number_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
642
643
644/*---------------------TMS570_DCAN_IF2MSK---------------------*/
645/* field: MXtd - Mask Extended Identifier */
646#define TMS570_DCAN_IF2MSK_MXtd BSP_BIT32(31)
647
648/* field: MDir - Mask Message Direction */
649#define TMS570_DCAN_IF2MSK_MDir BSP_BIT32(30)
650
651/* field: Msk - Identifier Mask */
652#define TMS570_DCAN_IF2MSK_Msk(val) BSP_FLD32(val,0, 28)
653#define TMS570_DCAN_IF2MSK_Msk_GET(reg) BSP_FLD32GET(reg,0, 28)
654#define TMS570_DCAN_IF2MSK_Msk_SET(reg,val) BSP_FLD32SET(reg, val,0, 28)
655
656
657/*---------------------TMS570_DCAN_IF2ARB---------------------*/
658/* field: MsgVal - Message Valid */
659#define TMS570_DCAN_IF2ARB_MsgVal BSP_BIT32(31)
660
661/* field: Xtd - Extended Identifier */
662#define TMS570_DCAN_IF2ARB_Xtd BSP_BIT32(30)
663
664/* field: Dir - Message direction */
665#define TMS570_DCAN_IF2ARB_Dir BSP_BIT32(29)
666
667/* field: ID - Message Identifier */
668#define TMS570_DCAN_IF2ARB_ID(val) BSP_FLD32(val,0, 28)
669#define TMS570_DCAN_IF2ARB_ID_GET(reg) BSP_FLD32GET(reg,0, 28)
670#define TMS570_DCAN_IF2ARB_ID_SET(reg,val) BSP_FLD32SET(reg, val,0, 28)
671
672
673/*--------------------TMS570_DCAN_IF2MCTL--------------------*/
674/* field: NewDat - New Data */
675#define TMS570_DCAN_IF2MCTL_NewDat BSP_BIT32(15)
676
677/* field: MsgLst - Message Lost (only valid for message objects with direction = receive) */
678#define TMS570_DCAN_IF2MCTL_MsgLst BSP_BIT32(14)
679
680/* field: IntPnd - Interrupt Pending */
681#define TMS570_DCAN_IF2MCTL_IntPnd BSP_BIT32(13)
682
683/* field: UMask - Use Acceptance Mask */
684#define TMS570_DCAN_IF2MCTL_UMask BSP_BIT32(12)
685
686/* field: TxIE - Transmit Interrupt Enable */
687#define TMS570_DCAN_IF2MCTL_TxIE BSP_BIT32(11)
688
689/* field: RxIE - Receive Interrupt Enable */
690#define TMS570_DCAN_IF2MCTL_RxIE BSP_BIT32(10)
691
692/* field: RmtEn - Remote Enable */
693#define TMS570_DCAN_IF2MCTL_RmtEn BSP_BIT32(9)
694
695/* field: TxRqst - Transmit Request */
696#define TMS570_DCAN_IF2MCTL_TxRqst BSP_BIT32(8)
697
698/* field: EoB - Data Frame has 0-8 data bits */
699#define TMS570_DCAN_IF2MCTL_EoB BSP_BIT32(7)
700
701/* field: DLC - Data Length Code */
702#define TMS570_DCAN_IF2MCTL_DLC(val) BSP_FLD32(val,0, 3)
703#define TMS570_DCAN_IF2MCTL_DLC_GET(reg) BSP_FLD32GET(reg,0, 3)
704#define TMS570_DCAN_IF2MCTL_DLC_SET(reg,val) BSP_FLD32SET(reg, val,0, 3)
705
706
707/*--------------------TMS570_DCAN_IF2DATA--------------------*/
708/* field: Data0 - Data 0 */
709#define TMS570_DCAN_IF2DATA_Data0(val) BSP_FLD32(val,0, 7)
710#define TMS570_DCAN_IF2DATA_Data0_GET(reg) BSP_FLD32GET(reg,0, 7)
711#define TMS570_DCAN_IF2DATA_Data0_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
712
713/* field: Data1 - Data 1 */
714#define TMS570_DCAN_IF2DATA_Data1(val) BSP_FLD32(val,8, 15)
715#define TMS570_DCAN_IF2DATA_Data1_GET(reg) BSP_FLD32GET(reg,8, 15)
716#define TMS570_DCAN_IF2DATA_Data1_SET(reg,val) BSP_FLD32SET(reg, val,8, 15)
717
718/* field: Data2 - Data 2 */
719#define TMS570_DCAN_IF2DATA_Data2(val) BSP_FLD32(val,16, 23)
720#define TMS570_DCAN_IF2DATA_Data2_GET(reg) BSP_FLD32GET(reg,16, 23)
721#define TMS570_DCAN_IF2DATA_Data2_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
722
723/* field: Data3 - Data 3 */
724#define TMS570_DCAN_IF2DATA_Data3(val) BSP_FLD32(val,24, 31)
725#define TMS570_DCAN_IF2DATA_Data3_GET(reg) BSP_FLD32GET(reg,24, 31)
726#define TMS570_DCAN_IF2DATA_Data3_SET(reg,val) BSP_FLD32SET(reg, val,24, 31)
727
728
729/*--------------------TMS570_DCAN_IF2DATB--------------------*/
730/* field: Data4 - Data 4 */
731#define TMS570_DCAN_IF2DATB_Data4(val) BSP_FLD32(val,0, 7)
732#define TMS570_DCAN_IF2DATB_Data4_GET(reg) BSP_FLD32GET(reg,0, 7)
733#define TMS570_DCAN_IF2DATB_Data4_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
734
735/* field: Data5 - Data 5 */
736#define TMS570_DCAN_IF2DATB_Data5(val) BSP_FLD32(val,8, 15)
737#define TMS570_DCAN_IF2DATB_Data5_GET(reg) BSP_FLD32GET(reg,8, 15)
738#define TMS570_DCAN_IF2DATB_Data5_SET(reg,val) BSP_FLD32SET(reg, val,8, 15)
739
740/* field: Data6 - Data 6 */
741#define TMS570_DCAN_IF2DATB_Data6(val) BSP_FLD32(val,16, 23)
742#define TMS570_DCAN_IF2DATB_Data6_GET(reg) BSP_FLD32GET(reg,16, 23)
743#define TMS570_DCAN_IF2DATB_Data6_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
744
745/* field: Data7 - Data 7 */
746#define TMS570_DCAN_IF2DATB_Data7(val) BSP_FLD32(val,24, 31)
747#define TMS570_DCAN_IF2DATB_Data7_GET(reg) BSP_FLD32GET(reg,24, 31)
748#define TMS570_DCAN_IF2DATB_Data7_SET(reg,val) BSP_FLD32SET(reg, val,24, 31)
749
750
751/*---------------------TMS570_DCAN_IF3OBS---------------------*/
752/* field: IF3_Upd - IF3 Update Data */
753#define TMS570_DCAN_IF3OBS_IF3_Upd BSP_BIT32(15)
754
755/* field: IF3_SDB - IF3 Status of Data B read access */
756#define TMS570_DCAN_IF3OBS_IF3_SDB BSP_BIT32(12)
757
758/* field: IF3_SDA - IF3 Status of Data A read access */
759#define TMS570_DCAN_IF3OBS_IF3_SDA BSP_BIT32(11)
760
761/* field: IF3_SC - IF3 Status of Control bits read access */
762#define TMS570_DCAN_IF3OBS_IF3_SC BSP_BIT32(10)
763
764/* field: IF3_SA - IF3 Status of Arbitration data read access */
765#define TMS570_DCAN_IF3OBS_IF3_SA BSP_BIT32(9)
766
767/* field: IF3_SM - IF3 Status of Mask data read access */
768#define TMS570_DCAN_IF3OBS_IF3_SM BSP_BIT32(8)
769
770/* field: Data_B - Data B read observation */
771#define TMS570_DCAN_IF3OBS_Data_B BSP_BIT32(4)
772
773/* field: Data_A - Data A read observation */
774#define TMS570_DCAN_IF3OBS_Data_A BSP_BIT32(3)
775
776/* field: Ctrl - Ctrl read observation */
777#define TMS570_DCAN_IF3OBS_Ctrl BSP_BIT32(2)
778
779/* field: Arb - Arbitration data read observation */
780#define TMS570_DCAN_IF3OBS_Arb BSP_BIT32(1)
781
782/* field: Mask - Mask data read observation */
783#define TMS570_DCAN_IF3OBS_Mask BSP_BIT32(0)
784
785
786/*---------------------TMS570_DCAN_IF3MSK---------------------*/
787/* field: MXtd - Mask Extended Identifier */
788#define TMS570_DCAN_IF3MSK_MXtd BSP_BIT32(31)
789
790/* field: MDir - Mask Message Direction */
791#define TMS570_DCAN_IF3MSK_MDir BSP_BIT32(30)
792
793/* field: Msk - Identifier Mask */
794#define TMS570_DCAN_IF3MSK_Msk(val) BSP_FLD32(val,0, 28)
795#define TMS570_DCAN_IF3MSK_Msk_GET(reg) BSP_FLD32GET(reg,0, 28)
796#define TMS570_DCAN_IF3MSK_Msk_SET(reg,val) BSP_FLD32SET(reg, val,0, 28)
797
798
799/*---------------------TMS570_DCAN_IF3ARB---------------------*/
800/* field: MsgVal - Message Valid */
801#define TMS570_DCAN_IF3ARB_MsgVal BSP_BIT32(31)
802
803/* field: Xtd - Extended Identifier */
804#define TMS570_DCAN_IF3ARB_Xtd BSP_BIT32(30)
805
806/* field: Dir - Message direction */
807#define TMS570_DCAN_IF3ARB_Dir BSP_BIT32(29)
808
809/* field: ID - Message Identifier */
810#define TMS570_DCAN_IF3ARB_ID(val) BSP_FLD32(val,0, 28)
811#define TMS570_DCAN_IF3ARB_ID_GET(reg) BSP_FLD32GET(reg,0, 28)
812#define TMS570_DCAN_IF3ARB_ID_SET(reg,val) BSP_FLD32SET(reg, val,0, 28)
813
814
815/*--------------------TMS570_DCAN_IF3MCTL--------------------*/
816/* field: NewDat - New Data */
817#define TMS570_DCAN_IF3MCTL_NewDat BSP_BIT32(15)
818
819/* field: MsgLst - Message Lost (only valid for message objects with direction = receive) */
820#define TMS570_DCAN_IF3MCTL_MsgLst BSP_BIT32(14)
821
822/* field: IntPnd - Interrupt Pending */
823#define TMS570_DCAN_IF3MCTL_IntPnd BSP_BIT32(13)
824
825/* field: UMask - Use Acceptance Mask */
826#define TMS570_DCAN_IF3MCTL_UMask BSP_BIT32(12)
827
828/* field: TxIE - Transmit Interrupt Enable */
829#define TMS570_DCAN_IF3MCTL_TxIE BSP_BIT32(11)
830
831/* field: RxIE - Receive Interrupt Enable */
832#define TMS570_DCAN_IF3MCTL_RxIE BSP_BIT32(10)
833
834/* field: RmtEn - Remote Enable */
835#define TMS570_DCAN_IF3MCTL_RmtEn BSP_BIT32(9)
836
837/* field: TxRqst - TxRqst */
838#define TMS570_DCAN_IF3MCTL_TxRqst BSP_BIT32(8)
839
840/* field: EoB - End of Block */
841#define TMS570_DCAN_IF3MCTL_EoB BSP_BIT32(7)
842
843/* field: DLC - Data Length Code */
844#define TMS570_DCAN_IF3MCTL_DLC(val) BSP_FLD32(val,0, 3)
845#define TMS570_DCAN_IF3MCTL_DLC_GET(reg) BSP_FLD32GET(reg,0, 3)
846#define TMS570_DCAN_IF3MCTL_DLC_SET(reg,val) BSP_FLD32SET(reg, val,0, 3)
847
848
849/*--------------------TMS570_DCAN_IF3DATA--------------------*/
850/* field: Data0 - Data 0 */
851#define TMS570_DCAN_IF3DATA_Data0(val) BSP_FLD32(val,0, 7)
852#define TMS570_DCAN_IF3DATA_Data0_GET(reg) BSP_FLD32GET(reg,0, 7)
853#define TMS570_DCAN_IF3DATA_Data0_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
854
855/* field: Data1 - Data 1 */
856#define TMS570_DCAN_IF3DATA_Data1(val) BSP_FLD32(val,8, 15)
857#define TMS570_DCAN_IF3DATA_Data1_GET(reg) BSP_FLD32GET(reg,8, 15)
858#define TMS570_DCAN_IF3DATA_Data1_SET(reg,val) BSP_FLD32SET(reg, val,8, 15)
859
860/* field: Data2 - Data 2 */
861#define TMS570_DCAN_IF3DATA_Data2(val) BSP_FLD32(val,16, 23)
862#define TMS570_DCAN_IF3DATA_Data2_GET(reg) BSP_FLD32GET(reg,16, 23)
863#define TMS570_DCAN_IF3DATA_Data2_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
864
865/* field: Data3 - Data 3 */
866#define TMS570_DCAN_IF3DATA_Data3(val) BSP_FLD32(val,24, 31)
867#define TMS570_DCAN_IF3DATA_Data3_GET(reg) BSP_FLD32GET(reg,24, 31)
868#define TMS570_DCAN_IF3DATA_Data3_SET(reg,val) BSP_FLD32SET(reg, val,24, 31)
869
870
871/*--------------------TMS570_DCAN_IF3DATB--------------------*/
872/* field: Data4 - Data 4 */
873#define TMS570_DCAN_IF3DATB_Data4(val) BSP_FLD32(val,0, 7)
874#define TMS570_DCAN_IF3DATB_Data4_GET(reg) BSP_FLD32GET(reg,0, 7)
875#define TMS570_DCAN_IF3DATB_Data4_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
876
877/* field: Data5 - Data 5 */
878#define TMS570_DCAN_IF3DATB_Data5(val) BSP_FLD32(val,8, 15)
879#define TMS570_DCAN_IF3DATB_Data5_GET(reg) BSP_FLD32GET(reg,8, 15)
880#define TMS570_DCAN_IF3DATB_Data5_SET(reg,val) BSP_FLD32SET(reg, val,8, 15)
881
882/* field: Data6 - Data 6 */
883#define TMS570_DCAN_IF3DATB_Data6(val) BSP_FLD32(val,16, 23)
884#define TMS570_DCAN_IF3DATB_Data6_GET(reg) BSP_FLD32GET(reg,16, 23)
885#define TMS570_DCAN_IF3DATB_Data6_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
886
887/* field: Data7 - Data 7 */
888#define TMS570_DCAN_IF3DATB_Data7(val) BSP_FLD32(val,24, 31)
889#define TMS570_DCAN_IF3DATB_Data7_GET(reg) BSP_FLD32GET(reg,24, 31)
890#define TMS570_DCAN_IF3DATB_Data7_SET(reg,val) BSP_FLD32SET(reg, val,24, 31)
891
892
893/*---------------------TMS570_DCAN_IF3UEy---------------------*/
894/* field: IF3UpdEn - IF3 Update Enabled (for all message objects) */
895/* Whole 32 bits */
896
897/*----------------------TMS570_DCAN_TIOC----------------------*/
898/* field: PU - CAN_TX Pullup/Pulldown select. This bit is only active when CAN_TX is configured to be an input. */
899#define TMS570_DCAN_TIOC_PU BSP_BIT32(18)
900
901/* field: PD - CAN_TX pull disable. This bit is only active when CAN_TX is configured to be an input. */
902#define TMS570_DCAN_TIOC_PD BSP_BIT32(17)
903
904/* field: OD - CAN_TX open drain enable. */
905#define TMS570_DCAN_TIOC_OD BSP_BIT32(16)
906
907/* field: Func - CAN_TX function. This bit changes the function of the CAN_TX pin. */
908#define TMS570_DCAN_TIOC_Func BSP_BIT32(3)
909
910/* field: Dir - CAN_TX data direction. */
911#define TMS570_DCAN_TIOC_Dir BSP_BIT32(2)
912
913/* field: Out - CAN_TX data out write. */
914#define TMS570_DCAN_TIOC_Out BSP_BIT32(1)
915
916
917/*----------------------TMS570_DCAN_RIOC----------------------*/
918/* field: PU - CAN_RX Pullup/Pulldown select. This bit is only active when CAN_RX is configured to be an input. */
919#define TMS570_DCAN_RIOC_PU BSP_BIT32(18)
920
921/* field: PD - CAN_RX pull disable. This bit is only active when CAN_RX is configured to be an input. */
922#define TMS570_DCAN_RIOC_PD BSP_BIT32(17)
923
924/* field: OD - CAN_RX open drain enable. */
925#define TMS570_DCAN_RIOC_OD BSP_BIT32(16)
926
927/* field: Func - CAN_RX function. This bit changes the function of the CAN_RX pin. */
928#define TMS570_DCAN_RIOC_Func BSP_BIT32(3)
929
930/* field: Dir - CAN_RX data direction. */
931#define TMS570_DCAN_RIOC_Dir BSP_BIT32(2)
932
933/* field: Out - CAN_RX data out write. */
934#define TMS570_DCAN_RIOC_Out BSP_BIT32(1)
935
936/* field: In - CAN_RX data in. */
937#define TMS570_DCAN_RIOC_In BSP_BIT32(0)
938
939
940
941#endif /* LIBBSP_ARM_TMS570_DCAN */
This header file provides utility macros for BSPs.
Definition: reg_dcan.h:44