sesio(7I) Ioctl Requests sesio(7I)NAME
sesio - enclosure services device driver interface
SYNOPSIS
#include <sys/sesio.h>
DESCRIPTION
The ses device driver provides the following ioctls as a means to access SCSI enclosure services devices.
IOCTLS
The ses driver supports the following ioctls:
SES_IOCTL_GETSTATE This ioctl obtains enclosure state in the ses_ioctl structure.
SES_IOCTL_SETSTATE This ioctl is used to set parameters on the enclosure services device. The ses_ioctl structure is used to pass
information into the driver.
ERRORS
EIO The ses driver was unable to obtain data from the enclosure services device or the data transfer could not be completed.
ENOTTY The ses driver does not support the requested ioctl function.
ENXIO The enclosure services device does not exist.
EFAULT The user specified a bad data length.
STRUCTURES
The ses_ioctl structure has the following fields:
uint32_t; /* Size of buffer that follows */
uint8_t page_code: /* Page to be read/written */
uint8_t reserved[3]; /* Reserved; Set to 0 */
unit8t buffer[1]; /* Size arbitrary, user specifies */
EXAMPLES
Example 1: Using the SES_IOCTL_GETSTATE ioctl
The following example uses the SES_IOCTL_GETSTATE ioctl to recover 20 bytes of page 4 from a previously opened device.
char abuf[30];
struct ses_ioctl *sesp;
int status;
sesp = (ses_ioctl *)abuf;
sesp->size = 20;
sesp->page_code = 4;
status = ioctl(fd, SES_IOCTL_GETSTATE, abuf);
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Architecture |SPARC |
+-----------------------------+-----------------------------+
SEE ALSO ses(7D), ioctl(9E)SunOS 5.10 27 Mar 1997 sesio(7I)
Check Out this Related Man Page
ses(7D) Devices ses(7D)NAME
ses - SCSI enclosure services device driver
SYNOPSIS
ses@target,lun
DESCRIPTION
The ses device driver is an interface to SCSI enclosure services devices. These devices sense and monitor the physical conditions within
an enclosure as well as allow access to the status reporting and configuration features of the enclosure (such as indicator LEDs on the
enclosure.)
ioctl(9E) calls may be issued to ses to determine the state of the enclosure and to set parameters on the enclosure services device.
No ses driver properties are defined. Use the ses.conf file to configure the ses driver.
EXAMPLES
Example 1: ses.conf File Format
The following is an example of the ses.conf file format:
#
# Copyright (c) 1996, by Sun Microsystems, Inc.
# All rights reserved.
#
#
#ident "@(#)ses.conf 1.1 97/02/10 SMI"
#
name="ses" parent="sf"
target=15;
name="ses" parent="SUNW,pln" port=0 target=15;
name="ses" parent="SUNW,pln" port=1 target=15;
name="ses" parent="SUNW,pln" port=2 target=15;
name="ses" parent="SUNW,pln" port=3 target=15;
name="ses" parent="SUNW,pln" port=4 target=15;
name="ses" parent="SUNW,pln" port=5 target=15;
name="ses" class="scsi"
target=15 lun=0;
IOCTLS
The SES driver currently supports the SES, SAFTE and SEN enclosure service chipsets. SEN and SAFTE protocols are translated internally in
the driver into SES compliant data structures. This enables the SES driver to work seamlessly with different protocols and eliminates the
need to enhance user applications.
SESIOC_GETNOBJ
Returns an unsigned integer that represents the number of SES data structures in the enclosure services chip.
SESIOC_GETOBJMAP
Returns a size array containing ses_object elements communicated through SESIOC_GETNOBJ(). ses_object is defined in sesio.h.
SESIOC_INIT
Instructs the device to perform a self-diagnostic test. Currently SES & SEN devices always return success.
SESIOC_GETENCSTAT
Returns an unsigned character that represents status enclosure as defined by Table 25 in Section 7.1.2 of the SES specification NCITS
305-199x.
SESIOC_GETOBJSTAT
This ioctl is passed an ses_objarg containing the obj_id you want to set, then fills in the remaining fields according to element sta-
tus page of the SES specification.
SESIOC_SETOBJSTAT
Sets options in the control field. You set control field options by filling out all fields in ses_objarg. Field definitions are pre-
sented in Section 7.2.2 of the SES specification.
FILES
/kernel/drv/ses.conf Driver configuration file
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Architecture |SPARC |
+-----------------------------+-----------------------------+
SEE ALSO driver.conf(4), attributes(5), esp(7D), isp(7D), ioctl(9E)SunOS 5.10 9 Jun 2003 ses(7D)