1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0+ 2*4882a593Smuzhiyun// Copyright (c) 2018 Facebook Inc. 3*4882a593Smuzhiyun/dts-v1/; 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun#include "ast2500-facebook-netbmc-common.dtsi" 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun/ { 8*4882a593Smuzhiyun model = "Facebook Minipack 100 BMC"; 9*4882a593Smuzhiyun compatible = "facebook,minipack-bmc", "aspeed,ast2500"; 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun aliases { 12*4882a593Smuzhiyun /* 13*4882a593Smuzhiyun * Override the default serial aliases to avoid breaking 14*4882a593Smuzhiyun * the legacy applications. 15*4882a593Smuzhiyun */ 16*4882a593Smuzhiyun serial0 = &uart5; 17*4882a593Smuzhiyun serial1 = &uart1; 18*4882a593Smuzhiyun serial2 = &uart2; 19*4882a593Smuzhiyun serial3 = &uart3; 20*4882a593Smuzhiyun serial4 = &uart4; 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun /* 23*4882a593Smuzhiyun * i2c switch 2-0070, pca9548, 8 child channels assigned 24*4882a593Smuzhiyun * with bus number 16-23. 25*4882a593Smuzhiyun */ 26*4882a593Smuzhiyun i2c16 = &imux16; 27*4882a593Smuzhiyun i2c17 = &imux17; 28*4882a593Smuzhiyun i2c18 = &imux18; 29*4882a593Smuzhiyun i2c19 = &imux19; 30*4882a593Smuzhiyun i2c20 = &imux20; 31*4882a593Smuzhiyun i2c21 = &imux21; 32*4882a593Smuzhiyun i2c22 = &imux22; 33*4882a593Smuzhiyun i2c23 = &imux23; 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun /* 36*4882a593Smuzhiyun * i2c switch 8-0070, pca9548, 8 child channels assigned 37*4882a593Smuzhiyun * with bus number 24-31. 38*4882a593Smuzhiyun */ 39*4882a593Smuzhiyun i2c24 = &imux24; 40*4882a593Smuzhiyun i2c25 = &imux25; 41*4882a593Smuzhiyun i2c26 = &imux26; 42*4882a593Smuzhiyun i2c27 = &imux27; 43*4882a593Smuzhiyun i2c28 = &imux28; 44*4882a593Smuzhiyun i2c29 = &imux29; 45*4882a593Smuzhiyun i2c30 = &imux30; 46*4882a593Smuzhiyun i2c31 = &imux31; 47*4882a593Smuzhiyun 48*4882a593Smuzhiyun /* 49*4882a593Smuzhiyun * i2c switch 9-0070, pca9548, 8 child channels assigned 50*4882a593Smuzhiyun * with bus number 32-39. 51*4882a593Smuzhiyun */ 52*4882a593Smuzhiyun i2c32 = &imux32; 53*4882a593Smuzhiyun i2c33 = &imux33; 54*4882a593Smuzhiyun i2c34 = &imux34; 55*4882a593Smuzhiyun i2c35 = &imux35; 56*4882a593Smuzhiyun i2c36 = &imux36; 57*4882a593Smuzhiyun i2c37 = &imux37; 58*4882a593Smuzhiyun i2c38 = &imux38; 59*4882a593Smuzhiyun i2c39 = &imux39; 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun /* 62*4882a593Smuzhiyun * i2c switch 11-0070, pca9548, 8 child channels assigned 63*4882a593Smuzhiyun * with bus number 40-47. 64*4882a593Smuzhiyun */ 65*4882a593Smuzhiyun i2c40 = &imux40; 66*4882a593Smuzhiyun i2c41 = &imux41; 67*4882a593Smuzhiyun i2c42 = &imux42; 68*4882a593Smuzhiyun i2c43 = &imux43; 69*4882a593Smuzhiyun i2c44 = &imux44; 70*4882a593Smuzhiyun i2c45 = &imux45; 71*4882a593Smuzhiyun i2c46 = &imux46; 72*4882a593Smuzhiyun i2c47 = &imux47; 73*4882a593Smuzhiyun }; 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun chosen { 76*4882a593Smuzhiyun stdout-path = &uart1; 77*4882a593Smuzhiyun bootargs = "debug console=ttyS1,9600n8 root=/dev/ram rw"; 78*4882a593Smuzhiyun }; 79*4882a593Smuzhiyun}; 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun&wdt2 { 82*4882a593Smuzhiyun status = "okay"; 83*4882a593Smuzhiyun aspeed,reset-type = "system"; 84*4882a593Smuzhiyun}; 85*4882a593Smuzhiyun 86*4882a593Smuzhiyun/* 87*4882a593Smuzhiyun * Both firmware flashes are 64MB on Minipack BMC. 88*4882a593Smuzhiyun */ 89*4882a593Smuzhiyun&fmc_flash0 { 90*4882a593Smuzhiyun partitions { 91*4882a593Smuzhiyun compatible = "fixed-partitions"; 92*4882a593Smuzhiyun #address-cells = <1>; 93*4882a593Smuzhiyun #size-cells = <1>; 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun /* 96*4882a593Smuzhiyun * u-boot partition: 384KB. 97*4882a593Smuzhiyun */ 98*4882a593Smuzhiyun u-boot@0 { 99*4882a593Smuzhiyun reg = <0x0 0x60000>; 100*4882a593Smuzhiyun label = "u-boot"; 101*4882a593Smuzhiyun }; 102*4882a593Smuzhiyun 103*4882a593Smuzhiyun /* 104*4882a593Smuzhiyun * u-boot environment variables: 128KB. 105*4882a593Smuzhiyun */ 106*4882a593Smuzhiyun u-boot-env@60000 { 107*4882a593Smuzhiyun reg = <0x60000 0x20000>; 108*4882a593Smuzhiyun label = "env"; 109*4882a593Smuzhiyun }; 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun /* 112*4882a593Smuzhiyun * FIT image: 59.5 MB. 113*4882a593Smuzhiyun */ 114*4882a593Smuzhiyun fit@80000 { 115*4882a593Smuzhiyun reg = <0x80000 0x3b80000>; 116*4882a593Smuzhiyun label = "fit"; 117*4882a593Smuzhiyun }; 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun /* 120*4882a593Smuzhiyun * "data0" partition (4MB) is reserved for persistent 121*4882a593Smuzhiyun * data store. 122*4882a593Smuzhiyun */ 123*4882a593Smuzhiyun data0@3800000 { 124*4882a593Smuzhiyun reg = <0x3c00000 0x400000>; 125*4882a593Smuzhiyun label = "data0"; 126*4882a593Smuzhiyun }; 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun /* 129*4882a593Smuzhiyun * "flash0" partition (covering the entire flash) is 130*4882a593Smuzhiyun * explicitly created to avoid breaking legacy applications. 131*4882a593Smuzhiyun */ 132*4882a593Smuzhiyun flash0@0 { 133*4882a593Smuzhiyun reg = <0x0 0x4000000>; 134*4882a593Smuzhiyun label = "flash0"; 135*4882a593Smuzhiyun }; 136*4882a593Smuzhiyun }; 137*4882a593Smuzhiyun}; 138*4882a593Smuzhiyun 139*4882a593Smuzhiyun&fmc_flash1 { 140*4882a593Smuzhiyun partitions { 141*4882a593Smuzhiyun compatible = "fixed-partitions"; 142*4882a593Smuzhiyun #address-cells = <1>; 143*4882a593Smuzhiyun #size-cells = <1>; 144*4882a593Smuzhiyun 145*4882a593Smuzhiyun flash1@0 { 146*4882a593Smuzhiyun reg = <0x0 0x4000000>; 147*4882a593Smuzhiyun }; 148*4882a593Smuzhiyun }; 149*4882a593Smuzhiyun}; 150*4882a593Smuzhiyun 151*4882a593Smuzhiyun&uart1 { 152*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_txd1_default 153*4882a593Smuzhiyun &pinctrl_rxd1_default 154*4882a593Smuzhiyun &pinctrl_ncts1_default 155*4882a593Smuzhiyun &pinctrl_ndsr1_default 156*4882a593Smuzhiyun &pinctrl_ndtr1_default 157*4882a593Smuzhiyun &pinctrl_nrts1_default>; 158*4882a593Smuzhiyun}; 159*4882a593Smuzhiyun 160*4882a593Smuzhiyun&uart2 { 161*4882a593Smuzhiyun status = "okay"; 162*4882a593Smuzhiyun pinctrl-names = "default"; 163*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_txd2_default 164*4882a593Smuzhiyun &pinctrl_rxd2_default>; 165*4882a593Smuzhiyun}; 166*4882a593Smuzhiyun 167*4882a593Smuzhiyun&uart4 { 168*4882a593Smuzhiyun status = "okay"; 169*4882a593Smuzhiyun pinctrl-names = "default"; 170*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_txd4_default 171*4882a593Smuzhiyun &pinctrl_rxd4_default>; 172*4882a593Smuzhiyun}; 173*4882a593Smuzhiyun 174*4882a593Smuzhiyun&i2c0 { 175*4882a593Smuzhiyun status = "okay"; 176*4882a593Smuzhiyun bus-frequency = <400000>; 177*4882a593Smuzhiyun multi-master; 178*4882a593Smuzhiyun}; 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun&i2c1 { 181*4882a593Smuzhiyun status = "okay"; 182*4882a593Smuzhiyun}; 183*4882a593Smuzhiyun 184*4882a593Smuzhiyun&i2c2 { 185*4882a593Smuzhiyun status = "okay"; 186*4882a593Smuzhiyun 187*4882a593Smuzhiyun i2c-switch@70 { 188*4882a593Smuzhiyun compatible = "nxp,pca9548"; 189*4882a593Smuzhiyun #address-cells = <1>; 190*4882a593Smuzhiyun #size-cells = <0>; 191*4882a593Smuzhiyun reg = <0x70>; 192*4882a593Smuzhiyun 193*4882a593Smuzhiyun imux16: i2c@0 { 194*4882a593Smuzhiyun #address-cells = <1>; 195*4882a593Smuzhiyun #size-cells = <0>; 196*4882a593Smuzhiyun reg = <0>; 197*4882a593Smuzhiyun }; 198*4882a593Smuzhiyun 199*4882a593Smuzhiyun imux17: i2c@1 { 200*4882a593Smuzhiyun #address-cells = <1>; 201*4882a593Smuzhiyun #size-cells = <0>; 202*4882a593Smuzhiyun reg = <1>; 203*4882a593Smuzhiyun }; 204*4882a593Smuzhiyun 205*4882a593Smuzhiyun imux18: i2c@2 { 206*4882a593Smuzhiyun #address-cells = <1>; 207*4882a593Smuzhiyun #size-cells = <0>; 208*4882a593Smuzhiyun reg = <2>; 209*4882a593Smuzhiyun }; 210*4882a593Smuzhiyun 211*4882a593Smuzhiyun imux19: i2c@3 { 212*4882a593Smuzhiyun #address-cells = <1>; 213*4882a593Smuzhiyun #size-cells = <0>; 214*4882a593Smuzhiyun reg = <3>; 215*4882a593Smuzhiyun }; 216*4882a593Smuzhiyun 217*4882a593Smuzhiyun imux20: i2c@4 { 218*4882a593Smuzhiyun #address-cells = <1>; 219*4882a593Smuzhiyun #size-cells = <0>; 220*4882a593Smuzhiyun reg = <4>; 221*4882a593Smuzhiyun }; 222*4882a593Smuzhiyun 223*4882a593Smuzhiyun imux21: i2c@5 { 224*4882a593Smuzhiyun #address-cells = <1>; 225*4882a593Smuzhiyun #size-cells = <0>; 226*4882a593Smuzhiyun reg = <5>; 227*4882a593Smuzhiyun }; 228*4882a593Smuzhiyun 229*4882a593Smuzhiyun imux22: i2c@6 { 230*4882a593Smuzhiyun #address-cells = <1>; 231*4882a593Smuzhiyun #size-cells = <0>; 232*4882a593Smuzhiyun reg = <6>; 233*4882a593Smuzhiyun }; 234*4882a593Smuzhiyun 235*4882a593Smuzhiyun imux23: i2c@7 { 236*4882a593Smuzhiyun #address-cells = <1>; 237*4882a593Smuzhiyun #size-cells = <0>; 238*4882a593Smuzhiyun reg = <7>; 239*4882a593Smuzhiyun }; 240*4882a593Smuzhiyun }; 241*4882a593Smuzhiyun}; 242*4882a593Smuzhiyun 243*4882a593Smuzhiyun&i2c3 { 244*4882a593Smuzhiyun status = "okay"; 245*4882a593Smuzhiyun}; 246*4882a593Smuzhiyun 247*4882a593Smuzhiyun&i2c4 { 248*4882a593Smuzhiyun status = "okay"; 249*4882a593Smuzhiyun multi-master; 250*4882a593Smuzhiyun}; 251*4882a593Smuzhiyun 252*4882a593Smuzhiyun&i2c5 { 253*4882a593Smuzhiyun status = "okay"; 254*4882a593Smuzhiyun}; 255*4882a593Smuzhiyun 256*4882a593Smuzhiyun&i2c6 { 257*4882a593Smuzhiyun status = "okay"; 258*4882a593Smuzhiyun}; 259*4882a593Smuzhiyun 260*4882a593Smuzhiyun&i2c7 { 261*4882a593Smuzhiyun status = "okay"; 262*4882a593Smuzhiyun}; 263*4882a593Smuzhiyun 264*4882a593Smuzhiyun&i2c8 { 265*4882a593Smuzhiyun status = "okay"; 266*4882a593Smuzhiyun 267*4882a593Smuzhiyun i2c-switch@70 { 268*4882a593Smuzhiyun compatible = "nxp,pca9548"; 269*4882a593Smuzhiyun #address-cells = <1>; 270*4882a593Smuzhiyun #size-cells = <0>; 271*4882a593Smuzhiyun reg = <0x70>; 272*4882a593Smuzhiyun 273*4882a593Smuzhiyun imux24: i2c@0 { 274*4882a593Smuzhiyun #address-cells = <1>; 275*4882a593Smuzhiyun #size-cells = <0>; 276*4882a593Smuzhiyun reg = <0>; 277*4882a593Smuzhiyun }; 278*4882a593Smuzhiyun 279*4882a593Smuzhiyun imux25: i2c@1 { 280*4882a593Smuzhiyun #address-cells = <1>; 281*4882a593Smuzhiyun #size-cells = <0>; 282*4882a593Smuzhiyun reg = <1>; 283*4882a593Smuzhiyun }; 284*4882a593Smuzhiyun 285*4882a593Smuzhiyun imux26: i2c@2 { 286*4882a593Smuzhiyun #address-cells = <1>; 287*4882a593Smuzhiyun #size-cells = <0>; 288*4882a593Smuzhiyun reg = <2>; 289*4882a593Smuzhiyun }; 290*4882a593Smuzhiyun 291*4882a593Smuzhiyun imux27: i2c@3 { 292*4882a593Smuzhiyun #address-cells = <1>; 293*4882a593Smuzhiyun #size-cells = <0>; 294*4882a593Smuzhiyun reg = <3>; 295*4882a593Smuzhiyun }; 296*4882a593Smuzhiyun 297*4882a593Smuzhiyun imux28: i2c@4 { 298*4882a593Smuzhiyun #address-cells = <1>; 299*4882a593Smuzhiyun #size-cells = <0>; 300*4882a593Smuzhiyun reg = <4>; 301*4882a593Smuzhiyun }; 302*4882a593Smuzhiyun 303*4882a593Smuzhiyun imux29: i2c@5 { 304*4882a593Smuzhiyun #address-cells = <1>; 305*4882a593Smuzhiyun #size-cells = <0>; 306*4882a593Smuzhiyun reg = <5>; 307*4882a593Smuzhiyun }; 308*4882a593Smuzhiyun 309*4882a593Smuzhiyun imux30: i2c@6 { 310*4882a593Smuzhiyun #address-cells = <1>; 311*4882a593Smuzhiyun #size-cells = <0>; 312*4882a593Smuzhiyun reg = <6>; 313*4882a593Smuzhiyun }; 314*4882a593Smuzhiyun 315*4882a593Smuzhiyun imux31: i2c@7 { 316*4882a593Smuzhiyun #address-cells = <1>; 317*4882a593Smuzhiyun #size-cells = <0>; 318*4882a593Smuzhiyun reg = <7>; 319*4882a593Smuzhiyun }; 320*4882a593Smuzhiyun }; 321*4882a593Smuzhiyun}; 322*4882a593Smuzhiyun 323*4882a593Smuzhiyun&i2c9 { 324*4882a593Smuzhiyun status = "okay"; 325*4882a593Smuzhiyun 326*4882a593Smuzhiyun i2c-switch@70 { 327*4882a593Smuzhiyun compatible = "nxp,pca9548"; 328*4882a593Smuzhiyun #address-cells = <1>; 329*4882a593Smuzhiyun #size-cells = <0>; 330*4882a593Smuzhiyun reg = <0x70>; 331*4882a593Smuzhiyun 332*4882a593Smuzhiyun imux32: i2c@0 { 333*4882a593Smuzhiyun #address-cells = <1>; 334*4882a593Smuzhiyun #size-cells = <0>; 335*4882a593Smuzhiyun reg = <0>; 336*4882a593Smuzhiyun }; 337*4882a593Smuzhiyun 338*4882a593Smuzhiyun imux33: i2c@1 { 339*4882a593Smuzhiyun #address-cells = <1>; 340*4882a593Smuzhiyun #size-cells = <0>; 341*4882a593Smuzhiyun reg = <1>; 342*4882a593Smuzhiyun }; 343*4882a593Smuzhiyun 344*4882a593Smuzhiyun imux34: i2c@2 { 345*4882a593Smuzhiyun #address-cells = <1>; 346*4882a593Smuzhiyun #size-cells = <0>; 347*4882a593Smuzhiyun reg = <2>; 348*4882a593Smuzhiyun }; 349*4882a593Smuzhiyun 350*4882a593Smuzhiyun imux35: i2c@3 { 351*4882a593Smuzhiyun #address-cells = <1>; 352*4882a593Smuzhiyun #size-cells = <0>; 353*4882a593Smuzhiyun reg = <3>; 354*4882a593Smuzhiyun }; 355*4882a593Smuzhiyun 356*4882a593Smuzhiyun imux36: i2c@4 { 357*4882a593Smuzhiyun #address-cells = <1>; 358*4882a593Smuzhiyun #size-cells = <0>; 359*4882a593Smuzhiyun reg = <4>; 360*4882a593Smuzhiyun }; 361*4882a593Smuzhiyun 362*4882a593Smuzhiyun imux37: i2c@5 { 363*4882a593Smuzhiyun #address-cells = <1>; 364*4882a593Smuzhiyun #size-cells = <0>; 365*4882a593Smuzhiyun reg = <5>; 366*4882a593Smuzhiyun }; 367*4882a593Smuzhiyun 368*4882a593Smuzhiyun imux38: i2c@6 { 369*4882a593Smuzhiyun #address-cells = <1>; 370*4882a593Smuzhiyun #size-cells = <0>; 371*4882a593Smuzhiyun reg = <6>; 372*4882a593Smuzhiyun }; 373*4882a593Smuzhiyun 374*4882a593Smuzhiyun imux39: i2c@7 { 375*4882a593Smuzhiyun #address-cells = <1>; 376*4882a593Smuzhiyun #size-cells = <0>; 377*4882a593Smuzhiyun reg = <7>; 378*4882a593Smuzhiyun }; 379*4882a593Smuzhiyun }; 380*4882a593Smuzhiyun}; 381*4882a593Smuzhiyun 382*4882a593Smuzhiyun&i2c10 { 383*4882a593Smuzhiyun status = "okay"; 384*4882a593Smuzhiyun}; 385*4882a593Smuzhiyun 386*4882a593Smuzhiyun&i2c11 { 387*4882a593Smuzhiyun status = "okay"; 388*4882a593Smuzhiyun 389*4882a593Smuzhiyun i2c-switch@70 { 390*4882a593Smuzhiyun compatible = "nxp,pca9548"; 391*4882a593Smuzhiyun #address-cells = <1>; 392*4882a593Smuzhiyun #size-cells = <0>; 393*4882a593Smuzhiyun reg = <0x70>; 394*4882a593Smuzhiyun 395*4882a593Smuzhiyun imux40: i2c@0 { 396*4882a593Smuzhiyun #address-cells = <1>; 397*4882a593Smuzhiyun #size-cells = <0>; 398*4882a593Smuzhiyun reg = <0>; 399*4882a593Smuzhiyun }; 400*4882a593Smuzhiyun 401*4882a593Smuzhiyun imux41: i2c@1 { 402*4882a593Smuzhiyun #address-cells = <1>; 403*4882a593Smuzhiyun #size-cells = <0>; 404*4882a593Smuzhiyun reg = <1>; 405*4882a593Smuzhiyun }; 406*4882a593Smuzhiyun 407*4882a593Smuzhiyun imux42: i2c@2 { 408*4882a593Smuzhiyun #address-cells = <1>; 409*4882a593Smuzhiyun #size-cells = <0>; 410*4882a593Smuzhiyun reg = <2>; 411*4882a593Smuzhiyun }; 412*4882a593Smuzhiyun 413*4882a593Smuzhiyun imux43: i2c@3 { 414*4882a593Smuzhiyun #address-cells = <1>; 415*4882a593Smuzhiyun #size-cells = <0>; 416*4882a593Smuzhiyun reg = <3>; 417*4882a593Smuzhiyun }; 418*4882a593Smuzhiyun 419*4882a593Smuzhiyun imux44: i2c@4 { 420*4882a593Smuzhiyun #address-cells = <1>; 421*4882a593Smuzhiyun #size-cells = <0>; 422*4882a593Smuzhiyun reg = <4>; 423*4882a593Smuzhiyun }; 424*4882a593Smuzhiyun 425*4882a593Smuzhiyun imux45: i2c@5 { 426*4882a593Smuzhiyun #address-cells = <1>; 427*4882a593Smuzhiyun #size-cells = <0>; 428*4882a593Smuzhiyun reg = <5>; 429*4882a593Smuzhiyun }; 430*4882a593Smuzhiyun 431*4882a593Smuzhiyun imux46: i2c@6 { 432*4882a593Smuzhiyun #address-cells = <1>; 433*4882a593Smuzhiyun #size-cells = <0>; 434*4882a593Smuzhiyun reg = <6>; 435*4882a593Smuzhiyun }; 436*4882a593Smuzhiyun 437*4882a593Smuzhiyun imux47: i2c@7 { 438*4882a593Smuzhiyun #address-cells = <1>; 439*4882a593Smuzhiyun #size-cells = <0>; 440*4882a593Smuzhiyun reg = <7>; 441*4882a593Smuzhiyun }; 442*4882a593Smuzhiyun }; 443*4882a593Smuzhiyun}; 444*4882a593Smuzhiyun 445*4882a593Smuzhiyun&i2c12 { 446*4882a593Smuzhiyun status = "okay"; 447*4882a593Smuzhiyun}; 448*4882a593Smuzhiyun 449*4882a593Smuzhiyun&i2c13 { 450*4882a593Smuzhiyun status = "okay"; 451*4882a593Smuzhiyun}; 452