cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

aspeed-bmc-facebook-cmm.dts (28658B)


      1// SPDX-License-Identifier: GPL-2.0+
      2// Copyright (c) 2018 Facebook Inc.
      3/dts-v1/;
      4
      5#include "ast2500-facebook-netbmc-common.dtsi"
      6
      7/ {
      8	model = "Facebook Backpack CMM BMC";
      9	compatible = "facebook,cmm-bmc", "aspeed,ast2500";
     10
     11	aliases {
     12		/*
     13		 * Override the default uart aliases to avoid breaking
     14		 * the legacy applications.
     15		 */
     16		serial0 = &uart5;
     17		serial1 = &uart1;
     18		serial2 = &uart3;
     19		serial3 = &uart4;
     20
     21		/*
     22		 * PCA9548 (1-0077) provides 8 channels for connecting to
     23		 * 4 Line Cards and 4 Fabric Cards.
     24		 */
     25		i2c16 = &imux16;
     26		i2c17 = &imux17;
     27		i2c18 = &imux18;
     28		i2c19 = &imux19;
     29		i2c20 = &imux20;
     30		i2c21 = &imux21;
     31		i2c22 = &imux22;
     32		i2c23 = &imux23;
     33
     34		/*
     35		 * PCA9548 (2-0071) provides 8 channels for connecting to
     36		 * Power Distribution Board.
     37		 */
     38		i2c24 = &imux24;
     39		i2c25 = &imux25;
     40		i2c26 = &imux26;
     41		i2c27 = &imux27;
     42		i2c28 = &imux28;
     43		i2c29 = &imux29;
     44		i2c30 = &imux30;
     45		i2c31 = &imux31;
     46
     47		/*
     48		 * PCA9548 (8-0077) provides 8 channels and the first 4
     49		 * channels are connecting to 4 Fan Control Boards.
     50		 */
     51		i2c32 = &imux32;
     52		i2c33 = &imux33;
     53		i2c34 = &imux34;
     54		i2c35 = &imux35;
     55		i2c36 = &imux36;
     56		i2c37 = &imux37;
     57		i2c38 = &imux38;
     58		i2c39 = &imux39;
     59
     60		/*
     61		 * 2 PCA9548 (18-0070 & 18-0073), 16 channels connecting
     62		 * to Line Card #1.
     63		 */
     64		i2c40 = &imux40;
     65		i2c41 = &imux41;
     66		i2c42 = &imux42;
     67		i2c43 = &imux43;
     68		i2c44 = &imux44;
     69		i2c45 = &imux45;
     70		i2c46 = &imux46;
     71		i2c47 = &imux47;
     72		i2c48 = &imux48;
     73		i2c49 = &imux49;
     74		i2c50 = &imux50;
     75		i2c51 = &imux51;
     76		i2c52 = &imux52;
     77		i2c53 = &imux53;
     78		i2c54 = &imux54;
     79		i2c55 = &imux55;
     80
     81		/*
     82		 * 2 PCA9548 (19-0070 & 19-0073), 16 channels connecting
     83		 * to Line Card #2.
     84		 */
     85		i2c56 = &imux56;
     86		i2c57 = &imux57;
     87		i2c58 = &imux58;
     88		i2c59 = &imux59;
     89		i2c60 = &imux60;
     90		i2c61 = &imux61;
     91		i2c62 = &imux62;
     92		i2c63 = &imux63;
     93		i2c64 = &imux64;
     94		i2c65 = &imux65;
     95		i2c66 = &imux66;
     96		i2c67 = &imux67;
     97		i2c68 = &imux68;
     98		i2c69 = &imux69;
     99		i2c70 = &imux70;
    100		i2c71 = &imux71;
    101
    102		/*
    103		 * 2 PCA9548 (20-0070 & 20-0073), 16 channels connecting
    104		 * to Line Card #3.
    105		 */
    106		i2c72 = &imux72;
    107		i2c73 = &imux73;
    108		i2c74 = &imux74;
    109		i2c75 = &imux75;
    110		i2c76 = &imux76;
    111		i2c77 = &imux77;
    112		i2c78 = &imux78;
    113		i2c79 = &imux79;
    114		i2c80 = &imux80;
    115		i2c81 = &imux81;
    116		i2c82 = &imux82;
    117		i2c83 = &imux83;
    118		i2c84 = &imux84;
    119		i2c85 = &imux85;
    120		i2c86 = &imux86;
    121		i2c87 = &imux87;
    122
    123		/*
    124		 * 2 PCA9548 (21-0070 & 21-0073), 16 channels connecting
    125		 * to Line Card #4.
    126		 */
    127		i2c88 = &imux88;
    128		i2c89 = &imux89;
    129		i2c90 = &imux90;
    130		i2c91 = &imux91;
    131		i2c92 = &imux92;
    132		i2c93 = &imux93;
    133		i2c94 = &imux94;
    134		i2c95 = &imux95;
    135		i2c96 = &imux96;
    136		i2c97 = &imux97;
    137		i2c98 = &imux98;
    138		i2c99 = &imux99;
    139		i2c100 = &imux100;
    140		i2c101 = &imux101;
    141		i2c102 = &imux102;
    142		i2c103 = &imux103;
    143
    144		/*
    145		 * 2 PCA9548 (16-0070 & 16-0073), 16 channels connecting
    146		 * to Fabric Card #1.
    147		 */
    148		i2c104 = &imux104;
    149		i2c105 = &imux105;
    150		i2c106 = &imux106;
    151		i2c107 = &imux107;
    152		i2c108 = &imux108;
    153		i2c109 = &imux109;
    154		i2c110 = &imux110;
    155		i2c111 = &imux111;
    156		i2c112 = &imux112;
    157		i2c113 = &imux113;
    158		i2c114 = &imux114;
    159		i2c115 = &imux115;
    160		i2c116 = &imux116;
    161		i2c117 = &imux117;
    162		i2c118 = &imux118;
    163		i2c119 = &imux119;
    164
    165		/*
    166		 * 2 PCA9548 (17-0070 & 17-0073), 16 channels connecting
    167		 * to Fabric Card #2.
    168		 */
    169		i2c120 = &imux120;
    170		i2c121 = &imux121;
    171		i2c122 = &imux122;
    172		i2c123 = &imux123;
    173		i2c124 = &imux124;
    174		i2c125 = &imux125;
    175		i2c126 = &imux126;
    176		i2c127 = &imux127;
    177		i2c128 = &imux128;
    178		i2c129 = &imux129;
    179		i2c130 = &imux130;
    180		i2c131 = &imux131;
    181		i2c132 = &imux132;
    182		i2c133 = &imux133;
    183		i2c134 = &imux134;
    184		i2c135 = &imux135;
    185
    186		/*
    187		 * 2 PCA9548 (22-0070 & 22-0073), 16 channels connecting
    188		 * to Fabric Card #3.
    189		 */
    190		i2c136 = &imux136;
    191		i2c137 = &imux137;
    192		i2c138 = &imux138;
    193		i2c139 = &imux139;
    194		i2c140 = &imux140;
    195		i2c141 = &imux141;
    196		i2c142 = &imux142;
    197		i2c143 = &imux143;
    198		i2c144 = &imux144;
    199		i2c145 = &imux145;
    200		i2c146 = &imux146;
    201		i2c147 = &imux147;
    202		i2c148 = &imux148;
    203		i2c149 = &imux149;
    204		i2c150 = &imux150;
    205		i2c151 = &imux151;
    206
    207		/*
    208		 * 2 PCA9548 (23-0070 & 23-0073), 16 channels connecting
    209		 * to Fabric Card #4.
    210		 */
    211		i2c152 = &imux152;
    212		i2c153 = &imux153;
    213		i2c154 = &imux154;
    214		i2c155 = &imux155;
    215		i2c156 = &imux156;
    216		i2c157 = &imux157;
    217		i2c158 = &imux158;
    218		i2c159 = &imux159;
    219		i2c160 = &imux160;
    220		i2c161 = &imux161;
    221		i2c162 = &imux162;
    222		i2c163 = &imux163;
    223		i2c164 = &imux164;
    224		i2c165 = &imux165;
    225		i2c166 = &imux166;
    226		i2c167 = &imux167;
    227
    228		/*
    229		 * PCA9548 (32-0070), 8 channels connecting to Fan Control
    230		 # Board #1.
    231		 */
    232		i2c168 = &imux168;
    233		i2c169 = &imux169;
    234		i2c170 = &imux170;
    235		i2c171 = &imux171;
    236		i2c172 = &imux172;
    237		i2c173 = &imux173;
    238		i2c174 = &imux174;
    239		i2c175 = &imux175;
    240
    241		/*
    242		 * PCA9548 (33-0070), 8 channels connecting to Fan Control
    243		 # Board #2.
    244		 */
    245		i2c176 = &imux176;
    246		i2c177 = &imux177;
    247		i2c178 = &imux178;
    248		i2c179 = &imux179;
    249		i2c180 = &imux180;
    250		i2c181 = &imux181;
    251		i2c182 = &imux182;
    252		i2c183 = &imux183;
    253
    254		/*
    255		 * PCA9548 (34-0070), 8 channels connecting to Fan Control
    256		 # Board #3.
    257		 */
    258		i2c184 = &imux184;
    259		i2c185 = &imux185;
    260		i2c186 = &imux186;
    261		i2c187 = &imux187;
    262		i2c188 = &imux188;
    263		i2c189 = &imux189;
    264		i2c190 = &imux190;
    265		i2c191 = &imux191;
    266
    267		/*
    268		 * PCA9548 (35-0070), 8 channels connecting to Fan Control
    269		 # Board #4.
    270		 */
    271		i2c192 = &imux192;
    272		i2c193 = &imux193;
    273		i2c194 = &imux194;
    274		i2c195 = &imux195;
    275		i2c196 = &imux196;
    276		i2c197 = &imux197;
    277		i2c198 = &imux198;
    278		i2c199 = &imux199;
    279	};
    280
    281	chosen {
    282		stdout-path = &uart1;
    283		bootargs = "console=ttyS1,9600n8 root=/dev/ram rw earlycon";
    284	};
    285
    286	ast-adc-hwmon {
    287		compatible = "iio-hwmon";
    288		io-channels = <&adc 0>, <&adc 1>, <&adc 2>, <&adc 3>,
    289			      <&adc 4>, <&adc 5>, <&adc 6>, <&adc 7>;
    290	};
    291};
    292
    293&uart1 {
    294	pinctrl-0 = <&pinctrl_txd1_default
    295		     &pinctrl_rxd1_default
    296		     &pinctrl_ncts1_default
    297		     &pinctrl_ndcd1_default
    298		     &pinctrl_ndsr1_default
    299		     &pinctrl_ndtr1_default
    300		     &pinctrl_nrts1_default>;
    301};
    302
    303&uart3 {
    304	pinctrl-0 = <&pinctrl_txd3_default
    305		     &pinctrl_rxd3_default
    306		     &pinctrl_ncts3_default
    307		     &pinctrl_ndcd3_default
    308		     &pinctrl_nri3_default>;
    309};
    310
    311&uart4 {
    312	status = "okay";
    313	pinctrl-names = "default";
    314	pinctrl-0 = <&pinctrl_txd4_default
    315		     &pinctrl_rxd4_default>;
    316};
    317
    318/*
    319 * I2C bus reserved for communication with COM-E.
    320 */
    321&i2c0 {
    322	status = "okay";
    323};
    324
    325/*
    326 * I2C bus to Line Cards and Fabric Cards.
    327 */
    328&i2c1 {
    329	status = "okay";
    330
    331	i2c-switch@77 {
    332		compatible = "nxp,pca9548";
    333		#address-cells = <1>;
    334		#size-cells = <0>;
    335		reg = <0x77>;
    336		i2c-mux-idle-disconnect;
    337
    338		/* To Fabric Card #1 */
    339		imux16: i2c@0 {
    340			#address-cells = <1>;
    341			#size-cells = <0>;
    342			reg = <0>;
    343
    344			i2c-switch@70 {
    345				compatible = "nxp,pca9548";
    346				#address-cells = <1>;
    347				#size-cells = <0>;
    348				reg = <0x70>;
    349				i2c-mux-idle-disconnect;
    350
    351				imux104: i2c@0 {
    352					#address-cells = <1>;
    353					#size-cells = <0>;
    354					reg = <0>;
    355				};
    356				imux105: i2c@1 {
    357					#address-cells = <1>;
    358					#size-cells = <0>;
    359					reg = <1>;
    360				};
    361				imux106: i2c@2 {
    362					#address-cells = <1>;
    363					#size-cells = <0>;
    364					reg = <2>;
    365				};
    366				imux107: i2c@3 {
    367					#address-cells = <1>;
    368					#size-cells = <0>;
    369					reg = <3>;
    370				};
    371				imux108: i2c@4 {
    372					#address-cells = <1>;
    373					#size-cells = <0>;
    374					reg = <4>;
    375				};
    376				imux109: i2c@5 {
    377					#address-cells = <1>;
    378					#size-cells = <0>;
    379					reg = <5>;
    380				};
    381				imux110: i2c@6 {
    382					#address-cells = <1>;
    383					#size-cells = <0>;
    384					reg = <6>;
    385				};
    386				imux111: i2c@7 {
    387					#address-cells = <1>;
    388					#size-cells = <0>;
    389					reg = <7>;
    390				};
    391			};
    392
    393			i2c-switch@73 {
    394				compatible = "nxp,pca9548";
    395				#address-cells = <1>;
    396				#size-cells = <0>;
    397				reg = <0x73>;
    398				i2c-mux-idle-disconnect;
    399
    400				imux112: i2c@0 {
    401					#address-cells = <1>;
    402					#size-cells = <0>;
    403					reg = <0>;
    404				};
    405				imux113: i2c@1 {
    406					#address-cells = <1>;
    407					#size-cells = <0>;
    408					reg = <1>;
    409				};
    410				imux114: i2c@2 {
    411					#address-cells = <1>;
    412					#size-cells = <0>;
    413					reg = <2>;
    414				};
    415				imux115: i2c@3 {
    416					#address-cells = <1>;
    417					#size-cells = <0>;
    418					reg = <3>;
    419				};
    420				imux116: i2c@4 {
    421					#address-cells = <1>;
    422					#size-cells = <0>;
    423					reg = <4>;
    424				};
    425				imux117: i2c@5 {
    426					#address-cells = <1>;
    427					#size-cells = <0>;
    428					reg = <5>;
    429				};
    430				imux118: i2c@6 {
    431					#address-cells = <1>;
    432					#size-cells = <0>;
    433					reg = <6>;
    434				};
    435				imux119: i2c@7 {
    436					#address-cells = <1>;
    437					#size-cells = <0>;
    438					reg = <7>;
    439				};
    440			};
    441		};
    442
    443		/* To Fabric Card #2 */
    444		imux17: i2c@1 {
    445			#address-cells = <1>;
    446			#size-cells = <0>;
    447			reg = <1>;
    448
    449			i2c-switch@70 {
    450				compatible = "nxp,pca9548";
    451				#address-cells = <1>;
    452				#size-cells = <0>;
    453				reg = <0x70>;
    454				i2c-mux-idle-disconnect;
    455
    456				imux120: i2c@0 {
    457					#address-cells = <1>;
    458					#size-cells = <0>;
    459					reg = <0>;
    460				};
    461				imux121: i2c@1 {
    462					#address-cells = <1>;
    463					#size-cells = <0>;
    464					reg = <1>;
    465				};
    466				imux122: i2c@2 {
    467					#address-cells = <1>;
    468					#size-cells = <0>;
    469					reg = <2>;
    470				};
    471				imux123: i2c@3 {
    472					#address-cells = <1>;
    473					#size-cells = <0>;
    474					reg = <3>;
    475				};
    476				imux124: i2c@4 {
    477					#address-cells = <1>;
    478					#size-cells = <0>;
    479					reg = <4>;
    480				};
    481				imux125: i2c@5 {
    482					#address-cells = <1>;
    483					#size-cells = <0>;
    484					reg = <5>;
    485				};
    486				imux126: i2c@6 {
    487					#address-cells = <1>;
    488					#size-cells = <0>;
    489					reg = <6>;
    490				};
    491				imux127: i2c@7 {
    492					#address-cells = <1>;
    493					#size-cells = <0>;
    494					reg = <7>;
    495				};
    496			};
    497
    498			i2c-switch@73 {
    499				compatible = "nxp,pca9548";
    500				#address-cells = <1>;
    501				#size-cells = <0>;
    502				reg = <0x73>;
    503				i2c-mux-idle-disconnect;
    504
    505				imux128: i2c@0 {
    506					#address-cells = <1>;
    507					#size-cells = <0>;
    508					reg = <0>;
    509				};
    510				imux129: i2c@1 {
    511					#address-cells = <1>;
    512					#size-cells = <0>;
    513					reg = <1>;
    514				};
    515				imux130: i2c@2 {
    516					#address-cells = <1>;
    517					#size-cells = <0>;
    518					reg = <2>;
    519				};
    520				imux131: i2c@3 {
    521					#address-cells = <1>;
    522					#size-cells = <0>;
    523					reg = <3>;
    524				};
    525				imux132: i2c@4 {
    526					#address-cells = <1>;
    527					#size-cells = <0>;
    528					reg = <4>;
    529				};
    530				imux133: i2c@5 {
    531					#address-cells = <1>;
    532					#size-cells = <0>;
    533					reg = <5>;
    534				};
    535				imux134: i2c@6 {
    536					#address-cells = <1>;
    537					#size-cells = <0>;
    538					reg = <6>;
    539				};
    540				imux135: i2c@7 {
    541					#address-cells = <1>;
    542					#size-cells = <0>;
    543					reg = <7>;
    544				};
    545			};
    546		};
    547
    548		/* To Line Card #1 */
    549		imux18: i2c@2 {
    550			#address-cells = <1>;
    551			#size-cells = <0>;
    552			reg = <2>;
    553
    554			i2c-switch@70 {
    555				compatible = "nxp,pca9548";
    556				#address-cells = <1>;
    557				#size-cells = <0>;
    558				reg = <0x70>;
    559				i2c-mux-idle-disconnect;
    560
    561				imux40: i2c@0 {
    562					#address-cells = <1>;
    563					#size-cells = <0>;
    564					reg = <0>;
    565				};
    566				imux41: i2c@1 {
    567					#address-cells = <1>;
    568					#size-cells = <0>;
    569					reg = <1>;
    570				};
    571				imux42: i2c@2 {
    572					#address-cells = <1>;
    573					#size-cells = <0>;
    574					reg = <2>;
    575				};
    576				imux43: i2c@3 {
    577					#address-cells = <1>;
    578					#size-cells = <0>;
    579					reg = <3>;
    580				};
    581				imux44: i2c@4 {
    582					#address-cells = <1>;
    583					#size-cells = <0>;
    584					reg = <4>;
    585				};
    586				imux45: i2c@5 {
    587					#address-cells = <1>;
    588					#size-cells = <0>;
    589					reg = <5>;
    590				};
    591				imux46: i2c@6 {
    592					#address-cells = <1>;
    593					#size-cells = <0>;
    594					reg = <6>;
    595				};
    596				imux47: i2c@7 {
    597					#address-cells = <1>;
    598					#size-cells = <0>;
    599					reg = <7>;
    600				};
    601			};
    602
    603			i2c-switch@73 {
    604				compatible = "nxp,pca9548";
    605				#address-cells = <1>;
    606				#size-cells = <0>;
    607				reg = <0x73>;
    608				i2c-mux-idle-disconnect;
    609
    610				imux48: i2c@0 {
    611					#address-cells = <1>;
    612					#size-cells = <0>;
    613					reg = <0>;
    614				};
    615				imux49: i2c@1 {
    616					#address-cells = <1>;
    617					#size-cells = <0>;
    618					reg = <1>;
    619				};
    620				imux50: i2c@2 {
    621					#address-cells = <1>;
    622					#size-cells = <0>;
    623					reg = <2>;
    624				};
    625				imux51: i2c@3 {
    626					#address-cells = <1>;
    627					#size-cells = <0>;
    628					reg = <3>;
    629				};
    630				imux52: i2c@4 {
    631					#address-cells = <1>;
    632					#size-cells = <0>;
    633					reg = <4>;
    634				};
    635				imux53: i2c@5 {
    636					#address-cells = <1>;
    637					#size-cells = <0>;
    638					reg = <5>;
    639				};
    640				imux54: i2c@6 {
    641					#address-cells = <1>;
    642					#size-cells = <0>;
    643					reg = <6>;
    644				};
    645				imux55: i2c@7 {
    646					#address-cells = <1>;
    647					#size-cells = <0>;
    648					reg = <7>;
    649				};
    650			};
    651		};
    652
    653		/* To Line Card #2 */
    654		imux19: i2c@3 {
    655			#address-cells = <1>;
    656			#size-cells = <0>;
    657			reg = <3>;
    658
    659			i2c-switch@70 {
    660				compatible = "nxp,pca9548";
    661				#address-cells = <1>;
    662				#size-cells = <0>;
    663				reg = <0x70>;
    664				i2c-mux-idle-disconnect;
    665
    666				imux56: i2c@0 {
    667					#address-cells = <1>;
    668					#size-cells = <0>;
    669					reg = <0>;
    670				};
    671				imux57: i2c@1 {
    672					#address-cells = <1>;
    673					#size-cells = <0>;
    674					reg = <1>;
    675				};
    676				imux58: i2c@2 {
    677					#address-cells = <1>;
    678					#size-cells = <0>;
    679					reg = <2>;
    680				};
    681				imux59: i2c@3 {
    682					#address-cells = <1>;
    683					#size-cells = <0>;
    684					reg = <3>;
    685				};
    686				imux60: i2c@4 {
    687					#address-cells = <1>;
    688					#size-cells = <0>;
    689					reg = <4>;
    690				};
    691				imux61: i2c@5 {
    692					#address-cells = <1>;
    693					#size-cells = <0>;
    694					reg = <5>;
    695				};
    696				imux62: i2c@6 {
    697					#address-cells = <1>;
    698					#size-cells = <0>;
    699					reg = <6>;
    700				};
    701				imux63: i2c@7 {
    702					#address-cells = <1>;
    703					#size-cells = <0>;
    704					reg = <7>;
    705				};
    706			};
    707
    708			i2c-switch@73 {
    709				compatible = "nxp,pca9548";
    710				#address-cells = <1>;
    711				#size-cells = <0>;
    712				reg = <0x73>;
    713				i2c-mux-idle-disconnect;
    714
    715				imux64: i2c@0 {
    716					#address-cells = <1>;
    717					#size-cells = <0>;
    718					reg = <0>;
    719				};
    720				imux65: i2c@1 {
    721					#address-cells = <1>;
    722					#size-cells = <0>;
    723					reg = <1>;
    724				};
    725				imux66: i2c@2 {
    726					#address-cells = <1>;
    727					#size-cells = <0>;
    728					reg = <2>;
    729				};
    730				imux67: i2c@3 {
    731					#address-cells = <1>;
    732					#size-cells = <0>;
    733					reg = <3>;
    734				};
    735				imux68: i2c@4 {
    736					#address-cells = <1>;
    737					#size-cells = <0>;
    738					reg = <4>;
    739				};
    740				imux69: i2c@5 {
    741					#address-cells = <1>;
    742					#size-cells = <0>;
    743					reg = <5>;
    744				};
    745				imux70: i2c@6 {
    746					#address-cells = <1>;
    747					#size-cells = <0>;
    748					reg = <6>;
    749				};
    750				imux71: i2c@7 {
    751					#address-cells = <1>;
    752					#size-cells = <0>;
    753					reg = <7>;
    754				};
    755			};
    756		};
    757
    758		/* To LC3 SCM */
    759		imux20: i2c@4 {
    760			#address-cells = <1>;
    761			#size-cells = <0>;
    762			reg = <4>;
    763
    764			i2c-switch@70 {
    765				compatible = "nxp,pca9548";
    766				#address-cells = <1>;
    767				#size-cells = <0>;
    768				reg = <0x70>;
    769				i2c-mux-idle-disconnect;
    770
    771				imux72: i2c@0 {
    772					#address-cells = <1>;
    773					#size-cells = <0>;
    774					reg = <0>;
    775				};
    776				imux73: i2c@1 {
    777					#address-cells = <1>;
    778					#size-cells = <0>;
    779					reg = <1>;
    780				};
    781				imux74: i2c@2 {
    782					#address-cells = <1>;
    783					#size-cells = <0>;
    784					reg = <2>;
    785				};
    786				imux75: i2c@3 {
    787					#address-cells = <1>;
    788					#size-cells = <0>;
    789					reg = <3>;
    790				};
    791				imux76: i2c@4 {
    792					#address-cells = <1>;
    793					#size-cells = <0>;
    794					reg = <4>;
    795				};
    796				imux77: i2c@5 {
    797					#address-cells = <1>;
    798					#size-cells = <0>;
    799					reg = <5>;
    800				};
    801				imux78: i2c@6 {
    802					#address-cells = <1>;
    803					#size-cells = <0>;
    804					reg = <6>;
    805				};
    806				imux79: i2c@7 {
    807					#address-cells = <1>;
    808					#size-cells = <0>;
    809					reg = <7>;
    810				};
    811			};
    812
    813			i2c-switch@73 {
    814				compatible = "nxp,pca9548";
    815				#address-cells = <1>;
    816				#size-cells = <0>;
    817				reg = <0x73>;
    818				i2c-mux-idle-disconnect;
    819
    820				imux80: i2c@0 {
    821					#address-cells = <1>;
    822					#size-cells = <0>;
    823					reg = <0>;
    824				};
    825				imux81: i2c@1 {
    826					#address-cells = <1>;
    827					#size-cells = <0>;
    828					reg = <1>;
    829				};
    830				imux82: i2c@2 {
    831					#address-cells = <1>;
    832					#size-cells = <0>;
    833					reg = <2>;
    834				};
    835				imux83: i2c@3 {
    836					#address-cells = <1>;
    837					#size-cells = <0>;
    838					reg = <3>;
    839				};
    840				imux84: i2c@4 {
    841					#address-cells = <1>;
    842					#size-cells = <0>;
    843					reg = <4>;
    844				};
    845				imux85: i2c@5 {
    846					#address-cells = <1>;
    847					#size-cells = <0>;
    848					reg = <5>;
    849				};
    850				imux86: i2c@6 {
    851					#address-cells = <1>;
    852					#size-cells = <0>;
    853					reg = <6>;
    854				};
    855				imux87: i2c@7 {
    856					#address-cells = <1>;
    857					#size-cells = <0>;
    858					reg = <7>;
    859				};
    860			};
    861		};
    862
    863		/* To Line Card #4 */
    864		imux21: i2c@5 {
    865			#address-cells = <1>;
    866			#size-cells = <0>;
    867			reg = <5>;
    868
    869			i2c-switch@70 {
    870				compatible = "nxp,pca9548";
    871				#address-cells = <1>;
    872				#size-cells = <0>;
    873				reg = <0x70>;
    874				i2c-mux-idle-disconnect;
    875
    876				imux88: i2c@0 {
    877					#address-cells = <1>;
    878					#size-cells = <0>;
    879					reg = <0>;
    880				};
    881				imux89: i2c@1 {
    882					#address-cells = <1>;
    883					#size-cells = <0>;
    884					reg = <1>;
    885				};
    886				imux90: i2c@2 {
    887					#address-cells = <1>;
    888					#size-cells = <0>;
    889					reg = <2>;
    890				};
    891				imux91: i2c@3 {
    892					#address-cells = <1>;
    893					#size-cells = <0>;
    894					reg = <3>;
    895				};
    896				imux92: i2c@4 {
    897					#address-cells = <1>;
    898					#size-cells = <0>;
    899					reg = <4>;
    900				};
    901				imux93: i2c@5 {
    902					#address-cells = <1>;
    903					#size-cells = <0>;
    904					reg = <5>;
    905				};
    906				imux94: i2c@6 {
    907					#address-cells = <1>;
    908					#size-cells = <0>;
    909					reg = <6>;
    910				};
    911				imux95: i2c@7 {
    912					#address-cells = <1>;
    913					#size-cells = <0>;
    914					reg = <7>;
    915				};
    916			};
    917
    918			i2c-switch@73 {
    919				compatible = "nxp,pca9548";
    920				#address-cells = <1>;
    921				#size-cells = <0>;
    922				reg = <0x73>;
    923				i2c-mux-idle-disconnect;
    924
    925				imux96: i2c@0 {
    926					#address-cells = <1>;
    927					#size-cells = <0>;
    928					reg = <0>;
    929				};
    930				imux97: i2c@1 {
    931					#address-cells = <1>;
    932					#size-cells = <0>;
    933					reg = <1>;
    934				};
    935				imux98: i2c@2 {
    936					#address-cells = <1>;
    937					#size-cells = <0>;
    938					reg = <2>;
    939				};
    940				imux99: i2c@3 {
    941					#address-cells = <1>;
    942					#size-cells = <0>;
    943					reg = <3>;
    944				};
    945				imux100: i2c@4 {
    946					#address-cells = <1>;
    947					#size-cells = <0>;
    948					reg = <4>;
    949				};
    950				imux101: i2c@5 {
    951					#address-cells = <1>;
    952					#size-cells = <0>;
    953					reg = <5>;
    954				};
    955				imux102: i2c@6 {
    956					#address-cells = <1>;
    957					#size-cells = <0>;
    958					reg = <6>;
    959				};
    960				imux103: i2c@7 {
    961					#address-cells = <1>;
    962					#size-cells = <0>;
    963					reg = <7>;
    964				};
    965			};
    966		};
    967
    968		/* To Fabric Card #3 */
    969		imux22: i2c@6 {
    970			#address-cells = <1>;
    971			#size-cells = <0>;
    972			reg = <6>;
    973
    974			i2c-switch@70 {
    975				compatible = "nxp,pca9548";
    976				#address-cells = <1>;
    977				#size-cells = <0>;
    978				reg = <0x70>;
    979				i2c-mux-idle-disconnect;
    980
    981				imux136: i2c@0 {
    982					#address-cells = <1>;
    983					#size-cells = <0>;
    984					reg = <0>;
    985				};
    986				imux137: i2c@1 {
    987					#address-cells = <1>;
    988					#size-cells = <0>;
    989					reg = <1>;
    990				};
    991				imux138: i2c@2 {
    992					#address-cells = <1>;
    993					#size-cells = <0>;
    994					reg = <2>;
    995				};
    996				imux139: i2c@3 {
    997					#address-cells = <1>;
    998					#size-cells = <0>;
    999					reg = <3>;
   1000				};
   1001				imux140: i2c@4 {
   1002					#address-cells = <1>;
   1003					#size-cells = <0>;
   1004					reg = <4>;
   1005				};
   1006				imux141: i2c@5 {
   1007					#address-cells = <1>;
   1008					#size-cells = <0>;
   1009					reg = <5>;
   1010				};
   1011				imux142: i2c@6 {
   1012					#address-cells = <1>;
   1013					#size-cells = <0>;
   1014					reg = <6>;
   1015				};
   1016				imux143: i2c@7 {
   1017					#address-cells = <1>;
   1018					#size-cells = <0>;
   1019					reg = <7>;
   1020				};
   1021			};
   1022
   1023			i2c-switch@73 {
   1024				compatible = "nxp,pca9548";
   1025				#address-cells = <1>;
   1026				#size-cells = <0>;
   1027				reg = <0x73>;
   1028				i2c-mux-idle-disconnect;
   1029
   1030				imux144: i2c@0 {
   1031					#address-cells = <1>;
   1032					#size-cells = <0>;
   1033					reg = <0>;
   1034				};
   1035				imux145: i2c@1 {
   1036					#address-cells = <1>;
   1037					#size-cells = <0>;
   1038					reg = <1>;
   1039				};
   1040				imux146: i2c@2 {
   1041					#address-cells = <1>;
   1042					#size-cells = <0>;
   1043					reg = <2>;
   1044				};
   1045				imux147: i2c@3 {
   1046					#address-cells = <1>;
   1047					#size-cells = <0>;
   1048					reg = <3>;
   1049				};
   1050				imux148: i2c@4 {
   1051					#address-cells = <1>;
   1052					#size-cells = <0>;
   1053					reg = <4>;
   1054				};
   1055				imux149: i2c@5 {
   1056					#address-cells = <1>;
   1057					#size-cells = <0>;
   1058					reg = <5>;
   1059				};
   1060				imux150: i2c@6 {
   1061					#address-cells = <1>;
   1062					#size-cells = <0>;
   1063					reg = <6>;
   1064				};
   1065				imux151: i2c@7 {
   1066					#address-cells = <1>;
   1067					#size-cells = <0>;
   1068					reg = <7>;
   1069				};
   1070			};
   1071		};
   1072
   1073		/* To Fabric Card #4 */
   1074		imux23: i2c@7 {
   1075			#address-cells = <1>;
   1076			#size-cells = <0>;
   1077			reg = <7>;
   1078
   1079			i2c-switch@70 {
   1080				compatible = "nxp,pca9548";
   1081				#address-cells = <1>;
   1082				#size-cells = <0>;
   1083				reg = <0x70>;
   1084				i2c-mux-idle-disconnect;
   1085
   1086				imux152: i2c@0 {
   1087					#address-cells = <1>;
   1088					#size-cells = <0>;
   1089					reg = <0>;
   1090				};
   1091				imux153: i2c@1 {
   1092					#address-cells = <1>;
   1093					#size-cells = <0>;
   1094					reg = <1>;
   1095				};
   1096				imux154: i2c@2 {
   1097					#address-cells = <1>;
   1098					#size-cells = <0>;
   1099					reg = <2>;
   1100				};
   1101				imux155: i2c@3 {
   1102					#address-cells = <1>;
   1103					#size-cells = <0>;
   1104					reg = <3>;
   1105				};
   1106				imux156: i2c@4 {
   1107					#address-cells = <1>;
   1108					#size-cells = <0>;
   1109					reg = <4>;
   1110				};
   1111				imux157: i2c@5 {
   1112					#address-cells = <1>;
   1113					#size-cells = <0>;
   1114					reg = <5>;
   1115				};
   1116				imux158: i2c@6 {
   1117					#address-cells = <1>;
   1118					#size-cells = <0>;
   1119					reg = <6>;
   1120				};
   1121				imux159: i2c@7 {
   1122					#address-cells = <1>;
   1123					#size-cells = <0>;
   1124					reg = <7>;
   1125				};
   1126			};
   1127
   1128			i2c-switch@73 {
   1129				compatible = "nxp,pca9548";
   1130				#address-cells = <1>;
   1131				#size-cells = <0>;
   1132				reg = <0x73>;
   1133				i2c-mux-idle-disconnect;
   1134
   1135				imux160: i2c@0 {
   1136					#address-cells = <1>;
   1137					#size-cells = <0>;
   1138					reg = <0>;
   1139				};
   1140				imux161: i2c@1 {
   1141					#address-cells = <1>;
   1142					#size-cells = <0>;
   1143					reg = <1>;
   1144				};
   1145				imux162: i2c@2 {
   1146					#address-cells = <1>;
   1147					#size-cells = <0>;
   1148					reg = <2>;
   1149				};
   1150				imux163: i2c@3 {
   1151					#address-cells = <1>;
   1152					#size-cells = <0>;
   1153					reg = <3>;
   1154				};
   1155				imux164: i2c@4 {
   1156					#address-cells = <1>;
   1157					#size-cells = <0>;
   1158					reg = <4>;
   1159				};
   1160				imux165: i2c@5 {
   1161					#address-cells = <1>;
   1162					#size-cells = <0>;
   1163					reg = <5>;
   1164				};
   1165				imux166: i2c@6 {
   1166					#address-cells = <1>;
   1167					#size-cells = <0>;
   1168					reg = <6>;
   1169				};
   1170				imux167: i2c@7 {
   1171					#address-cells = <1>;
   1172					#size-cells = <0>;
   1173					reg = <7>;
   1174				};
   1175			};
   1176		};
   1177	};
   1178};
   1179
   1180/*
   1181 * I2C bus to Power Distribution Board.
   1182 */
   1183&i2c2 {
   1184	status = "okay";
   1185
   1186	i2c-switch@71 {
   1187		compatible = "nxp,pca9548";
   1188		#address-cells = <1>;
   1189		#size-cells = <0>;
   1190		reg = <0x71>;
   1191		i2c-mux-idle-disconnect;
   1192
   1193		imux24: i2c@0 {
   1194			#address-cells = <1>;
   1195			#size-cells = <0>;
   1196			reg = <0>;
   1197		};
   1198
   1199		imux25: i2c@1 {
   1200			#address-cells = <1>;
   1201			#size-cells = <0>;
   1202			reg = <1>;
   1203		};
   1204
   1205		imux26: i2c@2 {
   1206			#address-cells = <1>;
   1207			#size-cells = <0>;
   1208			reg = <2>;
   1209		};
   1210
   1211		imux27: i2c@3 {
   1212			#address-cells = <1>;
   1213			#size-cells = <0>;
   1214			reg = <3>;
   1215		};
   1216
   1217		imux28: i2c@4 {
   1218			#address-cells = <1>;
   1219			#size-cells = <0>;
   1220			reg = <4>;
   1221		};
   1222
   1223		imux29: i2c@5 {
   1224			#address-cells = <1>;
   1225			#size-cells = <0>;
   1226			reg = <5>;
   1227		};
   1228
   1229		imux30: i2c@6 {
   1230			#address-cells = <1>;
   1231			#size-cells = <0>;
   1232			reg = <6>;
   1233		};
   1234
   1235		imux31: i2c@7 {
   1236			#address-cells = <1>;
   1237			#size-cells = <0>;
   1238			reg = <7>;
   1239		};
   1240	};
   1241};
   1242
   1243/*
   1244 * I2c bus connected with temperature sensors on CMM.
   1245 */
   1246&i2c3 {
   1247	status = "okay";
   1248};
   1249
   1250/*
   1251 * I2C bus reserved for communication with COM-E.
   1252 */
   1253&i2c4 {
   1254	status = "okay";
   1255};
   1256
   1257/*
   1258 * I2c bus connected with ADM1278.
   1259 */
   1260&i2c5 {
   1261	status = "okay";
   1262};
   1263
   1264/*
   1265 * I2c bus connected with I/O Expander.
   1266 */
   1267&i2c6 {
   1268	status = "okay";
   1269};
   1270
   1271/*
   1272 * I2c bus connected with I/O Expander and EPROMs.
   1273 */
   1274&i2c7 {
   1275	status = "okay";
   1276};
   1277
   1278/*
   1279 * I2C bus to Fan Control Boards.
   1280 */
   1281&i2c8 {
   1282	status = "okay";
   1283
   1284	i2c-switch@77 {
   1285		compatible = "nxp,pca9548";
   1286		#address-cells = <1>;
   1287		#size-cells = <0>;
   1288		reg = <0x77>;
   1289		i2c-mux-idle-disconnect;
   1290
   1291		/* To Fan Control Board #1 */
   1292		imux32: i2c@0 {
   1293			#address-cells = <1>;
   1294			#size-cells = <0>;
   1295			reg = <0>;
   1296
   1297			i2c-switch@70 {
   1298				compatible = "nxp,pca9548";
   1299				#address-cells = <1>;
   1300				#size-cells = <0>;
   1301				reg = <0x70>;
   1302				i2c-mux-idle-disconnect;
   1303
   1304				imux168: i2c@0 {
   1305					#address-cells = <1>;
   1306					#size-cells = <0>;
   1307					reg = <0>;
   1308				};
   1309				imux169: i2c@1 {
   1310					#address-cells = <1>;
   1311					#size-cells = <0>;
   1312					reg = <1>;
   1313				};
   1314				imux170: i2c@2 {
   1315					#address-cells = <1>;
   1316					#size-cells = <0>;
   1317					reg = <2>;
   1318				};
   1319				imux171: i2c@3 {
   1320					#address-cells = <1>;
   1321					#size-cells = <0>;
   1322					reg = <3>;
   1323				};
   1324				imux172: i2c@4 {
   1325					#address-cells = <1>;
   1326					#size-cells = <0>;
   1327					reg = <4>;
   1328				};
   1329				imux173: i2c@5 {
   1330					#address-cells = <1>;
   1331					#size-cells = <0>;
   1332					reg = <5>;
   1333				};
   1334				imux174: i2c@6 {
   1335					#address-cells = <1>;
   1336					#size-cells = <0>;
   1337					reg = <6>;
   1338				};
   1339				imux175: i2c@7 {
   1340					#address-cells = <1>;
   1341					#size-cells = <0>;
   1342					reg = <7>;
   1343				};
   1344			};
   1345		};
   1346
   1347		/* To Fan Control Board #2 */
   1348		imux33: i2c@1 {
   1349			#address-cells = <1>;
   1350			#size-cells = <0>;
   1351			reg = <1>;
   1352
   1353			i2c-switch@70 {
   1354				compatible = "nxp,pca9548";
   1355				#address-cells = <1>;
   1356				#size-cells = <0>;
   1357				reg = <0x70>;
   1358				i2c-mux-idle-disconnect;
   1359
   1360				imux176: i2c@0 {
   1361					#address-cells = <1>;
   1362					#size-cells = <0>;
   1363					reg = <0>;
   1364				};
   1365				imux177: i2c@1 {
   1366					#address-cells = <1>;
   1367					#size-cells = <0>;
   1368					reg = <1>;
   1369				};
   1370				imux178: i2c@2 {
   1371					#address-cells = <1>;
   1372					#size-cells = <0>;
   1373					reg = <2>;
   1374				};
   1375				imux179: i2c@3 {
   1376					#address-cells = <1>;
   1377					#size-cells = <0>;
   1378					reg = <3>;
   1379				};
   1380				imux180: i2c@4 {
   1381					#address-cells = <1>;
   1382					#size-cells = <0>;
   1383					reg = <4>;
   1384				};
   1385				imux181: i2c@5 {
   1386					#address-cells = <1>;
   1387					#size-cells = <0>;
   1388					reg = <5>;
   1389				};
   1390				imux182: i2c@6 {
   1391					#address-cells = <1>;
   1392					#size-cells = <0>;
   1393					reg = <6>;
   1394				};
   1395				imux183: i2c@7 {
   1396					#address-cells = <1>;
   1397					#size-cells = <0>;
   1398					reg = <7>;
   1399				};
   1400			};
   1401		};
   1402
   1403		/* To Fan Control Board #3 */
   1404		imux34: i2c@2 {
   1405			#address-cells = <1>;
   1406			#size-cells = <0>;
   1407			reg = <2>;
   1408
   1409			i2c-switch@70 {
   1410				compatible = "nxp,pca9548";
   1411				#address-cells = <1>;
   1412				#size-cells = <0>;
   1413				reg = <0x70>;
   1414				i2c-mux-idle-disconnect;
   1415
   1416				imux184: i2c@0 {
   1417					#address-cells = <1>;
   1418					#size-cells = <0>;
   1419					reg = <0>;
   1420				};
   1421				imux185: i2c@1 {
   1422					#address-cells = <1>;
   1423					#size-cells = <0>;
   1424					reg = <1>;
   1425				};
   1426				imux186: i2c@2 {
   1427					#address-cells = <1>;
   1428					#size-cells = <0>;
   1429					reg = <2>;
   1430				};
   1431				imux187: i2c@3 {
   1432					#address-cells = <1>;
   1433					#size-cells = <0>;
   1434					reg = <3>;
   1435				};
   1436				imux188: i2c@4 {
   1437					#address-cells = <1>;
   1438					#size-cells = <0>;
   1439					reg = <4>;
   1440				};
   1441				imux189: i2c@5 {
   1442					#address-cells = <1>;
   1443					#size-cells = <0>;
   1444					reg = <5>;
   1445				};
   1446				imux190: i2c@6 {
   1447					#address-cells = <1>;
   1448					#size-cells = <0>;
   1449					reg = <6>;
   1450				};
   1451				imux191: i2c@7 {
   1452					#address-cells = <1>;
   1453					#size-cells = <0>;
   1454					reg = <7>;
   1455				};
   1456			};
   1457		};
   1458
   1459		/* To Fan Control Board #4 */
   1460		imux35: i2c@3 {
   1461			#address-cells = <1>;
   1462			#size-cells = <0>;
   1463			reg = <3>;
   1464
   1465			i2c-switch@70 {
   1466				compatible = "nxp,pca9548";
   1467				#address-cells = <1>;
   1468				#size-cells = <0>;
   1469				reg = <0x70>;
   1470				i2c-mux-idle-disconnect;
   1471
   1472				imux192: i2c@0 {
   1473					#address-cells = <1>;
   1474					#size-cells = <0>;
   1475					reg = <0>;
   1476				};
   1477				imux193: i2c@1 {
   1478					#address-cells = <1>;
   1479					#size-cells = <0>;
   1480					reg = <1>;
   1481				};
   1482				imux194: i2c@2 {
   1483					#address-cells = <1>;
   1484					#size-cells = <0>;
   1485					reg = <2>;
   1486				};
   1487				imux195: i2c@3 {
   1488					#address-cells = <1>;
   1489					#size-cells = <0>;
   1490					reg = <3>;
   1491				};
   1492				imux196: i2c@4 {
   1493					#address-cells = <1>;
   1494					#size-cells = <0>;
   1495					reg = <4>;
   1496				};
   1497				imux197: i2c@5 {
   1498					#address-cells = <1>;
   1499					#size-cells = <0>;
   1500					reg = <5>;
   1501				};
   1502				imux198: i2c@6 {
   1503					#address-cells = <1>;
   1504					#size-cells = <0>;
   1505					reg = <6>;
   1506				};
   1507				imux199: i2c@7 {
   1508					#address-cells = <1>;
   1509					#size-cells = <0>;
   1510					reg = <7>;
   1511				};
   1512			};
   1513		};
   1514
   1515		imux36: i2c@4 {
   1516			#address-cells = <1>;
   1517			#size-cells = <0>;
   1518			reg = <4>;
   1519		};
   1520
   1521		imux37: i2c@5 {
   1522			#address-cells = <1>;
   1523			#size-cells = <0>;
   1524			reg = <5>;
   1525		};
   1526
   1527		imux38: i2c@6 {
   1528			#address-cells = <1>;
   1529			#size-cells = <0>;
   1530			reg = <6>;
   1531		};
   1532
   1533		imux39: i2c@7 {
   1534			#address-cells = <1>;
   1535			#size-cells = <0>;
   1536			reg = <7>;
   1537		};
   1538	};
   1539};
   1540
   1541/*
   1542 * I2C bus to CMM CPLD.
   1543 */
   1544&i2c13 {
   1545	status = "okay";
   1546};
   1547
   1548&adc {
   1549	status = "okay";
   1550};
   1551
   1552&ehci0 {
   1553	status = "okay";
   1554};
   1555
   1556&ehci1 {
   1557	status = "okay";
   1558};
   1559
   1560&vhub {
   1561	status = "disabled";
   1562};
   1563
   1564&sdhci0 {
   1565	status = "okay";
   1566
   1567	pinctrl-names = "default";
   1568	pinctrl-0 = <&pinctrl_sd1_default>;
   1569};
   1570
   1571&sdhci1 {
   1572	status = "disabled";
   1573};
   1574
   1575&fmc_flash0 {
   1576#include "facebook-bmc-flash-layout.dtsi"
   1577};
   1578
   1579&fmc_flash1 {
   1580	partitions {
   1581		compatible = "fixed-partitions";
   1582		#address-cells = <1>;
   1583		#size-cells = <1>;
   1584
   1585		flash1@0 {
   1586			reg = <0x0 0x2000000>;
   1587			label = "flash1";
   1588		};
   1589	};
   1590};