1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * 9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 * or http://www.opensolaris.org/os/licensing. 11 * See the License for the specific language governing permissions 12 * and limitations under the License. 13 * 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 */ 22/* 23 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 * 26 * # ident "%Z%%M% %I% %E% SMI" 27 * 28 * This file creates the system board structure 29 */ 30 31NODE system-board fru 32 NODE pci-slot location 33 PROP Label string r 0 "PCI5" 34 PROP SlotType string r 0 "pci" 35 ENDNODE 36 NODE pci-slot location 37 PROP Label string r 0 "PCI4" 38 PROP SlotType string r 0 "pci" 39 ENDNODE 40 NODE pci-slot location 41 PROP Label string r 0 "PCI3" 42 PROP SlotType string r 0 "pci" 43 ENDNODE 44 NODE pci-slot location 45 PROP Label string r 0 "PCI2" 46 PROP SlotType string r 0 "pci" 47 ENDNODE 48 NODE pci-slot location 49 PROP Label string r 0 "PCI1" 50 PROP SlotType string r 0 "pci" 51 ENDNODE 52 NODE pci-slot location 53 PROP Label string r 0 "PCI0" 54 PROP SlotType string r 0 "pci" 55 ENDNODE 56 NODE audio-slot location 57 PROP Label string r 0 "ARC" 58 PROP SlotType string r 0 "audio" 59 ENDNODE 60 NODE cpu-slot location 61 PROP Label string r 0 "0" 62 PROP Slot uint r 4 0 63 PROP SlotType string r 0 "cpu" 64 ENDNODE 65 NODE cpu-slot location 66 PROP Label string r 0 "1" 67 PROP Slot uint r 4 1 68 PROP SlotType string r 0 "cpu" 69 ENDNODE 70 NODE mem-slot location 71 PROP Slot uint r 4 1 72 PROP Label string r 0 "DIMM0" 73 PROP SlotType string r 0 "memory-module" 74 ENDNODE 75 NODE mem-slot location 76 PROP Slot uint r 4 2 77 PROP Label string r 0 "DIMM1" 78 PROP SlotType string r 0 "memory-module" 79 ENDNODE 80 NODE mem-slot location 81 PROP Slot uint r 4 3 82 PROP Label string r 0 "DIMM2" 83 PROP SlotType string r 0 "memory-module" 84 ENDNODE 85 NODE mem-slot location 86 PROP Slot uint r 4 4 87 PROP Label string r 0 "DIMM3" 88 PROP SlotType string r 0 "memory-module" 89 ENDNODE 90 NODE mem-slot location 91 PROP Slot uint r 4 5 92 PROP Label string r 0 "DIMM4" 93 PROP SlotType string r 0 "memory-module" 94 ENDNODE 95 NODE mem-slot location 96 PROP Slot uint r 4 6 97 PROP Label string r 0 "DIMM5" 98 PROP SlotType string r 0 "memory-module" 99 ENDNODE 100 NODE mem-slot location 101 PROP Slot uint r 4 7 102 PROP Label string r 0 "DIMM6" 103 PROP SlotType string r 0 "memory-module" 104 ENDNODE 105 NODE mem-slot location 106 PROP Slot uint r 4 8 107 PROP Label string r 0 "DIMM7" 108 PROP SlotType string r 0 "memory-module" 109 ENDNODE 110ENDNODE 111 112/* 113 * create the fru modules for CPU 114 */ 115name:/frutree/chassis/MB/system-board/cpu-slot?Slot=0 116REFNODE cpu-module fru WITH _class:/PLATFORM_CLASS/cpu?ID=0 117 118name:/frutree/chassis/MB/system-board/cpu-slot?Slot=1 119REFNODE cpu-module fru WITH _class:/PLATFORM_CLASS/cpu?ID=1 120 121/* 122 * seeprom source for motherboard 123 */ 124name:/frutree/chassis/MB/system-board 125PROP FRUDataAvailable void r 126REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/motherboard-fru-prom@0,a2 127 128/* 129 * Set up memory module fru 130 */ 131name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM0 132REFNODE mem-module fru WITH /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,b6 133 134name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM1 135REFNODE mem-module fru WITH /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,b8 136 137name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM2 138REFNODE mem-module fru WITH /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,ba 139 140name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM3 141REFNODE mem-module fru WITH /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,bc 142 143name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM4 144REFNODE mem-module fru WITH /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,c6 145 146name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM5 147REFNODE mem-module fru WITH /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,c8 148 149name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM6 150REFNODE mem-module fru WITH /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,ca 151 152name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM7 153REFNODE mem-module fru WITH /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,cc 154 155/* 156 * Seeprom source for dimms 157 */ 158name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM0/mem-module 159PROP FRUDataAvailable void r 160REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,b6 161 162name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM1/mem-module 163PROP FRUDataAvailable void r 164REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,b8 165 166name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM2/mem-module 167PROP FRUDataAvailable void r 168REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,ba 169 170name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM3/mem-module 171PROP FRUDataAvailable void r 172REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,bc 173 174name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM4/mem-module 175PROP FRUDataAvailable void r 176REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,c6 177 178name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM5/mem-module 179PROP FRUDataAvailable void r 180REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,c8 181 182name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM6/mem-module 183PROP FRUDataAvailable void r 184REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,ca 185 186name:/frutree/chassis/MB/system-board/mem-slot?Label=DIMM7/mem-module 187PROP FRUDataAvailable void r 188REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/dimm-spd@0,cc 189 190/* 191 * _fru_parent memory modules 192 */ 193name:/platform/memory-controller?portid=0/memory-module-group?ID=0/memory-module?ID=0 194REFPROP _fru_parent /frutree/chassis/MB/system-board/mem-slot?Label=DIMM0/mem-module 195 196name:/platform/memory-controller?portid=0/memory-module-group?ID=0/memory-module?ID=1 197REFPROP _fru_parent /frutree/chassis/MB/system-board/mem-slot?Label=DIMM1/mem-module 198 199name:/platform/memory-controller?portid=0/memory-module-group?ID=1/memory-module?ID=0 200REFPROP _fru_parent /frutree/chassis/MB/system-board/mem-slot?Label=DIMM2/mem-module 201 202name:/platform/memory-controller?portid=0/memory-module-group?ID=1/memory-module?ID=1 203REFPROP _fru_parent /frutree/chassis/MB/system-board/mem-slot?Label=DIMM3/mem-module 204 205name:/platform/memory-controller?portid=1/memory-module-group?ID=0/memory-module?ID=0 206REFPROP _fru_parent /frutree/chassis/MB/system-board/mem-slot?Label=DIMM4/mem-module 207 208name:/platform/memory-controller?portid=1/memory-module-group?ID=0/memory-module?ID=1 209REFPROP _fru_parent /frutree/chassis/MB/system-board/mem-slot?Label=DIMM5/mem-module 210 211name:/platform/memory-controller?portid=1/memory-module-group?ID=1/memory-module?ID=0 212REFPROP _fru_parent /frutree/chassis/MB/system-board/mem-slot?Label=DIMM6/mem-module 213 214name:/platform/memory-controller?portid=1/memory-module-group?ID=1/memory-module?ID=1 215REFPROP _fru_parent /frutree/chassis/MB/system-board/mem-slot?Label=DIMM7/mem-module 216 217 218/* 219 * _fru_parent CPU, memory-controller devices 220 */ 221_class:/PLATFORM_CLASS/cpu?ID=0 222REFPROP _fru_parent /frutree/chassis/MB/system-board/cpu-slot?Slot=0/cpu-module 223 224name:/platform/memory-controller?portid=0 225REFPROP _fru_parent /frutree/chassis/MB/system-board/cpu-slot?Slot=0/cpu-module 226 227_class:/PLATFORM_CLASS/cpu?ID=1 228REFPROP _fru_parent /frutree/chassis/MB/system-board/cpu-slot?Slot=1/cpu-module 229 230name:/platform/memory-controller?portid=1 231REFPROP _fru_parent /frutree/chassis/MB/system-board/cpu-slot?Slot=1/cpu-module 232 233/* 234 * _fru_parent motherboard 235 */ 236_class:/PLATFORM_CLASS 237REFPROP _fru_parent /frutree/chassis/MB/system-board 238 239/* 240 * Populate audio slot 241 */ 242name:/frutree/chassis/MB/system-board/audio-slot 243REFNODE audio-card fru WITH name:/platform/pci@1e,600000/isa@7/i2c@0,320/audio-card-fru-prom 244 245name:/frutree/chassis/MB/system-board/audio-slot/audio-card 246PROP FRUDataAvailable void r 247REFPROP _seeprom_source /platform/pci@1e,600000/isa@7/i2c@0,320/audio-card-fru-prom 248 249/* 250 * Populate PCI slots 251 */ 252name:/frutree/chassis/MB/system-board/pci-slot?Label=PCI5 253REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci@1f,700000/picl?DeviceID=2 254 255name:/frutree/chassis/MB/system-board/pci-slot?Label=PCI4 256REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci@1e,600000/picl?DeviceID=2 257 258name:/frutree/chassis/MB/system-board/pci-slot?Label=PCI3 259REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci@1c,600000/picl?DeviceID=2 260 261name:/frutree/chassis/MB/system-board/pci-slot?Label=PCI2 262REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci@1d,700000/picl?DeviceID=2 263 264name:/frutree/chassis/MB/system-board/pci-slot?Label=PCI1 265REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci@1e,600000/picl?DeviceID=3 266 267name:/frutree/chassis/MB/system-board/pci-slot?Label=PCI0 268REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci@1e,600000/picl?DeviceID=4 269 270/* 271 * _fru_parent PCI devices 272 */ 273_class:/PLATFORM_CLASS/pci?UnitAddress=1f,700000/picl?DeviceID=2 274REFPROP _fru_parent /frutree/chassis/MB/system-board/pci-slot?Label=PCI5/pci-card 275 276_class:/PLATFORM_CLASS/pci?UnitAddress=1e,600000/picl?DeviceID=2 277REFPROP _fru_parent /frutree/chassis/MB/system-board/pci-slot?Label=PCI4/pci-card 278 279_class:/PLATFORM_CLASS/pci?UnitAddress=1c,600000/picl?DeviceID=2 280REFPROP _fru_parent /frutree/chassis/MB/system-board/pci-slot?Label=PCI3/pci-card 281 282_class:/PLATFORM_CLASS/pci?UnitAddress=1d,700000/picl?DeviceID=2 283REFPROP _fru_parent /frutree/chassis/MB/system-board/pci-slot?Label=PCI2/pci-card 284 285_class:/PLATFORM_CLASS/pci?UnitAddress=1e,600000/picl?DeviceID=3 286REFPROP _fru_parent /frutree/chassis/MB/system-board/pci-slot?Label=PCI1/pci-card 287 288_class:/PLATFORM_CLASS/pci?UnitAddress=1e,600000/picl?DeviceID=4 289REFPROP _fru_parent /frutree/chassis/MB/system-board/pci-slot?Label=PCI0/pci-card 290 291/* 292 * _fru_parent for sensors and fans 293 */ 294name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,58/cpu0-fan 295REFPROP _fru_parent /frutree/chassis/F1/cpu0-fan 296 297name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,58/cpu1-fan 298REFPROP _fru_parent /frutree/chassis/F2/cpu1-fan 299 300name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,5c/outtake-fan 301REFPROP _fru_parent /frutree/chassis/F3/outtake-fan 302 303name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,5c/intake-fan 304REFPROP _fru_parent /frutree/chassis/F0/intake-fan 305 306name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,58/cpu0 307REFPROP _fru_parent /frutree/chassis/MB/system-board/cpu-slot?Slot=0/cpu-module 308 309name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,58/cpu1 310REFPROP _fru_parent /frutree/chassis/MB/system-board/cpu-slot?Slot=1/cpu-module 311 312name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,58/int-amb0 313REFPROP _fru_parent /frutree/chassis/MB/system-board 314 315name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,5c/sys-out 316REFPROP _fru_parent /frutree/chassis/MB/system-board 317 318name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,5c/sys-in 319REFPROP _fru_parent /frutree/chassis/MB/system-board 320 321name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,5c/int-amb1 322REFPROP _fru_parent /frutree/chassis/MB/system-board 323 324/* 325 * Environmental devices associated with motherboard 326 */ 327name:/frutree/chassis/MB/system-board 328 TABLE Devices 329 ROW 330 PROP Class string r 0 "temperature-sensor" 331 REFPROP _temperature-sensor_ name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,58/int-amb0 332 ENDROW 333 ROW 334 PROP Class string r 0 "temperature-sensor" 335 REFPROP _temperature-sensor_ name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,5c/int-amb1 336 ENDROW 337 ROW 338 PROP Class string r 0 "temperature-sensor" 339 REFPROP _temperature-sensor_ name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,5c/sys-in 340 ENDROW 341 ROW 342 PROP Class string r 0 "temperature-sensor" 343 REFPROP _temperature-sensor_ name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,5c/sys-out 344 ENDROW 345 ENDTABLE 346 347/* 348 * Environmental devices of CPU 349 */ 350name:/frutree/chassis/MB/system-board/cpu-slot?Slot=0/cpu-module 351 TABLE Devices 352 ROW 353 PROP Class string r 0 "temperature-sensor" 354 REFPROP _temperature-sensor_ name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,58/cpu0 355 ENDROW 356 ROW 357 PROP Class string r 0 "cpu" 358 REFPROP _cpu_ _class:/PLATFORM_CLASS/cpu?ID=0 359 ENDROW 360 ENDTABLE 361 362 363name:/frutree/chassis/MB/system-board/cpu-slot?Slot=1/cpu-module 364 TABLE Devices 365 ROW 366 PROP Class string r 0 "temperature-sensor" 367 REFPROP _temperature-sensor_ name:/platform/pci@1e,600000/isa@7/i2c@0,320/hardware-monitor@0,58/cpu1 368 ENDROW 369 ROW 370 PROP Class string r 0 "cpu" 371 REFPROP _cpu_ _class:/PLATFORM_CLASS/cpu?ID=1 372 ENDROW 373 ENDTABLE 374 375/* 376 * Hard disk link between fru and device tree 377 */ 378name:/frutree/chassis/SCSI-BP/HDD0/disk 379 TABLE Device 380 ROW 381 PROP Class string r 0 "block" 382 REFPROP _block_ name:/platform/pci@1d,700000/scsi@4/sd@0,0 383 ENDROW 384 ENDTABLE 385name:/platform/pci@1d,700000/scsi@4/sd@0,0 386 REFPROP _fru_parent name:/frutree/chassis/SCSI-BP/HDD0/disk 387 388name:/platform/pci@1d,700000/scsi@4/sd@0,0/hard-disk0 389 REFPROP _fru_parent name:/frutree/chassis/SCSI-BP/HDD0/disk 390 391name:/frutree/chassis/SCSI-BP/HDD1/disk 392 TABLE Device 393 ROW 394 PROP Class string r 0 "block" 395 REFPROP _block_ name:/platform/pci@1d,700000/scsi@4/sd@1,0 396 ENDROW 397 ENDTABLE 398name:/platform/pci@1d,700000/scsi@4/sd@1,0 399 REFPROP _fru_parent name:/frutree/chassis/SCSI-BP/HDD1/disk 400 401name:/platform/pci@1d,700000/scsi@4/sd@1,0/hard-disk1 402 REFPROP _fru_parent name:/frutree/chassis/SCSI-BP/HDD1/disk 403 404name:/frutree/chassis/RM0/cdrom 405 TABLE Device 406 ROW 407 PROP Class string r 0 "cdrom" 408 REFPROP _cdrom_ name:/platform/pci@1e,600000/ide@d/sd@2,0 409 ENDROW 410 ENDTABLE 411name:/platform/pci@1e,600000/ide@d/sd@2,0 412 REFPROP _fru_parent name:/frutree/chassis/RM0/cdrom 413