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 * create the system board structure 29 */ 30 31NODE system-board fru 32 PROP Label string r 0 "system-board" 33 NODE pci-slot location 34 PROP Label string r 0 "PCI1" 35 ENDNODE 36 NODE pci-slot location 37 PROP Label string r 0 "PCI2" 38 ENDNODE 39 NODE pci-slot location 40 PROP Label string r 0 "PCI3" 41 ENDNODE 42 NODE cpu-slot location 43 PROP Slot uint r 4 0 44 PROP Label string r 0 "cpu0" 45 ENDNODE 46 NODE mem-slot location 47 PROP Slot uint r 4 0 48 PROP Label string r 0 "DIMM0" 49 ENDNODE 50 NODE mem-slot location 51 PROP Slot uint r 4 1 52 PROP Label string r 0 "DIMM1" 53 ENDNODE 54 NODE mem-slot location 55 PROP Slot uint r 4 2 56 PROP Label string r 0 "DIMM2" 57 ENDNODE 58 NODE mem-slot location 59 PROP Slot uint r 4 3 60 PROP Label string r 0 "DIMM3" 61 ENDNODE 62ENDNODE 63 64/* 65 * Create transfer size property 66 */ 67name:/platform/memory 68PROP TransferSize uint r 4 64 69 70/* 71 * set the SlotType for the cpu slots 72 */ 73name:/frutree/chassis/system-board/cpu-slot 74PROP SlotType string r 0 "cpu" 75 76/* 77 * Create fru node for memory module 78 */ 79name:/frutree/chassis/system-board/mem-slot?Label=DIMM0 80REFNODE mem-module fru WITH /platform/pci/pmu/i2c/dimm?UnitAddress=0,a0 81 82name:/frutree/chassis/system-board/mem-slot?Label=DIMM1 83REFNODE mem-module fru WITH /platform/pci/pmu/i2c/dimm?UnitAddress=0,a2 84 85name:/frutree/chassis/system-board/mem-slot?Label=DIMM2 86REFNODE mem-module fru WITH /platform/pci/pmu/i2c/dimm?UnitAddress=0,a4 87 88name:/frutree/chassis/system-board/mem-slot?Label=DIMM3 89REFNODE mem-module fru WITH /platform/pci/pmu/i2c/dimm?UnitAddress=0,a6 90 91/* 92 * For memory module FRUs that are present, create _seeprom_source 93 */ 94name:/frutree/chassis/system-board/mem-slot?Label=DIMM0/mem-module 95PROP FRUDataAvailable void r 96REFPROP _seeprom_source /platform/pci/pmu/i2c/dimm?UnitAddress=0,a0 97 98name:/frutree/chassis/system-board/mem-slot?Label=DIMM1/mem-module 99PROP FRUDataAvailable void r 100REFPROP _seeprom_source /platform/pci/pmu/i2c/dimm?UnitAddress=0,a2 101 102name:/frutree/chassis/system-board/mem-slot?Label=DIMM2/mem-module 103PROP FRUDataAvailable void r 104REFPROP _seeprom_source /platform/pci/pmu/i2c/dimm?UnitAddress=0,a4 105 106name:/frutree/chassis/system-board/mem-slot?Label=DIMM3/mem-module 107PROP FRUDataAvailable void r 108REFPROP _seeprom_source /platform/pci/pmu/i2c/dimm?UnitAddress=0,a6 109 110/* 111 * Set _fru_parent for memory seeprom devices 112 */ 113name:/platform/pci/pmu/i2c/dimm?UnitAddress=0,a0 114REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=DIMM0/mem-module 115 116name:/platform/pci/pmu/i2c/dimm?UnitAddress=0,a2 117REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=DIMM1/mem-module 118 119name:/platform/pci/pmu/i2c/dimm?UnitAddress=0,a4 120REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=DIMM2/mem-module 121 122name:/platform/pci/pmu/i2c/dimm?UnitAddress=0,a6 123REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=DIMM3/mem-module 124 125/* 126 * Populate PCI slots 127 */ 128name:/frutree/chassis/system-board/pci-slot?Label=PCI1 129REFNODE pci-card fru WITH _class:/upa/pci/pci/picl?DeviceID=2 130 131name:/frutree/chassis/system-board/pci-slot?Label=PCI2 132REFNODE pci-card fru WITH _class:/upa/pci/pci/picl?DeviceID=1 133 134name:/frutree/chassis/system-board/pci-slot?Label=PCI3 135REFNODE pci-card fru WITH _class:/upa/pci/pci/picl?DeviceID=0 136 137/* 138 * Create cpu-module fru 139 */ 140name:/frutree/chassis/system-board/cpu-slot?Slot=0 141REFNODE cpu-module fru WITH _class:/PLATFORM_CLASS/cpu?ID=0 142 143/* 144 * Set _fru_parent of /platform to system-board 145 */ 146name:/platform 147REFPROP _fru_parent /frutree/chassis/system-board 148 149/* 150 * Set _fru_parent of cpu to the cpu-module fru 151 */ 152_class:/PLATFORM_CLASS/cpu?ID=0 153REFPROP _fru_parent /frutree/chassis/system-board/cpu-slot?Slot=0/cpu-module 154 155/* 156 * Set _fru_parent for temperature-device 157 */ 158_class:/upa/pci/pmu/i2c/temperature-device 159REFPROP _fru_parent /frutree/chassis/system-board/cpu-slot?Slot=0/cpu-module 160 161/* 162 * _fru_parent memory modules 163 */ 164name:/platform/memory-controller/memory-module?ID=0 165REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=DIMM0/mem-module 166 167name:/platform/memory-controller/memory-module?ID=1 168REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=DIMM1/mem-module 169 170name:/platform/memory-controller/memory-module?ID=2 171REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=DIMM2/mem-module 172 173name:/platform/memory-controller/memory-module?ID=3 174REFPROP _fru_parent /frutree/chassis/system-board/mem-slot?Label=DIMM3/mem-module 175 176/* 177 * Set _fru_parent of pci to the pci-card fru 178 */ 179_class:/PLATFORM_CLASS/pci/pci/picl?DeviceID=2 180REFPROP _fru_parent /frutree/chassis/system-board/pci-slot?Label=PCI1/pci-card 181 182_class:/PLATFORM_CLASS/pci/pci/picl?DeviceID=1 183REFPROP _fru_parent /frutree/chassis/system-board/pci-slot?Label=PCI2/pci-card 184 185_class:/PLATFORM_CLASS/pci/pci/picl?DeviceID=0 186REFPROP _fru_parent /frutree/chassis/system-board/pci-slot?Label=PCI3/pci-card 187 188