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 (c) 2001 by Sun Microsystems, Inc. 24 * All rights reserved. 25 * 26 * #ident "%Z%%M% %I% %E% SMI" 27 * 28 * This file creates the system board structure 29 */ 30 31NODE system-board fru 32 PROP Label string r 0 "system-board" 33 NODE upa-slot location 34 PROP Slot uint r 4 0 35 PROP Label string r 0 "J4501" 36 ENDNODE 37 NODE upa-slot location 38 PROP Slot uint r 4 1 39 PROP Label string r 0 "J3501" 40 ENDNODE 41 NODE pci-slot location 42 PROP Label string r 0 "J2601" 43 ENDNODE 44 NODE pci-slot location 45 PROP Label string r 0 "J2501" 46 ENDNODE 47 NODE pci-slot location 48 PROP Label string r 0 "J2401" 49 ENDNODE 50 NODE pci-slot location 51 PROP Label string r 0 "J2301" 52 ENDNODE 53 NODE cpu-slot location 54 PROP Label string r 0 "cpu0" 55 PROP Slot uint r 4 0 56 ENDNODE 57 NODE cpu-slot location 58 PROP Label string r 0 "cpu1" 59 PROP Slot uint r 4 1 60 ENDNODE 61 NODE mem-slot location 62 PROP Slot uint r 4 0 63 PROP Label string r 0 "J0100" 64 ENDNODE 65 NODE mem-slot location 66 PROP Slot uint r 4 1 67 PROP Label string r 0 "J0101" 68 ENDNODE 69 NODE mem-slot location 70 PROP Slot uint r 4 2 71 PROP Label string r 0 "J0202" 72 ENDNODE 73 NODE mem-slot location 74 PROP Slot uint r 4 3 75 PROP Label string r 0 "J0203" 76 ENDNODE 77 NODE mem-slot location 78 PROP Slot uint r 4 4 79 PROP Label string r 0 "J0304" 80 ENDNODE 81 NODE mem-slot location 82 PROP Slot uint r 4 5 83 PROP Label string r 0 "J0305" 84 ENDNODE 85 NODE mem-slot location 86 PROP Slot uint r 4 6 87 PROP Label string r 0 "J0406" 88 ENDNODE 89 NODE mem-slot location 90 PROP Slot uint r 4 7 91 PROP Label string r 0 "J0407" 92 ENDNODE 93ENDNODE 94 95/* 96 * create the fru modules for CPU and upa in the fru tree 97 */ 98name:/frutree/chassis/system-board/cpu-slot?Slot=0 99REFNODE cpu-module fru WITH _class:/PLATFORM_CLASS/cpu?ID=0 100 101name:/frutree/chassis/system-board/cpu-slot?Slot=1 102REFNODE cpu-module fru WITH _class:/PLATFORM_CLASS/cpu?ID=1 103 104/* 105 * set the SlotType for the cpu slots 106 */ 107name:/frutree/chassis/system-board/cpu-slot?Slot=0 108PROP SlotType string r 0 "cpu" 109 110name:/frutree/chassis/system-board/cpu-slot?Slot=0x1 111PROP SlotType string r 0 "cpu" 112 113/* 114 * seeprom source for motherboard 115 */ 116name:/frutree/chassis/system-board 117PROP FRUDataAvailable void r 118REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,30/motherboard-fru 119 120/* 121 * seeprom source for cpus 122 */ 123name:/frutree/chassis/system-board/cpu-slot?Slot=0/cpu-module 124PROP FRUDataAvailable void r 125REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,30/cpu-fru?UnitAddress=0,a0 126 127name:/frutree/chassis/system-board/cpu-slot?Slot=1/cpu-module 128PROP FRUDataAvailable void r 129REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,30/cpu-fru?UnitAddress=0,a2 130 131/* 132 * Set up upa card 133 */ 134name:/frutree/chassis/system-board/upa-slot?Label=J4501 135REFNODE upa-card fru WITH _class:/PLATFORM_CLASS/upa/display?upa-portid=0 136 137name:/frutree/chassis/system-board/upa-slot?Label=J3501 138REFNODE upa-card fru WITH _class:/PLATFORM_CLASS/upa/display?upa-portid=1 139 140/* 141 * Set up memory module fru 142 */ 143name:/frutree/chassis/system-board/mem-slot?Label=J0100 144REFNODE mem-module fru WITH /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a0 145 146name:/frutree/chassis/system-board/mem-slot?Label=J0101 147REFNODE mem-module fru WITH /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a2 148 149name:/frutree/chassis/system-board/mem-slot?Label=J0202 150REFNODE mem-module fru WITH /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a4 151 152name:/frutree/chassis/system-board/mem-slot?Label=J0203 153REFNODE mem-module fru WITH /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a6 154 155name:/frutree/chassis/system-board/mem-slot?Label=J0304 156REFNODE mem-module fru WITH /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a8 157 158name:/frutree/chassis/system-board/mem-slot?Label=J0305 159REFNODE mem-module fru WITH /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,aa 160 161name:/frutree/chassis/system-board/mem-slot?Label=J0406 162REFNODE mem-module fru WITH /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,ac 163 164name:/frutree/chassis/system-board/mem-slot?Label=J0407 165REFNODE mem-module fru WITH /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,ae 166 167/* 168 * seeprom source for memory fru 169 */ 170name:/frutree/chassis/system-board/mem-slot?Label=J0100/mem-module 171PROP FRUDataAvailable void r 172REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a0 173 174name:/frutree/chassis/system-board/mem-slot?Label=J0101/mem-module 175PROP FRUDataAvailable void r 176REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a2 177 178name:/frutree/chassis/system-board/mem-slot?Label=J0202/mem-module 179PROP FRUDataAvailable void r 180REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a4 181 182name:/frutree/chassis/system-board/mem-slot?Label=J0203/mem-module 183PROP FRUDataAvailable void r 184REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a6 185 186name:/frutree/chassis/system-board/mem-slot?Label=J0304/mem-module 187PROP FRUDataAvailable void r 188REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a8 189 190name:/frutree/chassis/system-board/mem-slot?Label=J0305/mem-module 191PROP FRUDataAvailable void r 192REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,aa 193 194name:/frutree/chassis/system-board/mem-slot?Label=J0406/mem-module 195PROP FRUDataAvailable void r 196REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,ac 197 198name:/frutree/chassis/system-board/mem-slot?Label=J0407/mem-module 199PROP FRUDataAvailable void r 200REFPROP _seeprom_source /platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,ae 201 202/* 203 * _fru_parent memory seeprom devices 204 */ 205name:/platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a0 206REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0100/mem-module 207 208name:/platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a2 209REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0101/mem-module 210 211name:/platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a4 212REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0202/mem-module 213 214name:/platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a6 215REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0203/mem-module 216 217name:/platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,a8 218REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0304/mem-module 219 220name:/platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,aa 221REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0305/mem-module 222 223name:/platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,ac 224REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0406/mem-module 225 226name:/platform/pci/ebus/i2c?UnitAddress=1,2e/dimm-fru?UnitAddress=1,ae 227REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0407/mem-module 228 229/* 230 * _fru_parent CPU, memory-controller devices 231 */ 232_class:/PLATFORM_CLASS/cpu?ID=0 233REFPROP _fru_parent /frutree/chassis/system-board/cpu-slot?Slot=0/cpu-module 234 235name:/platform/memory-controller?portid=0 236REFPROP _fru_parent /frutree/chassis/system-board/cpu-slot?Slot=0/cpu-module 237 238_class:/PLATFORM_CLASS/cpu?ID=1 239REFPROP _fru_parent /frutree/chassis/system-board/cpu-slot?Slot=1/cpu-module 240 241name:/platform/memory-controller?portid=0x1 242REFPROP _fru_parent /frutree/chassis/system-board/cpu-slot?Slot=0x1/cpu-module 243 244/* 245 * _fru_parent UPA devices 246 */ 247_class:/PLATFORM_CLASS/upa/display?upa-portid=0 248REFPROP _fru_parent /frutree/chassis/system-board/upa-slot?Slot=0/upa-card 249 250_class:/PLATFORM_CLASS/upa/display?upa-portid=1 251REFPROP _fru_parent /frutree/chassis/system-board/upa-slot?Slot=1/upa-card 252 253/* 254 * _fru_parent motherboard 255 */ 256_class:/PLATFORM_CLASS 257REFPROP _fru_parent /frutree/chassis/system-board 258 259/* 260 * _fru_parent temperature device 261 */ 262_class:/PLATFORM_CLASS/pci/ebus/i2c?UnitAddress=1,30/temperature-device?UnitAddress=0,30 263REFPROP _fru_parent /frutree/chassis/system-board/cpu-slot?Slot=0/cpu-module 264 265_class:/PLATFORM_CLASS/pci/ebus/i2c?UnitAddress=1,30/temperature-device?UnitAddress=0,98 266REFPROP _fru_parent /frutree/chassis/system-board/cpu-slot?Slot=1/cpu-module 267 268/* 269 * _fru_parent memory modules 270 */ 271name:/platform/memory-controller?portid=0/memory-module-group?ID=0/memory-module?ID=0 272REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0100/mem-module 273 274name:/platform/memory-controller?portid=0/memory-module-group?ID=0/memory-module?ID=1 275REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0202/mem-module 276 277name:/platform/memory-controller?portid=0/memory-module-group?ID=0/memory-module?ID=2 278REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0304/mem-module 279 280name:/platform/memory-controller?portid=0/memory-module-group?ID=0/memory-module?ID=3 281REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0406/mem-module 282 283name:/platform/memory-controller?portid=0/memory-module-group?ID=1/memory-module?ID=0 284REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0101/mem-module 285 286name:/platform/memory-controller?portid=0/memory-module-group?ID=1/memory-module?ID=1 287REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0203/mem-module 288 289name:/platform/memory-controller?portid=0/memory-module-group?ID=1/memory-module?ID=2 290REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0305/mem-module 291 292name:/platform/memory-controller?portid=0/memory-module-group?ID=1/memory-module?ID=3 293REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=J0407/mem-module 294 295/* 296 * Populate PCI slots 297 */ 298name:/frutree/chassis/system-board/pci-slot?Label=J2601 299REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci?UnitAddress=8,700000/picl?DeviceID=1 300 301name:/frutree/chassis/system-board/pci-slot?Label=J2501 302REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci?UnitAddress=8,700000/picl?DeviceID=2 303 304name:/frutree/chassis/system-board/pci-slot?Label=J2401 305REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci?UnitAddress=8,700000/picl?DeviceID=3 306 307name:/frutree/chassis/system-board/pci-slot?Label=J2301 308REFNODE pci-card fru WITH _class:/PLATFORM_CLASS/pci?UnitAddress=8,600000/picl?DeviceID=1 309 310/* 311 * _fru_parent PCI devices 312 */ 313_class:/PLATFORM_CLASS/pci?UnitAddress=8,700000/picl?DeviceID=1 314REFPROP _fru_parent frutree/chassis/system-board/pci-slot?Label=J2601/pci-card 315 316_class:/PLATFORM_CLASS/pci?UnitAddress=8,700000/picl?DeviceID=2 317REFPROP _fru_parent frutree/chassis/system-board/pci-slot?Label=J2501/pci-card 318 319_class:/PLATFORM_CLASS/pci?UnitAddress=8,700000/picl?DeviceID=3 320REFPROP _fru_parent frutree/chassis/system-board/pci-slot?Label=J2401/pci-card 321 322_class:/PLATFORM_CLASS/pci?UnitAddress=8,600000/picl?DeviceID=1 323REFPROP _fru_parent frutree/chassis/system-board/pci-slot?Label=J2301/pci-card 324 325