xref: /illumos-gate/usr/src/uts/sun4u/opl/sys/opl_dimm.h (revision 0cc8ae86)
1*0cc8ae86Sav /*
2*0cc8ae86Sav  * CDDL HEADER START
3*0cc8ae86Sav  *
4*0cc8ae86Sav  * The contents of this file are subject to the terms of the
5*0cc8ae86Sav  * Common Development and Distribution License (the "License").
6*0cc8ae86Sav  * You may not use this file except in compliance with the License.
7*0cc8ae86Sav  *
8*0cc8ae86Sav  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*0cc8ae86Sav  * or http://www.opensolaris.org/os/licensing.
10*0cc8ae86Sav  * See the License for the specific language governing permissions
11*0cc8ae86Sav  * and limitations under the License.
12*0cc8ae86Sav  *
13*0cc8ae86Sav  * When distributing Covered Code, include this CDDL HEADER in each
14*0cc8ae86Sav  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*0cc8ae86Sav  * If applicable, add the following below this CDDL HEADER, with the
16*0cc8ae86Sav  * fields enclosed by brackets "[]" replaced with your own identifying
17*0cc8ae86Sav  * information: Portions Copyright [yyyy] [name of copyright owner]
18*0cc8ae86Sav  *
19*0cc8ae86Sav  * CDDL HEADER END
20*0cc8ae86Sav  */
21*0cc8ae86Sav /*
22*0cc8ae86Sav  * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
23*0cc8ae86Sav  * Use is subject to license terms.
24*0cc8ae86Sav  */
25*0cc8ae86Sav 
26*0cc8ae86Sav #ifndef	_OPL_DIMM_H
27*0cc8ae86Sav #define	_OPL_DIMM_H
28*0cc8ae86Sav 
29*0cc8ae86Sav #pragma ident	"%Z%%M%	%I%	%E% SMI"
30*0cc8ae86Sav 
31*0cc8ae86Sav 
32*0cc8ae86Sav #ifdef __cplusplus
33*0cc8ae86Sav extern "C" {
34*0cc8ae86Sav #endif
35*0cc8ae86Sav 
36*0cc8ae86Sav #define	OPL_DIMM_INFO_VERSION	1	/* Version number */
37*0cc8ae86Sav #define	OPL_MAX_DIMMS		32	/* Max dimms per board */
38*0cc8ae86Sav 
39*0cc8ae86Sav typedef struct board_dimm_info {
40*0cc8ae86Sav 	uint8_t	bd_version;		/* Version of this structure */
41*0cc8ae86Sav 	uint8_t bd_boardnum;		/* Board Number */
42*0cc8ae86Sav 	uint8_t bd_numdimms;		/* Number of dimms attached */
43*0cc8ae86Sav 	uint8_t	bd_dnamesz;		/* DIMM name size */
44*0cc8ae86Sav 	uint8_t	bd_serialsz;		/* Serial number size */
45*0cc8ae86Sav 	uint8_t	bd_partnumsz;		/* Partnumber size */
46*0cc8ae86Sav 	/*
47*0cc8ae86Sav 	 * DIMM info for each dimm(0 - bd_numdimms) is appended
48*0cc8ae86Sav 	 * to this structure in the form similar to below:
49*0cc8ae86Sav 	 *
50*0cc8ae86Sav 	 * char name[bd_dnamesz];
51*0cc8ae86Sav 	 * char serial[bd_serialsz];
52*0cc8ae86Sav 	 * char partnum[bd_partnumsz];
53*0cc8ae86Sav 	 */
54*0cc8ae86Sav } board_dimm_info_t;
55*0cc8ae86Sav 
56*0cc8ae86Sav #ifdef __cplusplus
57*0cc8ae86Sav }
58*0cc8ae86Sav #endif
59*0cc8ae86Sav 
60*0cc8ae86Sav #endif /* _OPL_DIMM_H */
61