32 #ifndef __CCAN_18XX_43XX_H_
33 #define __CCAN_18XX_43XX_H_
59 __I uint32_t RESERVED[13];
75 __I uint32_t RESERVED2[8];
78 __I uint32_t RESERVED3[6];
81 __I uint32_t RESERVED4[6];
84 __I uint32_t RESERVED5[6];
87 __I uint32_t RESERVED6[6];
92 #define CCAN_CTRL_INIT (1 << 0)
93 #define CCAN_CTRL_IE (1 << 1)
94 #define CCAN_CTRL_SIE (1 << 2)
95 #define CCAN_CTRL_EIE (1 << 3)
96 #define CCAN_CTRL_DAR (1 << 5)
97 #define CCAN_CTRL_CCE (1 << 6)
98 #define CCAN_CTRL_TEST (1 << 7)
101 #define CCAN_STAT_LEC_MASK (0x07)
102 #define CCAN_STAT_TXOK (1 << 3)
103 #define CCAN_STAT_RXOK (1 << 4)
104 #define CCAN_STAT_EPASS (1 << 5)
105 #define CCAN_STAT_EWARN (1 << 6)
106 #define CCAN_STAT_BOFF (1 << 7)
126 #define CCAN_INT_NO_PENDING 0
127 #define CCAN_INT_STATUS 0x8000
128 #define CCAN_INT_MSG_NUM(n) (n)
131 #define CCAN_TEST_BASIC_MODE (1 << 2)
132 #define CCAN_TEST_SILENT_MODE (1 << 3)
133 #define CCAN_TEST_LOOPBACK_MODE (1 << 4)
134 #define CCAN_TEST_TD_CONTROLLED (0)
135 #define CCAN_TEST_TD_MONITORED (1 << 5)
136 #define CCAN_TEST_TD_DOMINANT (2 << 5)
137 #define CCAN_TEST_TD_RECESSIVE (3 << 5)
138 #define CCAN_TEST_RD_DOMINANT (0)
139 #define CCAN_TEST_RD_RECESSIVE (1 << 7)
141 #define CCAN_SEG1_DEFAULT_VAL 5
142 #define CCAN_SEG2_DEFAULT_VAL 4
143 #define CCAN_SJW_DEFAULT_VAL 0
178 pCCAN->
CNTL &= ~mask;
209 pCCAN->
STAT = val & 0x1F;
235 return (dir ==
CCAN_TX_DIR) ? (pCCAN->
EC & 0x0FF) : ((pCCAN->
EC >> 8) & 0x0FF);
323 #define CCAN_MSG_MAX_NUM 32
340 #define CCAN_IF_CMDREQ_MSG_NUM(n) (n)
341 #define CCAN_IF_CMDREQ_BUSY 0x8000
344 #define CCAN_IF_CMDMSK_DATAB (1 << 0)
345 #define CCAN_IF_CMDMSK_DATAA (1 << 1)
346 #define CCAN_IF_CMDMSK_W_TXRQST (1 << 2)
347 #define CCAN_IF_CMDMSK_R_NEWDAT (1 << 2)
348 #define CCAN_IF_CMDMSK_R_CLRINTPND (1 << 3)
349 #define CCAN_IF_CMDMSK_CTRL (1 << 4)
350 #define CCAN_IF_CMDMSK_ARB (1 << 5)
351 #define CCAN_IF_CMDMSK_MASK (1 << 6)
352 #define CCAN_IF_CMDMSK_WR (1 << 7)
353 #define CCAN_IF_CMDMSK_RD (0)
354 #define CCAN_IF_CMDMSK_TRANSFER_ALL (CCAN_IF_CMDMSK_CTRL | CCAN_IF_CMDMSK_MASK | CCAN_IF_CMDMSK_ARB | \
355 CCAN_IF_CMDMSK_DATAB | CCAN_IF_CMDMSK_DATAA)
358 #define CCAN_IF_MASK2_MXTD (1 << 15)
359 #define CCAN_IF_MASK2_MDIR(n) (((n) & 0x01) << 14)
362 #define CCAN_IF_ARB2_DIR(n) (((n) & 0x01) << 13)
363 #define CCAN_IF_ARB2_XTD (1 << 14)
364 #define CCAN_IF_ARB2_MSGVAL (1 << 15)
367 #define CCAN_IF_MCTRL_DLC_MSK 0x000F
368 #define CCAN_IF_MCTRL_EOB (1 << 7)
369 #define CCAN_IF_MCTRL_TXRQ (1 << 8)
370 #define CCAN_IF_MCTRL_RMTEN(n) (((n) & 1UL) << 9)
371 #define CCAN_IF_MCTRL_RXIE (1 << 10)
372 #define CCAN_IF_MCTRL_TXIE (1 << 11)
373 #define CCAN_IF_MCTRL_UMSK (1 << 12)
374 #define CCAN_IF_MCTRL_INTP (1 << 13)
375 #define CCAN_IF_MCTRL_MLST (1 << 14)
376 #define CCAN_IF_MCTRL_NEWD (1 << 15)
378 #define CCAN_MSG_ID_STD_MASK 0x07FF
379 #define CCAN_MSG_ID_EXT_MASK 0x1FFFFFFF