Command Section

SES(4)                 FreeBSD Kernel Interfaces Manual                 SES(4)

NAME
     ses - SCSI Environmental Services driver

SYNOPSIS
     device ses

DESCRIPTION
     The ses driver provides support for all SCSI devices of the environmental
     services class that are attached to the system through a supported SCSI
     Host Adapter, as well as emulated support for SAF-TE (SCSI Accessible
     Fault Tolerant Enclosures).  The environmental services class generally
     are enclosure devices that provide environmental information such as
     number of power supplies (and state), temperature, device slots, and so
     on.

     A SCSI Host adapter must also be separately configured into the system
     before a SCSI Environmental Services device can be configured.

KERNEL CONFIGURATION
     It is only necessary to explicitly configure one ses device; data
     structures are dynamically allocated as devices are found on the SCSI
     bus.

     A separate option, SES_ENABLE_PASSTHROUGH, may be specified to allow the
     ses driver to perform functions on devices of other classes that claim to
     also support ses functionality.

IOCTLS
     The following ioctl(2) calls apply to ses devices.  They are defined in
     the header file <cam/scsi/scsi_enc.h> (q.v.).

     ENCIOC_GETNELM     Used to find out how many ses elements are driven by
                        this particular device instance.

     ENCIOC_GETELMMAP   Read, from the kernel, an array of SES elements which
                        contains the element identifier, which subenclosure it
                        is in, and the ses type of the element.

     ENCIOC_GETENCSTAT  Get the overall enclosure status.

     ENCIOC_SETENCSTAT  Set the overall enclosure status.

     ENCIOC_GETELMSTAT  Get the status of a particular element.

     ENCIOC_SETELMSTAT  Set the status of a particular element.

     ENCIOC_GETTEXT     Get the associated help text for an element (not yet
                        implemented).  ses devices often have descriptive text
                        for an element which can tell you things like location
                        (e.g., "left power supply").

     ENCIOC_INIT        Initialize the enclosure.

     ENCIOC_GETELMDESC  Get the element's descriptor string.

     ENCIOC_GETELMDEVNAMES
                        Get the device names, if any, associated with this
                        element.

     ENCIOC_GETSTRING   Used to read the SES String In Diagnostic Page.  The
                        contents of this page are device-specific.

     ENCIOC_SETSTRING   Used to set the SES String Out Diagnostic Page.  The
                        contents of this page are device-specific.

     ENCIOC_GETENCNAME  Used to get the name of the enclosure.

     ENCIOC_GETENCID    Used to get the Enclosure Logical Identifier.

EXAMPLE USAGE
     The files contained in </usr/share/examples/ses> show simple mechanisms
     for how to use these interfaces, as well as a very stupid simple
     monitoring daemon.

FILES
     /dev/sesN      The Nth SES device.

DIAGNOSTICS
     When the kernel is configured with DEBUG enabled, the first open to an
     SES device will spit out overall enclosure parameters to the console.

SEE ALSO
     sesutil(8)

HISTORY
     The ses driver was originally written for the CAM SCSI subsystem by
     Matthew Jacob and first released in FreeBSD 4.3.  It was a functional
     equivalent of a similar driver available in Solaris, Release 7.  It was
     largely rewritten by Alexander Motin, Justin Gibbs, and Will Andrews for
     FreeBSD 9.2.

FreeBSD 13.1-RELEASE-p6        November 12, 2019       FreeBSD 13.1-RELEASE-p6

Command Section

man2web Home...