This is an automated email from the ASF dual-hosted git repository.

xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit c4010cb205a069885db933346b3a7462a6de45d0
Author: Takashi Furuya <[email protected]>
AuthorDate: Mon Aug 3 16:52:33 2026 +0900

    kinetis/flexcan: Initialize union and allow BRS control
    
    - Zero initialize union in kinetis_transmit()
    - Allow setting BRS from frame flags
    
    Signed-off-by: Takashi Furuya <[email protected]>
    Co-Authored-By: Claude Fable 5 <[email protected]>
---
 arch/arm/src/kinetis/kinetis_flexcan.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/src/kinetis/kinetis_flexcan.c 
b/arch/arm/src/kinetis/kinetis_flexcan.c
index 1f245718912..3c33b6bffb5 100644
--- a/arch/arm/src/kinetis/kinetis_flexcan.c
+++ b/arch/arm/src/kinetis/kinetis_flexcan.c
@@ -683,6 +683,7 @@ static int kinetis_transmit(struct kinetis_driver_s *priv)
     (peak_tx_mailbox_index_ > mbi ? peak_tx_mailbox_index_ : mbi);
 
   union cs_e cs;
+  cs.cs = 0;
   cs.code = CAN_TXMB_DATAORREMOTE;
   struct mb_s *mb = &priv->tx[mbi];
   mb->cs.code = CAN_TXMB_INACTIVE;
@@ -725,6 +726,7 @@ static int kinetis_transmit(struct kinetis_driver_s *priv)
         }
 
       cs.rtr = frame->can_id & FLAGRTR ? 1 : 0;
+      cs.brs = frame->flags & CANFD_BRS ? 1 : 0;
 
       cs.dlc = g_len_to_can_dlc[frame->len];
 

Reply via email to