Hi Shawn, On 12/5/21 10:35 PM, Shawn Guo wrote: > On Tue, Nov 23, 2021 at 12:12:52PM -0300, Ariel D'Alessandro wrote: >> From: Michael Trimarchi <michael@xxxxxxxxxxxxxxxxxxxx> >> >> Add DTS of BSH SMM-M2 SystemMaster. >> >> This version comes with: >> - 128 MiB DDR3 RAM >> - 256 MiB Nand >> - wifi >> - bluetooth >> >> Signed-off-by: Ariel D'Alessandro <ariel.dalessandro@xxxxxxxxxxxxx> >> Signed-off-by: Michael Trimarchi <michael@xxxxxxxxxxxxxxxxxxxx> >> --- >> arch/arm/boot/dts/Makefile | 3 +- >> arch/arm/boot/dts/imx6ulz-bsh-smm-m2.dts | 153 +++++++++++++++++++++++ >> 2 files changed, 155 insertions(+), 1 deletion(-) >> create mode 100644 arch/arm/boot/dts/imx6ulz-bsh-smm-m2.dts >> >> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile >> index 0de64f237cd8..e6d4ad497985 100644 >> --- a/arch/arm/boot/dts/Makefile >> +++ b/arch/arm/boot/dts/Makefile >> @@ -693,7 +693,8 @@ dtb-$(CONFIG_SOC_IMX6UL) += \ >> imx6ull-phytec-segin-ff-rdk-nand.dtb \ >> imx6ull-phytec-segin-ff-rdk-emmc.dtb \ >> imx6ull-phytec-segin-lc-rdk-nand.dtb \ >> - imx6ulz-14x14-evk.dtb >> + imx6ulz-14x14-evk.dtb \ >> + imx6ulz-bsh-smm-m2.dts >> dtb-$(CONFIG_SOC_IMX7D) += \ >> imx7d-cl-som-imx7.dtb \ >> imx7d-colibri-aster.dtb \ >> diff --git a/arch/arm/boot/dts/imx6ulz-bsh-smm-m2.dts b/arch/arm/boot/dts/imx6ulz-bsh-smm-m2.dts >> new file mode 100644 >> index 000000000000..9e82860469e3 >> --- /dev/null >> +++ b/arch/arm/boot/dts/imx6ulz-bsh-smm-m2.dts >> @@ -0,0 +1,153 @@ >> +// SPDX-License-Identifier: (GPL-2.0 OR MIT) >> +/* >> + * Copyright (C) 2021 BSH Hausgeraete GmbH >> + */ >> + >> +/dts-v1/; >> + >> +#include <dt-bindings/input/input.h> >> +#include "imx6ulz.dtsi" >> + >> +/ { >> + model = "BSH SMM M2"; >> + compatible = "bsh,imx6ulz-bsh-smm-m2", "fsl,imx6ull"; >> + >> + chosen { >> + stdout-path = &uart4; >> + }; >> + >> + usdhc2_pwrseq: usdhc2_pwrseq { >> + compatible = "mmc-pwrseq-simple"; >> + reset-gpios = <&gpio2 21 GPIO_ACTIVE_LOW>; >> + status = "okay"; > > "okay" status is generally used to flip "disabled" devices. Fixed in v3. > >> + }; >> + >> +}; >> + >> +&uart3 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_bluetooth_uart>; >> + uart-has-rtscts; >> + > > Unneeded newline. Fixed in v3. > >> + status = "okay"; >> + >> + bluetooth { >> + compatible = "brcm,bcm4330-bt"; >> + max-speed = <3000000>; >> + shutdown-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>; >> + device-wakeup-gpios = <&gpio2 17 GPIO_ACTIVE_HIGH>; >> + host-wakeup-gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>; >> + }; >> +}; >> + >> +&uart4 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_debug_uart>; >> + 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>; >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_wlan>; >> + bus-width = <4>; >> + no-1-8-v; >> + non-removable; >> + cap-power-off-card; >> + pm-ignore-notify; > > What is this? Wrong vendor property, removed in v3. Interesting there're other cases as well: $ git grep -w pm-ignore-notify arch/arm/boot/dts/imx6ulz-bsh-smm-m2.dts: pm-ignore-notify; arch/arm64/boot/dts/freescale/imx8mm-beacon-som.dtsi: pm-ignore-notify; arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2.dts: pm-ignore-notify; arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-edimm2.2.dts: pm-ignore-notify; arch/arm64/boot/dts/freescale/imx8mn-beacon-som.dtsi: pm-ignore-notify; arch/arm64/boot/dts/renesas/beacon-renesom-som.dtsi: pm-ignore-notify; > >> + keep-power-in-suspend; >> + wifi-host; > > and this? Wrong vendor property, removed in v3. > >> + cap-sdio-irq; >> + mmc-pwrseq = <&usdhc2_pwrseq>; >> + status = "okay"; >> + >> + brcmf: wifi@1 { >> + reg = <1>; >> + compatible = "brcm,bcm4329-fmac"; >> + interrupt-parent = <&gpio1>; >> + interrupts = <18 IRQ_TYPE_LEVEL_HIGH>; >> + interrupt-names = "host-wake"; >> + }; >> +}; >> + >> +&wdog1 { >> + status = "okay"; >> +}; >> + >> +&gpmi { > > Out of alphabetical order. Fixed in v3. > >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_gpmi_nand>; >> + status = "okay"; > > End property list with status. Fixed in v3. > >> + nand-on-flash-bbt; >> +}; >> + >> +&iomuxc { >> + pinctrl_bluetooth_uart: uart3grp { > > Name label and node consistently. Fixed in v3. > >> + 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 >> + > > Unnecessary newline. Fixed in v3. > >> + MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0x79 /* 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_debug_uart: uart4grp { >> + fsl,pins = < >> + MX6UL_PAD_UART4_TX_DATA__UART4_DCE_TX 0x1b0b1 >> + MX6UL_PAD_UART4_RX_DATA__UART4_DCE_RX 0x1b0b1 >> + >; >> + }; >> + >> + pinctrl_gpmi_nand: gpmi-nand { > > Name node in the same style as others. Fixed in v3. > > Shawn > >> + 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_wlan: wlangrp { >> + fsl,pins = < >> + MX6UL_PAD_CSI_HSYNC__USDHC2_CMD 0x17059 >> + MX6UL_PAD_CSI_VSYNC__USDHC2_CLK 0x10059 >> + 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_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.30.2 >> Regards, Ariel