0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003 * Device Tree file for NXP LS1028A QDS Board.
0004 *
0005 * Copyright 2018 NXP
0006 *
0007 * Harninder Rai <harninder.rai@nxp.com>
0008 *
0009 */
0010
0011 /dts-v1/;
0012
0013 #include "fsl-ls1028a.dtsi"
0014
0015 / {
0016 model = "LS1028A QDS Board";
0017 compatible = "fsl,ls1028a-qds", "fsl,ls1028a";
0018
0019 aliases {
0020 crypto = &crypto;
0021 gpio0 = &gpio1;
0022 gpio1 = &gpio2;
0023 gpio2 = &gpio3;
0024 serial0 = &duart0;
0025 serial1 = &duart1;
0026 mmc0 = &esdhc;
0027 mmc1 = &esdhc1;
0028 rtc1 = &ftm_alarm1;
0029 };
0030
0031 chosen {
0032 stdout-path = "serial0:115200n8";
0033 };
0034
0035 memory@80000000 {
0036 device_type = "memory";
0037 reg = <0x0 0x80000000 0x1 0x00000000>;
0038 };
0039
0040 sys_mclk: clock-mclk {
0041 compatible = "fixed-clock";
0042 #clock-cells = <0>;
0043 clock-frequency = <25000000>;
0044 };
0045
0046 reg_1p8v: regulator-1p8v {
0047 compatible = "regulator-fixed";
0048 regulator-name = "1P8V";
0049 regulator-min-microvolt = <1800000>;
0050 regulator-max-microvolt = <1800000>;
0051 regulator-always-on;
0052 };
0053
0054 sb_3v3: regulator-sb3v3 {
0055 compatible = "regulator-fixed";
0056 regulator-name = "3v3_vbus";
0057 regulator-min-microvolt = <3300000>;
0058 regulator-max-microvolt = <3300000>;
0059 regulator-boot-on;
0060 regulator-always-on;
0061 };
0062
0063 sound {
0064 compatible = "simple-audio-card";
0065 simple-audio-card,format = "i2s";
0066 simple-audio-card,widgets =
0067 "Microphone", "Microphone Jack",
0068 "Headphone", "Headphone Jack",
0069 "Speaker", "Speaker Ext",
0070 "Line", "Line In Jack";
0071 simple-audio-card,routing =
0072 "MIC_IN", "Microphone Jack",
0073 "Microphone Jack", "Mic Bias",
0074 "LINE_IN", "Line In Jack",
0075 "Headphone Jack", "HP_OUT",
0076 "Speaker Ext", "LINE_OUT";
0077
0078 simple-audio-card,cpu {
0079 sound-dai = <&sai1>;
0080 frame-master;
0081 bitclock-master;
0082 };
0083
0084 simple-audio-card,codec {
0085 sound-dai = <&sgtl5000>;
0086 frame-master;
0087 bitclock-master;
0088 system-clock-frequency = <25000000>;
0089 };
0090 };
0091
0092 mdio-mux {
0093 compatible = "mdio-mux-multiplexer";
0094 mux-controls = <&mux 0>;
0095 mdio-parent-bus = <&enetc_mdio_pf3>;
0096 #address-cells = <1>;
0097 #size-cells = <0>;
0098
0099 /* on-board RGMII PHY */
0100 mdio@0 {
0101 #address-cells = <1>;
0102 #size-cells = <0>;
0103 reg = <0>;
0104
0105 qds_phy1: ethernet-phy@5 {
0106 /* Atheros 8035 */
0107 reg = <5>;
0108 };
0109 };
0110
0111 mdio_slot1: mdio@4 {
0112 #address-cells = <1>;
0113 #size-cells = <0>;
0114 reg = <4>;
0115 };
0116
0117 mdio_slot2: mdio@5 {
0118 #address-cells = <1>;
0119 #size-cells = <0>;
0120 reg = <5>;
0121 };
0122
0123 mdio_slot3: mdio@6 {
0124 #address-cells = <1>;
0125 #size-cells = <0>;
0126 reg = <6>;
0127 };
0128
0129 mdio_slot4: mdio@7 {
0130 #address-cells = <1>;
0131 #size-cells = <0>;
0132 reg = <7>;
0133 };
0134 };
0135 };
0136
0137 &can0 {
0138 status = "okay";
0139 };
0140
0141 &can1 {
0142 status = "okay";
0143 };
0144
0145 &dspi0 {
0146 bus-num = <0>;
0147 status = "okay";
0148
0149 flash@0 {
0150 #address-cells = <1>;
0151 #size-cells = <1>;
0152 compatible = "jedec,spi-nor";
0153 spi-cpol;
0154 spi-cpha;
0155 reg = <0>;
0156 spi-max-frequency = <10000000>;
0157 };
0158
0159 flash@1 {
0160 #address-cells = <1>;
0161 #size-cells = <1>;
0162 compatible = "jedec,spi-nor";
0163 spi-cpol;
0164 spi-cpha;
0165 reg = <1>;
0166 spi-max-frequency = <10000000>;
0167 };
0168
0169 flash@2 {
0170 #address-cells = <1>;
0171 #size-cells = <1>;
0172 compatible = "jedec,spi-nor";
0173 spi-cpol;
0174 spi-cpha;
0175 reg = <2>;
0176 spi-max-frequency = <10000000>;
0177 };
0178 };
0179
0180 &dspi1 {
0181 bus-num = <1>;
0182 status = "okay";
0183
0184 flash@0 {
0185 #address-cells = <1>;
0186 #size-cells = <1>;
0187 compatible = "jedec,spi-nor";
0188 spi-cpol;
0189 spi-cpha;
0190 reg = <0>;
0191 spi-max-frequency = <10000000>;
0192 };
0193
0194 flash@1 {
0195 #address-cells = <1>;
0196 #size-cells = <1>;
0197 compatible = "jedec,spi-nor";
0198 spi-cpol;
0199 spi-cpha;
0200 reg = <1>;
0201 spi-max-frequency = <10000000>;
0202 };
0203
0204 flash@2 {
0205 #address-cells = <1>;
0206 #size-cells = <1>;
0207 compatible = "jedec,spi-nor";
0208 spi-cpol;
0209 spi-cpha;
0210 reg = <2>;
0211 spi-max-frequency = <10000000>;
0212 };
0213 };
0214
0215 &dspi2 {
0216 bus-num = <2>;
0217 status = "okay";
0218
0219 flash@0 {
0220 #address-cells = <1>;
0221 #size-cells = <1>;
0222 compatible = "jedec,spi-nor";
0223 spi-cpol;
0224 spi-cpha;
0225 reg = <0>;
0226 spi-max-frequency = <10000000>;
0227 };
0228 };
0229
0230 &duart0 {
0231 status = "okay";
0232 };
0233
0234 &duart1 {
0235 status = "okay";
0236 };
0237
0238 &enetc_port1 {
0239 phy-handle = <&qds_phy1>;
0240 phy-mode = "rgmii-id";
0241 status = "okay";
0242 };
0243
0244 &enetc_port2 {
0245 status = "okay";
0246 };
0247
0248 &esdhc {
0249 status = "okay";
0250 };
0251
0252 &esdhc1 {
0253 status = "okay";
0254 };
0255
0256 &fspi {
0257 status = "okay";
0258
0259 mt35xu02g0: flash@0 {
0260 compatible = "jedec,spi-nor";
0261 #address-cells = <1>;
0262 #size-cells = <1>;
0263 spi-max-frequency = <50000000>;
0264 /* The following setting enables 1-1-8 (CMD-ADDR-DATA) mode */
0265 spi-rx-bus-width = <8>; /* 8 SPI Rx lines */
0266 spi-tx-bus-width = <1>; /* 1 SPI Tx line */
0267 reg = <0>;
0268 };
0269 };
0270
0271 &ftm_alarm1 {
0272 status = "okay";
0273 };
0274
0275 &i2c0 {
0276 status = "okay";
0277
0278 i2c-mux@77 {
0279 compatible = "nxp,pca9547";
0280 reg = <0x77>;
0281 #address-cells = <1>;
0282 #size-cells = <0>;
0283
0284 i2c@2 {
0285 #address-cells = <1>;
0286 #size-cells = <0>;
0287 reg = <0x2>;
0288
0289 current-monitor@40 {
0290 compatible = "ti,ina220";
0291 reg = <0x40>;
0292 shunt-resistor = <1000>;
0293 };
0294
0295 current-monitor@41 {
0296 compatible = "ti,ina220";
0297 reg = <0x41>;
0298 shunt-resistor = <1000>;
0299 };
0300 };
0301
0302 i2c@3 {
0303 #address-cells = <1>;
0304 #size-cells = <0>;
0305 reg = <0x3>;
0306
0307 temperature-sensor@4c {
0308 compatible = "nxp,sa56004";
0309 reg = <0x4c>;
0310 vcc-supply = <&sb_3v3>;
0311 };
0312
0313 eeprom@56 {
0314 compatible = "atmel,24c512";
0315 reg = <0x56>;
0316 };
0317
0318 eeprom@57 {
0319 compatible = "atmel,24c512";
0320 reg = <0x57>;
0321 };
0322 };
0323
0324 i2c@5 {
0325 #address-cells = <1>;
0326 #size-cells = <0>;
0327 reg = <0x5>;
0328
0329 sgtl5000: audio-codec@a {
0330 #sound-dai-cells = <0>;
0331 compatible = "fsl,sgtl5000";
0332 reg = <0xa>;
0333 VDDA-supply = <®_1p8v>;
0334 VDDIO-supply = <®_1p8v>;
0335 clocks = <&sys_mclk>;
0336 };
0337 };
0338 };
0339
0340 fpga@66 {
0341 compatible = "fsl,ls1028aqds-fpga", "fsl,fpga-qixis-i2c",
0342 "simple-mfd";
0343 reg = <0x66>;
0344
0345 mux: mux-controller {
0346 compatible = "reg-mux";
0347 #mux-control-cells = <1>;
0348 mux-reg-masks = <0x54 0xf0>; /* 0: reg 0x54, bits 7:4 */
0349 };
0350 };
0351
0352 };
0353
0354 &i2c1 {
0355 status = "okay";
0356
0357 rtc@51 {
0358 compatible = "nxp,pcf2129";
0359 reg = <0x51>;
0360 };
0361 };
0362
0363 &lpuart0 {
0364 status = "okay";
0365 };
0366
0367 &lpuart1 {
0368 status = "okay";
0369 };
0370
0371 &mscc_felix_port4 {
0372 ethernet = <&enetc_port2>;
0373 status = "okay";
0374 };
0375
0376 &sai1 {
0377 status = "okay";
0378 };
0379
0380 &sata {
0381 status = "okay";
0382 };
0383
0384 &usb0 {
0385 dr_mode = "host";
0386 status = "okay";
0387 };
0388
0389 &usb1 {
0390 dr_mode = "host";
0391 status = "okay";
0392 };