/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2008 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _SBD_IOCTL_H
#define _SBD_IOCTL_H
#ifndef _ASM
#include <sys/processor.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _ASM
typedef enum {
typedef enum {
SBD_STAT_NONE = 0,
} sbd_state_t;
typedef enum {
SBD_COND_UNKNOWN = 0,
} sbd_cond_t;
typedef int sbd_busy_t;
typedef struct {
int c_unit;
typedef struct {
typedef struct {
int cs_isbootproc;
int cs_speed;
int cs_ecache;
typedef struct {
int ms_interleave;
int ms_cage_enabled;
typedef struct {
int is_referenced;
int is_unsafe_count;
/* This constant must be the max of the max cores on all platforms */
typedef struct {
int ps_ncores;
int ps_speed;
int ps_ecache;
typedef union {
typedef struct {
int s_board;
int s_nstat;
} sbd_stat_t;
typedef struct {
int c_len;
} sbd_cm_cmd_t;
typedef struct {
int g_ncm;
typedef struct {
int s_nbytes;
typedef union {
} sbd_cmd_t;
typedef struct {
int e_code;
} sbd_error_t;
typedef struct {
typedef struct {
int t_base;
int t_bnd;
char **t_text;
} sbd_etab_t;
#if defined(_SYSCALL32)
typedef struct {
typedef struct {
typedef struct {
typedef struct {
typedef struct {
typedef struct {
typedef union {
typedef struct {
} sbd_stat32_t;
typedef struct {
typedef struct {
typedef struct {
typedef struct {
typedef union {
} sbd_cmd32_t;
typedef struct {
typedef struct {
char **t_text;
} sbd_etab32_t;
#endif /* _SYSCALL32 */
#endif /* _ASM */
/* Common error codes */
/* Operator confirmation for quiesce is required */
/* Memory is interleaved across boards */
/* Can't config memory if not all cpus are online */
/* Starcat error codes */
/* Cannot proceed; Board is configured or busy */
/* drmach parameter is not a valid ID */
/* drmach parameter is inappropriate for operation */
/* Mailbox framework failure: outgoing */
/* Mailbox framework failure: incoming */
/* Wait: All SC test resources are in use */
/* Unknown error type received from SC */
/* Test completed with unknown status */
/* Unknown test result returned by SC */
/* SMS hpost reported error, see POST log for details */
/* Cannot unconfigure I/O board: tunnel switch failed */
/* No CPU available for I/O cage test. */
/* SMS reported recoverable error: check SMS status and Retry */
/* SMS reported unrecoverable error: Board is Unusable */
/* Cannot unconfigure I/O board: network switch failed */
/* Starfire error codes */
/* Cannot proceed; Board is configured or busy */
/* Cannot disconnect CPU; SIGB is currently assigned */
/* Must specify a CPU on the given board */
/* Memory configured with inter-board interleaving */
/* drmach parameter is inappropriate for operation */
/* Daktari error codes */
/* DR is not supported on this board type */
/* Serengeti error codes */
/* Serengeti SC return codes */
/* OPL error codes */
/* Cannot proceed; Board is configured or busy */
/* drmach parameter is inappropriate for operation */
/* Cannot add SPARC64-VI to domain booted with all SPARC64-VII CPUs */
#ifdef __cplusplus
}
#endif
#endif /* _SBD_IOCTL_H */