* [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support
@ 2026-11-11 9:23 Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 1/8] dt-bindings: arm: fsl: Add BSH SMM-M2B board Haoning Cheng
` (7 more replies)
0 siblings, 8 replies; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Krzysztof Kozlowski, Michael Trimarchi, Leonhard Hesse,
Roman Smrž, Qiu Guochang, Akhil Narayanan, Florian Ager
Update BSH SystemMaster device trees and add SMM-M2B support
Add device tree support for the BSH SMM-M2B SystemMaster, a variant
of the SMM-M2 equipped with an AIC Wi-Fi and Bluetooth chip.
This series adds the SMM-M2B board binding and device tree,
reusing common hardware definitions shared with the SMM-M2.
Configure the minimum NAND ECC strength on BSH boards, optimize
Wi-Fi and Bluetooth GPIO settings for EMC, and pull down the
active-high WLAN IRQ to prevent unwanted interrupts.
Configure UART2 pin multiplexing and enable USB OTG mode on the
SMM-M2 and SMM-S2 boards.
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
Changes in v3:
- Update commit messages and subjects based on Frank Li's review comments.
- Add Krzysztof Kozlowski's Acked-by tag.
- Link to v2: https://patch.msgid.link/20261105-add-bsh-smm-m2-v2-0-fb5ffc7da486@cn.bosch.com
Changes in v2:
- Drop the redundant RNGB enablement patch.
- Keep the WLAN power sequence in the SMM-M2-specific DTS.
- Move the SPI display and touchscreen overlay out of this series.
- Link to v1: https://patch.msgid.link/20261104-add-bsh-smm-m2-v1-0-369f0a77e021@cn.bosch.com
---
Akhil Narayanan (1):
ARM: dts: imx6ulz: Configure UART2 pins on BSH SMM-M2 variants
Florian Ager (1):
ARM: dts: imx: Enable USB OTG mode on BSH SMM-M2 and SMM-S2
Haoning Cheng (1):
dt-bindings: arm: fsl: Add BSH SMM-M2B board
Leonhard Hesse (1):
ARM: dts: imx6ulz: Adjust BSH SMM-M2 Wi-Fi and Bluetooth pin settings
Michael Trimarchi (1):
ARM: dts: imx: Use minimum NAND ECC strength on BSH boards
Qiu Guochang (2):
ARM: dts: imx6ulz: Factor out BSH SMM-M2 common device tree
ARM: dts: imx6ulz: Add BSH SMM-M2B board support
Roman Smrž (1):
ARM: dts: imx6ulz: Pull down BSH SMM-M2 active-high WLAN IRQ
Documentation/devicetree/bindings/arm/fsl.yaml | 1 +
arch/arm/boot/dts/nxp/imx/Makefile | 3 +-
.../dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi | 86 ++++++++++++++++++++
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts | 93 ++++------------------
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2b.dts | 13 +++
.../dts/freescale/imx8mn-bsh-smm-s2-common.dtsi | 2 +-
.../arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts | 1 +
7 files changed, 119 insertions(+), 80 deletions(-)
---
base-commit: ec7b37c768d34107d06bd629d05cde0e2218ee9a
change-id: 20261027-add-bsh-smm-m2-57812d9c7e87
Best regards,
--
Haoning Cheng <Haoning.CHENG@cn.bosch.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v3 1/8] dt-bindings: arm: fsl: Add BSH SMM-M2B board
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
@ 2026-11-11 9:23 ` Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 2/8] ARM: dts: imx: Use minimum NAND ECC strength on BSH boards Haoning Cheng
` (6 subsequent siblings)
7 siblings, 0 replies; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Krzysztof Kozlowski
Add the BSH SMM-M2B SystemMaster to the list of supported
i.MX6ULZ-based boards.
The SMM-M2B is a variant of the BSH SMM-M2 SystemMaster
equipped with an AIC Wi-Fi and Bluetooth chip.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
Documentation/devicetree/bindings/arm/fsl.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml
index f044e9aa04fa..9c86900dec4c 100644
--- a/Documentation/devicetree/bindings/arm/fsl.yaml
+++ b/Documentation/devicetree/bindings/arm/fsl.yaml
@@ -867,6 +867,7 @@ properties:
items:
- enum:
- bsh,imx6ulz-bsh-smm-m2 # i.MX6 ULZ BSH SystemMaster
+ - bsh,imx6ulz-bsh-smm-m2b # i.MX6 ULZ BSH SystemMaster
- fsl,imx6ulz-14x14-evk # i.MX6 ULZ 14x14 EVK Board
- const: fsl,imx6ull # This seems odd. Should be last?
- const: fsl,imx6ulz
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 2/8] ARM: dts: imx: Use minimum NAND ECC strength on BSH boards
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 1/8] dt-bindings: arm: fsl: Add BSH SMM-M2B board Haoning Cheng
@ 2026-11-11 9:23 ` Haoning Cheng
2026-11-11 9:38 ` sashiko-bot
2026-11-11 9:23 ` [PATCH v3 3/8] ARM: dts: imx6ulz: Adjust BSH SMM-M2 Wi-Fi and Bluetooth pin settings Haoning Cheng
` (5 subsequent siblings)
7 siblings, 1 reply; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Michael Trimarchi
From: Michael Trimarchi <michael@amarulasolutions.com>
Configure the GPMI NAND controllers on the BSH SMM-M2 and SMM-S2
to use the minimum ECC strength required by the NAND flash.
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts | 1 +
arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts | 1 +
2 files changed, 2 insertions(+)
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
index 2d9f495660c9..aac211a9f9eb 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
@@ -26,6 +26,7 @@ &gpmi {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpmi_nand>;
nand-on-flash-bbt;
+ fsl,use-minimum-ecc;
status = "okay";
};
diff --git a/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts b/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts
index 11a1ba5bfdb7..df11f81ac50c 100644
--- a/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts
@@ -21,6 +21,7 @@ memory@40000000 {
&gpmi {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpmi_nand>;
+ fsl,use-minimum-ecc;
status = "okay";
};
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 3/8] ARM: dts: imx6ulz: Adjust BSH SMM-M2 Wi-Fi and Bluetooth pin settings
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 1/8] dt-bindings: arm: fsl: Add BSH SMM-M2B board Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 2/8] ARM: dts: imx: Use minimum NAND ECC strength on BSH boards Haoning Cheng
@ 2026-11-11 9:23 ` Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 4/8] ARM: dts: imx6ulz: Pull down BSH SMM-M2 active-high WLAN IRQ Haoning Cheng
` (4 subsequent siblings)
7 siblings, 0 replies; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Leonhard Hesse
From: Leonhard Hesse <leonhard.hesse@bshg.com>
Adjust the pad control settings of the Wi-Fi and Bluetooth REG_ON
GPIOs for board-level EMC optimization.
Reduce the output drive strength of both signals and lower the
output speed setting of WL_REG_ON. The slew rate remains unchanged.
Update BT_REG_ON from 0x79 to 0x100b1 and WL_REG_ON from 0x79 to
0x3029.
Signed-off-by: Leonhard Hesse <leonhard.hesse@bshg.com>
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
index aac211a9f9eb..dabe17222f13 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
@@ -125,7 +125,7 @@ MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x1b0b1
MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX 0x1b099
MX6UL_PAD_UART3_RTS_B__UART3_DCE_RTS 0x1b0b1
MX6UL_PAD_UART3_CTS_B__UART3_DCE_CTS 0x1b099
- MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0x79 /* BT_REG_ON */
+ MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0x100b1 /* BT_REG_ON */
MX6UL_PAD_SD1_CLK__GPIO2_IO17 0x100b1 /* BT_DEV_WAKE out */
MX6UL_PAD_ENET2_TX_EN__GPIO2_IO13 0x1b0b0 /* BT_HOST_WAKE in */
>;
@@ -146,7 +146,7 @@ MX6UL_PAD_CSI_DATA00__USDHC2_DATA0 0x17059
MX6UL_PAD_CSI_DATA01__USDHC2_DATA1 0x17059
MX6UL_PAD_CSI_DATA02__USDHC2_DATA2 0x17059
MX6UL_PAD_CSI_DATA03__USDHC2_DATA3 0x17059
- MX6UL_PAD_SD1_DATA3__GPIO2_IO21 0x79 /* WL_REG_ON */
+ MX6UL_PAD_SD1_DATA3__GPIO2_IO21 0x3029 /* WL_REG_ON */
MX6UL_PAD_UART2_CTS_B__GPIO1_IO22 0x100b1 /* WL_DEV_WAKE - WiFi_GPIO_4 - WiFi FW UART */
MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 0x1b0b1 /* WL_HOST_WAKE - WIFI_GPIO_0 - OOB IRQ */
MX6UL_PAD_ENET1_RX_EN__OSC32K_32K_OUT 0x4001b031 /* OSC 32Khz wifi clk in */
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 4/8] ARM: dts: imx6ulz: Pull down BSH SMM-M2 active-high WLAN IRQ
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
` (2 preceding siblings ...)
2026-11-11 9:23 ` [PATCH v3 3/8] ARM: dts: imx6ulz: Adjust BSH SMM-M2 Wi-Fi and Bluetooth pin settings Haoning Cheng
@ 2026-11-11 9:23 ` Haoning Cheng
2026-11-11 9:34 ` sashiko-bot
2026-11-11 9:23 ` [PATCH v3 5/8] ARM: dts: imx6ulz: Factor out BSH SMM-M2 common device tree Haoning Cheng
` (3 subsequent siblings)
7 siblings, 1 reply; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Roman Smrž
From: Roman Smrž <roman@amarulasolutions.com>
The pin is active when high, so pull-up configuration can trigger
unwanted interrupts during module loading or unloading. Change the
configuration to pull-down to avoid crashes there.
Signed-off-by: Roman Smrž <roman@amarulasolutions.com>
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
index dabe17222f13..91c76909c086 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
@@ -81,7 +81,6 @@ &usdhc2 {
non-removable;
cap-power-off-card;
keep-power-in-suspend;
- cap-sdio-irq;
mmc-pwrseq = <&usdhc2_pwrseq>;
status = "okay";
@@ -148,7 +147,7 @@ MX6UL_PAD_CSI_DATA02__USDHC2_DATA2 0x17059
MX6UL_PAD_CSI_DATA03__USDHC2_DATA3 0x17059
MX6UL_PAD_SD1_DATA3__GPIO2_IO21 0x3029 /* WL_REG_ON */
MX6UL_PAD_UART2_CTS_B__GPIO1_IO22 0x100b1 /* WL_DEV_WAKE - WiFi_GPIO_4 - WiFi FW UART */
- MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 0x1b0b1 /* WL_HOST_WAKE - WIFI_GPIO_0 - OOB IRQ */
+ MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 0x130b1 /* WL_HOST_WAKE - WIFI_GPIO_0 - OOB IRQ */
MX6UL_PAD_ENET1_RX_EN__OSC32K_32K_OUT 0x4001b031 /* OSC 32Khz wifi clk in */
>;
};
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 5/8] ARM: dts: imx6ulz: Factor out BSH SMM-M2 common device tree
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
` (3 preceding siblings ...)
2026-11-11 9:23 ` [PATCH v3 4/8] ARM: dts: imx6ulz: Pull down BSH SMM-M2 active-high WLAN IRQ Haoning Cheng
@ 2026-11-11 9:23 ` Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 6/8] ARM: dts: imx6ulz: Add BSH SMM-M2B board support Haoning Cheng
` (2 subsequent siblings)
7 siblings, 0 replies; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Qiu Guochang
From: Qiu Guochang <guochang.qiu@cn.bosch.com>
Move the hardware definitions shared by the BSH SMM-M2 and SMM-M2B
variants into a common device tree include file.
Update the existing SMM-M2 device tree to include the common file
while keeping board-specific configurations separate.
Signed-off-by: Qiu Guochang <guochang.qiu@cn.bosch.com>
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
.../dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi | 80 +++++++++++++++++++
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts | 93 ++++------------------
2 files changed, 95 insertions(+), 78 deletions(-)
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi
new file mode 100644
index 000000000000..83df5c696748
--- /dev/null
+++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi
@@ -0,0 +1,80 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright (C) 2021 BSH Hausgeraete GmbH
+ */
+
+#include <dt-bindings/input/input.h>
+#include "imx6ulz.dtsi"
+
+/ {
+ chosen {
+ stdout-path = &uart4;
+ };
+};
+
+&gpmi {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpmi_nand>;
+ nand-on-flash-bbt;
+ fsl,use-minimum-ecc;
+ status = "okay";
+};
+
+&snvs_poweroff {
+ status = "okay";
+};
+
+&uart2 {
+ status = "okay";
+};
+
+&uart4 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_uart4>;
+ status = "okay";
+};
+
+&usbotg1 {
+ dr_mode = "peripheral";
+ srp-disable;
+ hnp-disable;
+ adp-disable;
+ status = "okay";
+};
+
+&usbphy1 {
+ fsl,tx-d-cal = <106>;
+};
+
+&wdog1 {
+ status = "okay";
+};
+
+&iomuxc {
+ pinctrl_gpmi_nand: gpminandgrp {
+ fsl,pins = <
+ MX6UL_PAD_NAND_CLE__RAWNAND_CLE 0xb0b1
+ MX6UL_PAD_NAND_ALE__RAWNAND_ALE 0xb0b1
+ MX6UL_PAD_NAND_WP_B__RAWNAND_WP_B 0xb0b1
+ MX6UL_PAD_NAND_READY_B__RAWNAND_READY_B 0xb000
+ MX6UL_PAD_NAND_CE0_B__RAWNAND_CE0_B 0xb0b1
+ MX6UL_PAD_NAND_RE_B__RAWNAND_RE_B 0xb0b1
+ MX6UL_PAD_NAND_WE_B__RAWNAND_WE_B 0xb0b1
+ MX6UL_PAD_NAND_DATA00__RAWNAND_DATA00 0xb0b1
+ MX6UL_PAD_NAND_DATA01__RAWNAND_DATA01 0xb0b1
+ MX6UL_PAD_NAND_DATA02__RAWNAND_DATA02 0xb0b1
+ MX6UL_PAD_NAND_DATA03__RAWNAND_DATA03 0xb0b1
+ MX6UL_PAD_NAND_DATA04__RAWNAND_DATA04 0xb0b1
+ MX6UL_PAD_NAND_DATA05__RAWNAND_DATA05 0xb0b1
+ MX6UL_PAD_NAND_DATA06__RAWNAND_DATA06 0xb0b1
+ MX6UL_PAD_NAND_DATA07__RAWNAND_DATA07 0xb0b1
+ >;
+ };
+
+ pinctrl_uart4: uart4grp {
+ fsl,pins = <
+ MX6UL_PAD_UART4_TX_DATA__UART4_DCE_TX 0x1b0b1
+ MX6UL_PAD_UART4_RX_DATA__UART4_DCE_RX 0x1b0b1
+ >;
+ };
+};
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
index 91c76909c086..66ea70d93590 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
@@ -5,39 +5,18 @@
/dts-v1/;
-#include <dt-bindings/input/input.h>
-#include "imx6ulz.dtsi"
+#include "imx6ulz-bsh-smm-m2-common.dtsi"
/ {
model = "BSH SMM M2";
compatible = "bsh,imx6ulz-bsh-smm-m2", "fsl,imx6ull", "fsl,imx6ulz";
- chosen {
- stdout-path = &uart4;
- };
-
usdhc2_pwrseq: usdhc2-pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&gpio2 21 GPIO_ACTIVE_LOW>;
};
};
-&gpmi {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_gpmi_nand>;
- nand-on-flash-bbt;
- fsl,use-minimum-ecc;
- status = "okay";
-};
-
-&snvs_poweroff {
- status = "okay";
-};
-
-&uart2 {
- status = "okay";
-};
-
&uart3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>;
@@ -53,24 +32,6 @@ bluetooth {
};
};
-&uart4 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_uart4>;
- status = "okay";
-};
-
-&usbotg1 {
- dr_mode = "peripheral";
- srp-disable;
- hnp-disable;
- adp-disable;
- status = "okay";
-};
-
-&usbphy1 {
- fsl,tx-d-cal = <106>;
-};
-
&usdhc2 {
#address-cells = <1>;
#size-cells = <0>;
@@ -93,47 +54,19 @@ brcmf: wifi@1 {
};
};
-&wdog1 {
- status = "okay";
-};
-
&iomuxc {
- pinctrl_gpmi_nand: gpminandgrp {
- fsl,pins = <
- MX6UL_PAD_NAND_CLE__RAWNAND_CLE 0xb0b1
- MX6UL_PAD_NAND_ALE__RAWNAND_ALE 0xb0b1
- MX6UL_PAD_NAND_WP_B__RAWNAND_WP_B 0xb0b1
- MX6UL_PAD_NAND_READY_B__RAWNAND_READY_B 0xb000
- MX6UL_PAD_NAND_CE0_B__RAWNAND_CE0_B 0xb0b1
- MX6UL_PAD_NAND_RE_B__RAWNAND_RE_B 0xb0b1
- MX6UL_PAD_NAND_WE_B__RAWNAND_WE_B 0xb0b1
- MX6UL_PAD_NAND_DATA00__RAWNAND_DATA00 0xb0b1
- MX6UL_PAD_NAND_DATA01__RAWNAND_DATA01 0xb0b1
- MX6UL_PAD_NAND_DATA02__RAWNAND_DATA02 0xb0b1
- MX6UL_PAD_NAND_DATA03__RAWNAND_DATA03 0xb0b1
- MX6UL_PAD_NAND_DATA04__RAWNAND_DATA04 0xb0b1
- MX6UL_PAD_NAND_DATA05__RAWNAND_DATA05 0xb0b1
- MX6UL_PAD_NAND_DATA06__RAWNAND_DATA06 0xb0b1
- MX6UL_PAD_NAND_DATA07__RAWNAND_DATA07 0xb0b1
- >;
- };
-
pinctrl_uart3: uart3grp {
fsl,pins = <
MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x1b0b1
MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX 0x1b099
MX6UL_PAD_UART3_RTS_B__UART3_DCE_RTS 0x1b0b1
MX6UL_PAD_UART3_CTS_B__UART3_DCE_CTS 0x1b099
- MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0x100b1 /* BT_REG_ON */
- MX6UL_PAD_SD1_CLK__GPIO2_IO17 0x100b1 /* BT_DEV_WAKE out */
- MX6UL_PAD_ENET2_TX_EN__GPIO2_IO13 0x1b0b0 /* BT_HOST_WAKE in */
- >;
- };
-
- pinctrl_uart4: uart4grp {
- fsl,pins = <
- MX6UL_PAD_UART4_TX_DATA__UART4_DCE_TX 0x1b0b1
- MX6UL_PAD_UART4_RX_DATA__UART4_DCE_RX 0x1b0b1
+ /* BT_REG_ON */
+ MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0x100b1
+ /* BT_DEV_WAKE out */
+ MX6UL_PAD_SD1_CLK__GPIO2_IO17 0x100b1
+ /* BT_HOST_WAKE in */
+ MX6UL_PAD_ENET2_TX_EN__GPIO2_IO13 0x1b0b0
>;
};
@@ -145,10 +78,14 @@ MX6UL_PAD_CSI_DATA00__USDHC2_DATA0 0x17059
MX6UL_PAD_CSI_DATA01__USDHC2_DATA1 0x17059
MX6UL_PAD_CSI_DATA02__USDHC2_DATA2 0x17059
MX6UL_PAD_CSI_DATA03__USDHC2_DATA3 0x17059
- MX6UL_PAD_SD1_DATA3__GPIO2_IO21 0x3029 /* WL_REG_ON */
- MX6UL_PAD_UART2_CTS_B__GPIO1_IO22 0x100b1 /* WL_DEV_WAKE - WiFi_GPIO_4 - WiFi FW UART */
- MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 0x130b1 /* WL_HOST_WAKE - WIFI_GPIO_0 - OOB IRQ */
- MX6UL_PAD_ENET1_RX_EN__OSC32K_32K_OUT 0x4001b031 /* OSC 32Khz wifi clk in */
+ /* WL_REG_ON */
+ MX6UL_PAD_SD1_DATA3__GPIO2_IO21 0x3029
+ /* WL_DEV_WAKE - WiFi_GPIO_4 - WiFi FW UART */
+ MX6UL_PAD_UART2_CTS_B__GPIO1_IO22 0x100b1
+ /* WL_HOST_WAKE - WIFI_GPIO_0 - OOB IRQ */
+ MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 0x130b1
+ /* OSC 32Khz wifi clk in */
+ MX6UL_PAD_ENET1_RX_EN__OSC32K_32K_OUT 0x4001b031
>;
};
};
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 6/8] ARM: dts: imx6ulz: Add BSH SMM-M2B board support
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
` (4 preceding siblings ...)
2026-11-11 9:23 ` [PATCH v3 5/8] ARM: dts: imx6ulz: Factor out BSH SMM-M2 common device tree Haoning Cheng
@ 2026-11-11 9:23 ` Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 7/8] ARM: dts: imx6ulz: Configure UART2 pins on BSH SMM-M2 variants Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 8/8] ARM: dts: imx: Enable USB OTG mode on BSH SMM-M2 and SMM-S2 Haoning Cheng
7 siblings, 0 replies; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Qiu Guochang
From: Qiu Guochang <guochang.qiu@cn.bosch.com>
Add basic device tree support for the BSH SMM-M2B SystemMaster,
a hardware variant of the BSH SMM-M2.
Reuse the common SMM-M2 hardware definitions and provide the
board-specific model and compatible strings.
Signed-off-by: Qiu Guochang <guochang.qiu@cn.bosch.com>
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
arch/arm/boot/dts/nxp/imx/Makefile | 3 ++-
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2b.dts | 13 +++++++++++++
2 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/nxp/imx/Makefile b/arch/arm/boot/dts/nxp/imx/Makefile
index b5fad2ba764c..de9a317132ed 100644
--- a/arch/arm/boot/dts/nxp/imx/Makefile
+++ b/arch/arm/boot/dts/nxp/imx/Makefile
@@ -420,7 +420,8 @@ dtb-$(CONFIG_SOC_IMX6UL) += \
imx6ull-var-som-concerto.dtb \
imx6ull-var-som-concerto-full.dtb \
imx6ulz-14x14-evk.dtb \
- imx6ulz-bsh-smm-m2.dtb
+ imx6ulz-bsh-smm-m2.dtb \
+ imx6ulz-bsh-smm-m2b.dtb
imx7d-colibri-emmc-aster-panel-cap-touch-7inch-parallel-dtbs := \
imx7d-colibri-emmc-aster.dtb \
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2b.dts b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2b.dts
new file mode 100644
index 000000000000..9dc92da6ace9
--- /dev/null
+++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2b.dts
@@ -0,0 +1,13 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright (C) 2021 BSH Hausgeraete GmbH
+ */
+
+/dts-v1/;
+
+#include "imx6ulz-bsh-smm-m2-common.dtsi"
+
+/ {
+ model = "BSH SMM M2B";
+ compatible = "bsh,imx6ulz-bsh-smm-m2b", "fsl,imx6ull", "fsl,imx6ulz";
+};
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 7/8] ARM: dts: imx6ulz: Configure UART2 pins on BSH SMM-M2 variants
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
` (5 preceding siblings ...)
2026-11-11 9:23 ` [PATCH v3 6/8] ARM: dts: imx6ulz: Add BSH SMM-M2B board support Haoning Cheng
@ 2026-11-11 9:23 ` Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 8/8] ARM: dts: imx: Enable USB OTG mode on BSH SMM-M2 and SMM-S2 Haoning Cheng
7 siblings, 0 replies; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Akhil Narayanan
From: Akhil Narayanan <akhil.narayanan@in.bosch.com>
Configure the UART2 RX and TX pin multiplexing for the BSH SMM-M2
variants.
Signed-off-by: Akhil Narayanan <akhil.narayanan@in.bosch.com>
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi
index 83df5c696748..27c7b6acc658 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi
@@ -25,6 +25,8 @@ &snvs_poweroff {
};
&uart2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_uart2>;
status = "okay";
};
@@ -77,4 +79,11 @@ MX6UL_PAD_UART4_TX_DATA__UART4_DCE_TX 0x1b0b1
MX6UL_PAD_UART4_RX_DATA__UART4_DCE_RX 0x1b0b1
>;
};
+
+ pinctrl_uart2: uart2grp {
+ fsl,pins = <
+ MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX 0x1b0b1
+ MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX 0x1b0b1
+ >;
+ };
};
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v3 8/8] ARM: dts: imx: Enable USB OTG mode on BSH SMM-M2 and SMM-S2
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
` (6 preceding siblings ...)
2026-11-11 9:23 ` [PATCH v3 7/8] ARM: dts: imx6ulz: Configure UART2 pins on BSH SMM-M2 variants Haoning Cheng
@ 2026-11-11 9:23 ` Haoning Cheng
7 siblings, 0 replies; 11+ messages in thread
From: Haoning Cheng @ 2026-11-11 9:23 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Haoning Cheng,
Florian Ager
From: Florian Ager <florian.ager@bshg.com>
Configure USB OTG1 in OTG mode instead of peripheral-only mode
on the BSH SMM-M2 and SMM-S2 board variants.
Remove the SRP, HNP and ADP disable properties from the SMM-M2
configuration.
Signed-off-by: Florian Ager <florian.ager@bshg.com>
Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
---
arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi | 5 +----
arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-common.dtsi | 2 +-
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi
index 27c7b6acc658..96f084b6ade4 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2-common.dtsi
@@ -37,10 +37,7 @@ &uart4 {
};
&usbotg1 {
- dr_mode = "peripheral";
- srp-disable;
- hnp-disable;
- adp-disable;
+ dr_mode = "otg";
status = "okay";
};
diff --git a/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-common.dtsi b/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-common.dtsi
index d20393c2d901..7a121459f95c 100644
--- a/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-common.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-common.dtsi
@@ -248,7 +248,7 @@ &uart4 {
};
&usbotg1 {
- dr_mode = "peripheral";
+ dr_mode = "otg";
disable-over-current;
status = "okay";
};
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v3 4/8] ARM: dts: imx6ulz: Pull down BSH SMM-M2 active-high WLAN IRQ
2026-11-11 9:23 ` [PATCH v3 4/8] ARM: dts: imx6ulz: Pull down BSH SMM-M2 active-high WLAN IRQ Haoning Cheng
@ 2026-11-11 9:34 ` sashiko-bot
0 siblings, 0 replies; 11+ messages in thread
From: sashiko-bot @ 2026-11-11 9:34 UTC (permalink / raw)
To: Haoning Cheng; +Cc: devicetree, imx, robh, conor+dt, Frank.Li
Thank you for your contribution! Sashiko AI review found 2 potential
issues to consider:
- [Low] ARM: dts: imx6ulz: unexplained removal of cap-sdio-irq from
usdhc2
- [Low] ARM: dts: imx6ulz: missing Fixes trailer for WLAN IRQ pull-down
fix
--
commit 61c3fd2805764ab0c52e0d5e388368c4a4afb1cd
Author: Roman Smrž <roman@amarulasolutions.com>
> ARM: dts: imx6ulz: Pull down BSH SMM-M2 active-high WLAN IRQ
>
> The pin is active when high, so pull-up configuration can trigger
> unwanted interrupts during module loading or unloading. Change the
> configuration to pull-down to avoid crashes there.
>
> Signed-off-by: Roman Smrž <roman@amarulasolutions.com>
> Signed-off-by: Haoning Cheng <Haoning.CHENG@cn.bosch.com>
[Severity: Low]
This fixes the pull-up configuration on the active-high WLAN IRQ pin. Should
this include a Fixes tag?
Fixes: eb197dfe389a ("ARM: dts: imx6ulz-bsh-smm-m2: Add BSH SMM-M2 IMX6ULZ SystemMaster")
> diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
> index dabe17222f139..91c76909c0867 100644
> --- a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
> +++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
> @@ -81,7 +81,6 @@ &usdhc2 {
> non-removable;
> cap-power-off-card;
> keep-power-in-suspend;
> - cap-sdio-irq;
> mmc-pwrseq = <&usdhc2_pwrseq>;
> status = "okay";
[Severity: Low]
Why is cap-sdio-irq removed from usdhc2 here? The commit message only
describes changing the MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 pad configuration,
and sdhci_setup_host() sets MMC_CAP_SDIO_IRQ unconditionally regardless of
this property. If dropping the redundant property is intentional, could it
be mentioned in the commit message or split into a separate commit?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261111-add-bsh-smm-m2-v3-0-4abdf10e9a7f@cn.bosch.com?part=4
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v3 2/8] ARM: dts: imx: Use minimum NAND ECC strength on BSH boards
2026-11-11 9:23 ` [PATCH v3 2/8] ARM: dts: imx: Use minimum NAND ECC strength on BSH boards Haoning Cheng
@ 2026-11-11 9:38 ` sashiko-bot
0 siblings, 0 replies; 11+ messages in thread
From: sashiko-bot @ 2026-11-11 9:38 UTC (permalink / raw)
To: Haoning Cheng; +Cc: devicetree, imx, robh, conor+dt, Frank.Li
Thank you for your contribution! Sashiko AI review found 1 potential
issue to consider:
- [Medium] ARM: dts: imx: unjustified incompatible NAND ECC layout
change on BSH boards
--
commit 1e6153dffd8fb43d1ff6ef7ef9b632628cf01234
Author: Michael Trimarchi <michael@amarulasolutions.com>
ARM: dts: imx: Use minimum NAND ECC strength on BSH boards
This commit enables the fsl,use-minimum-ecc property on the GPMI NAND
controllers for the BSH SMM-M2 and SMM-S2 boards.
> diff --git a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
> index 2d9f495660c9a..aac211a9f9ebd 100644
> --- a/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
> +++ b/arch/arm/boot/dts/nxp/imx/imx6ulz-bsh-smm-m2.dts
> @@ -26,6 +26,7 @@ &gpmi {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_gpmi_nand>;
> nand-on-flash-bbt;
> + fsl,use-minimum-ecc;
> status = "okay";
> };
>
> diff --git a/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts b/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts
> index 11a1ba5bfdb7e..df11f81ac50c1 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts
> +++ b/arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2.dts
> @@ -21,6 +21,7 @@ memory@40000000 {
> &gpmi {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_gpmi_nand>;
> + fsl,use-minimum-ecc;
> status = "okay";
> };
[Severity: Medium]
Does adding fsl,use-minimum-ecc to these existing boards break
compatibility with NAND flash already formatted using the mainline device
trees?
In common_nfc_set_geometry(), enabling fsl,use-minimum-ecc switches the
controller from legacy_set_geometry(), which maximizes ECC strength across
the OOB area, to set_geometry_by_ecc_info() using the chip's minimum ECC
requirements. Because the GPMI BCH layout interleaves data and ECC parity
bits across the page and derives the bad-block marker offsets from the ECC
strength, this changes the physical on-flash layout and makes existing
NAND partitions, UBI volumes, and on-flash bad block tables unreadable
with -EBADMSG.
If this change is intentional (for example, to match the ECC geometry used
by the bootloader and flashing tools), could the commit message explain why
the incompatible layout change is needed and how existing devices are
affected?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261111-add-bsh-smm-m2-v3-0-4abdf10e9a7f@cn.bosch.com?part=2
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2026-11-11 9:38 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-11 9:23 [PATCH v3 0/8] Update BSH SystemMaster device trees and add SMM-M2B support Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 1/8] dt-bindings: arm: fsl: Add BSH SMM-M2B board Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 2/8] ARM: dts: imx: Use minimum NAND ECC strength on BSH boards Haoning Cheng
2026-11-11 9:38 ` sashiko-bot
2026-11-11 9:23 ` [PATCH v3 3/8] ARM: dts: imx6ulz: Adjust BSH SMM-M2 Wi-Fi and Bluetooth pin settings Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 4/8] ARM: dts: imx6ulz: Pull down BSH SMM-M2 active-high WLAN IRQ Haoning Cheng
2026-11-11 9:34 ` sashiko-bot
2026-11-11 9:23 ` [PATCH v3 5/8] ARM: dts: imx6ulz: Factor out BSH SMM-M2 common device tree Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 6/8] ARM: dts: imx6ulz: Add BSH SMM-M2B board support Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 7/8] ARM: dts: imx6ulz: Configure UART2 pins on BSH SMM-M2 variants Haoning Cheng
2026-11-11 9:23 ` [PATCH v3 8/8] ARM: dts: imx: Enable USB OTG mode on BSH SMM-M2 and SMM-S2 Haoning Cheng
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox