2020-09-02 15:15:40

by Meenakshi Aggarwal

[permalink] [raw]
Subject: [PATCH 1/2] dt-bindings: arm64: add compatible for LX2162A QDS Board

From: Meenakshi Aggarwal <[email protected]>

Add support for LX2162A, LX2162A is LX2160A based SoC.

Signed-off-by: Meenakshi Aggarwal <[email protected]>
---
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 6da9d73..5c7b7dd 100644
--- a/Documentation/devicetree/bindings/arm/fsl.yaml
+++ b/Documentation/devicetree/bindings/arm/fsl.yaml
@@ -518,6 +518,7 @@ properties:
- enum:
- fsl,lx2160a-qds
- fsl,lx2160a-rdb
+ - fsl,lx2162a-qds
- const: fsl,lx2160a

- description: S32V234 based Boards
--
2.7.4


2020-09-02 15:18:06

by Meenakshi Aggarwal

[permalink] [raw]
Subject: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

From: Meenakshi Aggarwal <[email protected]>

Add device tree support for LX2162AQDS board.
LX2162A has same die as of LX2160A with different packaging.

Signed-off-by: Ioana Ciornei <[email protected]>
Signed-off-by: Kuldeep Singh <[email protected]>
Signed-off-by: Meenakshi Aggarwal <[email protected]>
---
arch/arm64/boot/dts/freescale/Makefile | 1 +
arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 336 ++++++++++++++++++++++
2 files changed, 337 insertions(+)
create mode 100644 arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts

diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index a39f0a1..ab9fbd3 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -27,6 +27,7 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-clearfog-cx.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-honeycomb.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-qds.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-rdb.dtb
+dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2162a-qds.dtb

dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mn-evk.dtb
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
new file mode 100644
index 0000000..a81c6a4
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
@@ -0,0 +1,336 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+//
+// Device Tree file for LX2162AQDS
+//
+// Copyright 2020 NXP
+
+/dts-v1/;
+
+#include "fsl-lx2160a.dtsi"
+
+/ {
+ model = "NXP Layerscape LX2162AQDS";
+ compatible = "nxp,lx2162a-qds", "fsl,lx2160a";
+
+ aliases {
+ crypto = &crypto;
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ sb_3v3: regulator-sb3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "MC34717-3.3VSB";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-boot-on;
+ regulator-always-on;
+ };
+
+ mdio-mux-1 {
+ compatible = "mdio-mux-multiplexer";
+ mux-controls = <&mux 0>;
+ mdio-parent-bus = <&emdio1>;
+ #address-cells=<1>;
+ #size-cells = <0>;
+
+ mdio@0 { /* On-board RTL8211F PHY #1 RGMII1*/
+ reg = <0x00>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgmii_phy1: ethernet-phy@1 {
+ compatible = "ethernet-phy-id001c.c916";
+ reg = <0x1>;
+ eee-broken-1000t;
+ };
+ };
+
+ mdio@8 { /* On-board RTL8211F PHY #2 RGMII2*/
+ reg = <0x8>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgmii_phy2: ethernet-phy@2 {
+ compatible = "ethernet-phy-id001c.c916";
+ reg = <0x2>;
+ eee-broken-1000t;
+ };
+ };
+
+ mdio@18 { /* Slot #1 */
+ reg = <0x18>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@19 { /* Slot #2 */
+ reg = <0x19>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1a { /* Slot #3 */
+ reg = <0x1a>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1b { /* Slot #4 */
+ reg = <0x1b>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1c { /* Slot #5 */
+ reg = <0x1c>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1d { /* Slot #6 */
+ reg = <0x1d>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1e { /* Slot #7 */
+ reg = <0x1e>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1f { /* Slot #8 */
+ reg = <0x1f>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+
+ mdio-mux-2 {
+ compatible = "mdio-mux-multiplexer";
+ mux-controls = <&mux 1>;
+ mdio-parent-bus = <&emdio2>;
+ #address-cells=<1>;
+ #size-cells = <0>;
+
+ mdio@0 { /* Slot #1 (secondary EMI) */
+ reg = <0x00>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1 { /* Slot #2 (secondary EMI) */
+ reg = <0x01>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@2 { /* Slot #3 (secondary EMI) */
+ reg = <0x02>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@3 { /* Slot #4 (secondary EMI) */
+ reg = <0x03>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@4 { /* Slot #5 (secondary EMI) */
+ reg = <0x04>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@5 { /* Slot #6 (secondary EMI) */
+ reg = <0x05>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@6 { /* Slot #7 (secondary EMI) */
+ reg = <0x06>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@7 { /* Slot #8 (secondary EMI) */
+ reg = <0x07>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+};
+
+&crypto {
+ status = "okay";
+};
+
+&dpmac17 {
+ phy-handle = <&rgmii_phy1>;
+ phy-connection-type = "rgmii-id";
+};
+
+&dpmac18 {
+ phy-handle = <&rgmii_phy2>;
+ phy-connection-type = "rgmii-id";
+};
+
+&dspi0 {
+ status = "okay";
+
+ dflash0: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&dspi1 {
+ status = "okay";
+
+ dflash1: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&dspi2 {
+ status = "okay";
+
+ dflash2: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&emdio1 {
+ status = "okay";
+};
+
+&emdio2 {
+ status = "okay";
+};
+
+&esdhc0 {
+ status = "okay";
+};
+
+&esdhc1 {
+ status = "okay";
+};
+
+&fspi {
+ status = "okay";
+
+ mt35xu512aba0: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
+ reg = <0>;
+ spi-rx-bus-width = <8>;
+ spi-tx-bus-width = <8>;
+ };
+};
+
+&i2c0 {
+ status = "okay";
+
+ fpga@66 {
+ compatible = "fsl,lx2160aqds-fpga", "fsl,fpga-qixis-i2c",
+ "simple-mfd";
+ reg = <0x66>;
+
+ mux: mux-controller {
+ compatible = "reg-mux";
+ #mux-control-cells = <1>;
+ mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
+ <0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
+ };
+ };
+
+ i2c-mux@77 {
+ compatible = "nxp,pca9547";
+ reg = <0x77>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ i2c@2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x2>;
+
+ power-monitor@40 {
+ compatible = "ti,ina220";
+ reg = <0x40>;
+ shunt-resistor = <500>;
+ };
+
+ power-monitor@41 {
+ compatible = "ti,ina220";
+ reg = <0x41>;
+ shunt-resistor = <1000>;
+ };
+ };
+
+ i2c@3 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x3>;
+
+ temperature-sensor@4c {
+ compatible = "nxp,sa56004";
+ reg = <0x4c>;
+ vcc-supply = <&sb_3v3>;
+ };
+
+ rtc@51 {
+ compatible = "nxp,pcf2129";
+ reg = <0x51>;
+ };
+ };
+ };
+};
+
+&sata0 {
+ status = "okay";
+};
+
+&sata1 {
+ status = "okay";
+};
+
+&sata2 {
+ status = "okay";
+};
+
+&sata3 {
+ status = "okay";
+};
+
+&uart0 {
+ status = "okay";
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&usb0 {
+ status = "okay";
+};
--
2.7.4

2020-09-05 07:56:14

by Shawn Guo

[permalink] [raw]
Subject: Re: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

On Wed, Sep 02, 2020 at 08:43:30PM +0530, [email protected] wrote:
> From: Meenakshi Aggarwal <[email protected]>
>
> Add device tree support for LX2162AQDS board.
> LX2162A has same die as of LX2160A with different packaging.
>
> Signed-off-by: Ioana Ciornei <[email protected]>
> Signed-off-by: Kuldeep Singh <[email protected]>
> Signed-off-by: Meenakshi Aggarwal <[email protected]>
> ---
> arch/arm64/boot/dts/freescale/Makefile | 1 +
> arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 336 ++++++++++++++++++++++
> 2 files changed, 337 insertions(+)
> create mode 100644 arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
>
> diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
> index a39f0a1..ab9fbd3 100644
> --- a/arch/arm64/boot/dts/freescale/Makefile
> +++ b/arch/arm64/boot/dts/freescale/Makefile
> @@ -27,6 +27,7 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-clearfog-cx.dtb
> dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-honeycomb.dtb
> dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-qds.dtb
> dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-rdb.dtb
> +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2162a-qds.dtb
>
> dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mn-evk.dtb
> diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> new file mode 100644
> index 0000000..a81c6a4
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> @@ -0,0 +1,336 @@
> +// SPDX-License-Identifier: (GPL-2.0 OR MIT)
> +//
> +// Device Tree file for LX2162AQDS
> +//
> +// Copyright 2020 NXP
> +
> +/dts-v1/;
> +
> +#include "fsl-lx2160a.dtsi"
> +
> +/ {
> + model = "NXP Layerscape LX2162AQDS";
> + compatible = "nxp,lx2162a-qds", "fsl,lx2160a";
> +
> + aliases {
> + crypto = &crypto;
> + serial0 = &uart0;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +
> + sb_3v3: regulator-sb3v3 {
> + compatible = "regulator-fixed";
> + regulator-name = "MC34717-3.3VSB";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-boot-on;
> + regulator-always-on;

I do not see any point to have regulator-boot-on or regulator-always-on
for a regulator that doesn't have on/off control.

> + };
> +
> + mdio-mux-1 {
> + compatible = "mdio-mux-multiplexer";
> + mux-controls = <&mux 0>;
> + mdio-parent-bus = <&emdio1>;
> + #address-cells=<1>;
> + #size-cells = <0>;
> +
> + mdio@0 { /* On-board RTL8211F PHY #1 RGMII1*/
> + reg = <0x00>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + rgmii_phy1: ethernet-phy@1 {
> + compatible = "ethernet-phy-id001c.c916";
> + reg = <0x1>;
> + eee-broken-1000t;
> + };
> + };
> +
> + mdio@8 { /* On-board RTL8211F PHY #2 RGMII2*/

Missing one space before closing comment.

Shawn

> + reg = <0x8>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + rgmii_phy2: ethernet-phy@2 {
> + compatible = "ethernet-phy-id001c.c916";
> + reg = <0x2>;
> + eee-broken-1000t;
> + };
> + };
> +
> + mdio@18 { /* Slot #1 */
> + reg = <0x18>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@19 { /* Slot #2 */
> + reg = <0x19>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1a { /* Slot #3 */
> + reg = <0x1a>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1b { /* Slot #4 */
> + reg = <0x1b>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1c { /* Slot #5 */
> + reg = <0x1c>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1d { /* Slot #6 */
> + reg = <0x1d>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1e { /* Slot #7 */
> + reg = <0x1e>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1f { /* Slot #8 */
> + reg = <0x1f>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> + };
> +
> + mdio-mux-2 {
> + compatible = "mdio-mux-multiplexer";
> + mux-controls = <&mux 1>;
> + mdio-parent-bus = <&emdio2>;
> + #address-cells=<1>;
> + #size-cells = <0>;
> +
> + mdio@0 { /* Slot #1 (secondary EMI) */
> + reg = <0x00>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1 { /* Slot #2 (secondary EMI) */
> + reg = <0x01>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@2 { /* Slot #3 (secondary EMI) */
> + reg = <0x02>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@3 { /* Slot #4 (secondary EMI) */
> + reg = <0x03>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@4 { /* Slot #5 (secondary EMI) */
> + reg = <0x04>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@5 { /* Slot #6 (secondary EMI) */
> + reg = <0x05>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@6 { /* Slot #7 (secondary EMI) */
> + reg = <0x06>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@7 { /* Slot #8 (secondary EMI) */
> + reg = <0x07>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> + };
> +};
> +
> +&crypto {
> + status = "okay";
> +};
> +
> +&dpmac17 {
> + phy-handle = <&rgmii_phy1>;
> + phy-connection-type = "rgmii-id";
> +};
> +
> +&dpmac18 {
> + phy-handle = <&rgmii_phy2>;
> + phy-connection-type = "rgmii-id";
> +};
> +
> +&dspi0 {
> + status = "okay";
> +
> + dflash0: flash@0 {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + compatible = "jedec,spi-nor";
> + reg = <0>;
> + spi-max-frequency = <1000000>;
> + };
> +};
> +
> +&dspi1 {
> + status = "okay";
> +
> + dflash1: flash@0 {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + compatible = "jedec,spi-nor";
> + reg = <0>;
> + spi-max-frequency = <1000000>;
> + };
> +};
> +
> +&dspi2 {
> + status = "okay";
> +
> + dflash2: flash@0 {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + compatible = "jedec,spi-nor";
> + reg = <0>;
> + spi-max-frequency = <1000000>;
> + };
> +};
> +
> +&emdio1 {
> + status = "okay";
> +};
> +
> +&emdio2 {
> + status = "okay";
> +};
> +
> +&esdhc0 {
> + status = "okay";
> +};
> +
> +&esdhc1 {
> + status = "okay";
> +};
> +
> +&fspi {
> + status = "okay";
> +
> + mt35xu512aba0: flash@0 {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + compatible = "jedec,spi-nor";
> + m25p,fast-read;
> + spi-max-frequency = <50000000>;
> + reg = <0>;
> + spi-rx-bus-width = <8>;
> + spi-tx-bus-width = <8>;
> + };
> +};
> +
> +&i2c0 {
> + status = "okay";
> +
> + fpga@66 {
> + compatible = "fsl,lx2160aqds-fpga", "fsl,fpga-qixis-i2c",
> + "simple-mfd";
> + reg = <0x66>;
> +
> + mux: mux-controller {
> + compatible = "reg-mux";
> + #mux-control-cells = <1>;
> + mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
> + <0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
> + };
> + };
> +
> + i2c-mux@77 {
> + compatible = "nxp,pca9547";
> + reg = <0x77>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + i2c@2 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x2>;
> +
> + power-monitor@40 {
> + compatible = "ti,ina220";
> + reg = <0x40>;
> + shunt-resistor = <500>;
> + };
> +
> + power-monitor@41 {
> + compatible = "ti,ina220";
> + reg = <0x41>;
> + shunt-resistor = <1000>;
> + };
> + };
> +
> + i2c@3 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x3>;
> +
> + temperature-sensor@4c {
> + compatible = "nxp,sa56004";
> + reg = <0x4c>;
> + vcc-supply = <&sb_3v3>;
> + };
> +
> + rtc@51 {
> + compatible = "nxp,pcf2129";
> + reg = <0x51>;
> + };
> + };
> + };
> +};
> +
> +&sata0 {
> + status = "okay";
> +};
> +
> +&sata1 {
> + status = "okay";
> +};
> +
> +&sata2 {
> + status = "okay";
> +};
> +
> +&sata3 {
> + status = "okay";
> +};
> +
> +&uart0 {
> + status = "okay";
> +};
> +
> +&uart1 {
> + status = "okay";
> +};
> +
> +&usb0 {
> + status = "okay";
> +};
> --
> 2.7.4
>

2020-09-09 07:12:09

by Meenakshi Aggarwal

[permalink] [raw]
Subject: RE: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board



> -----Original Message-----
> From: Shawn Guo <[email protected]>
> Sent: Saturday, September 5, 2020 1:24 PM
> To: Meenakshi Aggarwal <[email protected]>
> Cc: [email protected]; Varun Sethi <[email protected]>; Leo Li
> <[email protected]>; [email protected];
> [email protected]; [email protected]; Ioana Ciornei
> <[email protected]>; Kuldeep Singh <[email protected]>
> Subject: Re: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds
> board
>
> On Wed, Sep 02, 2020 at 08:43:30PM +0530, [email protected]
> wrote:
> > From: Meenakshi Aggarwal <[email protected]>
> >
> > Add device tree support for LX2162AQDS board.
> > LX2162A has same die as of LX2160A with different packaging.
> >
> > Signed-off-by: Ioana Ciornei <[email protected]>
> > Signed-off-by: Kuldeep Singh <[email protected]>
> > Signed-off-by: Meenakshi Aggarwal <[email protected]>
> > ---
> > arch/arm64/boot/dts/freescale/Makefile | 1 +
> > arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 336
> > ++++++++++++++++++++++
> > 2 files changed, 337 insertions(+)
> > create mode 100644 arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> >
> > diff --git a/arch/arm64/boot/dts/freescale/Makefile
> > b/arch/arm64/boot/dts/freescale/Makefile
> > index a39f0a1..ab9fbd3 100644
> > --- a/arch/arm64/boot/dts/freescale/Makefile
> > +++ b/arch/arm64/boot/dts/freescale/Makefile
> > @@ -27,6 +27,7 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) +=
> > fsl-lx2160a-clearfog-cx.dtb
> > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-honeycomb.dtb
> > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-qds.dtb
> > dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-rdb.dtb
> > +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2162a-qds.dtb
> >
> > dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb
> > dtb-$(CONFIG_ARCH_MXC) += imx8mn-evk.dtb diff --git
> > a/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> > b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> > new file mode 100644
> > index 0000000..a81c6a4
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> > @@ -0,0 +1,336 @@
> > +// SPDX-License-Identifier: (GPL-2.0 OR MIT) // // Device Tree file
> > +for LX2162AQDS // // Copyright 2020 NXP
> > +
> > +/dts-v1/;
> > +
> > +#include "fsl-lx2160a.dtsi"
> > +
> > +/ {
> > + model = "NXP Layerscape LX2162AQDS";
> > + compatible = "nxp,lx2162a-qds", "fsl,lx2160a";
> > +
> > + aliases {
> > + crypto = &crypto;
> > + serial0 = &uart0;
> > + };
> > +
> > + chosen {
> > + stdout-path = "serial0:115200n8";
> > + };
> > +
> > + sb_3v3: regulator-sb3v3 {
> > + compatible = "regulator-fixed";
> > + regulator-name = "MC34717-3.3VSB";
> > + regulator-min-microvolt = <3300000>;
> > + regulator-max-microvolt = <3300000>;
> > + regulator-boot-on;
> > + regulator-always-on;
>
> I do not see any point to have regulator-boot-on or regulator-always-on for a
> regulator that doesn't have on/off control.
[Meenakshi Aggarwal] Properties are added to specify that platform firmware's out of reset configuration enabled the regulator and
regulator should never be disabled or change its operative status.

Can you help in understanding why these optional properties cannot be used together
>
> > + };
> > +
> > + mdio-mux-1 {
> > + compatible = "mdio-mux-multiplexer";
> > + mux-controls = <&mux 0>;
> > + mdio-parent-bus = <&emdio1>;
> > + #address-cells=<1>;
> > + #size-cells = <0>;
> > +
> > + mdio@0 { /* On-board RTL8211F PHY #1 RGMII1*/
> > + reg = <0x00>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + rgmii_phy1: ethernet-phy@1 {
> > + compatible = "ethernet-phy-id001c.c916";
> > + reg = <0x1>;
> > + eee-broken-1000t;
> > + };
> > + };
> > +
> > + mdio@8 { /* On-board RTL8211F PHY #2 RGMII2*/
>
> Missing one space before closing comment.
[Meenakshi Aggarwal] will correct in next version
>
> Shawn
>
> > + reg = <0x8>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + rgmii_phy2: ethernet-phy@2 {
> > + compatible = "ethernet-phy-id001c.c916";
> > + reg = <0x2>;
> > + eee-broken-1000t;
> > + };
> > + };
> > +
> > + mdio@18 { /* Slot #1 */
> > + reg = <0x18>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@19 { /* Slot #2 */
> > + reg = <0x19>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@1a { /* Slot #3 */
> > + reg = <0x1a>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@1b { /* Slot #4 */
> > + reg = <0x1b>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@1c { /* Slot #5 */
> > + reg = <0x1c>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@1d { /* Slot #6 */
> > + reg = <0x1d>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@1e { /* Slot #7 */
> > + reg = <0x1e>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@1f { /* Slot #8 */
> > + reg = <0x1f>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > + };
> > +
> > + mdio-mux-2 {
> > + compatible = "mdio-mux-multiplexer";
> > + mux-controls = <&mux 1>;
> > + mdio-parent-bus = <&emdio2>;
> > + #address-cells=<1>;
> > + #size-cells = <0>;
> > +
> > + mdio@0 { /* Slot #1 (secondary EMI) */
> > + reg = <0x00>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@1 { /* Slot #2 (secondary EMI) */
> > + reg = <0x01>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@2 { /* Slot #3 (secondary EMI) */
> > + reg = <0x02>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@3 { /* Slot #4 (secondary EMI) */
> > + reg = <0x03>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@4 { /* Slot #5 (secondary EMI) */
> > + reg = <0x04>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@5 { /* Slot #6 (secondary EMI) */
> > + reg = <0x05>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@6 { /* Slot #7 (secondary EMI) */
> > + reg = <0x06>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > +
> > + mdio@7 { /* Slot #8 (secondary EMI) */
> > + reg = <0x07>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + };
> > + };
> > +};
> > +
> > +&crypto {
> > + status = "okay";
> > +};
> > +
> > +&dpmac17 {
> > + phy-handle = <&rgmii_phy1>;
> > + phy-connection-type = "rgmii-id";
> > +};
> > +
> > +&dpmac18 {
> > + phy-handle = <&rgmii_phy2>;
> > + phy-connection-type = "rgmii-id";
> > +};
> > +
> > +&dspi0 {
> > + status = "okay";
> > +
> > + dflash0: flash@0 {
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + compatible = "jedec,spi-nor";
> > + reg = <0>;
> > + spi-max-frequency = <1000000>;
> > + };
> > +};
> > +
> > +&dspi1 {
> > + status = "okay";
> > +
> > + dflash1: flash@0 {
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + compatible = "jedec,spi-nor";
> > + reg = <0>;
> > + spi-max-frequency = <1000000>;
> > + };
> > +};
> > +
> > +&dspi2 {
> > + status = "okay";
> > +
> > + dflash2: flash@0 {
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + compatible = "jedec,spi-nor";
> > + reg = <0>;
> > + spi-max-frequency = <1000000>;
> > + };
> > +};
> > +
> > +&emdio1 {
> > + status = "okay";
> > +};
> > +
> > +&emdio2 {
> > + status = "okay";
> > +};
> > +
> > +&esdhc0 {
> > + status = "okay";
> > +};
> > +
> > +&esdhc1 {
> > + status = "okay";
> > +};
> > +
> > +&fspi {
> > + status = "okay";
> > +
> > + mt35xu512aba0: flash@0 {
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + compatible = "jedec,spi-nor";
> > + m25p,fast-read;
> > + spi-max-frequency = <50000000>;
> > + reg = <0>;
> > + spi-rx-bus-width = <8>;
> > + spi-tx-bus-width = <8>;
> > + };
> > +};
> > +
> > +&i2c0 {
> > + status = "okay";
> > +
> > + fpga@66 {
> > + compatible = "fsl,lx2160aqds-fpga", "fsl,fpga-qixis-i2c",
> > + "simple-mfd";
> > + reg = <0x66>;
> > +
> > + mux: mux-controller {
> > + compatible = "reg-mux";
> > + #mux-control-cells = <1>;
> > + mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3
> */
> > + <0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
> > + };
> > + };
> > +
> > + i2c-mux@77 {
> > + compatible = "nxp,pca9547";
> > + reg = <0x77>;
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + i2c@2 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + reg = <0x2>;
> > +
> > + power-monitor@40 {
> > + compatible = "ti,ina220";
> > + reg = <0x40>;
> > + shunt-resistor = <500>;
> > + };
> > +
> > + power-monitor@41 {
> > + compatible = "ti,ina220";
> > + reg = <0x41>;
> > + shunt-resistor = <1000>;
> > + };
> > + };
> > +
> > + i2c@3 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + reg = <0x3>;
> > +
> > + temperature-sensor@4c {
> > + compatible = "nxp,sa56004";
> > + reg = <0x4c>;
> > + vcc-supply = <&sb_3v3>;
> > + };
> > +
> > + rtc@51 {
> > + compatible = "nxp,pcf2129";
> > + reg = <0x51>;
> > + };
> > + };
> > + };
> > +};
> > +
> > +&sata0 {
> > + status = "okay";
> > +};
> > +
> > +&sata1 {
> > + status = "okay";
> > +};
> > +
> > +&sata2 {
> > + status = "okay";
> > +};
> > +
> > +&sata3 {
> > + status = "okay";
> > +};
> > +
> > +&uart0 {
> > + status = "okay";
> > +};
> > +
> > +&uart1 {
> > + status = "okay";
> > +};
> > +
> > +&usb0 {
> > + status = "okay";
> > +};
> > --
> > 2.7.4
> >

2020-09-12 09:50:22

by Shawn Guo

[permalink] [raw]
Subject: Re: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

On Wed, Sep 09, 2020 at 07:10:12AM +0000, Meenakshi Aggarwal wrote:
> > > + sb_3v3: regulator-sb3v3 {
> > > + compatible = "regulator-fixed";
> > > + regulator-name = "MC34717-3.3VSB";
> > > + regulator-min-microvolt = <3300000>;
> > > + regulator-max-microvolt = <3300000>;
> > > + regulator-boot-on;
> > > + regulator-always-on;
> >
> > I do not see any point to have regulator-boot-on or regulator-always-on for a
> > regulator that doesn't have on/off control.
> [Meenakshi Aggarwal] Properties are added to specify that platform firmware's out of reset configuration enabled the regulator and
> regulator should never be disabled or change its operative status.

What I was wondering if how this regulator is enabled by firmware, by
some GPIO control? In that case, 'gpio' property should be there to
describe the GPIO control.

>
> Can you help in understanding why these optional properties cannot be used together

It's totally fine to use these properties together. But if the
regulator doesn't have on/off control, neither of them makes sense.

Shawn

2020-09-14 20:25:47

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 1/2] dt-bindings: arm64: add compatible for LX2162A QDS Board

On Wed, 02 Sep 2020 20:43:29 +0530, [email protected] wrote:
> From: Meenakshi Aggarwal <[email protected]>
>
> Add support for LX2162A, LX2162A is LX2160A based SoC.
>
> Signed-off-by: Meenakshi Aggarwal <[email protected]>
> ---
> Documentation/devicetree/bindings/arm/fsl.yaml | 1 +
> 1 file changed, 1 insertion(+)
>

Acked-by: Rob Herring <[email protected]>

2020-09-21 06:05:18

by Meenakshi Aggarwal

[permalink] [raw]
Subject: RE: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board



> -----Original Message-----
> From: Shawn Guo <[email protected]>
> Sent: Saturday, September 12, 2020 3:19 PM
> To: Meenakshi Aggarwal <[email protected]>
> Cc: [email protected]; Varun Sethi <[email protected]>; Leo Li
> <[email protected]>; [email protected];
> [email protected]; [email protected]; Ioana Ciornei
> <[email protected]>; Kuldeep Singh <[email protected]>
> Subject: Re: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds
> board
>
> On Wed, Sep 09, 2020 at 07:10:12AM +0000, Meenakshi Aggarwal wrote:
> > > > + sb_3v3: regulator-sb3v3 {
> > > > + compatible = "regulator-fixed";
> > > > + regulator-name = "MC34717-3.3VSB";
> > > > + regulator-min-microvolt = <3300000>;
> > > > + regulator-max-microvolt = <3300000>;
> > > > + regulator-boot-on;
> > > > + regulator-always-on;
> > >
> > > I do not see any point to have regulator-boot-on or
> > > regulator-always-on for a regulator that doesn't have on/off control.
> > [Meenakshi Aggarwal] Properties are added to specify that platform
> > firmware's out of reset configuration enabled the regulator and regulator
> should never be disabled or change its operative status.
>
> What I was wondering if how this regulator is enabled by firmware, by some
> GPIO control? In that case, 'gpio' property should be there to describe the GPIO
> control.
>
[Meenakshi Aggarwal] Its not controlled by GPIO. Its gets power on with board.
> >
> > Can you help in understanding why these optional properties cannot be
> > used together
>
> It's totally fine to use these properties together. But if the regulator doesn't
> have on/off control, neither of them makes sense.
[Meenakshi Aggarwal] As per documentation, we should keep " regulator-always-on " as per description, we
Can remove " regulator-boot-on" property from dts.

regulator-always-on:
description: boolean, regulator should never be disabled


.
>
> Shawn

2020-09-21 13:05:13

by Shawn Guo

[permalink] [raw]
Subject: Re: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

On Mon, Sep 21, 2020 at 06:00:53AM +0000, Meenakshi Aggarwal wrote:
>
>
> > -----Original Message-----
> > From: Shawn Guo <[email protected]>
> > Sent: Saturday, September 12, 2020 3:19 PM
> > To: Meenakshi Aggarwal <[email protected]>
> > Cc: [email protected]; Varun Sethi <[email protected]>; Leo Li
> > <[email protected]>; [email protected];
> > [email protected]; [email protected]; Ioana Ciornei
> > <[email protected]>; Kuldeep Singh <[email protected]>
> > Subject: Re: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds
> > board
> >
> > On Wed, Sep 09, 2020 at 07:10:12AM +0000, Meenakshi Aggarwal wrote:
> > > > > + sb_3v3: regulator-sb3v3 {
> > > > > + compatible = "regulator-fixed";
> > > > > + regulator-name = "MC34717-3.3VSB";
> > > > > + regulator-min-microvolt = <3300000>;
> > > > > + regulator-max-microvolt = <3300000>;
> > > > > + regulator-boot-on;
> > > > > + regulator-always-on;
> > > >
> > > > I do not see any point to have regulator-boot-on or
> > > > regulator-always-on for a regulator that doesn't have on/off control.
> > > [Meenakshi Aggarwal] Properties are added to specify that platform
> > > firmware's out of reset configuration enabled the regulator and regulator
> > should never be disabled or change its operative status.
> >
> > What I was wondering if how this regulator is enabled by firmware, by some
> > GPIO control? In that case, 'gpio' property should be there to describe the GPIO
> > control.
> >
> [Meenakshi Aggarwal] Its not controlled by GPIO. Its gets power on with board.
> > >
> > > Can you help in understanding why these optional properties cannot be
> > > used together
> >
> > It's totally fine to use these properties together. But if the regulator doesn't
> > have on/off control, neither of them makes sense.
> [Meenakshi Aggarwal] As per documentation, we should keep " regulator-always-on " as per description, we
> Can remove " regulator-boot-on" property from dts.
>
> regulator-always-on:
> description: boolean, regulator should never be disabled

Again, the property is only meaningful for a regulator that can possibly
be disabled.

Shawn

2020-09-21 13:35:54

by Meenakshi Aggarwal

[permalink] [raw]
Subject: RE: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

Ok, I will update the dts with your suggestions.

Thanks,
Meenakshi

> -----Original Message-----
> From: Shawn Guo <[email protected]>
> Sent: Monday, September 21, 2020 6:33 PM
> To: Meenakshi Aggarwal <[email protected]>
> Cc: [email protected]; Varun Sethi <[email protected]>; Leo Li
> <[email protected]>; [email protected];
> [email protected]; [email protected]; Ioana Ciornei
> <[email protected]>; Kuldeep Singh <[email protected]>
> Subject: Re: [PATCH 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds
> board
>
> On Mon, Sep 21, 2020 at 06:00:53AM +0000, Meenakshi Aggarwal wrote:
> >
> >
> > > -----Original Message-----
> > > From: Shawn Guo <[email protected]>
> > > Sent: Saturday, September 12, 2020 3:19 PM
> > > To: Meenakshi Aggarwal <[email protected]>
> > > Cc: [email protected]; Varun Sethi <[email protected]>; Leo Li
> > > <[email protected]>; [email protected];
> > > [email protected]; [email protected]; Ioana
> > > Ciornei <[email protected]>; Kuldeep Singh
> > > <[email protected]>
> > > Subject: Re: [PATCH 2/2] arm64: dts: lx2160a: add device tree for
> > > lx2162aqds board
> > >
> > > On Wed, Sep 09, 2020 at 07:10:12AM +0000, Meenakshi Aggarwal wrote:
> > > > > > + sb_3v3: regulator-sb3v3 {
> > > > > > + compatible = "regulator-fixed";
> > > > > > + regulator-name = "MC34717-3.3VSB";
> > > > > > + regulator-min-microvolt = <3300000>;
> > > > > > + regulator-max-microvolt = <3300000>;
> > > > > > + regulator-boot-on;
> > > > > > + regulator-always-on;
> > > > >
> > > > > I do not see any point to have regulator-boot-on or
> > > > > regulator-always-on for a regulator that doesn't have on/off control.
> > > > [Meenakshi Aggarwal] Properties are added to specify that platform
> > > > firmware's out of reset configuration enabled the regulator and
> > > > regulator
> > > should never be disabled or change its operative status.
> > >
> > > What I was wondering if how this regulator is enabled by firmware,
> > > by some GPIO control? In that case, 'gpio' property should be there
> > > to describe the GPIO control.
> > >
> > [Meenakshi Aggarwal] Its not controlled by GPIO. Its gets power on with board.
> > > >
> > > > Can you help in understanding why these optional properties cannot
> > > > be used together
> > >
> > > It's totally fine to use these properties together. But if the
> > > regulator doesn't have on/off control, neither of them makes sense.
> > [Meenakshi Aggarwal] As per documentation, we should keep "
> > regulator-always-on " as per description, we Can remove " regulator-boot-on"
> property from dts.
> >
> > regulator-always-on:
> > description: boolean, regulator should never be disabled
>
> Again, the property is only meaningful for a regulator that can possibly be
> disabled.
>
> Shawn

2020-09-29 10:04:11

by Meenakshi Aggarwal

[permalink] [raw]
Subject: [PATCH v3 0/2] Add device tree support for LX2162AQDS board

From: Meenakshi Aggarwal <[email protected]>

LX2162A has same die as of LX2160A with different packaging.

Changes:

v2:
- divided patch into two, binding and dts support

v3:
- incorporated review comments on voltage regulator node

Meenakshi Aggarwal (2):
dt-bindings: arm64: add compatible for LX2162A QDS Board
arm64: dts: lx2160a: add device tree for lx2162aqds board

Documentation/devicetree/bindings/arm/fsl.yaml | 1 +
arch/arm64/boot/dts/freescale/Makefile | 1 +
arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 334 ++++++++++++++++++++++
3 files changed, 336 insertions(+)
create mode 100644 arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts

--
2.7.4

2020-09-29 10:04:50

by Meenakshi Aggarwal

[permalink] [raw]
Subject: [PATCH v3 1/2] dt-bindings: arm64: add compatible for LX2162A QDS Board

From: Meenakshi Aggarwal <[email protected]>

Add support for LX2162A, LX2162A is LX2160A based SoC.

Signed-off-by: Meenakshi Aggarwal <[email protected]>
Acked-by: Rob Herring <[email protected]>
---
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 6da9d73..5c7b7dd 100644
--- a/Documentation/devicetree/bindings/arm/fsl.yaml
+++ b/Documentation/devicetree/bindings/arm/fsl.yaml
@@ -518,6 +518,7 @@ properties:
- enum:
- fsl,lx2160a-qds
- fsl,lx2160a-rdb
+ - fsl,lx2162a-qds
- const: fsl,lx2160a

- description: S32V234 based Boards
--
2.7.4

2020-09-29 10:06:46

by Meenakshi Aggarwal

[permalink] [raw]
Subject: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

From: Meenakshi Aggarwal <[email protected]>

Add device tree support for LX2162AQDS board.
LX2162A has same die as of LX2160A with different packaging.

Signed-off-by: Ioana Ciornei <[email protected]>
Signed-off-by: Kuldeep Singh <[email protected]>
Signed-off-by: Meenakshi Aggarwal <[email protected]>
---
arch/arm64/boot/dts/freescale/Makefile | 1 +
arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 334 ++++++++++++++++++++++
2 files changed, 335 insertions(+)
create mode 100644 arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts

diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 903c0eb..0edc8ab 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -27,6 +27,7 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-clearfog-cx.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-honeycomb.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-qds.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-rdb.dtb
+dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2162a-qds.dtb

dtb-$(CONFIG_ARCH_MXC) += imx8mm-beacon-kit.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
new file mode 100644
index 0000000..b29174e
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
@@ -0,0 +1,334 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+//
+// Device Tree file for LX2162AQDS
+//
+// Copyright 2020 NXP
+
+/dts-v1/;
+
+#include "fsl-lx2160a.dtsi"
+
+/ {
+ model = "NXP Layerscape LX2162AQDS";
+ compatible = "nxp,lx2162a-qds", "fsl,lx2160a";
+
+ aliases {
+ crypto = &crypto;
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ sb_3v3: regulator-sb3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "LTM4619-3.3VSB";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ mdio-mux-1 {
+ compatible = "mdio-mux-multiplexer";
+ mux-controls = <&mux 0>;
+ mdio-parent-bus = <&emdio1>;
+ #address-cells=<1>;
+ #size-cells = <0>;
+
+ mdio@0 { /* On-board RTL8211F PHY #1 RGMII1 */
+ reg = <0x00>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgmii_phy1: ethernet-phy@1 {
+ compatible = "ethernet-phy-id001c.c916";
+ reg = <0x1>;
+ eee-broken-1000t;
+ };
+ };
+
+ mdio@8 { /* On-board RTL8211F PHY #2 RGMII2 */
+ reg = <0x8>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgmii_phy2: ethernet-phy@2 {
+ compatible = "ethernet-phy-id001c.c916";
+ reg = <0x2>;
+ eee-broken-1000t;
+ };
+ };
+
+ mdio@18 { /* Slot #1 */
+ reg = <0x18>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@19 { /* Slot #2 */
+ reg = <0x19>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1a { /* Slot #3 */
+ reg = <0x1a>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1b { /* Slot #4 */
+ reg = <0x1b>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1c { /* Slot #5 */
+ reg = <0x1c>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1d { /* Slot #6 */
+ reg = <0x1d>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1e { /* Slot #7 */
+ reg = <0x1e>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1f { /* Slot #8 */
+ reg = <0x1f>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+
+ mdio-mux-2 {
+ compatible = "mdio-mux-multiplexer";
+ mux-controls = <&mux 1>;
+ mdio-parent-bus = <&emdio2>;
+ #address-cells=<1>;
+ #size-cells = <0>;
+
+ mdio@0 { /* Slot #1 (secondary EMI) */
+ reg = <0x00>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1 { /* Slot #2 (secondary EMI) */
+ reg = <0x01>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@2 { /* Slot #3 (secondary EMI) */
+ reg = <0x02>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@3 { /* Slot #4 (secondary EMI) */
+ reg = <0x03>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@4 { /* Slot #5 (secondary EMI) */
+ reg = <0x04>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@5 { /* Slot #6 (secondary EMI) */
+ reg = <0x05>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@6 { /* Slot #7 (secondary EMI) */
+ reg = <0x06>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@7 { /* Slot #8 (secondary EMI) */
+ reg = <0x07>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+};
+
+&crypto {
+ status = "okay";
+};
+
+&dpmac17 {
+ phy-handle = <&rgmii_phy1>;
+ phy-connection-type = "rgmii-id";
+};
+
+&dpmac18 {
+ phy-handle = <&rgmii_phy2>;
+ phy-connection-type = "rgmii-id";
+};
+
+&dspi0 {
+ status = "okay";
+
+ dflash0: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&dspi1 {
+ status = "okay";
+
+ dflash1: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&dspi2 {
+ status = "okay";
+
+ dflash2: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&emdio1 {
+ status = "okay";
+};
+
+&emdio2 {
+ status = "okay";
+};
+
+&esdhc0 {
+ status = "okay";
+};
+
+&esdhc1 {
+ status = "okay";
+};
+
+&fspi {
+ status = "okay";
+
+ mt35xu512aba0: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
+ reg = <0>;
+ spi-rx-bus-width = <8>;
+ spi-tx-bus-width = <8>;
+ };
+};
+
+&i2c0 {
+ status = "okay";
+
+ fpga@66 {
+ compatible = "fsl,lx2160aqds-fpga", "fsl,fpga-qixis-i2c",
+ "simple-mfd";
+ reg = <0x66>;
+
+ mux: mux-controller {
+ compatible = "reg-mux";
+ #mux-control-cells = <1>;
+ mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
+ <0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
+ };
+ };
+
+ i2c-mux@77 {
+ compatible = "nxp,pca9547";
+ reg = <0x77>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ i2c@2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x2>;
+
+ power-monitor@40 {
+ compatible = "ti,ina220";
+ reg = <0x40>;
+ shunt-resistor = <500>;
+ };
+
+ power-monitor@41 {
+ compatible = "ti,ina220";
+ reg = <0x41>;
+ shunt-resistor = <1000>;
+ };
+ };
+
+ i2c@3 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x3>;
+
+ temperature-sensor@4c {
+ compatible = "nxp,sa56004";
+ reg = <0x4c>;
+ vcc-supply = <&sb_3v3>;
+ };
+
+ rtc@51 {
+ compatible = "nxp,pcf2129";
+ reg = <0x51>;
+ };
+ };
+ };
+};
+
+&sata0 {
+ status = "okay";
+};
+
+&sata1 {
+ status = "okay";
+};
+
+&sata2 {
+ status = "okay";
+};
+
+&sata3 {
+ status = "okay";
+};
+
+&uart0 {
+ status = "okay";
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&usb0 {
+ status = "okay";
+};
--
2.7.4

2020-10-19 10:41:32

by Meenakshi Aggarwal

[permalink] [raw]
Subject: RE: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

Hi,

Any further comments?

Thanks,
Meenakshi

> -----Original Message-----
> From: Meenakshi Aggarwal <[email protected]>
> Sent: Tuesday, September 29, 2020 3:33 PM
> To: [email protected]; [email protected]; Varun Sethi
> <[email protected]>; Leo Li <[email protected]>; linux-arm-
> [email protected]; [email protected]; linux-
> [email protected]
> Cc: Meenakshi Aggarwal <[email protected]>; Ioana Ciornei
> <[email protected]>; Kuldeep Singh <[email protected]>
> Subject: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds
> board
>
> From: Meenakshi Aggarwal <[email protected]>
>
> Add device tree support for LX2162AQDS board.
> LX2162A has same die as of LX2160A with different packaging.
>
> Signed-off-by: Ioana Ciornei <[email protected]>
> Signed-off-by: Kuldeep Singh <[email protected]>
> Signed-off-by: Meenakshi Aggarwal <[email protected]>
> ---
> arch/arm64/boot/dts/freescale/Makefile | 1 +
> arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 334
> ++++++++++++++++++++++
> 2 files changed, 335 insertions(+)
> create mode 100644 arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
>
> diff --git a/arch/arm64/boot/dts/freescale/Makefile
> b/arch/arm64/boot/dts/freescale/Makefile
> index 903c0eb..0edc8ab 100644
> --- a/arch/arm64/boot/dts/freescale/Makefile
> +++ b/arch/arm64/boot/dts/freescale/Makefile
> @@ -27,6 +27,7 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-
> clearfog-cx.dtb
> dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-honeycomb.dtb
> dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-qds.dtb
> dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-rdb.dtb
> +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2162a-qds.dtb
>
> dtb-$(CONFIG_ARCH_MXC) += imx8mm-beacon-kit.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb diff --git
> a/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> new file mode 100644
> index 0000000..b29174e
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
> @@ -0,0 +1,334 @@
> +// SPDX-License-Identifier: (GPL-2.0 OR MIT) // // Device Tree file for
> +LX2162AQDS // // Copyright 2020 NXP
> +
> +/dts-v1/;
> +
> +#include "fsl-lx2160a.dtsi"
> +
> +/ {
> + model = "NXP Layerscape LX2162AQDS";
> + compatible = "nxp,lx2162a-qds", "fsl,lx2160a";
> +
> + aliases {
> + crypto = &crypto;
> + serial0 = &uart0;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +
> + sb_3v3: regulator-sb3v3 {
> + compatible = "regulator-fixed";
> + regulator-name = "LTM4619-3.3VSB";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + };
> +
> + mdio-mux-1 {
> + compatible = "mdio-mux-multiplexer";
> + mux-controls = <&mux 0>;
> + mdio-parent-bus = <&emdio1>;
> + #address-cells=<1>;
> + #size-cells = <0>;
> +
> + mdio@0 { /* On-board RTL8211F PHY #1 RGMII1 */
> + reg = <0x00>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + rgmii_phy1: ethernet-phy@1 {
> + compatible = "ethernet-phy-id001c.c916";
> + reg = <0x1>;
> + eee-broken-1000t;
> + };
> + };
> +
> + mdio@8 { /* On-board RTL8211F PHY #2 RGMII2 */
> + reg = <0x8>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + rgmii_phy2: ethernet-phy@2 {
> + compatible = "ethernet-phy-id001c.c916";
> + reg = <0x2>;
> + eee-broken-1000t;
> + };
> + };
> +
> + mdio@18 { /* Slot #1 */
> + reg = <0x18>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@19 { /* Slot #2 */
> + reg = <0x19>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1a { /* Slot #3 */
> + reg = <0x1a>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1b { /* Slot #4 */
> + reg = <0x1b>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1c { /* Slot #5 */
> + reg = <0x1c>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1d { /* Slot #6 */
> + reg = <0x1d>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1e { /* Slot #7 */
> + reg = <0x1e>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1f { /* Slot #8 */
> + reg = <0x1f>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> + };
> +
> + mdio-mux-2 {
> + compatible = "mdio-mux-multiplexer";
> + mux-controls = <&mux 1>;
> + mdio-parent-bus = <&emdio2>;
> + #address-cells=<1>;
> + #size-cells = <0>;
> +
> + mdio@0 { /* Slot #1 (secondary EMI) */
> + reg = <0x00>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@1 { /* Slot #2 (secondary EMI) */
> + reg = <0x01>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@2 { /* Slot #3 (secondary EMI) */
> + reg = <0x02>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@3 { /* Slot #4 (secondary EMI) */
> + reg = <0x03>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@4 { /* Slot #5 (secondary EMI) */
> + reg = <0x04>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@5 { /* Slot #6 (secondary EMI) */
> + reg = <0x05>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@6 { /* Slot #7 (secondary EMI) */
> + reg = <0x06>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> +
> + mdio@7 { /* Slot #8 (secondary EMI) */
> + reg = <0x07>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> + };
> + };
> +};
> +
> +&crypto {
> + status = "okay";
> +};
> +
> +&dpmac17 {
> + phy-handle = <&rgmii_phy1>;
> + phy-connection-type = "rgmii-id";
> +};
> +
> +&dpmac18 {
> + phy-handle = <&rgmii_phy2>;
> + phy-connection-type = "rgmii-id";
> +};
> +
> +&dspi0 {
> + status = "okay";
> +
> + dflash0: flash@0 {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + compatible = "jedec,spi-nor";
> + reg = <0>;
> + spi-max-frequency = <1000000>;
> + };
> +};
> +
> +&dspi1 {
> + status = "okay";
> +
> + dflash1: flash@0 {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + compatible = "jedec,spi-nor";
> + reg = <0>;
> + spi-max-frequency = <1000000>;
> + };
> +};
> +
> +&dspi2 {
> + status = "okay";
> +
> + dflash2: flash@0 {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + compatible = "jedec,spi-nor";
> + reg = <0>;
> + spi-max-frequency = <1000000>;
> + };
> +};
> +
> +&emdio1 {
> + status = "okay";
> +};
> +
> +&emdio2 {
> + status = "okay";
> +};
> +
> +&esdhc0 {
> + status = "okay";
> +};
> +
> +&esdhc1 {
> + status = "okay";
> +};
> +
> +&fspi {
> + status = "okay";
> +
> + mt35xu512aba0: flash@0 {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + compatible = "jedec,spi-nor";
> + m25p,fast-read;
> + spi-max-frequency = <50000000>;
> + reg = <0>;
> + spi-rx-bus-width = <8>;
> + spi-tx-bus-width = <8>;
> + };
> +};
> +
> +&i2c0 {
> + status = "okay";
> +
> + fpga@66 {
> + compatible = "fsl,lx2160aqds-fpga", "fsl,fpga-qixis-i2c",
> + "simple-mfd";
> + reg = <0x66>;
> +
> + mux: mux-controller {
> + compatible = "reg-mux";
> + #mux-control-cells = <1>;
> + mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3
> */
> + <0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
> + };
> + };
> +
> + i2c-mux@77 {
> + compatible = "nxp,pca9547";
> + reg = <0x77>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + i2c@2 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x2>;
> +
> + power-monitor@40 {
> + compatible = "ti,ina220";
> + reg = <0x40>;
> + shunt-resistor = <500>;
> + };
> +
> + power-monitor@41 {
> + compatible = "ti,ina220";
> + reg = <0x41>;
> + shunt-resistor = <1000>;
> + };
> + };
> +
> + i2c@3 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x3>;
> +
> + temperature-sensor@4c {
> + compatible = "nxp,sa56004";
> + reg = <0x4c>;
> + vcc-supply = <&sb_3v3>;
> + };
> +
> + rtc@51 {
> + compatible = "nxp,pcf2129";
> + reg = <0x51>;
> + };
> + };
> + };
> +};
> +
> +&sata0 {
> + status = "okay";
> +};
> +
> +&sata1 {
> + status = "okay";
> +};
> +
> +&sata2 {
> + status = "okay";
> +};
> +
> +&sata3 {
> + status = "okay";
> +};
> +
> +&uart0 {
> + status = "okay";
> +};
> +
> +&uart1 {
> + status = "okay";
> +};
> +
> +&usb0 {
> + status = "okay";
> +};
> --
> 2.7.4

2020-10-26 08:58:42

by Shawn Guo

[permalink] [raw]
Subject: Re: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

On Mon, Oct 19, 2020 at 09:00:33AM +0000, Meenakshi Aggarwal wrote:
> Hi,
>
> Any further comments?

Please address the following checkpatch warnings.

WARNING: DT compatible string "nxp,lx2162a-qds" appears un-documented -- check ./Documentation/devicetree/bindings/
#49: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:13:
+ compatible = "nxp,lx2162a-qds", "fsl,lx2160a";

WARNING: DT compatible string "ethernet-phy-id001c.c916" appears un-documented -- check ./Documentation/devicetree/bindings/
#80: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:44:
+ compatible = "ethernet-phy-id001c.c916";

WARNING: DT compatible string "ethernet-phy-id001c.c916" appears un-documented -- check ./Documentation/devicetree/bindings/
#92: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:56:
+ compatible = "ethernet-phy-id001c.c916";


Shawn

2020-10-26 17:54:30

by Leo Li

[permalink] [raw]
Subject: RE: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board



> -----Original Message-----
> From: Shawn Guo <[email protected]>
> Sent: Monday, October 26, 2020 2:19 AM
> To: Meenakshi Aggarwal <[email protected]>
> Cc: [email protected]; Varun Sethi <[email protected]>; Leo Li
> <[email protected]>; [email protected];
> [email protected]; [email protected]; Ioana Ciornei
> <[email protected]>; Kuldeep Singh <[email protected]>
> Subject: Re: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for
> lx2162aqds board
>
> On Mon, Oct 19, 2020 at 09:00:33AM +0000, Meenakshi Aggarwal wrote:
> > Hi,
> >
> > Any further comments?
>
> Please address the following checkpatch warnings.
>
> WARNING: DT compatible string "nxp,lx2162a-qds" appears un-documented
> -- check ./Documentation/devicetree/bindings/
> #49: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:13:
> + compatible = "nxp,lx2162a-qds", "fsl,lx2160a";
>
> WARNING: DT compatible string "ethernet-phy-id001c.c916" appears un-
> documented -- check ./Documentation/devicetree/bindings/
> #80: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:44:
> + compatible = "ethernet-phy-id001c.c916";

Interesting that it doesn't match the following in Documentation/devicetree/bindings/net/ethernet-phy.yaml

- pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
description:
If the PHY reports an incorrect ID (or none at all) then the
compatible list may contain an entry with the correct PHY ID
in the above form.
The first group of digits is the 16 bit Phy Identifier 1
register, this is the chip vendor OUI bits 3:18. The
second group of digits is the Phy Identifier 2 register,
this is the chip vendor OUI bits 19:24, followed by 10
bits of a vendor specific ID.

>
> WARNING: DT compatible string "ethernet-phy-id001c.c916" appears un-
> documented -- check ./Documentation/devicetree/bindings/
> #92: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:56:
> + compatible = "ethernet-phy-id001c.c916";
>
>
> Shawn

2020-10-30 09:01:36

by Meenakshi Aggarwal

[permalink] [raw]
Subject: RE: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

Hi Shawn,

I will document "nxp,lx2162a-qds".
For ethernet string, documentation seems correct.

Thanks,
Meenakshi
> -----Original Message-----
> From: Leo Li <[email protected]>
> Sent: Monday, October 26, 2020 8:06 PM
> To: Shawn Guo <[email protected]>; Meenakshi Aggarwal
> <[email protected]>
> Cc: [email protected]; Varun Sethi <[email protected]>; linux-arm-
> [email protected]; [email protected]; linux-
> [email protected]; Ioana Ciornei <[email protected]>; Kuldeep Singh
> <[email protected]>
> Subject: RE: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds
> board
>
>
>
> > -----Original Message-----
> > From: Shawn Guo <[email protected]>
> > Sent: Monday, October 26, 2020 2:19 AM
> > To: Meenakshi Aggarwal <[email protected]>
> > Cc: [email protected]; Varun Sethi <[email protected]>; Leo Li
> > <[email protected]>; [email protected];
> > [email protected]; [email protected]; Ioana
> > Ciornei <[email protected]>; Kuldeep Singh <[email protected]>
> > Subject: Re: [PATCH v3 2/2] arm64: dts: lx2160a: add device tree for
> > lx2162aqds board
> >
> > On Mon, Oct 19, 2020 at 09:00:33AM +0000, Meenakshi Aggarwal wrote:
> > > Hi,
> > >
> > > Any further comments?
> >
> > Please address the following checkpatch warnings.
> >
> > WARNING: DT compatible string "nxp,lx2162a-qds" appears un-documented
> > -- check ./Documentation/devicetree/bindings/
> > #49: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:13:
> > + compatible = "nxp,lx2162a-qds", "fsl,lx2160a";
> >
> > WARNING: DT compatible string "ethernet-phy-id001c.c916" appears un-
> > documented -- check ./Documentation/devicetree/bindings/
> > #80: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:44:
> > + compatible = "ethernet-phy-id001c.c916";
>
> Interesting that it doesn't match the following in
> Documentation/devicetree/bindings/net/ethernet-phy.yaml
>
> - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
> description:
> If the PHY reports an incorrect ID (or none at all) then the
> compatible list may contain an entry with the correct PHY ID
> in the above form.
> The first group of digits is the 16 bit Phy Identifier 1
> register, this is the chip vendor OUI bits 3:18. The
> second group of digits is the Phy Identifier 2 register,
> this is the chip vendor OUI bits 19:24, followed by 10
> bits of a vendor specific ID.
>
> >
> > WARNING: DT compatible string "ethernet-phy-id001c.c916" appears un-
> > documented -- check ./Documentation/devicetree/bindings/
> > #92: FILE: arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts:56:
> > + compatible = "ethernet-phy-id001c.c916";
> >
> >
> > Shawn

2020-11-02 06:01:47

by Meenakshi Aggarwal

[permalink] [raw]
Subject: [PATCH v4 0/2] Add device tree support for LX2162AQDS board

From: Meenakshi Aggarwal <[email protected]>

LX2162A has same die as of LX2160A with different packaging.

Changes:

v2:
- divided patch into two, binding and dts support

v3:
- incorporated review comments on voltage regulator node

v4:
- fixed check-patch warning.

Meenakshi Aggarwal (2):
dt-bindings: arm64: add compatible for LX2162A QDS Board
arm64: dts: lx2160a: add device tree for lx2162aqds board

Documentation/devicetree/bindings/arm/fsl.yaml | 1 +
arch/arm64/boot/dts/freescale/Makefile | 1 +
arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 334 ++++++++++++++++++++++
3 files changed, 336 insertions(+)
create mode 100644 arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts

--
2.7.4

2020-11-02 06:03:02

by Meenakshi Aggarwal

[permalink] [raw]
Subject: [PATCH v4 1/2] dt-bindings: arm64: add compatible for LX2162A QDS Board

From: Meenakshi Aggarwal <[email protected]>

Add support for LX2162A, LX2162A is LX2160A based SoC.

Signed-off-by: Meenakshi Aggarwal <[email protected]>
Acked-by: Rob Herring <[email protected]>
---
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 6da9d73..5c7b7dd 100644
--- a/Documentation/devicetree/bindings/arm/fsl.yaml
+++ b/Documentation/devicetree/bindings/arm/fsl.yaml
@@ -518,6 +518,7 @@ properties:
- enum:
- fsl,lx2160a-qds
- fsl,lx2160a-rdb
+ - fsl,lx2162a-qds
- const: fsl,lx2160a

- description: S32V234 based Boards
--
2.7.4

2020-11-02 06:04:25

by Meenakshi Aggarwal

[permalink] [raw]
Subject: [PATCH v4 2/2] arm64: dts: lx2160a: add device tree for lx2162aqds board

From: Meenakshi Aggarwal <[email protected]>

Add device tree support for LX2162AQDS board.
LX2162A has same die as of LX2160A with different packaging.

Signed-off-by: Ioana Ciornei <[email protected]>
Signed-off-by: Kuldeep Singh <[email protected]>
Signed-off-by: Meenakshi Aggarwal <[email protected]>
---
arch/arm64/boot/dts/freescale/Makefile | 1 +
arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts | 334 ++++++++++++++++++++++
2 files changed, 335 insertions(+)
create mode 100644 arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts

diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 903c0eb..0edc8ab 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -27,6 +27,7 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-clearfog-cx.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-honeycomb.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-qds.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-rdb.dtb
+dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2162a-qds.dtb

dtb-$(CONFIG_ARCH_MXC) += imx8mm-beacon-kit.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
new file mode 100644
index 0000000..9178684
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/fsl-lx2162a-qds.dts
@@ -0,0 +1,334 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+//
+// Device Tree file for LX2162AQDS
+//
+// Copyright 2020 NXP
+
+/dts-v1/;
+
+#include "fsl-lx2160a.dtsi"
+
+/ {
+ model = "NXP Layerscape LX2162AQDS";
+ compatible = "fsl,lx2162a-qds", "fsl,lx2160a";
+
+ aliases {
+ crypto = &crypto;
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ sb_3v3: regulator-sb3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "LTM4619-3.3VSB";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ mdio-mux-1 {
+ compatible = "mdio-mux-multiplexer";
+ mux-controls = <&mux 0>;
+ mdio-parent-bus = <&emdio1>;
+ #address-cells=<1>;
+ #size-cells = <0>;
+
+ mdio@0 { /* On-board RTL8211F PHY #1 RGMII1 */
+ reg = <0x00>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgmii_phy1: ethernet-phy@1 {
+ compatible = "ethernet-phy-id001c.c916";
+ reg = <0x1>;
+ eee-broken-1000t;
+ };
+ };
+
+ mdio@8 { /* On-board RTL8211F PHY #2 RGMII2 */
+ reg = <0x8>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rgmii_phy2: ethernet-phy@2 {
+ compatible = "ethernet-phy-id001c.c916";
+ reg = <0x2>;
+ eee-broken-1000t;
+ };
+ };
+
+ mdio@18 { /* Slot #1 */
+ reg = <0x18>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@19 { /* Slot #2 */
+ reg = <0x19>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1a { /* Slot #3 */
+ reg = <0x1a>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1b { /* Slot #4 */
+ reg = <0x1b>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1c { /* Slot #5 */
+ reg = <0x1c>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1d { /* Slot #6 */
+ reg = <0x1d>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1e { /* Slot #7 */
+ reg = <0x1e>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1f { /* Slot #8 */
+ reg = <0x1f>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+
+ mdio-mux-2 {
+ compatible = "mdio-mux-multiplexer";
+ mux-controls = <&mux 1>;
+ mdio-parent-bus = <&emdio2>;
+ #address-cells=<1>;
+ #size-cells = <0>;
+
+ mdio@0 { /* Slot #1 (secondary EMI) */
+ reg = <0x00>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@1 { /* Slot #2 (secondary EMI) */
+ reg = <0x01>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@2 { /* Slot #3 (secondary EMI) */
+ reg = <0x02>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@3 { /* Slot #4 (secondary EMI) */
+ reg = <0x03>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@4 { /* Slot #5 (secondary EMI) */
+ reg = <0x04>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@5 { /* Slot #6 (secondary EMI) */
+ reg = <0x05>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@6 { /* Slot #7 (secondary EMI) */
+ reg = <0x06>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ mdio@7 { /* Slot #8 (secondary EMI) */
+ reg = <0x07>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+};
+
+&crypto {
+ status = "okay";
+};
+
+&dpmac17 {
+ phy-handle = <&rgmii_phy1>;
+ phy-connection-type = "rgmii-id";
+};
+
+&dpmac18 {
+ phy-handle = <&rgmii_phy2>;
+ phy-connection-type = "rgmii-id";
+};
+
+&dspi0 {
+ status = "okay";
+
+ dflash0: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&dspi1 {
+ status = "okay";
+
+ dflash1: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&dspi2 {
+ status = "okay";
+
+ dflash2: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ };
+};
+
+&emdio1 {
+ status = "okay";
+};
+
+&emdio2 {
+ status = "okay";
+};
+
+&esdhc0 {
+ status = "okay";
+};
+
+&esdhc1 {
+ status = "okay";
+};
+
+&fspi {
+ status = "okay";
+
+ mt35xu512aba0: flash@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "jedec,spi-nor";
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
+ reg = <0>;
+ spi-rx-bus-width = <8>;
+ spi-tx-bus-width = <8>;
+ };
+};
+
+&i2c0 {
+ status = "okay";
+
+ fpga@66 {
+ compatible = "fsl,lx2160aqds-fpga", "fsl,fpga-qixis-i2c",
+ "simple-mfd";
+ reg = <0x66>;
+
+ mux: mux-controller {
+ compatible = "reg-mux";
+ #mux-control-cells = <1>;
+ mux-reg-masks = <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
+ <0x54 0x07>; /* 1: reg 0x54, bit 2:0 */
+ };
+ };
+
+ i2c-mux@77 {
+ compatible = "nxp,pca9547";
+ reg = <0x77>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ i2c@2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x2>;
+
+ power-monitor@40 {
+ compatible = "ti,ina220";
+ reg = <0x40>;
+ shunt-resistor = <500>;
+ };
+
+ power-monitor@41 {
+ compatible = "ti,ina220";
+ reg = <0x41>;
+ shunt-resistor = <1000>;
+ };
+ };
+
+ i2c@3 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x3>;
+
+ temperature-sensor@4c {
+ compatible = "nxp,sa56004";
+ reg = <0x4c>;
+ vcc-supply = <&sb_3v3>;
+ };
+
+ rtc@51 {
+ compatible = "nxp,pcf2129";
+ reg = <0x51>;
+ };
+ };
+ };
+};
+
+&sata0 {
+ status = "okay";
+};
+
+&sata1 {
+ status = "okay";
+};
+
+&sata2 {
+ status = "okay";
+};
+
+&sata3 {
+ status = "okay";
+};
+
+&uart0 {
+ status = "okay";
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&usb0 {
+ status = "okay";
+};
--
2.7.4

2020-11-02 23:30:03

by Shawn Guo

[permalink] [raw]
Subject: Re: [PATCH v4 0/2] Add device tree support for LX2162AQDS board

On Mon, Nov 02, 2020 at 11:29:39AM +0530, [email protected] wrote:
> From: Meenakshi Aggarwal <[email protected]>
>
> LX2162A has same die as of LX2160A with different packaging.
>
> Changes:
>
> v2:
> - divided patch into two, binding and dts support
>
> v3:
> - incorporated review comments on voltage regulator node
>
> v4:
> - fixed check-patch warning.
>
> Meenakshi Aggarwal (2):
> dt-bindings: arm64: add compatible for LX2162A QDS Board
> arm64: dts: lx2160a: add device tree for lx2162aqds board

Applied both, thanks.