smartmontools  SVN Rev 5304
Utility to control and monitor storage systems with "S.M.A.R.T."
Public Types | Public Member Functions | Private Attributes | List of all members
os_linux::linux_escalade_device Class Reference

CCISS RAID support. More...

Collaboration diagram for os_linux::linux_escalade_device:
Collaboration graph

Public Types

enum  escalade_type_t { AMCC_3WARE_678K , AMCC_3WARE_678K_CHAR , AMCC_3WARE_9000_CHAR , AMCC_3WARE_9700_CHAR }

Public Member Functions

 linux_escalade_device (smart_interface *intf, const char *dev_name, escalade_type_t escalade_type, int disknum)
virtual bool open () override
 Open device, return false on error. More...
virtual bool ata_pass_through (const ata_cmd_in &in, ata_cmd_out &out) override
 ATA pass through. More...
- Public Member Functions inherited from ata_device
bool ata_pass_through (const ata_cmd_in &in)
 ATA pass through without output registers. More...
virtual bool ata_identify_is_cached () const
 Return true if OS caches ATA identify sector. More...
- Public Member Functions inherited from smart_device
virtual ~smart_device ()
bool is_ata () const
 Return true if ATA device. More...
bool is_scsi () const
 Return true if SCSI device. More...
bool is_nvme () const
 Return true if NVMe device. More...
ata_deviceto_ata ()
 Downcast to ATA device. More...
const ata_deviceto_ata () const
 Downcast to ATA device (const). More...
scsi_deviceto_scsi ()
 Downcast to SCSI device. More...
const scsi_deviceto_scsi () const
 Downcast to SCSI device (const). More...
nvme_deviceto_nvme ()
 Downcast to NVMe device. More...
const nvme_deviceto_nvme () const
 Downcast to NVMe device (const). More...
const device_infoget_info () const
 Get device info struct. More...
const char * get_dev_name () const
 Get device (path)name. More...
const char * get_info_name () const
 Get informal name. More...
const char * get_dev_type () const
 Get device type. More...
const char * get_req_type () const
 Get type requested by user, empty if none. More...
const error_infoget_err () const
 Get last error info struct. More...
int get_errno () const
 Get last error number. More...
const char * get_errmsg () const
 Get last error message. More...
virtual bool is_syscall_unsup () const
 Return true if last error indicates an unsupported system call. More...
bool set_err (int no, const char *msg,...) __attribute_format_printf(3
 Set last error number and message. More...
bool bool set_err (const error_info &err)
 Set last error info struct. More...
void clear_err ()
 Clear last error info. More...
bool set_err (int no)
 Set last error number and default message. More...
virtual smart_deviceautodetect_open ()
 Open device with autodetection support. More...
virtual bool is_powered_down ()
 Early test if device is powered up or down. More...
virtual bool owns (const smart_device *dev) const
 Return true if other device is owned by this device. More...
virtual void release (const smart_device *dev)
 Release ownership of other device. More...
- Public Member Functions inherited from os_linux::linux_smart_device
 linux_smart_device (int flags, int retry_flags=-1)
virtual ~linux_smart_device ()
virtual bool is_open () const override
 Return true if device is open. More...
virtual bool close () override
 Close device, return false on error. More...

Private Attributes

escalade_type_t m_escalade_type
 Controller type. More...
int m_disknum
 Disk number. More...

Additional Inherited Members

- Static Public Member Functions inherited from smart_device
static int get_num_objects ()
 Get current number of allocated 'smart_device' objects. More...
- Protected Types inherited from ata_device
enum  {
  supports_data_out = 0x01 , supports_smart_status = 0x02 , supports_output_regs = 0x04 , supports_multi_sector = 0x08 ,
  supports_48bit_hi_null = 0x10 , supports_48bit = 0x20
 Flags for ata_cmd_is_supported(). More...
- Protected Types inherited from smart_device
enum  do_not_use_in_implementation_classes { never_called }
 Dummy enum for dummy constructor. More...
- Protected Member Functions inherited from ata_device
bool ata_cmd_is_supported (const ata_cmd_in &in, unsigned flags, const char *type=0)
 Check command input parameters. More...
bool ata_cmd_is_ok (const ata_cmd_in &in, bool data_out_support=false, bool multi_sector_support=false, bool ata_48bit_support=false)
 Check command input parameters (old version). More...
void hide_ata (bool hide=true)
 Hide/unhide ATA interface. More...
 ata_device ()
 Default constructor, registers device as ATA. More...
- Protected Member Functions inherited from smart_device
 smart_device (smart_interface *intf, const char *dev_name, const char *dev_type, const char *req_type)
 Constructor to init interface and device info. More...
 smart_device (do_not_use_in_implementation_classes)
 Dummy constructor for abstract classes. More...
device_infoset_info ()
 R/W access to device info struct. More...
smart_interfacesmi ()
 Get interface which produced this object. More...
const smart_interfacesmi () const
 Get interface which produced this object (const). More...
- Protected Member Functions inherited from os_linux::linux_smart_device
int get_fd () const
 Return filedesc for derived classes. More...
void set_fd (int fd)

Detailed Description

CCISS RAID support.

AMCC/3ware RAID support

Definition at line 1542 of file os_linux.cpp.

Member Enumeration Documentation

◆ escalade_type_t


Definition at line 1547 of file os_linux.cpp.

Constructor & Destructor Documentation

◆ linux_escalade_device()

os_linux::linux_escalade_device::linux_escalade_device ( smart_interface intf,
const char *  dev_name,
escalade_type_t  escalade_type,
int  disknum 

Definition at line 1566 of file os_linux.cpp.

Member Function Documentation

◆ ata_pass_through()

bool os_linux::linux_escalade_device::ata_pass_through ( const ata_cmd_in in,
ata_cmd_out out 

ATA pass through.

Return false on error. Must be implemented in derived class.

Implements ata_device.

Definition at line 1775 of file os_linux.cpp.

◆ open()

bool os_linux::linux_escalade_device::open ( )

Open device, return false on error.

Reimplemented from os_linux::linux_smart_device.

Definition at line 1723 of file os_linux.cpp.

Member Data Documentation

◆ m_disknum

int os_linux::linux_escalade_device::m_disknum

Disk number.

Definition at line 1563 of file os_linux.cpp.

◆ m_escalade_type

escalade_type_t os_linux::linux_escalade_device::m_escalade_type

Controller type.

Definition at line 1562 of file os_linux.cpp.

The documentation for this class was generated from the following file: