/*
* 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
*/
/*
*/
#ifndef _PORTIF_H
#define _PORTIF_H
/*
* Definitions for stmf local ports and port providers.
*/
#include <sys/stmf_defines.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef struct stmf_dbuf_store {
void *ds_stmf_private;
void *ds_port_private;
void (*ds_free_data_buf)(
void (*ds_teardown_dbuf)(
typedef struct stmf_local_port {
void *lport_stmf_private;
void *lport_port_private;
char *lport_alias;
/* lport ops */
void (*lport_event_handler)(
typedef struct stmf_remote_port {
typedef struct stmf_dflt_scsi_tptid {
#if defined(_BIT_FIELDS_LTOH)
#elif defined(_BIT_FIELDS_HTOL)
resbits : 2,
protocol_id : 4;
#else
#endif /* _BIT_FIELDS_LTOH */
char ident[1];
/*
* abort cmd
*/
typedef struct stmf_port_provider {
void *pp_stmf_private;
void *pp_provider_private;
int pp_instance;
char *pp_name;
typedef struct stmf_scsi_session {
void *ss_stmf_private;
void *ss_port_private;
char *ss_rport_alias;
#ifdef __cplusplus
}
#endif
#endif /* _PORTIF_H */