1// SPDX-License-Identifier: GPL-2.0-or-later 2// Copyright 2023 IBM Corp. 3 4&fsim0 { 5 status = "okay"; 6 7 #address-cells = <2>; 8 #size-cells = <0>; 9 10 cfam-reset-gpios = <&gpio0 ASPEED_GPIO(Q, 0) GPIO_ACTIVE_HIGH>; 11 12 cfam@0,0 { 13 reg = <0 0>; 14 #address-cells = <1>; 15 #size-cells = <1>; 16 chip-id = <0>; 17 18 scom@1000 { 19 compatible = "ibm,fsi2pib"; 20 reg = <0x1000 0x400>; 21 }; 22 23 i2c@1800 { 24 compatible = "ibm,fsi-i2c-master"; 25 reg = <0x1800 0x400>; 26 #address-cells = <1>; 27 #size-cells = <0>; 28 29 cfam0_i2c0: i2c-bus@0 { 30 #address-cells = <1>; 31 #size-cells = <0>; 32 reg = <0>; /* OMI01 */ 33 }; 34 35 cfam0_i2c1: i2c-bus@1 { 36 #address-cells = <1>; 37 #size-cells = <0>; 38 reg = <1>; /* OMI23 */ 39 }; 40 41 cfam0_i2c10: i2c-bus@a { 42 #address-cells = <1>; 43 #size-cells = <0>; 44 reg = <10>; /* OP3A */ 45 }; 46 47 cfam0_i2c11: i2c-bus@b { 48 #address-cells = <1>; 49 #size-cells = <0>; 50 reg = <11>; /* OP3B */ 51 }; 52 53 cfam0_i2c12: i2c-bus@c { 54 #address-cells = <1>; 55 #size-cells = <0>; 56 reg = <12>; /* OP4A */ 57 }; 58 59 cfam0_i2c13: i2c-bus@d { 60 #address-cells = <1>; 61 #size-cells = <0>; 62 reg = <13>; /* OP4B */ 63 }; 64 65 cfam0_i2c14: i2c-bus@e { 66 #address-cells = <1>; 67 #size-cells = <0>; 68 reg = <14>; /* OP5A */ 69 }; 70 71 cfam0_i2c15: i2c-bus@f { 72 #address-cells = <1>; 73 #size-cells = <0>; 74 reg = <15>; /* OP5B */ 75 }; 76 }; 77 78 fsi2spi@1c00 { 79 compatible = "ibm,fsi2spi"; 80 reg = <0x1c00 0x400>; 81 #address-cells = <1>; 82 #size-cells = <0>; 83 84 cfam0_spi0: spi@0 { 85 compatible = "ibm,spi-fsi"; 86 reg = <0x0>; 87 #address-cells = <1>; 88 #size-cells = <0>; 89 90 eeprom@0 { 91 at25,byte-len = <0x80000>; 92 at25,addr-mode = <4>; 93 at25,page-size = <256>; 94 95 compatible = "atmel,at25"; 96 reg = <0>; 97 spi-max-frequency = <1000000>; 98 }; 99 }; 100 101 cfam0_spi1: spi@20 { 102 compatible = "ibm,spi-fsi"; 103 reg = <0x20>; 104 #address-cells = <1>; 105 #size-cells = <0>; 106 107 eeprom@0 { 108 at25,byte-len = <0x80000>; 109 at25,addr-mode = <4>; 110 at25,page-size = <256>; 111 112 compatible = "atmel,at25"; 113 reg = <0>; 114 spi-max-frequency = <1000000>; 115 }; 116 }; 117 118 cfam0_spi2: spi@40 { 119 compatible = "ibm,spi-fsi"; 120 reg = <0x40>; 121 #address-cells = <1>; 122 #size-cells = <0>; 123 124 eeprom@0 { 125 at25,byte-len = <0x80000>; 126 at25,addr-mode = <4>; 127 at25,page-size = <256>; 128 129 compatible = "atmel,at25"; 130 reg = <0>; 131 spi-max-frequency = <1000000>; 132 }; 133 }; 134 135 cfam0_spi3: spi@60 { 136 compatible = "ibm,spi-fsi"; 137 reg = <0x60>; 138 #address-cells = <1>; 139 #size-cells = <0>; 140 141 eeprom@0 { 142 at25,byte-len = <0x80000>; 143 at25,addr-mode = <4>; 144 at25,page-size = <256>; 145 146 compatible = "atmel,at25"; 147 reg = <0>; 148 spi-max-frequency = <1000000>; 149 }; 150 }; 151 }; 152 153 sbefifo@2400 { 154 compatible = "ibm,p9-sbefifo"; 155 reg = <0x2400 0x400>; 156 #address-cells = <1>; 157 #size-cells = <0>; 158 159 fsi_occ0: occ { 160 compatible = "ibm,p10-occ"; 161 162 occ-hwmon { 163 compatible = "ibm,p10-occ-hwmon"; 164 ibm,no-poll-on-init; 165 }; 166 }; 167 }; 168 169 fsi_hub0: hub@3400 { 170 #interrupt-cells = <1>; 171 compatible = "fsi-master-hub"; 172 reg = <0x3400 0x400>; 173 #address-cells = <2>; 174 #size-cells = <0>; 175 interrupt-controller; 176 }; 177 }; 178}; 179 180&fsi_hub0 { 181 cfam@1,0 { 182 reg = <1 0>; 183 #address-cells = <1>; 184 #size-cells = <1>; 185 chip-id = <1>; 186 187 scom@1000 { 188 compatible = "ibm,fsi2pib"; 189 reg = <0x1000 0x400>; 190 }; 191 192 i2c@1800 { 193 compatible = "ibm,fsi-i2c-master"; 194 reg = <0x1800 0x400>; 195 #address-cells = <1>; 196 #size-cells = <0>; 197 198 cfam1_i2c2: i2c-bus@2 { 199 #address-cells = <1>; 200 #size-cells = <0>; 201 reg = <2>; /* OMI45 */ 202 }; 203 204 cfam1_i2c3: i2c-bus@3 { 205 #address-cells = <1>; 206 #size-cells = <0>; 207 reg = <3>; /* OMI67 */ 208 }; 209 210 cfam1_i2c10: i2c-bus@a { 211 #address-cells = <1>; 212 #size-cells = <0>; 213 reg = <10>; /* OP3A */ 214 }; 215 216 cfam1_i2c11: i2c-bus@b { 217 #address-cells = <1>; 218 #size-cells = <0>; 219 reg = <11>; /* OP3B */ 220 }; 221 222 cfam1_i2c14: i2c-bus@e { 223 #address-cells = <1>; 224 #size-cells = <0>; 225 reg = <14>; /* OP5A */ 226 }; 227 228 cfam1_i2c15: i2c-bus@f { 229 #address-cells = <1>; 230 #size-cells = <0>; 231 reg = <15>; /* OP5B */ 232 }; 233 234 cfam1_i2c16: i2c-bus@10 { 235 #address-cells = <1>; 236 #size-cells = <0>; 237 reg = <16>; /* OP6A */ 238 }; 239 240 cfam1_i2c17: i2c-bus@11 { 241 #address-cells = <1>; 242 #size-cells = <0>; 243 reg = <17>; /* OP6B */ 244 }; 245 }; 246 247 fsi2spi@1c00 { 248 compatible = "ibm,fsi2spi"; 249 reg = <0x1c00 0x400>; 250 #address-cells = <1>; 251 #size-cells = <0>; 252 253 cfam1_spi0: spi@0 { 254 compatible = "ibm,spi-fsi"; 255 reg = <0x0>; 256 #address-cells = <1>; 257 #size-cells = <0>; 258 259 eeprom@0 { 260 at25,byte-len = <0x80000>; 261 at25,addr-mode = <4>; 262 at25,page-size = <256>; 263 264 compatible = "atmel,at25"; 265 reg = <0>; 266 spi-max-frequency = <1000000>; 267 }; 268 }; 269 270 cfam1_spi1: spi@20 { 271 compatible = "ibm,spi-fsi"; 272 reg = <0x20>; 273 #address-cells = <1>; 274 #size-cells = <0>; 275 276 eeprom@0 { 277 at25,byte-len = <0x80000>; 278 at25,addr-mode = <4>; 279 at25,page-size = <256>; 280 281 compatible = "atmel,at25"; 282 reg = <0>; 283 spi-max-frequency = <1000000>; 284 }; 285 }; 286 287 cfam1_spi2: spi@40 { 288 compatible = "ibm,spi-fsi"; 289 reg = <0x40>; 290 #address-cells = <1>; 291 #size-cells = <0>; 292 293 eeprom@0 { 294 at25,byte-len = <0x80000>; 295 at25,addr-mode = <4>; 296 at25,page-size = <256>; 297 298 compatible = "atmel,at25"; 299 reg = <0>; 300 spi-max-frequency = <1000000>; 301 }; 302 }; 303 304 cfam1_spi3: spi@60 { 305 compatible = "ibm,spi-fsi"; 306 reg = <0x60>; 307 #address-cells = <1>; 308 #size-cells = <0>; 309 310 eeprom@0 { 311 at25,byte-len = <0x80000>; 312 at25,addr-mode = <4>; 313 at25,page-size = <256>; 314 315 compatible = "atmel,at25"; 316 reg = <0>; 317 spi-max-frequency = <1000000>; 318 }; 319 }; 320 }; 321 322 sbefifo@2400 { 323 compatible = "ibm,p9-sbefifo"; 324 reg = <0x2400 0x400>; 325 #address-cells = <1>; 326 #size-cells = <0>; 327 328 fsi_occ1: occ { 329 compatible = "ibm,p10-occ"; 330 331 occ-hwmon { 332 compatible = "ibm,p10-occ-hwmon"; 333 ibm,no-poll-on-init; 334 }; 335 }; 336 }; 337 338 fsi_hub1: hub@3400 { 339 compatible = "fsi-master-hub"; 340 reg = <0x3400 0x400>; 341 #address-cells = <2>; 342 #size-cells = <0>; 343 344 no-scan-on-init; 345 }; 346 }; 347}; 348 349/* Legacy OCC numbering (to get rid of when userspace is fixed) */ 350&fsi_occ0 { 351 reg = <1>; 352}; 353 354&fsi_occ1 { 355 reg = <2>; 356}; 357 358/ { 359 aliases { 360 i2c100 = &cfam0_i2c0; 361 i2c101 = &cfam0_i2c1; 362 i2c110 = &cfam0_i2c10; 363 i2c111 = &cfam0_i2c11; 364 i2c112 = &cfam0_i2c12; 365 i2c113 = &cfam0_i2c13; 366 i2c114 = &cfam0_i2c14; 367 i2c115 = &cfam0_i2c15; 368 i2c202 = &cfam1_i2c2; 369 i2c203 = &cfam1_i2c3; 370 i2c210 = &cfam1_i2c10; 371 i2c211 = &cfam1_i2c11; 372 i2c214 = &cfam1_i2c14; 373 i2c215 = &cfam1_i2c15; 374 i2c216 = &cfam1_i2c16; 375 i2c217 = &cfam1_i2c17; 376 377 spi10 = &cfam0_spi0; 378 spi11 = &cfam0_spi1; 379 spi12 = &cfam0_spi2; 380 spi13 = &cfam0_spi3; 381 spi20 = &cfam1_spi0; 382 spi21 = &cfam1_spi1; 383 spi22 = &cfam1_spi2; 384 spi23 = &cfam1_spi3; 385 }; 386}; 387