tail head cat sleep
QR code linking to this page

Manual Pages  — SES

NAME

ses – SCSI Environmental Services driver

CONTENTS

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 .

SES (4) November 12, 2019

tail head cat sleep
QR code linking to this page


Please direct any comments about this manual page service to Ben Bullock. Privacy policy.