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 2005 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 * 26 * #ident "%Z%%M% %I% %E% SMI" 27 * 28 * supported prop types: void, int, uint, float, string 29 * supported prop access_modes: r, w, rw 30 * 31 * VERSION <version_number> -- supported version number is 1.0 32 * 33 * name:<namepath> -- gives the anchor node 34 * where <namepath> is <nodename>[@<bus-addr>][?<prop>=<val>] 35 * 36 * _class:<classpath> -- gives the anchor node 37 * where <classpath> is <classname>[@<bus-addr>][?<prop>=<val>] 38 * 39 * NODE <name> <class> 40 * {describes a subtree} 41 * ENDNODE 42 * 43 * PROP <name> <type> <access_mode> [<size> <value>] -- per property 44 * 45 * REFPROP <name> <dstnode> 46 * 47 * REFNODE <name> <class> with <destnode> -- Associates a new node 48 * with <destnode> if exists 49 * where 50 * <name> is the nodename 51 * <class> is the picl class. 52 * <destnode> is name:<namepath> or _class:<classpath> 53 * 54 * If "name:" or "_class:" is not specified in the <path>, 55 * the default is "name:" 56 * 57 */ 58 59/* 60 * define a macro to force a #ident line into the output stream 61 * otherwise cpp removes it. Use #ifndef because of #included definitions. 62 */ 63#ifndef id 64#define id(s) #ident s 65#endif 66id("%Z%%M% %I% %E% SMI") 67 68/* 69 * There are a lot of nodes below the rmclomv node, define a shortname 70 */ 71#define RMCLOMV /platform/pci@1e,600000/isa@7/rmc-comm@0,3e8/SUNW,rmclomv 72 73VERSION 1.1 74VERBOSE 1 75NODE frutree picl 76 NODE chassis fru 77 /* 78 * SunMC physical view view_points for this platform 79 * This will get moved to a separate SunMC physical view plugin later. 80 */ 81 PROP ViewPoints string r 0 "front rear side" 82 NODE MB location 83 PROP SlotType string r 0 "system-board" 84 PROP Label string r 0 "MB" 85 ENDNODE 86 NODE F0 location 87 PROP SlotType string r 0 "fan-unit" 88 PROP Label string r 0 "F0" 89 ENDNODE 90 NODE F1 location 91 PROP SlotType string r 0 "fan-unit" 92 PROP Label string r 0 "F1" 93 ENDNODE 94 NODE F2 location 95 PROP SlotType string r 0 "fan-unit" 96 PROP Label string r 0 "F2" 97 ENDNODE 98 NODE PS0 location 99 PROP SlotType string r 0 "power-supply" 100 PROP Label string r 0 "PS0" 101 ENDNODE 102 NODE HDD0 location 103 PROP SlotType string r 0 "disk-slot" 104 PROP Label string r 0 "HDD0" 105 ENDNODE 106 NODE HDD1 location 107 PROP SlotType string r 0 "disk-slot" 108 PROP Label string r 0 "HDD1" 109 ENDNODE 110 NODE RMD0 location 111 PROP SlotType string r 0 "cdrom-slot" 112 PROP Label string r 0 "RMD0" 113 ENDNODE 114 NODE IFB location 115 PROP Label string r 0 "IFB" 116 NODE ifb fru 117 ENDNODE 118 ENDNODE 119 NODE BB location 120 PROP Label string r 0 "BB" 121 NODE bb fru 122 ENDNODE 123 ENDNODE 124 NODE HCM location 125 PROP Label string r 0 "HCM" 126 ENDNODE 127 NODE SCC location 128 PROP Label string r 0 "SCC" 129 NODE scc fru 130 ENDNODE 131 ENDNODE 132 NODE PCI0 location 133 PROP SlotType string r 0 "pci" 134 PROP Label string r 0 "PCI0" 135 ENDNODE 136 NODE USB0 location 137 PROP Label string r 0 "USB0" 138 ENDNODE 139 NODE USB1 location 140 PROP Label string r 0 "USB1" 141 ENDNODE 142 143 /* 144 * nodes for extra hardware present in 1u version on ENxS 145 */ 146 REFNODE F3 location WITH /platform?PlatformName=SUNW,Sun-Fire-V210 147 REFNODE F3 location WITH /platform?PlatformName=SUNW,Netra-240 148 REFNODE F3 location WITH /platform?PlatformName=SUNW,Netra-210 149 REFNODE F4 location WITH /platform?PlatformName=SUNW,Netra-210 150 REFNODE F5 location WITH /platform?PlatformName=SUNW,Netra-210 151 REFNODE ALARM location WITH /platform?PlatformName=SUNW,Netra-210 152 REFNODE DVDIF location WITH /platform?PlatformName=SUNW,Netra-210 153 REFNODE SASPCI location WITH /platform?PlatformName=SUNW,Netra-210 154 REFNODE SYSCTRL location WITH /platform?PlatformName=SUNW,Netra-210 155 156 /* 157 * nodes for extra hardware present in 2u version on ENxS 158 */ 159 REFNODE HDD2 location WITH /platform?PlatformName=SUNW,Sun-Fire-V240 160 REFNODE HDD3 location WITH /platform?PlatformName=SUNW,Sun-Fire-V240 161 REFNODE PS1 location WITH /platform?PlatformName=SUNW,Sun-Fire-V240 162 REFNODE PS1 location WITH /platform?PlatformName=SUNW,Netra-240 163 REFNODE PRB location WITH /platform?PlatformName=SUNW,Sun-Fire-V240 164 REFNODE PRB location WITH /platform?PlatformName=SUNW,Netra-240 165 REFNODE PDB location WITH /platform?PlatformName=SUNW,Sun-Fire-V240 166 REFNODE PDB location WITH /platform?PlatformName=SUNW,Netra-240 167 REFNODE PCI1 location WITH /platform?PlatformName=SUNW,Sun-Fire-V240 168 REFNODE PCI1 location WITH /platform?PlatformName=SUNW,Netra-240 169 REFNODE PCI2 location WITH /platform?PlatformName=SUNW,Sun-Fire-V240 170 REFNODE PCI2 location WITH /platform?PlatformName=SUNW,Netra-240 171 REFNODE SYSCTRL location WITH /platform?PlatformName=SUNW,Sun-Fire-V240 172 REFNODE SYSCTRL location WITH /platform?PlatformName=SUNW,Netra-240 173 REFNODE ALARM location WITH /platform?PlatformName=SUNW,Netra-240 174 ENDNODE 175ENDNODE 176 177/* 178 * add power-supply nodes if their fru-proms are visible 179 */ 180name:/frutree/chassis/PS0 181 REFNODE power-supply fru WITH name:/platform/pci@1e,600000/isa@7/i2c@0,320/power-supply-fru-prom@0,b0 182name:/frutree/chassis/PS1 183 REFNODE power-supply fru WITH name:/platform/pci@1e,600000/isa@7/i2c@0,320/power-supply-fru-prom@0,a4 184 185/* 186 * add properties to 2u locations 187 */ 188 189/* extra disks */ 190name:/frutree/chassis/HDD2 191 PROP SlotType string r 0 "disk-slot" 192 PROP Label string r 0 "HDD2" 193name:/frutree/chassis/HDD3 194 PROP SlotType string r 0 "disk-slot" 195 PROP Label string r 0 "HDD3" 196 197/* add disk fru nodes for disks which are present */ 198name:/frutree/chassis/HDD0 199 REFNODE disk fru WITH name:/platform/pci@1c,600000/scsi@2/sd@0,0 200name:/frutree/chassis/HDD1 201 REFNODE disk fru WITH name:/platform/pci@1c,600000/scsi@2/sd@1,0 202name:/frutree/chassis/HDD2 203 REFNODE disk fru WITH name:/platform/pci@1c,600000/scsi@2/sd@2,0 204name:/frutree/chassis/HDD3 205 REFNODE disk fru WITH name:/platform/pci@1c,600000/scsi@2/sd@3,0 206 207/* add disk fru nodes for SAS disks which are present */ 208name:/frutree/chassis/HDD0 209 REFNODE disk fru WITH name:/platform/pci@1c,600000/LSILogic,sas@1/sd@0,0 210name:/frutree/chassis/HDD1 211 REFNODE disk fru WITH name:/platform/pci@1c,600000/LSILogic,sas@1/sd@1,0 212 213/* add cdrom fru nodes for disks which are present */ 214name:/frutree/chassis/RMD0 215 REFNODE cdrom fru WITH name:/platform/pci@1e,600000/ide@d/sd@0,0 216 217/* populate fan locations with fans which are present */ 218name:/frutree/chassis/F0 219 REFNODE fan-unit fru WITH name:RMCLOMV/f0_rs 220name:/frutree/chassis/F1 221 REFNODE fan-unit fru WITH name:RMCLOMV/f1_rs 222name:/frutree/chassis/F2 223 REFNODE fan-unit fru WITH name:RMCLOMV/f2_rs 224 225/* extra chassis fan */ 226name:/frutree/chassis/F3 227 PROP SlotType string r 0 "fan-unit" 228 PROP Label string r 0 "F3" 229 REFNODE fan-unit fru WITH name:RMCLOMV/f3_rs 230 231name:/frutree/chassis/F4 232 PROP SlotType string r 0 "fan-unit" 233 PROP Label string r 0 "F4" 234 REFNODE fan-unit fru WITH name:RMCLOMV/f4_rs 235 236name:/frutree/chassis/F5 237 PROP SlotType string r 0 "fan-unit" 238 PROP Label string r 0 "F5" 239 REFNODE fan-unit fru WITH name:RMCLOMV/f5_rs 240 241/* extra power supply */ 242name:/frutree/chassis/PS1 243 PROP SlotType string r 0 "power-supply" 244 PROP Label string r 0 "PS1" 245 246/* PCI riser board */ 247name:/frutree/chassis/PRB 248 PROP Label string r 0 "PRB" 249 NODE prb fru 250 ENDNODE 251 252/* Power distribution board */ 253name:/frutree/chassis/PDB 254 PROP Label string r 0 "PDB" 255 NODE pdb fru 256 ENDNODE 257 258/* Extra PCI slots */ 259name:/frutree/chassis/PCI1 260 PROP SlotType string r 0 "pci" 261 PROP Label string r 0 "PCI1" 262 263name:/frutree/chassis/PCI2 264 PROP SlotType string r 0 "pci" 265 PROP Label string r 0 "PCI2" 266 267/* keyswitch */ 268name:/frutree/chassis/SYSCTRL 269 PROP Label string r 0 "SYSCTRL" 270 271/* an anomoly, the chassis fruid prom */ 272name:/frutree/chassis/IFB/ifb 273 PROP FRUDataAvailable void r 274 REFPROP _seeprom_source name:/platform/pci@1e,600000/isa@7/i2c@0,320/chassis-fru-prom@0,a8 275 276name:/platform/pci@1e,600000/isa@7/i2c@0,320/chassis-fru-prom@0,a8 277 REFPROP _fru_parent /frutree/chassis/IFB/ifb 278 279/* 280 * high speed cryptographic module 281 */ 282name:/frutree/chassis/HCM 283 REFNODE hcm fru WITH name:/platform/pci@1e,600000/isa@7/i2c@0,320/hcm-card-fru-prom@0,d6 284 285name:/frutree/chassis/HCM/hcm 286 PROP FRUDataAvailable void r 287 REFPROP _seeprom_source name:/platform/pci@1e,600000/isa@7/i2c@0,320/hcm-card-fru-prom@0,d6 288 289name:/platform/pci@1e,600000/isa@7/i2c@0,320/hcm-card-fru-prom@0,d6 290 REFPROP _fru_parent /frutree/chassis/HCM/hcm 291 292name:/platform/pci@1c,600000/cpu?DeviceID=1 293 REFPROP _fru_parent /frutree/chassis/HCM/hcm 294 295name:/frutree/chassis/ALARM 296 PROP Label string r 0 "ALARM" 297 REFNODE alarm fru WITH name:/platform/pci@1e,600000/isa@7/i2c@0,320/alarm-fru-prom@0,ac 298 299name:/frutree/chassis/ALARM/alarm 300 PROP FRUDataAvailable void r 301 REFPROP _seeprom_source name:/platform/pci@1e,600000/isa@7/i2c@0,320/alarm-fru-prom@0,ac 302 303name:/platform/pci@1e,600000/isa@7/i2c@0,320/alarm-fru-prom@0,ac 304 REFPROP _fru_parent /frutree/chassis/ALARM/alarm 305 306/* 307 * dvd if 308 */ 309name:/frutree/chassis/DVDIF 310 PROP Label string r 0 "DVDIF" 311 REFNODE dvdif fru WITH name:/platform/pci@1e,600000/isa@7/i2c@0,320/dvd-if-fru-prom@0,aa 312 313name:/frutree/chassis/DVDIF/dvdif 314 PROP FRUDataAvailable void r 315 REFPROP _seeprom_source name:/platform/pci@1e,600000/isa@7/i2c@0,320/dvd-if-fru-prom@0,aa 316 317name:/platform/pci@1e,600000/isa@7/i2c@0,320/dvd-if-fru-prom@0,aa 318 REFPROP _fru_parent /frutree/chassis/DVDIF/dvdif 319 320/* 321 * sas if 322 */ 323name:/frutree/chassis/SASIF 324 PROP Label string r 0 "SASIF" 325 REFNODE sasif fru WITH name:/platform/pci@1e,600000/isa@7/i2c@0,320/sas-if-fru-prom@0,a8 326 327name:/frutree/chassis/SASIF/sasif 328 PROP FRUDataAvailable void r 329 REFPROP _seeprom_source name:/platform/pci@1e,600000/isa@7/i2c@0,320/sas-if-fru-prom@0,a8 330 331name:/platform/pci@1e,600000/isa@7/i2c@0,320/sas-if-fru-prom@0,a8 332 REFPROP _fru_parent /frutree/chassis/SASIF/sasif 333 334/* 335 * sas pci 336 */ 337name:/frutree/chassis/SASPCI 338 PROP Label string r 0 "SASPCI" 339 REFNODE saspci fru WITH name:/platform/pci@1e,600000/isa@7/i2c@0,320/sas-pci-fru-prom@0,d8 340 341name:/frutree/chassis/SASPCI/saspci 342 PROP FRUDataAvailable void r 343 REFPROP _seeprom_source name:/platform/pci@1e,600000/isa@7/i2c@0,320/sas-pci-fru-prom@0,d8 344 345name:/platform/pci@1e,600000/isa@7/i2c@0,320/sas-pci-fru-prom@0,d8 346 REFPROP _fru_parent /frutree/chassis/SASPCI/saspci 347 348 349name:/frutree/chassis/PCI0 350 REFNODE pci-card fru WITH _class:/jbus/pci@1d,700000/picl?DeviceID=1 351name:/frutree/chassis/PCI1 352 REFNODE pci-card fru WITH _class:/jbus/pci@1e,600000/picl?DeviceID=3 353name:/frutree/chassis/PCI2 354 REFNODE pci-card fru WITH _class:/jbus/pci@1e,600000/picl?DeviceID=2 355 356#include <fru_SC_data.info> 357#include "system-board.info" 358#include <SB-tables.info> 359 360_class:/jbus/pci@1d,700000/picl@1 361 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 362_class:/jbus/pci@1d,700000/picl@1,0 363 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 364_class:/jbus/pci@1d,700000/picl@1,1 365 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 366_class:/jbus/pci@1d,700000/picl@1,2 367 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 368_class:/jbus/pci@1d,700000/picl@1,3 369 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 370_class:/jbus/pci@1d,700000/picl@1,4 371 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 372_class:/jbus/pci@1d,700000/picl@1,5 373 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 374_class:/jbus/pci@1d,700000/picl@1,6 375 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 376_class:/jbus/pci@1d,700000/picl@1,7 377 REFPROP _fru_parent name:/frutree/chassis/PCI0/pci-card 378_class:/jbus/pci@1e,600000/picl@3 379 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 380_class:/jbus/pci@1e,600000/picl@3,0 381 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 382_class:/jbus/pci@1e,600000/picl@3,1 383 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 384_class:/jbus/pci@1e,600000/picl@3,2 385 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 386_class:/jbus/pci@1e,600000/picl@3,3 387 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 388_class:/jbus/pci@1e,600000/picl@3,4 389 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 390_class:/jbus/pci@1e,600000/picl@3,5 391 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 392_class:/jbus/pci@1e,600000/picl@3,6 393 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 394_class:/jbus/pci@1e,600000/picl@3,7 395 REFPROP _fru_parent name:/frutree/chassis/PCI1/pci-card 396_class:/jbus/pci@1e,600000/picl@2 397 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 398_class:/jbus/pci@1e,600000/picl@2,0 399 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 400_class:/jbus/pci@1e,600000/picl@2,1 401 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 402_class:/jbus/pci@1e,600000/picl@2,2 403 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 404_class:/jbus/pci@1e,600000/picl@2,3 405 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 406_class:/jbus/pci@1e,600000/picl@2,4 407 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 408_class:/jbus/pci@1e,600000/picl@2,5 409 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 410_class:/jbus/pci@1e,600000/picl@2,6 411 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 412_class:/jbus/pci@1e,600000/picl@2,7 413 REFPROP _fru_parent name:/frutree/chassis/PCI2/pci-card 414