iomp_drv.h revision 25cf1a301a396c38e8adf52c15f537b80d2483f7
/*
* 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
*/
/*
* All Rights Reserved, Copyright (c) FUJITSU LIMITED 2006
*/
#ifndef _IOMP_DRV_H
#define _IOMP_DRV_H
#pragma ident "%Z%%M% %I% %E% SMI"
#ifdef __cplusplus
extern "C" {
#endif
#define SCF_IOMP_NAME "mscf0"
#define SCF_REAL_NAME "/pseudo/scfd@200:mscf0"
#define SCF_LOGCAL_PATH "/dev/FJSVhwr/scfc"
#define SCF_USER_PATH "/dev/FJSVhwr/pwrctl"
#define SCF_MAX_STR 256
#define FIOMP_STAT_ONLINE 10
#define FIOMP_STAT_OFFLINE 11
#define FIOMP_STAT_UNCONFIGURED 12
#define FIOMP_STAT_RECOVER 20
#define FIOMP_STAT_BUSY -1
struct fiompdev_32 {
int api_level; /* API level = 0 */
int inst_no; /* instance number */
int num; /* number of devices */
int mpmode; /* multi pathing */
int autopath; /* automatic path change */
int block; /* able to block physical device */
int needsync; /* need synchronize path status */
};
struct fiomp_devinfo_32 {
int inst_no; /* instance number */
int path_num; /* number of paths */
int mpmode; /* multi pathing */
int autopath; /* automatic path change */
int block; /* able to block physical device */
int needsync; /* need synchronize path status */
};
struct fiomp_all_devinfo_32 {
int num; /* number of instances */
};
struct fiompprop_32 {
/* instance management node (/devices) */
/* instance management node (/dev) */
int num; /* number of paths */
};
struct fiompstatus_32 {
int pathnum; /* path number */
int status; /* FIOMP_STAT_xxxx */
int block_status; /* access block status */
};
struct fiomppath_32 {
int num; /* number of paths */
};
struct fiomp_all_stat_32 {
int num; /* number of paths */
};
struct fiompchg_32 {
int num; /* number of all paths */
};
struct fiompevent_32 {
int event; /* event type = FIOMP_EVT_xx */
int num; /* instance number(meta management) or */
/* number of all path(instance management) */
};
#ifdef __cplusplus
}
#endif
#endif /* _IOMP_DRV_H */