1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) << 2 /* 1 /* 3 * Device Tree Include file for Freescale Laye 2 * Device Tree Include file for Freescale Layerscape-1046A family SoC. 4 * 3 * 5 * Copyright 2016 Freescale Semiconductor, Inc 4 * Copyright 2016 Freescale Semiconductor, Inc. 6 * Copyright 2018-2019 NXP << 7 * 5 * 8 * Shaohui Xie <Shaohui.Xie@nxp.com> 6 * Shaohui Xie <Shaohui.Xie@nxp.com> >> 7 * >> 8 * This file is dual-licensed: you can use it either under the terms >> 9 * of the GPLv2 or the X11 license, at your option. Note that this dual >> 10 * licensing only applies to this file, and not this project as a >> 11 * whole. >> 12 * >> 13 * a) This library is free software; you can redistribute it and/or >> 14 * modify it under the terms of the GNU General Public License as >> 15 * published by the Free Software Foundation; either version 2 of the >> 16 * License, or (at your option) any later version. >> 17 * >> 18 * This library is distributed in the hope that it will be useful, >> 19 * but WITHOUT ANY WARRANTY; without even the implied warranty of >> 20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> 21 * GNU General Public License for more details. >> 22 * >> 23 * Or, alternatively, >> 24 * >> 25 * b) Permission is hereby granted, free of charge, to any person >> 26 * obtaining a copy of this software and associated documentation >> 27 * files (the "Software"), to deal in the Software without >> 28 * restriction, including without limitation the rights to use, >> 29 * copy, modify, merge, publish, distribute, sublicense, and/or >> 30 * sell copies of the Software, and to permit persons to whom the >> 31 * Software is furnished to do so, subject to the following >> 32 * conditions: >> 33 * >> 34 * The above copyright notice and this permission notice shall be >> 35 * included in all copies or substantial portions of the Software. >> 36 * >> 37 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >> 38 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES >> 39 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND >> 40 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT >> 41 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, >> 42 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> 43 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR >> 44 * OTHER DEALINGS IN THE SOFTWARE. 9 */ 45 */ 10 46 11 /dts-v1/; 47 /dts-v1/; 12 48 13 #include "fsl-ls1046a.dtsi" 49 #include "fsl-ls1046a.dtsi" 14 50 15 / { 51 / { 16 model = "LS1046A QDS Board"; 52 model = "LS1046A QDS Board"; 17 compatible = "fsl,ls1046a-qds", "fsl,l 53 compatible = "fsl,ls1046a-qds", "fsl,ls1046a"; 18 54 19 aliases { 55 aliases { 20 emi1-slot1 = &ls1046mdio_s1; << 21 emi1-slot2 = &ls1046mdio_s2; << 22 emi1-slot4 = &ls1046mdio_s4; << 23 gpio0 = &gpio0; 56 gpio0 = &gpio0; 24 gpio1 = &gpio1; 57 gpio1 = &gpio1; 25 gpio2 = &gpio2; 58 gpio2 = &gpio2; 26 gpio3 = &gpio3; 59 gpio3 = &gpio3; 27 qsgmii-s2-p1 = &qsgmii_phy_s2_ << 28 qsgmii-s2-p2 = &qsgmii_phy_s2_ << 29 qsgmii-s2-p3 = &qsgmii_phy_s2_ << 30 qsgmii-s2-p4 = &qsgmii_phy_s2_ << 31 serial0 = &duart0; 60 serial0 = &duart0; 32 serial1 = &duart1; 61 serial1 = &duart1; 33 serial2 = &duart2; 62 serial2 = &duart2; 34 serial3 = &duart3; 63 serial3 = &duart3; 35 sgmii-s1-p1 = &sgmii_phy_s1_p1 << 36 sgmii-s1-p2 = &sgmii_phy_s1_p2 << 37 sgmii-s1-p3 = &sgmii_phy_s1_p3 << 38 sgmii-s1-p4 = &sgmii_phy_s1_p4 << 39 sgmii-s4-p1 = &sgmii_phy_s4_p1 << 40 }; 64 }; 41 65 42 chosen { 66 chosen { 43 stdout-path = "serial0:115200n 67 stdout-path = "serial0:115200n8"; 44 }; 68 }; 45 }; 69 }; 46 70 47 &dspi { 71 &dspi { 48 bus-num = <0>; 72 bus-num = <0>; 49 status = "okay"; 73 status = "okay"; 50 74 51 flash@0 { 75 flash@0 { 52 #address-cells = <1>; 76 #address-cells = <1>; 53 #size-cells = <1>; 77 #size-cells = <1>; 54 compatible = "n25q128a11", "je 78 compatible = "n25q128a11", "jedec,spi-nor"; 55 reg = <0>; 79 reg = <0>; 56 spi-max-frequency = <10000000> 80 spi-max-frequency = <10000000>; 57 }; 81 }; 58 82 59 flash@1 { 83 flash@1 { 60 #address-cells = <1>; 84 #address-cells = <1>; 61 #size-cells = <1>; 85 #size-cells = <1>; 62 compatible = "sst25wf040b", "j 86 compatible = "sst25wf040b", "jedec,spi-nor"; 63 spi-cpol; 87 spi-cpol; 64 spi-cpha; 88 spi-cpha; 65 reg = <1>; 89 reg = <1>; 66 spi-max-frequency = <10000000> 90 spi-max-frequency = <10000000>; 67 }; 91 }; 68 92 69 flash@2 { 93 flash@2 { 70 #address-cells = <1>; 94 #address-cells = <1>; 71 #size-cells = <1>; 95 #size-cells = <1>; 72 compatible = "en25s64", "jedec 96 compatible = "en25s64", "jedec,spi-nor"; 73 spi-cpol; 97 spi-cpol; 74 spi-cpha; 98 spi-cpha; 75 reg = <2>; 99 reg = <2>; 76 spi-max-frequency = <10000000> 100 spi-max-frequency = <10000000>; 77 }; 101 }; 78 }; 102 }; 79 103 80 &duart0 { 104 &duart0 { 81 status = "okay"; 105 status = "okay"; 82 }; 106 }; 83 107 84 &duart1 { 108 &duart1 { 85 status = "okay"; 109 status = "okay"; 86 }; 110 }; 87 111 88 &i2c0 { 112 &i2c0 { 89 status = "okay"; 113 status = "okay"; 90 114 91 i2c-mux@77 { !! 115 pca9547@77 { 92 compatible = "nxp,pca9547"; 116 compatible = "nxp,pca9547"; 93 reg = <0x77>; 117 reg = <0x77>; 94 #address-cells = <1>; 118 #address-cells = <1>; 95 #size-cells = <0>; 119 #size-cells = <0>; 96 120 97 i2c@2 { 121 i2c@2 { 98 #address-cells = <1>; 122 #address-cells = <1>; 99 #size-cells = <0>; 123 #size-cells = <0>; 100 reg = <0x2>; 124 reg = <0x2>; 101 125 102 ina220@40 { 126 ina220@40 { 103 compatible = " 127 compatible = "ti,ina220"; 104 reg = <0x40>; 128 reg = <0x40>; 105 shunt-resistor 129 shunt-resistor = <1000>; 106 }; 130 }; 107 131 108 ina220@41 { 132 ina220@41 { 109 compatible = " 133 compatible = "ti,ina220"; 110 reg = <0x41>; 134 reg = <0x41>; 111 shunt-resistor 135 shunt-resistor = <1000>; 112 }; 136 }; 113 }; 137 }; 114 138 115 i2c@3 { 139 i2c@3 { 116 #address-cells = <1>; 140 #address-cells = <1>; 117 #size-cells = <0>; 141 #size-cells = <0>; 118 reg = <0x3>; 142 reg = <0x3>; 119 143 120 rtc@51 { 144 rtc@51 { 121 compatible = " 145 compatible = "nxp,pcf2129"; 122 reg = <0x51>; 146 reg = <0x51>; 123 /* IRQ10_B */ 147 /* IRQ10_B */ 124 interrupts = < 148 interrupts = <0 150 0x4>; 125 }; 149 }; 126 150 127 eeprom@56 { 151 eeprom@56 { 128 compatible = " 152 compatible = "atmel,24c512"; 129 reg = <0x56>; 153 reg = <0x56>; 130 }; 154 }; 131 155 132 eeprom@57 { 156 eeprom@57 { 133 compatible = " 157 compatible = "atmel,24c512"; 134 reg = <0x57>; 158 reg = <0x57>; 135 }; 159 }; 136 160 137 temp-sensor@4c { 161 temp-sensor@4c { 138 compatible = " 162 compatible = "adi,adt7461a"; 139 reg = <0x4c>; 163 reg = <0x4c>; 140 }; 164 }; 141 }; 165 }; 142 }; 166 }; 143 }; 167 }; 144 168 145 &ifc { 169 &ifc { 146 #address-cells = <2>; 170 #address-cells = <2>; 147 #size-cells = <1>; 171 #size-cells = <1>; 148 /* NOR, NAND Flashes and FPGA on board 172 /* NOR, NAND Flashes and FPGA on board */ 149 ranges = <0x0 0x0 0x0 0x60000000 0x080 173 ranges = <0x0 0x0 0x0 0x60000000 0x08000000 150 0x1 0x0 0x0 0x7e800000 0x000 174 0x1 0x0 0x0 0x7e800000 0x00010000 151 0x2 0x0 0x0 0x7fb00000 0x000 175 0x2 0x0 0x0 0x7fb00000 0x00000100>; 152 status = "okay"; 176 status = "okay"; 153 177 154 flash@0,0 { !! 178 nor@0,0 { 155 compatible = "cfi-flash"; 179 compatible = "cfi-flash"; 156 reg = <0x0 0x0 0x8000000>; 180 reg = <0x0 0x0 0x8000000>; 157 big-endian; << 158 bank-width = <2>; 181 bank-width = <2>; 159 device-width = <1>; 182 device-width = <1>; 160 }; 183 }; 161 184 162 nand@1,0 { 185 nand@1,0 { 163 compatible = "fsl,ifc-nand"; 186 compatible = "fsl,ifc-nand"; 164 reg = <0x1 0x0 0x10000>; 187 reg = <0x1 0x0 0x10000>; 165 }; 188 }; 166 189 167 fpga: board-control@2,0 { 190 fpga: board-control@2,0 { 168 compatible = "fsl,ls1046aqds-f !! 191 compatible = "fsl,ls1046aqds-fpga", "fsl,fpga-qixis"; 169 reg = <0x2 0x0 0x0000100>; 192 reg = <0x2 0x0 0x0000100>; 170 ranges = <0 2 0 0x100>; << 171 }; 193 }; 172 }; 194 }; 173 195 174 &lpuart0 { 196 &lpuart0 { 175 status = "okay"; 197 status = "okay"; 176 }; 198 }; 177 199 178 &qspi { 200 &qspi { >> 201 num-cs = <2>; >> 202 bus-num = <0>; 179 status = "okay"; 203 status = "okay"; 180 204 181 qflash0: flash@0 { !! 205 qflash0: s25fl128s@0 { 182 compatible = "spansion,m25p80" 206 compatible = "spansion,m25p80"; 183 #address-cells = <1>; 207 #address-cells = <1>; 184 #size-cells = <1>; 208 #size-cells = <1>; 185 spi-max-frequency = <50000000> !! 209 spi-max-frequency = <20000000>; 186 spi-rx-bus-width = <4>; << 187 spi-tx-bus-width = <4>; << 188 reg = <0>; 210 reg = <0>; 189 }; 211 }; 190 }; 212 }; 191 213 192 #include "fsl-ls1046-post.dtsi" 214 #include "fsl-ls1046-post.dtsi" 193 << 194 &fman0 { << 195 ethernet@e0000 { << 196 phy-handle = <&qsgmii_phy_s2_p << 197 phy-connection-type = "sgmii"; << 198 }; << 199 << 200 ethernet@e2000 { << 201 phy-handle = <&sgmii_phy_s4_p1 << 202 phy-connection-type = "sgmii"; << 203 }; << 204 << 205 ethernet@e4000 { << 206 phy-handle = <&rgmii_phy1>; << 207 phy-connection-type = "rgmii"; << 208 }; << 209 << 210 ethernet@e6000 { << 211 phy-handle = <&rgmii_phy2>; << 212 phy-connection-type = "rgmii"; << 213 }; << 214 << 215 ethernet@e8000 { << 216 phy-handle = <&sgmii_phy_s1_p3 << 217 phy-connection-type = "sgmii"; << 218 }; << 219 << 220 ethernet@ea000 { << 221 phy-handle = <&sgmii_phy_s1_p4 << 222 phy-connection-type = "sgmii"; << 223 }; << 224 << 225 ethernet@f0000 { /* DTSEC9/10GEC1 */ << 226 phy-handle = <&sgmii_phy_s1_p1 << 227 phy-connection-type = "xgmii"; << 228 }; << 229 << 230 ethernet@f2000 { /* DTSEC10/10GEC2 */ << 231 phy-handle = <&sgmii_phy_s1_p2 << 232 phy-connection-type = "xgmii"; << 233 }; << 234 }; << 235 << 236 &fpga { << 237 #address-cells = <1>; << 238 #size-cells = <1>; << 239 << 240 mdio-mux@54 { << 241 compatible = "mdio-mux-mmioreg << 242 mdio-parent-bus = <&mdio0>; << 243 #address-cells = <1>; << 244 #size-cells = <0>; << 245 reg = <0x54 1>; /* BRDCFG4 << 246 mux-mask = <0xe0>; /* EMI1 */ << 247 << 248 /* On-board RGMII1 PHY */ << 249 ls1046mdio0: mdio@0 { << 250 reg = <0>; << 251 #address-cells = <1>; << 252 #size-cells = <0>; << 253 << 254 rgmii_phy1: ethernet-p << 255 reg = <0x1>; << 256 }; << 257 }; << 258 << 259 /* On-board RGMII2 PHY */ << 260 ls1046mdio1: mdio@1 { << 261 reg = <0x20>; << 262 #address-cells = <1>; << 263 #size-cells = <0>; << 264 << 265 rgmii_phy2: ethernet-p << 266 reg = <0x2>; << 267 }; << 268 }; << 269 << 270 /* Slot 1 */ << 271 ls1046mdio_s1: mdio@2 { << 272 reg = <0x40>; << 273 #address-cells = <1>; << 274 #size-cells = <0>; << 275 status = "disabled"; << 276 << 277 sgmii_phy_s1_p1: ether << 278 reg = <0x1c>; << 279 }; << 280 << 281 sgmii_phy_s1_p2: ether << 282 reg = <0x1d>; << 283 }; << 284 << 285 sgmii_phy_s1_p3: ether << 286 reg = <0x1e>; << 287 }; << 288 << 289 sgmii_phy_s1_p4: ether << 290 reg = <0x1f>; << 291 }; << 292 }; << 293 << 294 /* Slot 2 */ << 295 ls1046mdio_s2: mdio@3 { << 296 reg = <0x60>; << 297 #address-cells = <1>; << 298 #size-cells = <0>; << 299 status = "disabled"; << 300 << 301 qsgmii_phy_s2_p1: ethe << 302 reg = <0x8>; << 303 }; << 304 << 305 qsgmii_phy_s2_p2: ethe << 306 reg = <0x9>; << 307 }; << 308 << 309 qsgmii_phy_s2_p3: ethe << 310 reg = <0xa>; << 311 }; << 312 << 313 qsgmii_phy_s2_p4: ethe << 314 reg = <0xb>; << 315 }; << 316 }; << 317 << 318 /* Slot 4 */ << 319 ls1046mdio_s4: mdio@5 { << 320 reg = <0x80>; << 321 #address-cells = <1>; << 322 #size-cells = <0>; << 323 status = "disabled"; << 324 << 325 sgmii_phy_s4_p1: ether << 326 reg = <0x1c>; << 327 }; << 328 }; << 329 }; << 330 }; <<
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.