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