Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 83 additions & 0 deletions Documentation/scsi/sssraid.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
.. SPDX-License-Identifier: GPL-2.0

==============================================
SSSRAID - 3SNIC SCSI RAID Controller driver
==============================================

This file describes the SSSRAID SCSI driver for 3SNIC
(http://www.3snic.com) RAID controllers. The SSSRAID
driver is the first generation RAID driver for 3SNIC Corp.

For 3SNIC SSSRAID controller support, enable the SSSRAID driver
when configuring the kernel.

SSSRAID specific entries in /sys
=================================

SSSRAID host attributes
------------------------
- /sys/class/scsi_host/host*/csts_pp
- /sys/class/scsi_host/host*/csts_shst
- /sys/class/scsi_host/host*/csts_cfs
- /sys/class/scsi_host/host*/csts_rdy
- /sys/class/scsi_host/host*/fw_version

The host csts_pp attribute is a read only attribute. This attribute
indicates whether the controller is processing commands. If this attribute
is set to '1', then the controller is processing commands normally. If
this attribute is cleared to '0', then the controller has temporarily stopped
processing commands in order to handle an event (e.g., firmware activation).

The host csts_shst attribute is a read only attribute. This attribute
indicates status of shutdown processing.The shutdown status values are defined
as:
====== ==============================
Value Definition
====== ==============================
00b Normal operation
01b Shutdown processing occurring
10b Shutdown processing complete
11b Reserved
====== ==============================
The host csts_cfs attribute is a read only attribute. This attribute is set to
'1' when a fatal controller error occurred that could not be communicated in the
appropriate Completion Queue. This bit is cleared to '0' when a fatal controller
error has not occurred.

The host csts_rdy attribute is a read only attribute. This attribute is set to
'1' when the controller is ready to process submission queue entries.

The fw_version attribute is read-only and will return the driver version and the
controller firmware version.

SSSRAID scsi device attributes
------------------------------
- /sys/class/scsi_device/X\:X\:X\:X/device/raid_level
- /sys/class/scsi_device/X\:X\:X\:X/device/raid_state
- /sys/class/scsi_device/X\:X\:X\:X/device/raid_resync

The device raid_level attribute is a read only attribute. This attribute indicates
RAID level of scsi device(will dispaly "NA" if scsi device is not virtual disk type).

The device raid_state attribute is read-only and indicates RAID status of scsi
device(will dispaly "NA" if scsi device is not virtual disk type).

The device raid_resync attribute is read-only and indicates RAID rebuild processing
of scsi device(will dispaly "NA" if scsi device is not virtual disk type).

Supported devices
=================

=================== ======= =======================================
PCI ID (pci.ids) OEM Product
=================== ======= =======================================
1F3F:2100 3SNIC 3S510(HBA:8Ports,1G DDR)
1F3F:2100 3SNIC 3S520(HBA:16Ports,1G DDR)
1F3F:2100 3SNIC 3S530(HBA:32Ports,1G DDR)
1F3F:2100 3SNIC 3S540(HBA:40Ports,1G DDR)
1F3F:2200 3SNIC 3S580(RAID:16Ports,2G cache)
1F3F:2200 3SNIC 3S585(RAID:16Ports,4G cache)
1F3F:2200 3SNIC 3S590(RAID:32Ports,4G cache)
1F3F:2200 3SNIC 3S5A0(RAID:40Ports,2G cache)
1F3F:2200 3SNIC 3S5A5(RAID:40Ports,4G cache)
=================== ======= =======================================
7 changes: 7 additions & 0 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -20407,6 +20407,13 @@ M: Jan-Benedict Glaw <jbglaw@lug-owl.de>
S: Maintained
F: arch/alpha/kernel/srm_env.c

SSSRAID SCSI/Raid DRIVERS
M: fei zhigang <feizg@3snic.com>
L: linux-scsi@vger.kernel.org
S: Maintained
F: Documentation/scsi/sssraid.rst
F: drivers/scsi/sssraid/

ST LSM6DSx IMU IIO DRIVER
M: Lorenzo Bianconi <lorenzo@kernel.org>
L: linux-iio@vger.kernel.org
Expand Down
1 change: 1 addition & 0 deletions drivers/scsi/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -491,6 +491,7 @@ config SCSI_SMARTPQI_MODULE

source "drivers/scsi/esas2r/Kconfig"
source "drivers/scsi/megaraid/Kconfig.megaraid"
source "drivers/scsi/sssraid/Kconfig"
source "drivers/scsi/mpt3sas/Kconfig"
source "drivers/scsi/mpi3mr/Kconfig"
source "drivers/scsi/leapioraid/Kconfig"
Expand Down
1 change: 1 addition & 0 deletions drivers/scsi/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ obj-$(CONFIG_SCSI_CHELSIO_FCOE) += csiostor/
obj-$(CONFIG_SCSI_DMX3191D) += dmx3191d.o
obj-$(CONFIG_SCSI_HPSA) += hpsa.o
obj-$(CONFIG_SCSI_SMARTPQI) += smartpqi/
obj-$(CONFIG_SCSI_3SNIC_SSSRAID) += sssraid/
obj-$(CONFIG_SCSI_TRUSTRAID) += trustraid/
obj-$(CONFIG_SCSI_SYM53C8XX_2) += sym53c8xx_2/
obj-$(CONFIG_SCSI_ZALON) += zalon7xx.o
Expand Down
14 changes: 14 additions & 0 deletions drivers/scsi/sssraid/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#
# Kernel configuration file for the 3SNIC
#

config SCSI_3SNIC_SSSRAID
tristate "3SNIC sssraid Adapter"
depends on PCI && SCSI
select BLK_DEV_BSGLIB
depends on ARM64 || X86_64
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: that was my oversight. There should be at least a "|| COMPILE_TEST" here.

help
This driver supports 3SNIC 3S5xx serial RAID controller, which has
PCI Express Gen4 interface with host and supports SAS/SATA HDD/SSD.
To compile this driver as a module, choose M here: the module will
be called sssraid.
7 changes: 7 additions & 0 deletions drivers/scsi/sssraid/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#
# Makefile for the 3SNIC sssraid drivers.
#

obj-$(CONFIG_SCSI_3SNIC_SSSRAID) += sssraid.o

sssraid-objs := sssraid_os.o sssraid_fw.o
Loading
Loading