Allow device trees to be reused between Linux and U-Boot.
The source for these device trees is today's linux-next plus these
changes that have been made so that the sources can be shared. These
other patches are currently in flight:
https://lore.kernel.org/linux-arm-kernel/20211202141528.2450169-5-vladimir.olt...@nxp.com/T/#m6f63c92e75fa79a01144b2c2c6dc4776e7971395

Signed-off-by: Vladimir Oltean <vladimir.olt...@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.j...@nxp.com>
---
 arch/arm/dts/fsl-ls1028a-rdb.dts | 158 ++++++++++++++++++++++++++++---
 1 file changed, 146 insertions(+), 12 deletions(-)

diff --git a/arch/arm/dts/fsl-ls1028a-rdb.dts b/arch/arm/dts/fsl-ls1028a-rdb.dts
index 70fcf71dbd0e..09c38ecaf95c 100644
--- a/arch/arm/dts/fsl-ls1028a-rdb.dts
+++ b/arch/arm/dts/fsl-ls1028a-rdb.dts
@@ -1,20 +1,28 @@
-// SPDX-License-Identifier: GPL-2.0+ OR X11
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
 /*
- * NXP ls1028ARDB device tree source
+ * Device Tree file for NXP LS1028A RDB Board.
  *
- * Copyright 2019 NXP
+ * Copyright 2018-2021 NXP
+ *
+ * Harninder Rai <harninder....@nxp.com>
  *
  */
 
 /dts-v1/;
-
 #include "fsl-ls1028a.dtsi"
 #include "fsl-ls1028a-rdb-u-boot.dtsi"
 
 / {
-       model = "NXP Layerscape 1028a RDB Board";
+       model = "LS1028A RDB Board";
        compatible = "fsl,ls1028a-rdb", "fsl,ls1028a";
+
        aliases {
+               crypto = &crypto;
+               serial0 = &duart0;
+               serial1 = &duart1;
+               mmc0 = &esdhc;
+               mmc1 = &esdhc1;
+               rtc1 = &ftm_alarm0;
                spi0 = &fspi;
                ethernet0 = &enetc_port0;
                ethernet1 = &enetc_port2;
@@ -23,6 +31,83 @@
                ethernet4 = &mscc_felix_port2;
                ethernet5 = &mscc_felix_port3;
        };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+
+       memory@80000000 {
+               device_type = "memory";
+               reg = <0x0 0x80000000 0x1 0x0000000>;
+       };
+
+       sys_mclk: clock-mclk {
+               compatible = "fixed-clock";
+               #clock-cells = <0>;
+               clock-frequency = <25000000>;
+       };
+
+       reg_1p8v: regulator-1p8v {
+               compatible = "regulator-fixed";
+               regulator-name = "1P8V";
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <1800000>;
+               regulator-always-on;
+       };
+
+       sb_3v3: regulator-sb3v3 {
+               compatible = "regulator-fixed";
+               regulator-name = "3v3_vbus";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               regulator-boot-on;
+               regulator-always-on;
+       };
+
+       sound {
+               compatible = "simple-audio-card";
+               simple-audio-card,format = "i2s";
+               simple-audio-card,widgets =
+                       "Microphone", "Microphone Jack",
+                       "Headphone", "Headphone Jack",
+                       "Speaker", "Speaker Ext",
+                       "Line", "Line In Jack";
+               simple-audio-card,routing =
+                       "MIC_IN", "Microphone Jack",
+                       "Microphone Jack", "Mic Bias",
+                       "LINE_IN", "Line In Jack",
+                       "Headphone Jack", "HP_OUT",
+                       "Speaker Ext", "LINE_OUT";
+
+               simple-audio-card,cpu {
+                       sound-dai = <&sai4>;
+                       frame-master;
+                       bitclock-master;
+               };
+
+               simple-audio-card,codec {
+                       sound-dai = <&sgtl5000>;
+                       frame-master;
+                       bitclock-master;
+                       system-clock-frequency = <25000000>;
+               };
+       };
+};
+
+&can0 {
+       status = "okay";
+
+       can-transceiver {
+               max-bitrate = <5000000>;
+       };
+};
+
+&can1 {
+       status = "okay";
+
+       can-transceiver {
+               max-bitrate = <5000000>;
+       };
 };
 
 &duart0 {
@@ -68,43 +153,83 @@
 };
 
 &esdhc {
+       sd-uhs-sdr104;
+       sd-uhs-sdr50;
+       sd-uhs-sdr25;
+       sd-uhs-sdr12;
        status = "okay";
 };
 
 &esdhc1 {
-       status = "okay";
        mmc-hs200-1_8v;
+       mmc-hs400-1_8v;
+       bus-width = <8>;
+       status = "okay";
 };
 
 &fspi {
        status = "okay";
 
        mt35xu02g0: flash@0 {
+               compatible = "jedec,spi-nor";
                #address-cells = <1>;
                #size-cells = <1>;
-               compatible = "jedec,spi-nor";
                spi-max-frequency = <50000000>;
+               /* The following setting enables 1-1-8 (CMD-ADDR-DATA) mode */
+               spi-rx-bus-width = <8>; /* 8 SPI Rx lines */
+               spi-tx-bus-width = <1>; /* 1 SPI Tx line */
                reg = <0>;
-               spi-rx-bus-width = <8>;
-               spi-tx-bus-width = <1>;
        };
 };
 
 &i2c0 {
        status = "okay";
 
-        i2c-mux@77 {
-
-               compatible = "nxp,pca9547";
+       i2c-mux@77 {
+               compatible = "nxp,pca9847";
                reg = <0x77>;
                #address-cells = <1>;
                #size-cells = <0>;
 
+               i2c@1 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       reg = <0x1>;
+
+                       sgtl5000: audio-codec@a {
+                               #sound-dai-cells = <0>;
+                               compatible = "fsl,sgtl5000";
+                               reg = <0xa>;
+                               VDDA-supply = <&reg_1p8v>;
+                               VDDIO-supply = <&reg_1p8v>;
+                               clocks = <&sys_mclk>;
+                               sclk-strength = <3>;
+                       };
+               };
+
+               i2c@2 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       reg = <0x02>;
+
+                       current-monitor@40 {
+                               compatible = "ti,ina220";
+                               reg = <0x40>;
+                               shunt-resistor = <500>;
+                       };
+               };
+
                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>;
@@ -154,6 +279,14 @@
        status = "okay";
 };
 
+&optee {
+       status = "okay";
+};
+
+&sai4 {
+       status = "okay";
+};
+
 &sata {
        status = "okay";
 };
@@ -163,5 +296,6 @@
 };
 
 &usb1 {
+       dr_mode = "otg";
        status = "okay";
 };
-- 
2.25.1

Reply via email to