xref: /titanic_50/usr/src/uts/sun4v/sys/ldoms.h (revision 22e19ac1a2d512ea8d74e4f3662c08787d0716b1)
11ae08745Sheppo /*
21ae08745Sheppo  * CDDL HEADER START
31ae08745Sheppo  *
41ae08745Sheppo  * The contents of this file are subject to the terms of the
51ae08745Sheppo  * Common Development and Distribution License (the "License").
61ae08745Sheppo  * You may not use this file except in compliance with the License.
71ae08745Sheppo  *
81ae08745Sheppo  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
91ae08745Sheppo  * or http://www.opensolaris.org/os/licensing.
101ae08745Sheppo  * See the License for the specific language governing permissions
111ae08745Sheppo  * and limitations under the License.
121ae08745Sheppo  *
131ae08745Sheppo  * When distributing Covered Code, include this CDDL HEADER in each
141ae08745Sheppo  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
151ae08745Sheppo  * If applicable, add the following below this CDDL HEADER, with the
161ae08745Sheppo  * fields enclosed by brackets "[]" replaced with your own identifying
171ae08745Sheppo  * information: Portions Copyright [yyyy] [name of copyright owner]
181ae08745Sheppo  *
191ae08745Sheppo  * CDDL HEADER END
201ae08745Sheppo  */
211ae08745Sheppo 
221ae08745Sheppo /*
23*22e19ac1Sjm22469  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
241ae08745Sheppo  * Use is subject to license terms.
251ae08745Sheppo  */
261ae08745Sheppo 
271ae08745Sheppo #ifndef	_LDOMS_H
281ae08745Sheppo #define	_LDOMS_H
291ae08745Sheppo 
301ae08745Sheppo #pragma ident	"%Z%%M%	%I%	%E% SMI"
311ae08745Sheppo 
321ae08745Sheppo #ifdef	__cplusplus
331ae08745Sheppo extern "C" {
341ae08745Sheppo #endif
351ae08745Sheppo 
361ae08745Sheppo #include <sys/param.h>	/* for MAXHOSTNAMELEN */
371ae08745Sheppo 
381ae08745Sheppo /*
391ae08745Sheppo  * Global LDoms definitions.
401ae08745Sheppo  */
411ae08745Sheppo 
421ae08745Sheppo /* Maximum number of logical domains supported */
431ae08745Sheppo #define	LDOMS_MAX_DOMAINS	32
441ae08745Sheppo 
451ae08745Sheppo /* maximum number of characters in the logical domain name */
461ae08745Sheppo #define	LDOMS_MAX_NAME_LEN	MAXHOSTNAMELEN
471ae08745Sheppo 
481ae08745Sheppo /*
494bac2208Snarayan  * Global flags that indicate what domaining features are
504bac2208Snarayan  * available, if any. The value is set at boot time based on
514bac2208Snarayan  * the value of the 'domaining-enabled' property in the MD
524bac2208Snarayan  * and the global override flag 'force_domaining_disabled'.
534bac2208Snarayan  * Updates to this variable after boot are not supported.
541ae08745Sheppo  */
554bac2208Snarayan extern uint_t domaining_capabilities;
564bac2208Snarayan 
574bac2208Snarayan /* values for domaining_capabilities word (above) */
584bac2208Snarayan #define	DOMAINING_SUPPORTED	0x1
594bac2208Snarayan #define	DOMAINING_ENABLED	0x2
601ae08745Sheppo 
61*22e19ac1Sjm22469 #define	domaining_supported()						\
62*22e19ac1Sjm22469 	((domaining_capabilities & DOMAINING_SUPPORTED) != 0)
63*22e19ac1Sjm22469 #define	domaining_enabled()						\
64*22e19ac1Sjm22469 	((domaining_capabilities & DOMAINING_ENABLED) != 0)
65*22e19ac1Sjm22469 
661ae08745Sheppo 
671ae08745Sheppo #ifdef	__cplusplus
681ae08745Sheppo }
691ae08745Sheppo #endif
701ae08745Sheppo 
711ae08745Sheppo #endif	/* _LDOMS_H */
72