qlt_ioctl.h revision fcf3ce441efd61da9bb2884968af01cb7c1452cc
/*
* 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 _QLT_IOCTL_H
#define _QLT_IOCTL_H
#ifdef __cplusplus
extern "C" {
#endif
/*
* stmf error codes from qlt_ioctl
*/
typedef enum qlt_ioctl_err {
QLTIO_NO_DUMP = 1,
#define QLTIO_ERR_STRINGS { \
"No additional information", \
"No firmware dump available", \
"Firmware dump in progress", \
"Port is not online", \
"Firmware size is invalid", \
"Firmware type does not match this chip", \
"Firmware dump already fetched by user", \
"Mailboxes are not yet initialized", \
"Mailboxes are not busy", \
"Mailbox command timed out", \
"Mailbox command got aborted", \
"" \
}
typedef struct qlt_fw_info {
fwi_rsvd:29;
typedef struct qlt_ioctl_mbox {
/*
* QLT IOCTLs
*/
#define QLT_IOCTL_FETCH_FWDUMP 0x9001
#define QLT_IOCTL_TRIGGER_FWDUMP 0x9002
#define QLT_IOCTL_UPLOAD_FW 0x9003
#define QLT_IOCTL_CLEAR_FW 0x9004
#define QLT_IOCTL_GET_FW_INFO 0x9005
#define QLT_IOCTL_STAY_OFFLINE 0x9006
#define QLT_IOCTL_MBOX 0x9007
#ifdef __cplusplus
}
#endif
#endif /* _QLT_IOCTL_H */