From 4f16a4d1850f114a9d280916f0dd431a275264af Mon Sep 17 00:00:00 2001 From: Ulrich KAMDEM Date: Mon, 27 Oct 2025 21:57:08 +0100 Subject: [PATCH 1/2] tests: drivers: nucleo_u385rg_q: update i2c tests drivers Enable and add pinctrl for the I2C3 node, and disable the SPI1 node since it is enabled by default on this board (via the Arduino connector), which causes a conflict with the I2C3 pinctrl configuration. Signed-off-by: Ulrich KAMDEM --- .../i2c/i2c_target_api/boards/nucleo_u385rg_q.overlay | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/drivers/i2c/i2c_target_api/boards/nucleo_u385rg_q.overlay b/tests/drivers/i2c/i2c_target_api/boards/nucleo_u385rg_q.overlay index f8d62b45a957f..a6404650068a6 100644 --- a/tests/drivers/i2c/i2c_target_api/boards/nucleo_u385rg_q.overlay +++ b/tests/drivers/i2c/i2c_target_api/boards/nucleo_u385rg_q.overlay @@ -14,6 +14,10 @@ */ &i2c3 { + pinctrl-0 = <&i2c3_scl_pa7 &i2c3_sda_pc1>; + pinctrl-names = "default"; + status = "okay"; + eeprom0: eeprom@54 { compatible = "zephyr,i2c-target-eeprom"; reg = <0x54>; @@ -28,3 +32,7 @@ size = <256>; }; }; + +&spi1 { + status = "disabled"; +}; From 6ef85ecc7156fb118e7f214eeca65afde7055656 Mon Sep 17 00:00:00 2001 From: Ulrich KAMDEM Date: Mon, 27 Oct 2025 21:39:42 +0100 Subject: [PATCH 2/2] boards: st: nucleo_u385rg_q: change arduino_spi to spi1 According to user manual(UM3062, table 16), arduino_spi is connected to spi1 instead of spi3. Enable spi1 node and affect the SPI_NSS pin with I/O function to do the chip select. Remove i2c3 to avoid conflict with PA7 pin. Move the status property of dac1 node to maintain consistency in the ordering of node properties. NB: The SPI_NSS pin is not listed as an alternate function for SPI1 in the user manual (UM3062, Table 17). Signed-off-by: Ulrich KAMDEM --- .../nucleo_u385rg_q/arduino_r3_connector.dtsi | 2 +- boards/st/nucleo_u385rg_q/nucleo_u385rg_q.dts | 21 ++++++++++++------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/boards/st/nucleo_u385rg_q/arduino_r3_connector.dtsi b/boards/st/nucleo_u385rg_q/arduino_r3_connector.dtsi index ebd73015dadea..0d32ac7ced2ce 100644 --- a/boards/st/nucleo_u385rg_q/arduino_r3_connector.dtsi +++ b/boards/st/nucleo_u385rg_q/arduino_r3_connector.dtsi @@ -39,6 +39,6 @@ arduino_i2c: &i2c1 {}; -arduino_spi: &spi3 {}; +arduino_spi: &spi1 {}; arduino_serial: &lpuart1 {}; diff --git a/boards/st/nucleo_u385rg_q/nucleo_u385rg_q.dts b/boards/st/nucleo_u385rg_q/nucleo_u385rg_q.dts index b112697ffd45f..8ad4026f9752f 100644 --- a/boards/st/nucleo_u385rg_q/nucleo_u385rg_q.dts +++ b/boards/st/nucleo_u385rg_q/nucleo_u385rg_q.dts @@ -145,9 +145,9 @@ }; &dac1 { - status = "okay"; pinctrl-0 = <&dac1_out1_pa4>; pinctrl-names = "default"; + status = "okay"; }; &fdcan1 { @@ -168,18 +168,25 @@ status = "okay"; }; -&i2c3 { - pinctrl-0 = <&i2c3_scl_pa7 &i2c3_sda_pc1>; - pinctrl-names = "default"; - status = "okay"; -}; - &rng { clocks = <&rcc STM32_CLOCK(AHB2, 18)>, <&rcc STM32_SRC_MSIK RNG_SEL(1)>; status = "okay"; }; +&spi1 { + pinctrl-0 = <&spi1_sck_pa5 &spi1_miso_pa6 + &spi1_mosi_pa7>; + pinctrl-names = "default"; + + /* Arduino D10 (SPI_NSS) is wired to PC9 which + * doesn't support hardware NSS; the software + * cs-gpios must be used instead. + */ + cs-gpios = <&gpioc 9 GPIO_ACTIVE_LOW>; + status = "okay"; +}; + &spi3 { pinctrl-0 = <&spi3_nss_pa15 &spi3_sck_pb3 &spi3_miso_pb4 &spi3_mosi_pb5>;