// SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* * Device Tree Include file for Freescale Layerscape-1046A family SoC. * * Copyright 2016 Freescale Semiconductor, Inc. * Copyright 2018-2019 NXP * * Shaohui Xie <Shaohui.Xie@nxp.com> */ /dts-v1/; #include "fsl-ls1046a.dtsi" / { model = "LS1046A QDS Board"; compatible = "fsl,ls1046a-qds", "fsl,ls1046a"; aliases { emi1-slot1 = &ls1046mdio_s1; emi1-slot2 = &ls1046mdio_s2; emi1-slot4 = &ls1046mdio_s4; gpio0 = &gpio0; gpio1 = &gpio1; gpio2 = &gpio2; gpio3 = &gpio3; qsgmii-s2-p1 = &qsgmii_phy_s2_p1; qsgmii-s2-p2 = &qsgmii_phy_s2_p2; qsgmii-s2-p3 = &qsgmii_phy_s2_p3; qsgmii-s2-p4 = &qsgmii_phy_s2_p4; serial0 = &duart0; serial1 = &duart1; serial2 = &duart2; serial3 = &duart3; sgmii-s1-p1 = &sgmii_phy_s1_p1; sgmii-s1-p2 = &sgmii_phy_s1_p2; sgmii-s1-p3 = &sgmii_phy_s1_p3; sgmii-s1-p4 = &sgmii_phy_s1_p4; sgmii-s4-p1 = &sgmii_phy_s4_p1; }; chosen { stdout-path = "serial0:115200n8"; }; }; &dspi { bus-num = <0>; status = "okay"; flash@0 { #address-cells = <1>; #size-cells = <1>; compatible = "n25q128a11", "jedec,spi-nor"; reg = <0>; spi-max-frequency = <10000000>; }; flash@1 { #address-cells = <1>; #size-cells = <1>; compatible = "sst25wf040b", "jedec,spi-nor"; spi-cpol; spi-cpha; reg = <1>; spi-max-frequency = <10000000>; }; flash@2 { #address-cells = <1>; #size-cells = <1>; compatible = "en25s64", "jedec,spi-nor"; spi-cpol; spi-cpha; reg = <2>; spi-max-frequency = <10000000>; }; }; &duart0 { status = "okay"; }; &duart1 { status = "okay"; }; &i2c0 { status = "okay"; i2c-mux@77 { compatible = "nxp,pca9547"; reg = <0x77>; #address-cells = <1>; #size-cells = <0>; i2c@2 { #address-cells = <1>; #size-cells = <0>; reg = <0x2>; ina220@40 { compatible = "ti,ina220"; reg = <0x40>; shunt-resistor = <1000>; }; ina220@41 { compatible = "ti,ina220"; reg = <0x41>; shunt-resistor = <1000>; }; }; i2c@3 { #address-cells = <1>; #size-cells = <0>; reg = <0x3>; rtc@51 { compatible = "nxp,pcf2129"; reg = <0x51>; /* IRQ10_B */ interrupts = <0 150 0x4>; }; eeprom@56 { compatible = "atmel,24c512"; reg = <0x56>; }; eeprom@57 { compatible = "atmel,24c512"; reg = <0x57>; }; temp-sensor@4c { compatible = "adi,adt7461a"; reg = <0x4c>; }; }; }; }; &ifc { #address-cells = <2>; #size-cells = <1>; /* NOR, NAND Flashes and FPGA on board */ ranges = <0x0 0x0 0x0 0x60000000 0x08000000 0x1 0x0 0x0 0x7e800000 0x00010000 0x2 0x0 0x0 0x7fb00000 0x00000100>; status = "okay"; nor@0,0 { compatible = "cfi-flash"; reg = <0x0 0x0 0x8000000>; big-endian; bank-width = <2>; device-width = <1>; }; nand@1,0 { compatible = "fsl,ifc-nand"; reg = <0x1 0x0 0x10000>; }; fpga: board-control@2,0 { compatible = "fsl,ls1046aqds-fpga", "fsl,fpga-qixis", "simple-mfd"; reg = <0x2 0x0 0x0000100>; ranges = <0 2 0 0x100>; }; }; &lpuart0 { status = "okay"; }; &qspi { status = "okay"; qflash0: flash@0 { compatible = "spansion,m25p80"; #address-cells = <1>; #size-cells = <1>; spi-max-frequency = <50000000>; spi-rx-bus-width = <4>; spi-tx-bus-width = <4>; reg = <0>; }; }; #include "fsl-ls1046-post.dtsi" &fman0 { ethernet@e0000 { phy-handle = <&qsgmii_phy_s2_p1>; phy-connection-type = "sgmii"; }; ethernet@e2000 { phy-handle = <&sgmii_phy_s4_p1>; phy-connection-type = "sgmii"; }; ethernet@e4000 { phy-handle = <&rgmii_phy1>; phy-connection-type = "rgmii"; }; ethernet@e6000 { phy-handle = <&rgmii_phy2>; phy-connection-type = "rgmii"; }; ethernet@e8000 { phy-handle = <&sgmii_phy_s1_p3>; phy-connection-type = "sgmii"; }; ethernet@ea000 { phy-handle = <&sgmii_phy_s1_p4>; phy-connection-type = "sgmii"; }; ethernet@f0000 { /* DTSEC9/10GEC1 */ phy-handle = <&sgmii_phy_s1_p1>; phy-connection-type = "xgmii"; }; ethernet@f2000 { /* DTSEC10/10GEC2 */ phy-handle = <&sgmii_phy_s1_p2>; phy-connection-type = "xgmii"; }; }; &fpga { #address-cells = <1>; #size-cells = <1>; mdio-mux-emi1 { compatible = "mdio-mux-mmioreg", "mdio-mux"; mdio-parent-bus = <&mdio0>; #address-cells = <1>; #size-cells = <0>; reg = <0x54 1>; /* BRDCFG4 */ mux-mask = <0xe0>; /* EMI1 */ /* On-board RGMII1 PHY */ ls1046mdio0: mdio@0 { reg = <0>; #address-cells = <1>; #size-cells = <0>; rgmii_phy1: ethernet-phy@1 { /* MAC3 */ reg = <0x1>; }; }; /* On-board RGMII2 PHY */ ls1046mdio1: mdio@1 { reg = <0x20>; #address-cells = <1>; #size-cells = <0>; rgmii_phy2: ethernet-phy@2 { /* MAC4 */ reg = <0x2>; }; }; /* Slot 1 */ ls1046mdio_s1: mdio@2 { reg = <0x40>; #address-cells = <1>; #size-cells = <0>; status = "disabled"; sgmii_phy_s1_p1: ethernet-phy@1c { reg = <0x1c>; }; sgmii_phy_s1_p2: ethernet-phy@1d { reg = <0x1d>; }; sgmii_phy_s1_p3: ethernet-phy@1e { reg = <0x1e>; }; sgmii_phy_s1_p4: ethernet-phy@1f { reg = <0x1f>; }; }; /* Slot 2 */ ls1046mdio_s2: mdio@3 { reg = <0x60>; #address-cells = <1>; #size-cells = <0>; status = "disabled"; qsgmii_phy_s2_p1: ethernet-phy@8 { reg = <0x8>; }; qsgmii_phy_s2_p2: ethernet-phy@9 { reg = <0x9>; }; qsgmii_phy_s2_p3: ethernet-phy@a { reg = <0xa>; }; qsgmii_phy_s2_p4: ethernet-phy@b { reg = <0xb>; }; }; /* Slot 4 */ ls1046mdio_s4: mdio@5 { reg = <0x80>; #address-cells = <1>; #size-cells = <0>; status = "disabled"; sgmii_phy_s4_p1: ethernet-phy@1c { reg = <0x1c>; }; }; }; };