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 94f4b9e92f654ba824a63e3cf379eb201174ce67
Author: Takashi Furuya <[email protected]>
AuthorDate: Mon Aug 3 16:52:33 2026 +0900

    s32k1xx/flexcan: Initialize union and allow BRS control
    
    - Zero initialize union in s32k1xx_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/s32k1xx/s32k1xx_flexcan.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/src/s32k1xx/s32k1xx_flexcan.c 
b/arch/arm/src/s32k1xx/s32k1xx_flexcan.c
index 2e9beaa7285..fd20faeed21 100644
--- a/arch/arm/src/s32k1xx/s32k1xx_flexcan.c
+++ b/arch/arm/src/s32k1xx/s32k1xx_flexcan.c
@@ -685,6 +685,7 @@ static int s32k1xx_transmit(struct s32k1xx_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;
@@ -729,6 +730,7 @@ static int s32k1xx_transmit(struct s32k1xx_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