162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Device Tree Include file for Freescale Layerscape-1046A family SoC. 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright 2016 Freescale Semiconductor, Inc. 662306a36Sopenharmony_ci * Copyright 2018-2019 NXP 762306a36Sopenharmony_ci * 862306a36Sopenharmony_ci * Shaohui Xie <Shaohui.Xie@nxp.com> 962306a36Sopenharmony_ci */ 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci/dts-v1/; 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci#include "fsl-ls1046a.dtsi" 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci/ { 1662306a36Sopenharmony_ci model = "LS1046A QDS Board"; 1762306a36Sopenharmony_ci compatible = "fsl,ls1046a-qds", "fsl,ls1046a"; 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci aliases { 2062306a36Sopenharmony_ci emi1-slot1 = &ls1046mdio_s1; 2162306a36Sopenharmony_ci emi1-slot2 = &ls1046mdio_s2; 2262306a36Sopenharmony_ci emi1-slot4 = &ls1046mdio_s4; 2362306a36Sopenharmony_ci gpio0 = &gpio0; 2462306a36Sopenharmony_ci gpio1 = &gpio1; 2562306a36Sopenharmony_ci gpio2 = &gpio2; 2662306a36Sopenharmony_ci gpio3 = &gpio3; 2762306a36Sopenharmony_ci qsgmii-s2-p1 = &qsgmii_phy_s2_p1; 2862306a36Sopenharmony_ci qsgmii-s2-p2 = &qsgmii_phy_s2_p2; 2962306a36Sopenharmony_ci qsgmii-s2-p3 = &qsgmii_phy_s2_p3; 3062306a36Sopenharmony_ci qsgmii-s2-p4 = &qsgmii_phy_s2_p4; 3162306a36Sopenharmony_ci serial0 = &duart0; 3262306a36Sopenharmony_ci serial1 = &duart1; 3362306a36Sopenharmony_ci serial2 = &duart2; 3462306a36Sopenharmony_ci serial3 = &duart3; 3562306a36Sopenharmony_ci sgmii-s1-p1 = &sgmii_phy_s1_p1; 3662306a36Sopenharmony_ci sgmii-s1-p2 = &sgmii_phy_s1_p2; 3762306a36Sopenharmony_ci sgmii-s1-p3 = &sgmii_phy_s1_p3; 3862306a36Sopenharmony_ci sgmii-s1-p4 = &sgmii_phy_s1_p4; 3962306a36Sopenharmony_ci sgmii-s4-p1 = &sgmii_phy_s4_p1; 4062306a36Sopenharmony_ci }; 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci chosen { 4362306a36Sopenharmony_ci stdout-path = "serial0:115200n8"; 4462306a36Sopenharmony_ci }; 4562306a36Sopenharmony_ci}; 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci&dspi { 4862306a36Sopenharmony_ci bus-num = <0>; 4962306a36Sopenharmony_ci status = "okay"; 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ci flash@0 { 5262306a36Sopenharmony_ci #address-cells = <1>; 5362306a36Sopenharmony_ci #size-cells = <1>; 5462306a36Sopenharmony_ci compatible = "n25q128a11", "jedec,spi-nor"; 5562306a36Sopenharmony_ci reg = <0>; 5662306a36Sopenharmony_ci spi-max-frequency = <10000000>; 5762306a36Sopenharmony_ci }; 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ci flash@1 { 6062306a36Sopenharmony_ci #address-cells = <1>; 6162306a36Sopenharmony_ci #size-cells = <1>; 6262306a36Sopenharmony_ci compatible = "sst25wf040b", "jedec,spi-nor"; 6362306a36Sopenharmony_ci spi-cpol; 6462306a36Sopenharmony_ci spi-cpha; 6562306a36Sopenharmony_ci reg = <1>; 6662306a36Sopenharmony_ci spi-max-frequency = <10000000>; 6762306a36Sopenharmony_ci }; 6862306a36Sopenharmony_ci 6962306a36Sopenharmony_ci flash@2 { 7062306a36Sopenharmony_ci #address-cells = <1>; 7162306a36Sopenharmony_ci #size-cells = <1>; 7262306a36Sopenharmony_ci compatible = "en25s64", "jedec,spi-nor"; 7362306a36Sopenharmony_ci spi-cpol; 7462306a36Sopenharmony_ci spi-cpha; 7562306a36Sopenharmony_ci reg = <2>; 7662306a36Sopenharmony_ci spi-max-frequency = <10000000>; 7762306a36Sopenharmony_ci }; 7862306a36Sopenharmony_ci}; 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci&duart0 { 8162306a36Sopenharmony_ci status = "okay"; 8262306a36Sopenharmony_ci}; 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci&duart1 { 8562306a36Sopenharmony_ci status = "okay"; 8662306a36Sopenharmony_ci}; 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci&i2c0 { 8962306a36Sopenharmony_ci status = "okay"; 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci i2c-mux@77 { 9262306a36Sopenharmony_ci compatible = "nxp,pca9547"; 9362306a36Sopenharmony_ci reg = <0x77>; 9462306a36Sopenharmony_ci #address-cells = <1>; 9562306a36Sopenharmony_ci #size-cells = <0>; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci i2c@2 { 9862306a36Sopenharmony_ci #address-cells = <1>; 9962306a36Sopenharmony_ci #size-cells = <0>; 10062306a36Sopenharmony_ci reg = <0x2>; 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_ci ina220@40 { 10362306a36Sopenharmony_ci compatible = "ti,ina220"; 10462306a36Sopenharmony_ci reg = <0x40>; 10562306a36Sopenharmony_ci shunt-resistor = <1000>; 10662306a36Sopenharmony_ci }; 10762306a36Sopenharmony_ci 10862306a36Sopenharmony_ci ina220@41 { 10962306a36Sopenharmony_ci compatible = "ti,ina220"; 11062306a36Sopenharmony_ci reg = <0x41>; 11162306a36Sopenharmony_ci shunt-resistor = <1000>; 11262306a36Sopenharmony_ci }; 11362306a36Sopenharmony_ci }; 11462306a36Sopenharmony_ci 11562306a36Sopenharmony_ci i2c@3 { 11662306a36Sopenharmony_ci #address-cells = <1>; 11762306a36Sopenharmony_ci #size-cells = <0>; 11862306a36Sopenharmony_ci reg = <0x3>; 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci rtc@51 { 12162306a36Sopenharmony_ci compatible = "nxp,pcf2129"; 12262306a36Sopenharmony_ci reg = <0x51>; 12362306a36Sopenharmony_ci /* IRQ10_B */ 12462306a36Sopenharmony_ci interrupts = <0 150 0x4>; 12562306a36Sopenharmony_ci }; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci eeprom@56 { 12862306a36Sopenharmony_ci compatible = "atmel,24c512"; 12962306a36Sopenharmony_ci reg = <0x56>; 13062306a36Sopenharmony_ci }; 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_ci eeprom@57 { 13362306a36Sopenharmony_ci compatible = "atmel,24c512"; 13462306a36Sopenharmony_ci reg = <0x57>; 13562306a36Sopenharmony_ci }; 13662306a36Sopenharmony_ci 13762306a36Sopenharmony_ci temp-sensor@4c { 13862306a36Sopenharmony_ci compatible = "adi,adt7461a"; 13962306a36Sopenharmony_ci reg = <0x4c>; 14062306a36Sopenharmony_ci }; 14162306a36Sopenharmony_ci }; 14262306a36Sopenharmony_ci }; 14362306a36Sopenharmony_ci}; 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_ci&ifc { 14662306a36Sopenharmony_ci #address-cells = <2>; 14762306a36Sopenharmony_ci #size-cells = <1>; 14862306a36Sopenharmony_ci /* NOR, NAND Flashes and FPGA on board */ 14962306a36Sopenharmony_ci ranges = <0x0 0x0 0x0 0x60000000 0x08000000 15062306a36Sopenharmony_ci 0x1 0x0 0x0 0x7e800000 0x00010000 15162306a36Sopenharmony_ci 0x2 0x0 0x0 0x7fb00000 0x00000100>; 15262306a36Sopenharmony_ci status = "okay"; 15362306a36Sopenharmony_ci 15462306a36Sopenharmony_ci nor@0,0 { 15562306a36Sopenharmony_ci compatible = "cfi-flash"; 15662306a36Sopenharmony_ci reg = <0x0 0x0 0x8000000>; 15762306a36Sopenharmony_ci big-endian; 15862306a36Sopenharmony_ci bank-width = <2>; 15962306a36Sopenharmony_ci device-width = <1>; 16062306a36Sopenharmony_ci }; 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ci nand@1,0 { 16362306a36Sopenharmony_ci compatible = "fsl,ifc-nand"; 16462306a36Sopenharmony_ci reg = <0x1 0x0 0x10000>; 16562306a36Sopenharmony_ci }; 16662306a36Sopenharmony_ci 16762306a36Sopenharmony_ci fpga: board-control@2,0 { 16862306a36Sopenharmony_ci compatible = "fsl,ls1046aqds-fpga", "fsl,fpga-qixis", "simple-mfd"; 16962306a36Sopenharmony_ci reg = <0x2 0x0 0x0000100>; 17062306a36Sopenharmony_ci ranges = <0 2 0 0x100>; 17162306a36Sopenharmony_ci }; 17262306a36Sopenharmony_ci}; 17362306a36Sopenharmony_ci 17462306a36Sopenharmony_ci&lpuart0 { 17562306a36Sopenharmony_ci status = "okay"; 17662306a36Sopenharmony_ci}; 17762306a36Sopenharmony_ci 17862306a36Sopenharmony_ci&qspi { 17962306a36Sopenharmony_ci status = "okay"; 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ci qflash0: flash@0 { 18262306a36Sopenharmony_ci compatible = "spansion,m25p80"; 18362306a36Sopenharmony_ci #address-cells = <1>; 18462306a36Sopenharmony_ci #size-cells = <1>; 18562306a36Sopenharmony_ci spi-max-frequency = <50000000>; 18662306a36Sopenharmony_ci spi-rx-bus-width = <4>; 18762306a36Sopenharmony_ci spi-tx-bus-width = <4>; 18862306a36Sopenharmony_ci reg = <0>; 18962306a36Sopenharmony_ci }; 19062306a36Sopenharmony_ci}; 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci#include "fsl-ls1046-post.dtsi" 19362306a36Sopenharmony_ci 19462306a36Sopenharmony_ci&fman0 { 19562306a36Sopenharmony_ci ethernet@e0000 { 19662306a36Sopenharmony_ci phy-handle = <&qsgmii_phy_s2_p1>; 19762306a36Sopenharmony_ci phy-connection-type = "sgmii"; 19862306a36Sopenharmony_ci }; 19962306a36Sopenharmony_ci 20062306a36Sopenharmony_ci ethernet@e2000 { 20162306a36Sopenharmony_ci phy-handle = <&sgmii_phy_s4_p1>; 20262306a36Sopenharmony_ci phy-connection-type = "sgmii"; 20362306a36Sopenharmony_ci }; 20462306a36Sopenharmony_ci 20562306a36Sopenharmony_ci ethernet@e4000 { 20662306a36Sopenharmony_ci phy-handle = <&rgmii_phy1>; 20762306a36Sopenharmony_ci phy-connection-type = "rgmii"; 20862306a36Sopenharmony_ci }; 20962306a36Sopenharmony_ci 21062306a36Sopenharmony_ci ethernet@e6000 { 21162306a36Sopenharmony_ci phy-handle = <&rgmii_phy2>; 21262306a36Sopenharmony_ci phy-connection-type = "rgmii"; 21362306a36Sopenharmony_ci }; 21462306a36Sopenharmony_ci 21562306a36Sopenharmony_ci ethernet@e8000 { 21662306a36Sopenharmony_ci phy-handle = <&sgmii_phy_s1_p3>; 21762306a36Sopenharmony_ci phy-connection-type = "sgmii"; 21862306a36Sopenharmony_ci }; 21962306a36Sopenharmony_ci 22062306a36Sopenharmony_ci ethernet@ea000 { 22162306a36Sopenharmony_ci phy-handle = <&sgmii_phy_s1_p4>; 22262306a36Sopenharmony_ci phy-connection-type = "sgmii"; 22362306a36Sopenharmony_ci }; 22462306a36Sopenharmony_ci 22562306a36Sopenharmony_ci ethernet@f0000 { /* DTSEC9/10GEC1 */ 22662306a36Sopenharmony_ci phy-handle = <&sgmii_phy_s1_p1>; 22762306a36Sopenharmony_ci phy-connection-type = "xgmii"; 22862306a36Sopenharmony_ci }; 22962306a36Sopenharmony_ci 23062306a36Sopenharmony_ci ethernet@f2000 { /* DTSEC10/10GEC2 */ 23162306a36Sopenharmony_ci phy-handle = <&sgmii_phy_s1_p2>; 23262306a36Sopenharmony_ci phy-connection-type = "xgmii"; 23362306a36Sopenharmony_ci }; 23462306a36Sopenharmony_ci}; 23562306a36Sopenharmony_ci 23662306a36Sopenharmony_ci&fpga { 23762306a36Sopenharmony_ci #address-cells = <1>; 23862306a36Sopenharmony_ci #size-cells = <1>; 23962306a36Sopenharmony_ci 24062306a36Sopenharmony_ci mdio-mux-emi1 { 24162306a36Sopenharmony_ci compatible = "mdio-mux-mmioreg", "mdio-mux"; 24262306a36Sopenharmony_ci mdio-parent-bus = <&mdio0>; 24362306a36Sopenharmony_ci #address-cells = <1>; 24462306a36Sopenharmony_ci #size-cells = <0>; 24562306a36Sopenharmony_ci reg = <0x54 1>; /* BRDCFG4 */ 24662306a36Sopenharmony_ci mux-mask = <0xe0>; /* EMI1 */ 24762306a36Sopenharmony_ci 24862306a36Sopenharmony_ci /* On-board RGMII1 PHY */ 24962306a36Sopenharmony_ci ls1046mdio0: mdio@0 { 25062306a36Sopenharmony_ci reg = <0>; 25162306a36Sopenharmony_ci #address-cells = <1>; 25262306a36Sopenharmony_ci #size-cells = <0>; 25362306a36Sopenharmony_ci 25462306a36Sopenharmony_ci rgmii_phy1: ethernet-phy@1 { /* MAC3 */ 25562306a36Sopenharmony_ci reg = <0x1>; 25662306a36Sopenharmony_ci }; 25762306a36Sopenharmony_ci }; 25862306a36Sopenharmony_ci 25962306a36Sopenharmony_ci /* On-board RGMII2 PHY */ 26062306a36Sopenharmony_ci ls1046mdio1: mdio@1 { 26162306a36Sopenharmony_ci reg = <0x20>; 26262306a36Sopenharmony_ci #address-cells = <1>; 26362306a36Sopenharmony_ci #size-cells = <0>; 26462306a36Sopenharmony_ci 26562306a36Sopenharmony_ci rgmii_phy2: ethernet-phy@2 { /* MAC4 */ 26662306a36Sopenharmony_ci reg = <0x2>; 26762306a36Sopenharmony_ci }; 26862306a36Sopenharmony_ci }; 26962306a36Sopenharmony_ci 27062306a36Sopenharmony_ci /* Slot 1 */ 27162306a36Sopenharmony_ci ls1046mdio_s1: mdio@2 { 27262306a36Sopenharmony_ci reg = <0x40>; 27362306a36Sopenharmony_ci #address-cells = <1>; 27462306a36Sopenharmony_ci #size-cells = <0>; 27562306a36Sopenharmony_ci status = "disabled"; 27662306a36Sopenharmony_ci 27762306a36Sopenharmony_ci sgmii_phy_s1_p1: ethernet-phy@1c { 27862306a36Sopenharmony_ci reg = <0x1c>; 27962306a36Sopenharmony_ci }; 28062306a36Sopenharmony_ci 28162306a36Sopenharmony_ci sgmii_phy_s1_p2: ethernet-phy@1d { 28262306a36Sopenharmony_ci reg = <0x1d>; 28362306a36Sopenharmony_ci }; 28462306a36Sopenharmony_ci 28562306a36Sopenharmony_ci sgmii_phy_s1_p3: ethernet-phy@1e { 28662306a36Sopenharmony_ci reg = <0x1e>; 28762306a36Sopenharmony_ci }; 28862306a36Sopenharmony_ci 28962306a36Sopenharmony_ci sgmii_phy_s1_p4: ethernet-phy@1f { 29062306a36Sopenharmony_ci reg = <0x1f>; 29162306a36Sopenharmony_ci }; 29262306a36Sopenharmony_ci }; 29362306a36Sopenharmony_ci 29462306a36Sopenharmony_ci /* Slot 2 */ 29562306a36Sopenharmony_ci ls1046mdio_s2: mdio@3 { 29662306a36Sopenharmony_ci reg = <0x60>; 29762306a36Sopenharmony_ci #address-cells = <1>; 29862306a36Sopenharmony_ci #size-cells = <0>; 29962306a36Sopenharmony_ci status = "disabled"; 30062306a36Sopenharmony_ci 30162306a36Sopenharmony_ci qsgmii_phy_s2_p1: ethernet-phy@8 { 30262306a36Sopenharmony_ci reg = <0x8>; 30362306a36Sopenharmony_ci }; 30462306a36Sopenharmony_ci 30562306a36Sopenharmony_ci qsgmii_phy_s2_p2: ethernet-phy@9 { 30662306a36Sopenharmony_ci reg = <0x9>; 30762306a36Sopenharmony_ci }; 30862306a36Sopenharmony_ci 30962306a36Sopenharmony_ci qsgmii_phy_s2_p3: ethernet-phy@a { 31062306a36Sopenharmony_ci reg = <0xa>; 31162306a36Sopenharmony_ci }; 31262306a36Sopenharmony_ci 31362306a36Sopenharmony_ci qsgmii_phy_s2_p4: ethernet-phy@b { 31462306a36Sopenharmony_ci reg = <0xb>; 31562306a36Sopenharmony_ci }; 31662306a36Sopenharmony_ci }; 31762306a36Sopenharmony_ci 31862306a36Sopenharmony_ci /* Slot 4 */ 31962306a36Sopenharmony_ci ls1046mdio_s4: mdio@5 { 32062306a36Sopenharmony_ci reg = <0x80>; 32162306a36Sopenharmony_ci #address-cells = <1>; 32262306a36Sopenharmony_ci #size-cells = <0>; 32362306a36Sopenharmony_ci status = "disabled"; 32462306a36Sopenharmony_ci 32562306a36Sopenharmony_ci sgmii_phy_s4_p1: ethernet-phy@1c { 32662306a36Sopenharmony_ci reg = <0x1c>; 32762306a36Sopenharmony_ci }; 32862306a36Sopenharmony_ci }; 32962306a36Sopenharmony_ci }; 33062306a36Sopenharmony_ci}; 331