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

     ses - SCSI Environmental Services driver

     device ses

     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

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

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

     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.

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

     SESIOC_GETNOBJ     Used to find out how many ses objects are driven by
                        this particular device instance.

     SESIOC_GETOBJMAP   Read, from the kernel, an array of SES objects which
                        contains the object identifier, which subenclosure it
                        is in, and the ses type of the object.

     SESIOC_GETENCSTAT  Get the overall enclosure status.

     SESIOC_SETENCSTAT  Set the overall enclosure status.

     SESIOC_GETOBJSTAT  Get the status of a particular object.

     SESIOC_SETOBJSTAT  Set the status of a particular object.

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

     SESIOC_INIT        Initialize the enclosure.

     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.

     /dev/sesN      The Nth SES device.

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


     The ses driver was written for the CAM SCSI subsystem by Matthew Jacob.
     This is a functional equivalent of a similar driver available in Solaris,
     Release 7.

FreeBSD 11.1-RELEASE-p4        September 5, 2015       FreeBSD 11.1-RELEASE-p4
Command Section