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

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

commit 6714ea0831ca801560fd3b6ea0e8c5b4154f0974
Author: Javier Alonso <[email protected]>
AuthorDate: Thu Aug 6 16:48:00 2026 +0200

    arch/s32k1xx: initializers clobbering rx_pin instead of enable_high
    
    The `rx_pin` configuration when `CONFIG_S32K1XX_FLEXCAN2` is defined is
    overwritten if `PIN_CAN2_ENABLE` is defined, breaking the flexcan config
    for S32K1 MCU. Additionally, the `.enable_high` configuration points to
    a non-defined constant/macro (looks like a legacy from the first driver
    definition). Based on regularly maintained drivers (such as s32k3), this
    was changed to `CAN2_ENABLE_OUT`
    
    Signed-off-by: Javier Alonso <[email protected]>
---
 arch/arm/src/s32k1xx/s32k1xx_flexcan.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm/src/s32k1xx/s32k1xx_flexcan.c 
b/arch/arm/src/s32k1xx/s32k1xx_flexcan.c
index 2e9beaa7285..15292eedeb5 100644
--- a/arch/arm/src/s32k1xx/s32k1xx_flexcan.c
+++ b/arch/arm/src/s32k1xx/s32k1xx_flexcan.c
@@ -273,11 +273,11 @@ static const struct flexcan_config_s 
s32k1xx_flexcan2_config =
   .tx_pin    = PIN_CAN2_TX,
   .rx_pin    = PIN_CAN2_RX,
 #ifdef PIN_CAN2_ENABLE
-  .enable_pin = PIN_CAN2_ENABLE,
-  .rx_pin     = CAN2_ENABLE_HIGH,
+  .enable_pin  = PIN_CAN2_ENABLE,
+  .rx_pin      = CAN2_ENABLE_OUT,
 #else
-  .enable_pin = 0,
-  .rx_pin     = 0,
+  .enable_pin  = 0,
+  .enable_high = 0,
 #endif
   .bus_irq   = S32K1XX_IRQ_CAN2_BUS,
   .error_irq = S32K1XX_IRQ_CAN2_ERROR,

Reply via email to