* [PATCH 1/2] dt-bindings: arm: fsl: add TQ-Systems boards MBLS1028A and MBLS1028A-IND @ 2025-05-27 6:03 Alexander Stein 2025-05-27 6:03 ` [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees Alexander Stein 2025-05-27 7:28 ` [PATCH 1/2] dt-bindings: arm: fsl: add TQ-Systems boards MBLS1028A and MBLS1028A-IND Rob Herring (Arm) 0 siblings, 2 replies; 9+ messages in thread From: Alexander Stein @ 2025-05-27 6:03 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: Matthias Schiffer, devicetree, linux-kernel, imx, linux-arm-kernel, linux, Alexander Stein From: Matthias Schiffer <matthias.schiffer@tq-group.com> Add two mainboards for the TQ-Systems TQMLS1028A SoM, based on the NXP Layerscape LS1028A. Signed-off-by: Matthias Schiffer <matthias.schiffer@tq-group.com> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> --- Documentation/devicetree/bindings/arm/fsl.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml index d828fbd4d988c..50b13811d55b5 100644 --- a/Documentation/devicetree/bindings/arm/fsl.yaml +++ b/Documentation/devicetree/bindings/arm/fsl.yaml @@ -1627,6 +1627,15 @@ properties: - const: kontron,sl28 - const: fsl,ls1028a + - description: + TQ-Systems TQMLS1028A SoM on MBLS1028A/MBLS1028A-IND board + items: + - enum: + - tq,ls1028a-tqmls1028a-mbls1028a + - tq,ls1028a-tqmls1028a-mbls1028a-ind + - const: tq,ls1028a-tqmls1028a + - const: fsl,ls1028a + - description: LS1043A based Boards items: - enum: -- 2.43.0 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees 2025-05-27 6:03 [PATCH 1/2] dt-bindings: arm: fsl: add TQ-Systems boards MBLS1028A and MBLS1028A-IND Alexander Stein @ 2025-05-27 6:03 ` Alexander Stein 2025-05-28 15:35 ` Frank Li 2025-05-27 7:28 ` [PATCH 1/2] dt-bindings: arm: fsl: add TQ-Systems boards MBLS1028A and MBLS1028A-IND Rob Herring (Arm) 1 sibling, 1 reply; 9+ messages in thread From: Alexander Stein @ 2025-05-27 6:03 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: Gregor Herburger, devicetree, linux-kernel, imx, linux-arm-kernel, linux, Alexander Stein From: Gregor Herburger <gregor.herburger@tq-group.com> Add device trees for the MBLS1028A and the MBLS1028A-IND and the SoM TQMLS1028A. Signed-off-by: Gregor Herburger <gregor.herburger@tq-group.com> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> --- arch/arm64/boot/dts/freescale/Makefile | 2 + .../fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts | 68 ++++ .../fsl-ls1028a-tqmls1028a-mbls1028a.dts | 118 +++++++ .../fsl-ls1028a-tqmls1028a-mbls1028a.dtsi | 291 ++++++++++++++++++ .../dts/freescale/fsl-ls1028a-tqmls1028a.dtsi | 117 +++++++ 5 files changed, 596 insertions(+) create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dts create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dtsi create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a.dtsi diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile index 75ea65d718c1f..38674e4eeb4c3 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile @@ -16,6 +16,8 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-kontron-sl28-var3-ads2.dtb dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-kontron-sl28-var4.dtb dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-qds.dtb dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-rdb.dtb +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-tqmls1028a-mbls1028a.dtb +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-tqmls1028a-mbls1028a-ind.dtb dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-qds.dtb dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-rdb.dtb dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-tqmls1043a-mbls10xxa.dtb diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts new file mode 100644 index 0000000000000..fb735c5d475ad --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts @@ -0,0 +1,68 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, + * D-82229 Seefeld, Germany. + * Author: Michael Krummsdorf + * Author: Matthias Schiffer + * Author: Alexander Stein + */ + +/dts-v1/; + +#include "fsl-ls1028a-tqmls1028a-mbls1028a.dtsi" + +/ { + model = "MBLS1028A-IND starterkit"; + compatible = "tq,ls1028a-tqmls1028a-mbls1028a-ind", "tq,ls1028a-tqmls1028a", "fsl,ls1028a"; +}; + +&i2c5 { + gpio_exp_3v3: gpio@71 { + compatible = "nxp,pca9538"; + reg = <0x71>; + gpio-controller; + #gpio-cells = <2>; + + clk-intn-hog { + gpio-hog; + gpios = <0 GPIO_ACTIVE_HIGH>; + input; + line-name = "CLK_INT#"; + }; + + mpcie-waken-hog { + gpio-hog; + gpios = <2 GPIO_ACTIVE_HIGH>; + input; + line-name = "MPCIE_WAKE#"; + }; + + mpcie-disn-hog { + gpio-hog; + gpios = <3 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "MPCIE_DIS#"; + }; + + mpcie-rstn-hog { + gpio-hog; + gpios = <4 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "MPCIE_RST#"; + }; + + sata-perstn-hog { + gpio-hog; + gpios = <6 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "SATA_PERST#"; + }; + + dcdc-reset-hog { + gpio-hog; + gpios = <7 GPIO_ACTIVE_HIGH>; + output-low; + line-name = "DCDC_RESET"; + }; + }; +}; diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dts b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dts new file mode 100644 index 0000000000000..c5590c6d23995 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dts @@ -0,0 +1,118 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, + * D-82229 Seefeld, Germany. + * Author: Michael Krummsdorf + * Author: Matthias Schiffer + * Author: Alexander Stein + */ + +/dts-v1/; + +#include <dt-bindings/input/input.h> +#include <dt-bindings/leds/common.h> +#include "fsl-ls1028a-tqmls1028a-mbls1028a.dtsi" + +/ { + model = "MBLS1028A starterkit"; + compatible = "tq,ls1028a-tqmls1028a-mbls1028a", "tq,ls1028a-tqmls1028a", "fsl,ls1028a"; + + gpio-keys { + compatible = "gpio-keys"; + autorepeat; + + button-0 { + label = "S4"; + linux,code = <BTN_0>; + gpios = <&gpio_exp_3v3 11 GPIO_ACTIVE_LOW>; + }; + + button-1 { + label = "S5"; + linux,code = <BTN_1>; + gpios = <&gpio_exp_3v3 12 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-beeper { + compatible = "gpio-beeper"; + gpios = <&gpio_exp_3v3 15 GPIO_ACTIVE_HIGH>; + }; + + gpio-leds { + compatible = "gpio-leds"; + + led-1 { + color = <LED_COLOR_ID_GREEN>; + function = LED_FUNCTION_STATUS; + function-enumerator = <1>; + gpios = <&gpio_exp_3v3 14 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "default-on"; + }; + + led-2 { + color = <LED_COLOR_ID_GREEN>; + function = LED_FUNCTION_HEARTBEAT; + gpios = <&gpio_exp_3v3 13 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "heartbeat"; + }; + }; +}; + +&i2c5 { + gpio_exp_3v3: gpio@25 { + compatible = "nxp,pca9555"; + reg = <0x25>; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + interrupt-parent = <&gpio1>; + interrupts = <30 IRQ_TYPE_LEVEL_LOW>; + vcc-supply = <®_3p3v>; + + clk-intn-hog { + gpio-hog; + gpios = <0 GPIO_ACTIVE_HIGH>; + input; + line-name = "CLK_INT#"; + }; + + mpcie-waken-hog { + gpio-hog; + gpios = <2 GPIO_ACTIVE_HIGH>; + input; + line-name = "MPCIE_WAKE#"; + }; + + mpcie-disn-hog { + gpio-hog; + gpios = <3 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "MPCIE_DIS#"; + }; + + mpcie-rstn-hog { + gpio-hog; + gpios = <4 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "MPCIE_RST#"; + }; + + sata-perstn-hog { + gpio-hog; + gpios = <6 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "SATA_PERST#"; + }; + }; +}; + +&gpio_exp_1v8 { + dcdc-reset-hog { + gpio-hog; + gpios = <6 GPIO_ACTIVE_HIGH>; + output-low; + line-name = "DCDC_RESET"; + }; +}; diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dtsi new file mode 100644 index 0000000000000..6261100f3413a --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dtsi @@ -0,0 +1,291 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, + * D-82229 Seefeld, Germany. + * Author: Michael Krummsdorf + * Author: Matthias Schiffer + * Author: Alexander Stein + */ + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/net/ti-dp83867.h> +#include "fsl-ls1028a-tqmls1028a.dtsi" + +/ { + aliases { + gpio0 = &gpio1; + gpio1 = &gpio2; + gpio2 = &gpio3; + + crypto = &crypto; + + mmc0 = &esdhc; /* SD-Card */ + mmc1 = &esdhc1; /* eMMC */ + + serial0 = &duart0; + serial1 = &duart1; + }; + + chosen { + stdout-path = &duart0; + }; + + reg_1p8v: regulator-1p8v { + compatible = "regulator-fixed"; + regulator-name = "V_1V8"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + }; + + reg_3p3v: regulator-3p3v { + compatible = "regulator-fixed"; + regulator-name = "V_3V3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + }; + + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + /* global autoconfigured region for contiguous allocations */ + linux,cma { + compatible = "shared-dma-pool"; + reusable; + /* 256 MiB */ + size = <0 0x10000000>; + linux,cma-default; + }; + }; +}; + +&can0 { + status = "okay"; +}; + +&can1 { + status = "okay"; +}; + +&dspi2 { + bus-num = <2>; + status = "okay"; +}; + +&duart0 { + status = "okay"; +}; + +&duart1 { + status = "okay"; +}; + +&esdhc { + cd-gpios = <&gpio1 31 GPIO_ACTIVE_LOW>; + disable-wp; + no-mmc; + no-sdio; + no-1-8-v; + bus-width = <4>; + status = "okay"; +}; + +/* When switched to baseboard-internal i2c bus, + * IIC5 has access to the following devices. + */ +&i2c4 { + status = "okay"; + + /* SI5338 - set up in U-Boot */ + /* clockgen@70 */ +}; + +&i2c5 { + status = "okay"; + + gpio_exp_1v8: gpio@70 { + compatible = "nxp,pca9538"; + reg = <0x70>; + gpio-controller; + #gpio-cells = <2>; + interrupt-controller; + #interrupt-cells = <2>; + interrupt-parent = <&gpio1>; + interrupts = <30 IRQ_TYPE_LEVEL_LOW>; + vcc-supply = <®_1p8v>; + + ec1-intn-hog { + gpio-hog; + gpios = <0 0>; + input; + line-name = "EC1_INT#"; + }; + + sgmii-intn-hog { + gpio-hog; + gpios = <2 0>; + input; + line-name = "SGMII_INT#"; + }; + + qsgmii-intn-hog { + gpio-hog; + gpios = <4 0>; + input; + line-name = "QSGMII_INT#"; + }; + + qsgmii-rstn-hog { + gpio-hog; + gpios = <5 0>; + output-high; + line-name = "QSGMII_RESET#"; + }; + }; +}; + +&enetc_mdio_pf3 { + mdio0_rgmii_phy00: ethernet-phy@0 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <0x00>; + reset-gpios = <&gpio_exp_1v8 1 GPIO_ACTIVE_LOW>; + reset-assert-us = <1>; + reset-deassert-us = <200>; + interrupt-parent = <&gpio_exp_1v8>; + interrupts = <0 IRQ_TYPE_EDGE_FALLING>; + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>; + ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; + ti,led-function = <0x05b0>; + ti,led-ctrl = <0x1001>; + ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; + }; + + mdio0_sgmii_phy03: ethernet-phy@3 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <0x03>; + reset-gpios = <&gpio_exp_1v8 3 GPIO_ACTIVE_LOW>; + /* + * Long reset to work around PHY incorrect strap pin sampling + * due to external capacitors for SGMII + */ + reset-assert-us = <2500>; + reset-deassert-us = <200>; + interrupt-parent = <&gpio_exp_1v8>; + interrupts = <2 IRQ_TYPE_EDGE_FALLING>; + ti,led-function = <0x05b0>; + ti,led-ctrl = <0x1001>; + ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; + }; + + qsgmii_phy1: ethernet-phy@1c { + reg = <0x1c>; + }; + + qsgmii_phy2: ethernet-phy@1d { + reg = <0x1d>; + }; + + qsgmii_phy3: ethernet-phy@1e { + reg = <0x1e>; + }; + + qsgmii_phy4: ethernet-phy@1f { + reg = <0x1f>; + }; +}; + +&enetc_port0 { + phy-handle = <&mdio0_sgmii_phy03>; + phy-mode = "sgmii"; + managed = "in-band-status"; + status = "okay"; +}; + +&enetc_port1 { + phy-handle = <&mdio0_rgmii_phy00>; + phy-mode = "rgmii-id"; + status = "okay"; +}; + +&enetc_port2 { + status = "okay"; +}; + +&mscc_felix { + status = "okay"; +}; + +/* l2switch ports */ +&mscc_felix_port0 { + phy-handle = <&qsgmii_phy1>; + phy-mode = "qsgmii"; + status = "okay"; +}; + +&mscc_felix_port1 { + phy-handle = <&qsgmii_phy2>; + phy-mode = "qsgmii"; + status = "okay"; +}; + +&mscc_felix_port2 { + phy-handle = <&qsgmii_phy3>; + phy-mode = "qsgmii"; + status = "okay"; +}; + +&mscc_felix_port3 { + phy-handle = <&qsgmii_phy4>; + phy-mode = "qsgmii"; + status = "okay"; +}; + +&mscc_felix_port4 { + ethernet = <&enetc_port2>; + status = "okay"; +}; + +&pcie2 { + status = "okay"; +}; + +&sata { + status = "okay"; +}; + +&usb0 { + /* dual role is implemented, but not a full featured OTG */ + hnp-disable; + srp-disable; + adp-disable; + dr_mode = "otg"; + status = "okay"; +}; + +&usb1 { + dr_mode = "host"; + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + hub_2_0: hub@1 { + compatible = "usb451,8142"; + reg = <1>; + peer-hub = <&hub_3_0>; + reset-gpios = <&gpio_exp_3v3 1 GPIO_ACTIVE_LOW>; + vdd-supply = <®_3p3v>; + }; + + hub_3_0: hub@2 { + compatible = "usb451,8140"; + reg = <2>; + peer-hub = <&hub_2_0>; + reset-gpios = <&gpio_exp_3v3 1 GPIO_ACTIVE_LOW>; + vdd-supply = <®_3p3v>; + }; +}; diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a.dtsi new file mode 100644 index 0000000000000..69aa36a3a0523 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a.dtsi @@ -0,0 +1,117 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, + * D-82229 Seefeld, Germany. + * Author: Michael Krummsdorf + * Author: Matthias Schiffer + * Author: Alexander Stein + */ + +#include "fsl-ls1028a.dtsi" + +/ { + compatible = "tq,ls1028a-tqmls1028a", "fsl,ls1028a"; + + reg_1p8v_som: regulator-1p8v-som { + compatible = "regulator-fixed"; + regulator-name = "1P8V_SOM"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + }; + + reg_3p3v_som: regulator-3p3v-som { + compatible = "regulator-fixed"; + regulator-name = "3P3V_SOM"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + }; + + thermal-zones { + /delete-node/ ddr-controller; + + cluster-thermal { + thermal-sensors = <&sa56004_4c 1>; + }; + }; +}; + +&esdhc1 { + no-sdio; + no-sd; + non-removable; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + mmc-ddr-1_8v; + bus-width = <8>; + status = "okay"; +}; + +&fspi { + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <100000000>; + spi-tx-bus-width = <4>; + spi-rx-bus-width = <4>; + vcc-supply = <®_1p8v_som>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + }; + }; +}; + +&i2c0 { + status = "okay"; + + js42_18: temperature-sensor@18 { + compatible = "nxp,se97b", "jedec,jc-42.4-temp"; + reg = <0x18>; + }; + + sa56004_4c: temperature-sensor@4c { + compatible = "nxp,sa56004"; + reg = <0x4c>; + #thermal-sensor-cells = <1>; + vcc-supply = <®_3p3v_som>; + }; + + se97_50: eeprom@50 { + compatible = "nxp,se97b", "atmel,24c02"; + read-only; + reg = <0x50>; + pagesize = <16>; + vcc-supply = <®_3p3v_som>; + }; + + rtc1: rtc@51 { + compatible = "nxp,pcf85063a"; + reg = <0x51>; + quartz-load-femtofarads = <12500>; + }; + + m24c256_57: eeprom@57 { + compatible = "atmel,24c256"; + reg = <0x57>; + pagesize = <32>; + vcc-supply = <®_3p3v_som>; + }; +}; + +/* + * We use a separate sensor IC to measure core temperature. Disable the TMU + * as its driver can cause log spam outside of its measurement range (0-125C). + * + * Will have to be reevaluated if this DTS is ported to a mainline kernel, + * as both sensors of the TMU are referenced by the default LS1028A + * thermal-zones definitions there. + */ +&tmu { + status = "disabled"; +}; -- 2.43.0 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees 2025-05-27 6:03 ` [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees Alexander Stein @ 2025-05-28 15:35 ` Frank Li 2025-05-30 6:29 ` Alexander Stein 0 siblings, 1 reply; 9+ messages in thread From: Frank Li @ 2025-05-28 15:35 UTC (permalink / raw) To: Alexander Stein Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Gregor Herburger, devicetree, linux-kernel, imx, linux-arm-kernel, linux On Tue, May 27, 2025 at 08:03:55AM +0200, Alexander Stein wrote: > From: Gregor Herburger <gregor.herburger@tq-group.com> > > Add device trees for the MBLS1028A and the MBLS1028A-IND and the SoM > TQMLS1028A. > > Signed-off-by: Gregor Herburger <gregor.herburger@tq-group.com> > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> > --- > arch/arm64/boot/dts/freescale/Makefile | 2 + > .../fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts | 68 ++++ > .../fsl-ls1028a-tqmls1028a-mbls1028a.dts | 118 +++++++ > .../fsl-ls1028a-tqmls1028a-mbls1028a.dtsi | 291 ++++++++++++++++++ > .../dts/freescale/fsl-ls1028a-tqmls1028a.dtsi | 117 +++++++ New dts file, suggest run https://github.com/lznuaa/dt-format to nice order Frank > 5 files changed, 596 insertions(+) > create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts > create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dts > create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dtsi > create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a.dtsi > > diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile > index 75ea65d718c1f..38674e4eeb4c3 100644 > --- a/arch/arm64/boot/dts/freescale/Makefile > +++ b/arch/arm64/boot/dts/freescale/Makefile > @@ -16,6 +16,8 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-kontron-sl28-var3-ads2.dtb > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-kontron-sl28-var4.dtb > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-qds.dtb > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-rdb.dtb > +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-tqmls1028a-mbls1028a.dtb > +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-tqmls1028a-mbls1028a-ind.dtb > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-qds.dtb > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-rdb.dtb > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-tqmls1043a-mbls10xxa.dtb > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts > new file mode 100644 > index 0000000000000..fb735c5d475ad > --- /dev/null > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts > @@ -0,0 +1,68 @@ > +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) > +/* > + * Copyright 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, > + * D-82229 Seefeld, Germany. > + * Author: Michael Krummsdorf > + * Author: Matthias Schiffer > + * Author: Alexander Stein > + */ > + > +/dts-v1/; > + > +#include "fsl-ls1028a-tqmls1028a-mbls1028a.dtsi" > + > +/ { > + model = "MBLS1028A-IND starterkit"; > + compatible = "tq,ls1028a-tqmls1028a-mbls1028a-ind", "tq,ls1028a-tqmls1028a", "fsl,ls1028a"; > +}; > + > +&i2c5 { > + gpio_exp_3v3: gpio@71 { > + compatible = "nxp,pca9538"; > + reg = <0x71>; > + gpio-controller; > + #gpio-cells = <2>; > + > + clk-intn-hog { > + gpio-hog; > + gpios = <0 GPIO_ACTIVE_HIGH>; > + input; > + line-name = "CLK_INT#"; > + }; > + > + mpcie-waken-hog { > + gpio-hog; > + gpios = <2 GPIO_ACTIVE_HIGH>; > + input; > + line-name = "MPCIE_WAKE#"; > + }; > + > + mpcie-disn-hog { > + gpio-hog; > + gpios = <3 GPIO_ACTIVE_HIGH>; > + output-high; > + line-name = "MPCIE_DIS#"; > + }; > + > + mpcie-rstn-hog { > + gpio-hog; > + gpios = <4 GPIO_ACTIVE_HIGH>; > + output-high; > + line-name = "MPCIE_RST#"; > + }; > + > + sata-perstn-hog { > + gpio-hog; > + gpios = <6 GPIO_ACTIVE_HIGH>; > + output-high; > + line-name = "SATA_PERST#"; > + }; > + > + dcdc-reset-hog { > + gpio-hog; > + gpios = <7 GPIO_ACTIVE_HIGH>; > + output-low; > + line-name = "DCDC_RESET"; > + }; > + }; > +}; > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dts b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dts > new file mode 100644 > index 0000000000000..c5590c6d23995 > --- /dev/null > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dts > @@ -0,0 +1,118 @@ > +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) > +/* > + * Copyright 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, > + * D-82229 Seefeld, Germany. > + * Author: Michael Krummsdorf > + * Author: Matthias Schiffer > + * Author: Alexander Stein > + */ > + > +/dts-v1/; > + > +#include <dt-bindings/input/input.h> > +#include <dt-bindings/leds/common.h> > +#include "fsl-ls1028a-tqmls1028a-mbls1028a.dtsi" > + > +/ { > + model = "MBLS1028A starterkit"; > + compatible = "tq,ls1028a-tqmls1028a-mbls1028a", "tq,ls1028a-tqmls1028a", "fsl,ls1028a"; > + > + gpio-keys { > + compatible = "gpio-keys"; > + autorepeat; > + > + button-0 { > + label = "S4"; > + linux,code = <BTN_0>; > + gpios = <&gpio_exp_3v3 11 GPIO_ACTIVE_LOW>; > + }; > + > + button-1 { > + label = "S5"; > + linux,code = <BTN_1>; > + gpios = <&gpio_exp_3v3 12 GPIO_ACTIVE_LOW>; > + }; > + }; > + > + gpio-beeper { > + compatible = "gpio-beeper"; > + gpios = <&gpio_exp_3v3 15 GPIO_ACTIVE_HIGH>; > + }; > + > + gpio-leds { > + compatible = "gpio-leds"; > + > + led-1 { > + color = <LED_COLOR_ID_GREEN>; > + function = LED_FUNCTION_STATUS; > + function-enumerator = <1>; > + gpios = <&gpio_exp_3v3 14 GPIO_ACTIVE_HIGH>; > + linux,default-trigger = "default-on"; > + }; > + > + led-2 { > + color = <LED_COLOR_ID_GREEN>; > + function = LED_FUNCTION_HEARTBEAT; > + gpios = <&gpio_exp_3v3 13 GPIO_ACTIVE_HIGH>; > + linux,default-trigger = "heartbeat"; > + }; > + }; > +}; > + > +&i2c5 { > + gpio_exp_3v3: gpio@25 { > + compatible = "nxp,pca9555"; > + reg = <0x25>; > + gpio-controller; > + #gpio-cells = <2>; > + interrupt-controller; > + #interrupt-cells = <2>; > + interrupt-parent = <&gpio1>; > + interrupts = <30 IRQ_TYPE_LEVEL_LOW>; > + vcc-supply = <®_3p3v>; > + > + clk-intn-hog { > + gpio-hog; > + gpios = <0 GPIO_ACTIVE_HIGH>; > + input; > + line-name = "CLK_INT#"; > + }; > + > + mpcie-waken-hog { > + gpio-hog; > + gpios = <2 GPIO_ACTIVE_HIGH>; > + input; > + line-name = "MPCIE_WAKE#"; > + }; > + > + mpcie-disn-hog { > + gpio-hog; > + gpios = <3 GPIO_ACTIVE_HIGH>; > + output-high; > + line-name = "MPCIE_DIS#"; > + }; > + > + mpcie-rstn-hog { > + gpio-hog; > + gpios = <4 GPIO_ACTIVE_HIGH>; > + output-high; > + line-name = "MPCIE_RST#"; > + }; > + > + sata-perstn-hog { > + gpio-hog; > + gpios = <6 GPIO_ACTIVE_HIGH>; > + output-high; > + line-name = "SATA_PERST#"; > + }; > + }; > +}; > + > +&gpio_exp_1v8 { > + dcdc-reset-hog { > + gpio-hog; > + gpios = <6 GPIO_ACTIVE_HIGH>; > + output-low; > + line-name = "DCDC_RESET"; > + }; > +}; > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dtsi > new file mode 100644 > index 0000000000000..6261100f3413a > --- /dev/null > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a-mbls1028a.dtsi > @@ -0,0 +1,291 @@ > +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) > +/* > + * Copyright 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, > + * D-82229 Seefeld, Germany. > + * Author: Michael Krummsdorf > + * Author: Matthias Schiffer > + * Author: Alexander Stein > + */ > + > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/net/ti-dp83867.h> > +#include "fsl-ls1028a-tqmls1028a.dtsi" > + > +/ { > + aliases { > + gpio0 = &gpio1; > + gpio1 = &gpio2; > + gpio2 = &gpio3; > + > + crypto = &crypto; > + > + mmc0 = &esdhc; /* SD-Card */ > + mmc1 = &esdhc1; /* eMMC */ > + > + serial0 = &duart0; > + serial1 = &duart1; > + }; > + > + chosen { > + stdout-path = &duart0; > + }; > + > + reg_1p8v: regulator-1p8v { > + compatible = "regulator-fixed"; > + regulator-name = "V_1V8"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-always-on; > + }; > + > + reg_3p3v: regulator-3p3v { > + compatible = "regulator-fixed"; > + regulator-name = "V_3V3"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + reserved-memory { > + #address-cells = <2>; > + #size-cells = <2>; > + ranges; > + > + /* global autoconfigured region for contiguous allocations */ > + linux,cma { > + compatible = "shared-dma-pool"; > + reusable; > + /* 256 MiB */ > + size = <0 0x10000000>; > + linux,cma-default; > + }; > + }; > +}; > + > +&can0 { > + status = "okay"; > +}; > + > +&can1 { > + status = "okay"; > +}; > + > +&dspi2 { > + bus-num = <2>; > + status = "okay"; > +}; > + > +&duart0 { > + status = "okay"; > +}; > + > +&duart1 { > + status = "okay"; > +}; > + > +&esdhc { > + cd-gpios = <&gpio1 31 GPIO_ACTIVE_LOW>; > + disable-wp; > + no-mmc; > + no-sdio; > + no-1-8-v; > + bus-width = <4>; > + status = "okay"; > +}; > + > +/* When switched to baseboard-internal i2c bus, > + * IIC5 has access to the following devices. > + */ > +&i2c4 { > + status = "okay"; > + > + /* SI5338 - set up in U-Boot */ > + /* clockgen@70 */ > +}; > + > +&i2c5 { > + status = "okay"; > + > + gpio_exp_1v8: gpio@70 { > + compatible = "nxp,pca9538"; > + reg = <0x70>; > + gpio-controller; > + #gpio-cells = <2>; > + interrupt-controller; > + #interrupt-cells = <2>; > + interrupt-parent = <&gpio1>; > + interrupts = <30 IRQ_TYPE_LEVEL_LOW>; > + vcc-supply = <®_1p8v>; > + > + ec1-intn-hog { > + gpio-hog; > + gpios = <0 0>; > + input; > + line-name = "EC1_INT#"; > + }; > + > + sgmii-intn-hog { > + gpio-hog; > + gpios = <2 0>; > + input; > + line-name = "SGMII_INT#"; > + }; > + > + qsgmii-intn-hog { > + gpio-hog; > + gpios = <4 0>; > + input; > + line-name = "QSGMII_INT#"; > + }; > + > + qsgmii-rstn-hog { > + gpio-hog; > + gpios = <5 0>; > + output-high; > + line-name = "QSGMII_RESET#"; > + }; > + }; > +}; > + > +&enetc_mdio_pf3 { > + mdio0_rgmii_phy00: ethernet-phy@0 { > + compatible = "ethernet-phy-ieee802.3-c22"; > + reg = <0x00>; > + reset-gpios = <&gpio_exp_1v8 1 GPIO_ACTIVE_LOW>; > + reset-assert-us = <1>; > + reset-deassert-us = <200>; > + interrupt-parent = <&gpio_exp_1v8>; > + interrupts = <0 IRQ_TYPE_EDGE_FALLING>; > + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_50_NS>; > + ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; > + ti,led-function = <0x05b0>; > + ti,led-ctrl = <0x1001>; > + ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; > + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; > + }; > + > + mdio0_sgmii_phy03: ethernet-phy@3 { > + compatible = "ethernet-phy-ieee802.3-c22"; > + reg = <0x03>; > + reset-gpios = <&gpio_exp_1v8 3 GPIO_ACTIVE_LOW>; > + /* > + * Long reset to work around PHY incorrect strap pin sampling > + * due to external capacitors for SGMII > + */ > + reset-assert-us = <2500>; > + reset-deassert-us = <200>; > + interrupt-parent = <&gpio_exp_1v8>; > + interrupts = <2 IRQ_TYPE_EDGE_FALLING>; > + ti,led-function = <0x05b0>; > + ti,led-ctrl = <0x1001>; > + ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; > + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; > + }; > + > + qsgmii_phy1: ethernet-phy@1c { > + reg = <0x1c>; > + }; > + > + qsgmii_phy2: ethernet-phy@1d { > + reg = <0x1d>; > + }; > + > + qsgmii_phy3: ethernet-phy@1e { > + reg = <0x1e>; > + }; > + > + qsgmii_phy4: ethernet-phy@1f { > + reg = <0x1f>; > + }; > +}; > + > +&enetc_port0 { > + phy-handle = <&mdio0_sgmii_phy03>; > + phy-mode = "sgmii"; > + managed = "in-band-status"; > + status = "okay"; > +}; > + > +&enetc_port1 { > + phy-handle = <&mdio0_rgmii_phy00>; > + phy-mode = "rgmii-id"; > + status = "okay"; > +}; > + > +&enetc_port2 { > + status = "okay"; > +}; > + > +&mscc_felix { > + status = "okay"; > +}; > + > +/* l2switch ports */ > +&mscc_felix_port0 { > + phy-handle = <&qsgmii_phy1>; > + phy-mode = "qsgmii"; > + status = "okay"; > +}; > + > +&mscc_felix_port1 { > + phy-handle = <&qsgmii_phy2>; > + phy-mode = "qsgmii"; > + status = "okay"; > +}; > + > +&mscc_felix_port2 { > + phy-handle = <&qsgmii_phy3>; > + phy-mode = "qsgmii"; > + status = "okay"; > +}; > + > +&mscc_felix_port3 { > + phy-handle = <&qsgmii_phy4>; > + phy-mode = "qsgmii"; > + status = "okay"; > +}; > + > +&mscc_felix_port4 { > + ethernet = <&enetc_port2>; > + status = "okay"; > +}; > + > +&pcie2 { > + status = "okay"; > +}; > + > +&sata { > + status = "okay"; > +}; > + > +&usb0 { > + /* dual role is implemented, but not a full featured OTG */ > + hnp-disable; > + srp-disable; > + adp-disable; > + dr_mode = "otg"; > + status = "okay"; > +}; > + > +&usb1 { > + dr_mode = "host"; > + #address-cells = <1>; > + #size-cells = <0>; > + status = "okay"; > + > + hub_2_0: hub@1 { > + compatible = "usb451,8142"; > + reg = <1>; > + peer-hub = <&hub_3_0>; > + reset-gpios = <&gpio_exp_3v3 1 GPIO_ACTIVE_LOW>; > + vdd-supply = <®_3p3v>; > + }; > + > + hub_3_0: hub@2 { > + compatible = "usb451,8140"; > + reg = <2>; > + peer-hub = <&hub_2_0>; > + reset-gpios = <&gpio_exp_3v3 1 GPIO_ACTIVE_LOW>; > + vdd-supply = <®_3p3v>; > + }; > +}; > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a.dtsi > new file mode 100644 > index 0000000000000..69aa36a3a0523 > --- /dev/null > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-tqmls1028a.dtsi > @@ -0,0 +1,117 @@ > +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) > +/* > + * Copyright 2019-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, > + * D-82229 Seefeld, Germany. > + * Author: Michael Krummsdorf > + * Author: Matthias Schiffer > + * Author: Alexander Stein > + */ > + > +#include "fsl-ls1028a.dtsi" > + > +/ { > + compatible = "tq,ls1028a-tqmls1028a", "fsl,ls1028a"; > + > + reg_1p8v_som: regulator-1p8v-som { > + compatible = "regulator-fixed"; > + regulator-name = "1P8V_SOM"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-always-on; > + }; > + > + reg_3p3v_som: regulator-3p3v-som { > + compatible = "regulator-fixed"; > + regulator-name = "3P3V_SOM"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + thermal-zones { > + /delete-node/ ddr-controller; > + > + cluster-thermal { > + thermal-sensors = <&sa56004_4c 1>; > + }; > + }; > +}; > + > +&esdhc1 { > + no-sdio; > + no-sd; > + non-removable; > + mmc-hs200-1_8v; > + mmc-hs400-1_8v; > + mmc-ddr-1_8v; > + bus-width = <8>; > + status = "okay"; > +}; > + > +&fspi { > + status = "okay"; > + > + flash@0 { > + compatible = "jedec,spi-nor"; > + reg = <0>; > + spi-max-frequency = <100000000>; > + spi-tx-bus-width = <4>; > + spi-rx-bus-width = <4>; > + vcc-supply = <®_1p8v_som>; > + > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + }; > + }; > +}; > + > +&i2c0 { > + status = "okay"; > + > + js42_18: temperature-sensor@18 { > + compatible = "nxp,se97b", "jedec,jc-42.4-temp"; > + reg = <0x18>; > + }; > + > + sa56004_4c: temperature-sensor@4c { > + compatible = "nxp,sa56004"; > + reg = <0x4c>; > + #thermal-sensor-cells = <1>; > + vcc-supply = <®_3p3v_som>; > + }; > + > + se97_50: eeprom@50 { > + compatible = "nxp,se97b", "atmel,24c02"; > + read-only; > + reg = <0x50>; > + pagesize = <16>; > + vcc-supply = <®_3p3v_som>; > + }; > + > + rtc1: rtc@51 { > + compatible = "nxp,pcf85063a"; > + reg = <0x51>; > + quartz-load-femtofarads = <12500>; > + }; > + > + m24c256_57: eeprom@57 { > + compatible = "atmel,24c256"; > + reg = <0x57>; > + pagesize = <32>; > + vcc-supply = <®_3p3v_som>; > + }; > +}; > + > +/* > + * We use a separate sensor IC to measure core temperature. Disable the TMU > + * as its driver can cause log spam outside of its measurement range (0-125C). > + * > + * Will have to be reevaluated if this DTS is ported to a mainline kernel, > + * as both sensors of the TMU are referenced by the default LS1028A > + * thermal-zones definitions there. > + */ > +&tmu { > + status = "disabled"; > +}; > -- > 2.43.0 > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees 2025-05-28 15:35 ` Frank Li @ 2025-05-30 6:29 ` Alexander Stein 2025-05-30 15:05 ` Frank Li 2025-05-30 16:17 ` Frank Li 0 siblings, 2 replies; 9+ messages in thread From: Alexander Stein @ 2025-05-30 6:29 UTC (permalink / raw) To: Frank Li Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Gregor Herburger, devicetree, linux-kernel, imx, linux-arm-kernel, linux Hi Frank, Am Mittwoch, 28. Mai 2025, 17:35:52 CEST schrieb Frank Li: > On Tue, May 27, 2025 at 08:03:55AM +0200, Alexander Stein wrote: > > From: Gregor Herburger <gregor.herburger@tq-group.com> > > > > Add device trees for the MBLS1028A and the MBLS1028A-IND and the SoM > > TQMLS1028A. > > > > Signed-off-by: Gregor Herburger <gregor.herburger@tq-group.com> > > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> > > --- > > arch/arm64/boot/dts/freescale/Makefile | 2 + > > .../fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts | 68 ++++ > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dts | 118 +++++++ > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dtsi | 291 ++++++++++++++++++ > > .../dts/freescale/fsl-ls1028a-tqmls1028a.dtsi | 117 +++++++ > > New dts file, suggest run https://github.com/lznuaa/dt-format to nice order Thanks for the suggestions. It does some improvements, but I also disagree with a lot of proposed changes: * Wrong indent of SPDX tag * model property should come first IMHO * {gpio,interrupt}-controller should come before #{gpio,interrupt}-cells * gpio-hog property should come first in a hog node * sorting gpio-hog nodes by name instead of line number seems wrong There are some more bogus changes, so I'll skip this tool for now. Thanks & best regards Alexander > Frank > [...] -- TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany Amtsgericht München, HRB 105018 Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider http://www.tq-group.com/ ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees 2025-05-30 6:29 ` Alexander Stein @ 2025-05-30 15:05 ` Frank Li 2025-05-30 16:17 ` Frank Li 1 sibling, 0 replies; 9+ messages in thread From: Frank Li @ 2025-05-30 15:05 UTC (permalink / raw) To: Alexander Stein Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Gregor Herburger, devicetree, linux-kernel, imx, linux-arm-kernel, linux On Fri, May 30, 2025 at 08:29:27AM +0200, Alexander Stein wrote: > Hi Frank, > > Am Mittwoch, 28. Mai 2025, 17:35:52 CEST schrieb Frank Li: > > On Tue, May 27, 2025 at 08:03:55AM +0200, Alexander Stein wrote: > > > From: Gregor Herburger <gregor.herburger@tq-group.com> > > > > > > Add device trees for the MBLS1028A and the MBLS1028A-IND and the SoM > > > TQMLS1028A. > > > > > > Signed-off-by: Gregor Herburger <gregor.herburger@tq-group.com> > > > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> > > > --- > > > arch/arm64/boot/dts/freescale/Makefile | 2 + > > > .../fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts | 68 ++++ > > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dts | 118 +++++++ > > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dtsi | 291 ++++++++++++++++++ > > > .../dts/freescale/fsl-ls1028a-tqmls1028a.dtsi | 117 +++++++ > > > > New dts file, suggest run https://github.com/lznuaa/dt-format to nice order > > Thanks for the suggestions. It does some improvements, but I also disagree > with a lot of proposed changes: > * Wrong indent of SPDX tag > * model property should come first IMHO > * {gpio,interrupt}-controller should come before #{gpio,interrupt}-cells Thanks, let me try to fix it. 'model' suppose after 'compatible'. > * gpio-hog property should come first in a hog node > * sorting gpio-hog nodes by name instead of line number seems wrong This one is not easy to fix, some hog have not line numbers. > > There are some more bogus changes, so I'll skip this tool for now. It is up to you, but I suggest we can follow a rule, which is checkable. It is hard and boring to figure out by manually. Frank > > Thanks & best regards > Alexander > > > Frank > > [...] > -- > TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany > Amtsgericht München, HRB 105018 > Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider > http://www.tq-group.com/ > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees 2025-05-30 6:29 ` Alexander Stein 2025-05-30 15:05 ` Frank Li @ 2025-05-30 16:17 ` Frank Li 2025-06-02 14:28 ` Alexander Stein 1 sibling, 1 reply; 9+ messages in thread From: Frank Li @ 2025-05-30 16:17 UTC (permalink / raw) To: Alexander Stein Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Gregor Herburger, devicetree, linux-kernel, imx, linux-arm-kernel, linux On Fri, May 30, 2025 at 08:29:27AM +0200, Alexander Stein wrote: > Hi Frank, > > Am Mittwoch, 28. Mai 2025, 17:35:52 CEST schrieb Frank Li: > > On Tue, May 27, 2025 at 08:03:55AM +0200, Alexander Stein wrote: > > > From: Gregor Herburger <gregor.herburger@tq-group.com> > > > > > > Add device trees for the MBLS1028A and the MBLS1028A-IND and the SoM > > > TQMLS1028A. > > > > > > Signed-off-by: Gregor Herburger <gregor.herburger@tq-group.com> > > > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> > > > --- > > > arch/arm64/boot/dts/freescale/Makefile | 2 + > > > .../fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts | 68 ++++ > > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dts | 118 +++++++ > > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dtsi | 291 ++++++++++++++++++ > > > .../dts/freescale/fsl-ls1028a-tqmls1028a.dtsi | 117 +++++++ > > > > New dts file, suggest run https://github.com/lznuaa/dt-format to nice order > > Thanks for the suggestions. It does some improvements, but I also disagree > with a lot of proposed changes: > * Wrong indent of SPDX tag > * model property should come first IMHO > * {gpio,interrupt}-controller should come before #{gpio,interrupt}-cells I checked code, it is specific rule to make -cells before -controller. It should come from previous review comments. Do you have document or mail list require -controller before --cells ? Frank > * gpio-hog property should come first in a hog node > * sorting gpio-hog nodes by name instead of line number seems wrong > > There are some more bogus changes, so I'll skip this tool for now. > > Thanks & best regards > Alexander > > > Frank > > [...] > -- > TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany > Amtsgericht München, HRB 105018 > Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider > http://www.tq-group.com/ > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees 2025-05-30 16:17 ` Frank Li @ 2025-06-02 14:28 ` Alexander Stein 2025-06-02 16:00 ` Frank Li 0 siblings, 1 reply; 9+ messages in thread From: Alexander Stein @ 2025-06-02 14:28 UTC (permalink / raw) To: Frank Li Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Gregor Herburger, devicetree, linux-kernel, imx, linux-arm-kernel, linux Am Freitag, 30. Mai 2025, 18:17:00 CEST schrieb Frank Li: > ******************** > Achtung externe E-Mail: Öffnen Sie Anhänge und Links nur, wenn Sie wissen, dass diese aus einer sicheren Quelle stammen und sicher sind. Leiten Sie die E-Mail im Zweifelsfall zur Prüfung an den IT-Helpdesk weiter. > Attention external email: Open attachments and links only if you know that they are from a secure source and are safe. In doubt forward the email to the IT-Helpdesk to check it. > ******************** > > On Fri, May 30, 2025 at 08:29:27AM +0200, Alexander Stein wrote: > > Hi Frank, > > > > Am Mittwoch, 28. Mai 2025, 17:35:52 CEST schrieb Frank Li: > > > On Tue, May 27, 2025 at 08:03:55AM +0200, Alexander Stein wrote: > > > > From: Gregor Herburger <gregor.herburger@tq-group.com> > > > > > > > > Add device trees for the MBLS1028A and the MBLS1028A-IND and the SoM > > > > TQMLS1028A. > > > > > > > > Signed-off-by: Gregor Herburger <gregor.herburger@tq-group.com> > > > > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> > > > > --- > > > > arch/arm64/boot/dts/freescale/Makefile | 2 + > > > > .../fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts | 68 ++++ > > > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dts | 118 +++++++ > > > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dtsi | 291 ++++++++++++++++++ > > > > .../dts/freescale/fsl-ls1028a-tqmls1028a.dtsi | 117 +++++++ > > > > > > New dts file, suggest run https://github.com/lznuaa/dt-format to nice order > > > > Thanks for the suggestions. It does some improvements, but I also disagree > > with a lot of proposed changes: > > * Wrong indent of SPDX tag > > * model property should come first IMHO > > * {gpio,interrupt}-controller should come before #{gpio,interrupt}-cells > > I checked code, it is specific rule to make -cells before -controller. It > should come from previous review comments. > > Do you have document or mail list require -controller before --cells ? There is Documentation/devicetree/bindings/interrupt-controller/interrupts.txt. While not exactly saying anything about property order, "interrupt-controller" is stated in the very first sentence. Also from a readers perspective having "-controller" first seems reasonable, IMHO. "-cells" is necessary because it is a controller. Best regards Alexander > Frank > > > * gpio-hog property should come first in a hog node > > * sorting gpio-hog nodes by name instead of line number seems wrong > > > > There are some more bogus changes, so I'll skip this tool for now. > > > > Thanks & best regards > > Alexander > > > > > Frank > > > [...] > > -- > > TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany > > Amtsgericht München, HRB 105018 > > Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider > > http://www.tq-group.com/ > > > > > > -- TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany Amtsgericht München, HRB 105018 Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider http://www.tq-group.com/ ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees 2025-06-02 14:28 ` Alexander Stein @ 2025-06-02 16:00 ` Frank Li 0 siblings, 0 replies; 9+ messages in thread From: Frank Li @ 2025-06-02 16:00 UTC (permalink / raw) To: Alexander Stein Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Gregor Herburger, devicetree, linux-kernel, imx, linux-arm-kernel, linux On Mon, Jun 02, 2025 at 04:28:55PM +0200, Alexander Stein wrote: > Am Freitag, 30. Mai 2025, 18:17:00 CEST schrieb Frank Li: > > ******************** > > Achtung externe E-Mail: Öffnen Sie Anhänge und Links nur, wenn Sie wissen, dass diese aus einer sicheren Quelle stammen und sicher sind. Leiten Sie die E-Mail im Zweifelsfall zur Prüfung an den IT-Helpdesk weiter. > > Attention external email: Open attachments and links only if you know that they are from a secure source and are safe. In doubt forward the email to the IT-Helpdesk to check it. > > ******************** > > > > On Fri, May 30, 2025 at 08:29:27AM +0200, Alexander Stein wrote: > > > Hi Frank, > > > > > > Am Mittwoch, 28. Mai 2025, 17:35:52 CEST schrieb Frank Li: > > > > On Tue, May 27, 2025 at 08:03:55AM +0200, Alexander Stein wrote: > > > > > From: Gregor Herburger <gregor.herburger@tq-group.com> > > > > > > > > > > Add device trees for the MBLS1028A and the MBLS1028A-IND and the SoM > > > > > TQMLS1028A. > > > > > > > > > > Signed-off-by: Gregor Herburger <gregor.herburger@tq-group.com> > > > > > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> > > > > > --- > > > > > arch/arm64/boot/dts/freescale/Makefile | 2 + > > > > > .../fsl-ls1028a-tqmls1028a-mbls1028a-ind.dts | 68 ++++ > > > > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dts | 118 +++++++ > > > > > .../fsl-ls1028a-tqmls1028a-mbls1028a.dtsi | 291 ++++++++++++++++++ > > > > > .../dts/freescale/fsl-ls1028a-tqmls1028a.dtsi | 117 +++++++ > > > > > > > > New dts file, suggest run https://github.com/lznuaa/dt-format to nice order > > > > > > Thanks for the suggestions. It does some improvements, but I also disagree > > > with a lot of proposed changes: > > > * Wrong indent of SPDX tag > > > * model property should come first IMHO > > > * {gpio,interrupt}-controller should come before #{gpio,interrupt}-cells > > > > I checked code, it is specific rule to make -cells before -controller. It > > should come from previous review comments. > > > > Do you have document or mail list require -controller before --cells ? > > There is Documentation/devicetree/bindings/interrupt-controller/interrupts.txt. > While not exactly saying anything about property order, "interrupt-controller" > is stated in the very first sentence. > Also from a readers perspective having "-controller" first seems > reasonable, IMHO. "-cells" is necessary because it is a controller. This document have not updated since 2019. A rob acked https://lore.kernel.org/linux-devicetree/20250513-gicv5-host-v4-1-b36e9b15a6c3@kernel.org/ interrupt-cell and msi-cell is before interrupt-controller and msi-controller. The order may not be big deal. -cell carry more impantant informaiton than -controller because all consumer needs know -cell number. Rob: Do you have suggestion about these order, so we can easily follow for new dts files Frank > > Best regards > Alexander > > > Frank > > > > > * gpio-hog property should come first in a hog node > > > * sorting gpio-hog nodes by name instead of line number seems wrong > > > > > > There are some more bogus changes, so I'll skip this tool for now. > > > > > > Thanks & best regards > > > Alexander > > > > > > > Frank > > > > [...] > > > -- > > > TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany > > > Amtsgericht München, HRB 105018 > > > Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider > > > http://www.tq-group.com/ > > > > > > > > > > > > > -- > TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany > Amtsgericht München, HRB 105018 > Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider > http://www.tq-group.com/ > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] dt-bindings: arm: fsl: add TQ-Systems boards MBLS1028A and MBLS1028A-IND 2025-05-27 6:03 [PATCH 1/2] dt-bindings: arm: fsl: add TQ-Systems boards MBLS1028A and MBLS1028A-IND Alexander Stein 2025-05-27 6:03 ` [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees Alexander Stein @ 2025-05-27 7:28 ` Rob Herring (Arm) 1 sibling, 0 replies; 9+ messages in thread From: Rob Herring (Arm) @ 2025-05-27 7:28 UTC (permalink / raw) To: Alexander Stein Cc: linux-kernel, Pengutronix Kernel Team, devicetree, imx, Shawn Guo, Conor Dooley, linux, linux-arm-kernel, Sascha Hauer, Krzysztof Kozlowski, Matthias Schiffer, Fabio Estevam On Tue, 27 May 2025 08:03:54 +0200, Alexander Stein wrote: > From: Matthias Schiffer <matthias.schiffer@tq-group.com> > > Add two mainboards for the TQ-Systems TQMLS1028A SoM, based on the NXP > Layerscape LS1028A. > > Signed-off-by: Matthias Schiffer <matthias.schiffer@tq-group.com> > Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> > --- > Documentation/devicetree/bindings/arm/fsl.yaml | 9 +++++++++ > 1 file changed, 9 insertions(+) > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: ./Documentation/devicetree/bindings/arm/fsl.yaml:1594:13: [warning] wrong indentation: expected 14 but found 12 (indentation) dtschema/dtc warnings/errors: doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250527060400.1005757-1-alexander.stein@ew.tq-group.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema. ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-06-02 16:00 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-05-27 6:03 [PATCH 1/2] dt-bindings: arm: fsl: add TQ-Systems boards MBLS1028A and MBLS1028A-IND Alexander Stein 2025-05-27 6:03 ` [PATCH 2/2] arm64: dts: ls1028a: Add mbls1028a and mbls1028a-ind devicetrees Alexander Stein 2025-05-28 15:35 ` Frank Li 2025-05-30 6:29 ` Alexander Stein 2025-05-30 15:05 ` Frank Li 2025-05-30 16:17 ` Frank Li 2025-06-02 14:28 ` Alexander Stein 2025-06-02 16:00 ` Frank Li 2025-05-27 7:28 ` [PATCH 1/2] dt-bindings: arm: fsl: add TQ-Systems boards MBLS1028A and MBLS1028A-IND Rob Herring (Arm)
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).