ldoms.h revision 11833:3b3fe296598b
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 (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 22/* 23 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 */ 26 27#ifndef _LDOMS_H 28#define _LDOMS_H 29 30#ifdef __cplusplus 31extern "C" { 32#endif 33 34#include <sys/param.h> 35 36/* 37 * Global LDoms definitions. 38 */ 39 40/* 41 * LDOMS_MAX_DOMAINS refers to the maximum theoretical number of 42 * domains supported by Solaris based on per-domain resources that 43 * are allocated. The actual number of domains supported by a 44 * platform is defined by the firmware. 45 * 46 * When adjusting this value please ensure that resources such 47 * as the following are approriately scaled: 48 * - channel nexus interrupt cookies 49 * - domain services ports 50 * - NCPUS 51 * - etc... 52 */ 53#define LDOMS_MAX_DOMAINS 512 54 55/* maximum number of characters in the logical domain name */ 56#define LDOMS_MAX_NAME_LEN MAXNAMELEN 57 58/* 59 * Global flags that indicate what domaining features are 60 * available, if any. The value is set at boot time based on 61 * the value of the 'domaining-enabled' property in the MD 62 * and the global override flag 'force_domaining_disabled'. 63 * Updates to this variable after boot are not supported. 64 */ 65extern uint_t domaining_capabilities; 66 67/* values for domaining_capabilities word (above) */ 68#define DOMAINING_SUPPORTED 0x1 69#define DOMAINING_ENABLED 0x2 70 71#define domaining_supported() \ 72 ((domaining_capabilities & DOMAINING_SUPPORTED) != 0) 73#define domaining_enabled() \ 74 ((domaining_capabilities & DOMAINING_ENABLED) != 0) 75 76 77#ifdef __cplusplus 78} 79#endif 80 81#endif /* _LDOMS_H */ 82