stm32: can: removed canport argument from can_filter functions
This commit is contained in:
parent
0965e691a9
commit
9ef5860863
|
@ -649,18 +649,18 @@ int can_init(uint32_t canport, bool ttcm, bool abom, bool awum, bool nart,
|
|||
bool rflm, bool txfp, uint32_t sjw, uint32_t ts1, uint32_t ts2,
|
||||
uint32_t brp, bool loopback, bool silent);
|
||||
|
||||
void can_filter_init(uint32_t canport, uint32_t nr, bool scale_32bit,
|
||||
void can_filter_init(uint32_t nr, bool scale_32bit,
|
||||
bool id_list_mode, uint32_t fr1, uint32_t fr2,
|
||||
uint32_t fifo, bool enable);
|
||||
void can_filter_id_mask_16bit_init(uint32_t canport, uint32_t nr, uint16_t id1,
|
||||
void can_filter_id_mask_16bit_init(uint32_t nr, uint16_t id1,
|
||||
uint16_t mask1, uint16_t id2,
|
||||
uint16_t mask2, uint32_t fifo, bool enable);
|
||||
void can_filter_id_mask_32bit_init(uint32_t canport, uint32_t nr, uint32_t id,
|
||||
void can_filter_id_mask_32bit_init(uint32_t nr, uint32_t id,
|
||||
uint32_t mask, uint32_t fifo, bool enable);
|
||||
void can_filter_id_list_16bit_init(uint32_t canport, uint32_t nr, uint16_t id1,
|
||||
void can_filter_id_list_16bit_init(uint32_t nr, uint16_t id1,
|
||||
uint16_t id2, uint16_t id3, uint16_t id4,
|
||||
uint32_t fifo, bool enable);
|
||||
void can_filter_id_list_32bit_init(uint32_t canport, uint32_t nr, uint32_t id1,
|
||||
void can_filter_id_list_32bit_init(uint32_t nr, uint32_t id1,
|
||||
uint32_t id2, uint32_t fifo, bool enable);
|
||||
|
||||
void can_enable_irq(uint32_t canport, uint32_t irq);
|
||||
|
|
|
@ -188,7 +188,6 @@ int can_init(uint32_t canport, bool ttcm, bool abom, bool awum, bool nart,
|
|||
|
||||
Initialize incoming message filter and assign to FIFO.
|
||||
|
||||
@param[in] canport Unsigned int32. CAN block register base @ref can_reg_base.
|
||||
@param[in] nr Unsigned int32. ID number of the filter.
|
||||
@param[in] scale_32bit true for single 32bit, false for dual 16bit
|
||||
@param[in] id_list_mode true for id lists, false for id/mask
|
||||
|
@ -197,59 +196,58 @@ Initialize incoming message filter and assign to FIFO.
|
|||
@param[in] fifo Unsigned int32. FIFO id.
|
||||
@param[in] enable bool. Enable filter?
|
||||
*/
|
||||
void can_filter_init(uint32_t canport, uint32_t nr, bool scale_32bit,
|
||||
void can_filter_init(uint32_t nr, bool scale_32bit,
|
||||
bool id_list_mode, uint32_t fr1, uint32_t fr2,
|
||||
uint32_t fifo, bool enable)
|
||||
{
|
||||
uint32_t filter_select_bit = 0x00000001 << nr;
|
||||
|
||||
/* Request initialization "enter". */
|
||||
CAN_FMR(canport) |= CAN_FMR_FINIT;
|
||||
CAN_FMR(CAN1) |= CAN_FMR_FINIT;
|
||||
|
||||
/* Deactivate the filter. */
|
||||
CAN_FA1R(canport) &= ~filter_select_bit;
|
||||
CAN_FA1R(CAN1) &= ~filter_select_bit;
|
||||
|
||||
if (scale_32bit) {
|
||||
/* Set 32-bit scale for the filter. */
|
||||
CAN_FS1R(canport) |= filter_select_bit;
|
||||
CAN_FS1R(CAN1) |= filter_select_bit;
|
||||
} else {
|
||||
/* Set 16-bit scale for the filter. */
|
||||
CAN_FS1R(canport) &= ~filter_select_bit;
|
||||
CAN_FS1R(CAN1) &= ~filter_select_bit;
|
||||
}
|
||||
|
||||
if (id_list_mode) {
|
||||
/* Set filter mode to ID list mode. */
|
||||
CAN_FM1R(canport) |= filter_select_bit;
|
||||
CAN_FM1R(CAN1) |= filter_select_bit;
|
||||
} else {
|
||||
/* Set filter mode to id/mask mode. */
|
||||
CAN_FM1R(canport) &= ~filter_select_bit;
|
||||
CAN_FM1R(CAN1) &= ~filter_select_bit;
|
||||
}
|
||||
|
||||
/* Set the first filter register. */
|
||||
CAN_FiR1(canport, nr) = fr1;
|
||||
CAN_FiR1(CAN1, nr) = fr1;
|
||||
|
||||
/* Set the second filter register. */
|
||||
CAN_FiR2(canport, nr) = fr2;
|
||||
CAN_FiR2(CAN1, nr) = fr2;
|
||||
|
||||
/* Select FIFO0 or FIFO1 as filter assignement. */
|
||||
if (fifo) {
|
||||
CAN_FFA1R(canport) |= filter_select_bit; /* FIFO1 */
|
||||
CAN_FFA1R(CAN1) |= filter_select_bit; /* FIFO1 */
|
||||
} else {
|
||||
CAN_FFA1R(canport) &= ~filter_select_bit; /* FIFO0 */
|
||||
CAN_FFA1R(CAN1) &= ~filter_select_bit; /* FIFO0 */
|
||||
}
|
||||
|
||||
if (enable) {
|
||||
CAN_FA1R(canport) |= filter_select_bit; /* Activate filter. */
|
||||
CAN_FA1R(CAN1) |= filter_select_bit; /* Activate filter. */
|
||||
}
|
||||
|
||||
/* Request initialization "leave". */
|
||||
CAN_FMR(canport) &= ~CAN_FMR_FINIT;
|
||||
CAN_FMR(CAN1) &= ~CAN_FMR_FINIT;
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/** @brief CAN Initialize a 16bit Message ID Mask Filter
|
||||
|
||||
@param[in] canport Unsigned int32. CAN block register base @ref can_reg_base.
|
||||
@param[in] nr Unsigned int32. ID number of the filter.
|
||||
@param[in] id1 Unsigned int16. First message ID to filter.
|
||||
@param[in] mask1 Unsigned int16. First message ID bit mask.
|
||||
|
@ -258,11 +256,11 @@ void can_filter_init(uint32_t canport, uint32_t nr, bool scale_32bit,
|
|||
@param[in] fifo Unsigned int32. FIFO id.
|
||||
@param[in] enable bool. Enable filter?
|
||||
*/
|
||||
void can_filter_id_mask_16bit_init(uint32_t canport, uint32_t nr, uint16_t id1,
|
||||
void can_filter_id_mask_16bit_init(uint32_t nr, uint16_t id1,
|
||||
uint16_t mask1, uint16_t id2,
|
||||
uint16_t mask2, uint32_t fifo, bool enable)
|
||||
{
|
||||
can_filter_init(canport, nr, false, false,
|
||||
can_filter_init(nr, false, false,
|
||||
((uint32_t)mask1 << 16) | (uint32_t)id1,
|
||||
((uint32_t)mask2 << 16) | (uint32_t)id2, fifo, enable);
|
||||
}
|
||||
|
@ -270,23 +268,21 @@ void can_filter_id_mask_16bit_init(uint32_t canport, uint32_t nr, uint16_t id1,
|
|||
/*---------------------------------------------------------------------------*/
|
||||
/** @brief CAN Initialize a 32bit Message ID Mask Filter
|
||||
|
||||
@param[in] canport Unsigned int32. CAN block register base @ref can_reg_base.
|
||||
@param[in] nr Unsigned int32. ID number of the filter.
|
||||
@param[in] id Unsigned int32. Message ID to filter.
|
||||
@param[in] mask Unsigned int32. Message ID bit mask.
|
||||
@param[in] fifo Unsigned int32. FIFO id.
|
||||
@param[in] enable bool. Enable filter?
|
||||
*/
|
||||
void can_filter_id_mask_32bit_init(uint32_t canport, uint32_t nr, uint32_t id,
|
||||
void can_filter_id_mask_32bit_init(uint32_t nr, uint32_t id,
|
||||
uint32_t mask, uint32_t fifo, bool enable)
|
||||
{
|
||||
can_filter_init(canport, nr, true, false, id, mask, fifo, enable);
|
||||
can_filter_init(nr, true, false, id, mask, fifo, enable);
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/** @brief CAN Initialize a 16bit Message ID List Filter
|
||||
|
||||
@param[in] canport Unsigned int32. CAN block register base @ref can_reg_base.
|
||||
@param[in] nr Unsigned int32. ID number of the filter.
|
||||
@param[in] id1 Unsigned int16. First message ID to match.
|
||||
@param[in] id2 Unsigned int16. Second message ID to match.
|
||||
|
@ -295,12 +291,12 @@ void can_filter_id_mask_32bit_init(uint32_t canport, uint32_t nr, uint32_t id,
|
|||
@param[in] fifo Unsigned int32. FIFO id.
|
||||
@param[in] enable bool. Enable filter?
|
||||
*/
|
||||
void can_filter_id_list_16bit_init(uint32_t canport, uint32_t nr,
|
||||
void can_filter_id_list_16bit_init(uint32_t nr,
|
||||
uint16_t id1, uint16_t id2,
|
||||
uint16_t id3, uint16_t id4,
|
||||
uint32_t fifo, bool enable)
|
||||
{
|
||||
can_filter_init(canport, nr, false, true,
|
||||
can_filter_init(nr, false, true,
|
||||
((uint32_t)id1 << 16) | (uint32_t)id2,
|
||||
((uint32_t)id3 << 16) | (uint32_t)id4, fifo, enable);
|
||||
}
|
||||
|
@ -308,18 +304,17 @@ void can_filter_id_list_16bit_init(uint32_t canport, uint32_t nr,
|
|||
/*---------------------------------------------------------------------------*/
|
||||
/** @brief CAN Initialize a 32bit Message ID List Filter
|
||||
|
||||
@param[in] canport Unsigned int32. CAN block register base @ref can_reg_base.
|
||||
@param[in] nr Unsigned int32. ID number of the filter.
|
||||
@param[in] id1 Unsigned int32. First message ID to match.
|
||||
@param[in] id2 Unsigned int32. Second message ID to match.
|
||||
@param[in] fifo Unsigned int32. FIFO id.
|
||||
@param[in] enable bool. Enable filter?
|
||||
*/
|
||||
void can_filter_id_list_32bit_init(uint32_t canport, uint32_t nr,
|
||||
void can_filter_id_list_32bit_init(uint32_t nr,
|
||||
uint32_t id1, uint32_t id2,
|
||||
uint32_t fifo, bool enable)
|
||||
{
|
||||
can_filter_init(canport, nr, true, true, id1, id2, fifo, enable);
|
||||
can_filter_init(nr, true, true, id1, id2, fifo, enable);
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
|
Loading…
Reference in New Issue