int fdcan_cccr_init_cfg(uint32_t canport, bool set, uint32_t timeout)
Routine implementing FDCAN_CCCR's INIT bit manipulation.
struct fdcan_standard_filter * fdcan_get_flssa_addr(uint32_t canport)
Returns standard filter start address in message RAM.
struct fdcan_extended_filter * fdcan_get_flesa_addr(uint32_t canport)
Returns extended filter start address in message RAM.
#define FDCAN_RXGFC_LSE_SHIFT
LSE[3:0]: List size of extended ID filters.
#define FDCAN_RXGFC_LSS_SHIFT
LSS[4:0]: List size of standard ID filters.
#define FDCAN_RXGFC_LSS_MASK
#define FDCAN_SFT_MAX_NR
Amount of standard filters allocated in Message RAM This number may vary between devices.
#define FDCAN_RXGFC_LSE_MASK
#define FDCAN_RXGFC(can_base)
#define FDCAN_EFT_MAX_NR
Amount of extended filters allocated in Message RAM This number may vary between devices.
#define FDCAN_E_TIMEOUT
Timeout waiting for FDCAN block to accept INIT bit change.
#define FDCAN_E_OK
No error.
void fdcan_set_fifo_locked_mode(uint32_t canport, bool locked)
Configure FDCAN FIFO lock mode.
int fdcan_start(uint32_t canport, uint32_t timeout)
Enable FDCAN operation after FDCAN block has been set up.
unsigned fdcan_get_fifo_element_size(uint32_t canport, unsigned fifo_id)
Returns actual size of FIFO entry in FIFO for given CAN port and FIFO.
void fdcan_init_filter(uint32_t canport, uint8_t std_filt, uint8_t ext_filt)
Configure amount of filters and initialize filtering block.
unsigned fdcan_get_txbuf_element_size(uint32_t canport)
Returns actual size of transmit entry in transmit queue/FIFO for given CAN port.
Structure describing extended ID filters.
uint32_t type_id2
Aggregate of filter type and extended ID or mask.
uint32_t conf_id1
Aggregate of filter action and extended ID.
Structure describing receive FIFO element.
Structure describing standard ID filter.
uint32_t type_id1_conf_id2
Aggregate of filter type, filter action and two IDs
Structure describing transmit buffer element.