aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2011-07-03 01:56:22 -0400
committerDan Williams <dan.j.williams@intel.com>2011-07-03 01:56:22 -0400
commit6f231dda68080759f1aed3769896e94c73099f0f (patch)
tree45b6ce02fa40e0e9c35526ac6c45950138387516
parent59c5f46fbe01a00eedf54a23789634438bb80603 (diff)
isci: Intel(R) C600 Series Chipset Storage Control Unit Driver
Support for the up to 2x4-port 6Gb/s SAS controllers embedded in the chipset. This is a snapshot of the first publicly available version of the driver, commit 4c1db2d0 in the 'historical' branch. git://git.kernel.org/pub/scm/linux/kernel/git/djbw/isci.git historical Signed-off-by: Maciej Trela <maciej.trela@intel.com> Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Edmund Nadolski <edmund.nadolski@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
-rw-r--r--drivers/scsi/Kconfig34
-rw-r--r--drivers/scsi/Makefile1
-rw-r--r--drivers/scsi/isci/Makefile30
-rw-r--r--drivers/scsi/isci/core/intel_ata.h554
-rw-r--r--drivers/scsi/isci/core/intel_sas.h948
-rw-r--r--drivers/scsi/isci/core/intel_sat.h95
-rw-r--r--drivers/scsi/isci/core/intel_sata.h280
-rw-r--r--drivers/scsi/isci/core/intel_scsi.h474
-rw-r--r--drivers/scsi/isci/core/sati_device.h156
-rw-r--r--drivers/scsi/isci/core/sati_translator_sequence.h304
-rw-r--r--drivers/scsi/isci/core/sati_types.h145
-rw-r--r--drivers/scsi/isci/core/sci_base_controller.h306
-rw-r--r--drivers/scsi/isci/core/sci_base_memory_descriptor_list.c159
-rw-r--r--drivers/scsi/isci/core/sci_base_memory_descriptor_list.h155
-rw-r--r--drivers/scsi/isci/core/sci_base_phy.h205
-rw-r--r--drivers/scsi/isci/core/sci_base_port.h203
-rw-r--r--drivers/scsi/isci/core/sci_base_remote_device.h277
-rw-r--r--drivers/scsi/isci/core/sci_base_request.h195
-rw-r--r--drivers/scsi/isci/core/sci_base_state.h90
-rw-r--r--drivers/scsi/isci/core/sci_base_state_machine.c182
-rw-r--r--drivers/scsi/isci/core/sci_base_state_machine.h139
-rw-r--r--drivers/scsi/isci/core/sci_controller.h100
-rw-r--r--drivers/scsi/isci/core/sci_controller_constants.h215
-rw-r--r--drivers/scsi/isci/core/sci_memory_descriptor_list.h169
-rw-r--r--drivers/scsi/isci/core/sci_object.h99
-rw-r--r--drivers/scsi/isci/core/sci_pool.h199
-rw-r--r--drivers/scsi/isci/core/sci_status.h409
-rw-r--r--drivers/scsi/isci/core/sci_types.h88
-rw-r--r--drivers/scsi/isci/core/sci_util.c70
-rw-r--r--drivers/scsi/isci/core/sci_util.h138
-rw-r--r--drivers/scsi/isci/core/scic_config_parameters.h347
-rw-r--r--drivers/scsi/isci/core/scic_controller.h586
-rw-r--r--drivers/scsi/isci/core/scic_io_request.h512
-rw-r--r--drivers/scsi/isci/core/scic_phy.h303
-rw-r--r--drivers/scsi/isci/core/scic_port.h213
-rw-r--r--drivers/scsi/isci/core/scic_remote_device.h295
-rw-r--r--drivers/scsi/isci/core/scic_sds_controller.c4147
-rw-r--r--drivers/scsi/isci/core/scic_sds_controller.h706
-rw-r--r--drivers/scsi/isci/core/scic_sds_controller_registers.h463
-rw-r--r--drivers/scsi/isci/core/scic_sds_pci.h95
-rw-r--r--drivers/scsi/isci/core/scic_sds_phy.c2807
-rw-r--r--drivers/scsi/isci/core/scic_sds_phy.h491
-rw-r--r--drivers/scsi/isci/core/scic_sds_phy_registers.h187
-rw-r--r--drivers/scsi/isci/core/scic_sds_port.c2757
-rw-r--r--drivers/scsi/isci/core/scic_sds_port.h514
-rw-r--r--drivers/scsi/isci/core/scic_sds_port_configuration_agent.c851
-rw-r--r--drivers/scsi/isci/core/scic_sds_port_configuration_agent.h108
-rw-r--r--drivers/scsi/isci/core/scic_sds_port_registers.h223
-rw-r--r--drivers/scsi/isci/core/scic_sds_remote_device.c2252
-rw-r--r--drivers/scsi/isci/core/scic_sds_remote_device.h602
-rw-r--r--drivers/scsi/isci/core/scic_sds_remote_node_context.c1244
-rw-r--r--drivers/scsi/isci/core/scic_sds_remote_node_context.h342
-rw-r--r--drivers/scsi/isci/core/scic_sds_remote_node_table.c600
-rw-r--r--drivers/scsi/isci/core/scic_sds_remote_node_table.h196
-rw-r--r--drivers/scsi/isci/core/scic_sds_request.c2179
-rw-r--r--drivers/scsi/isci/core/scic_sds_request.h484
-rw-r--r--drivers/scsi/isci/core/scic_sds_smp_remote_device.c410
-rw-r--r--drivers/scsi/isci/core/scic_sds_smp_request.c669
-rw-r--r--drivers/scsi/isci/core/scic_sds_smp_request.h70
-rw-r--r--drivers/scsi/isci/core/scic_sds_ssp_request.c340
-rw-r--r--drivers/scsi/isci/core/scic_sds_stp_packet_request.c838
-rw-r--r--drivers/scsi/isci/core/scic_sds_stp_packet_request.h154
-rw-r--r--drivers/scsi/isci/core/scic_sds_stp_pio_request.h116
-rw-r--r--drivers/scsi/isci/core/scic_sds_stp_remote_device.c975
-rw-r--r--drivers/scsi/isci/core/scic_sds_stp_request.c2004
-rw-r--r--drivers/scsi/isci/core/scic_sds_stp_request.h221
-rw-r--r--drivers/scsi/isci/core/scic_sds_unsolicited_frame_control.c379
-rw-r--r--drivers/scsi/isci/core/scic_sds_unsolicited_frame_control.h286
-rw-r--r--drivers/scsi/isci/core/scic_task_request.h148
-rw-r--r--drivers/scsi/isci/core/scic_user_callback.h740
-rw-r--r--drivers/scsi/isci/core/scu_completion_codes.h280
-rw-r--r--drivers/scsi/isci/core/scu_constants.h151
-rw-r--r--drivers/scsi/isci/core/scu_event_codes.h336
-rw-r--r--drivers/scsi/isci/core/scu_registers.h1824
-rw-r--r--drivers/scsi/isci/core/scu_remote_node_context.h230
-rw-r--r--drivers/scsi/isci/core/scu_task_context.h943
-rw-r--r--drivers/scsi/isci/core/scu_unsolicited_frame.h117
-rw-r--r--drivers/scsi/isci/core/scu_viit_data.h179
-rw-r--r--drivers/scsi/isci/deprecated.c491
-rw-r--r--drivers/scsi/isci/events.c619
-rw-r--r--drivers/scsi/isci/firmware/Makefile19
-rw-r--r--drivers/scsi/isci/firmware/README36
-rw-r--r--drivers/scsi/isci/firmware/create_fw.c177
-rw-r--r--drivers/scsi/isci/host.c781
-rw-r--r--drivers/scsi/isci/host.h283
-rw-r--r--drivers/scsi/isci/init.c613
-rw-r--r--drivers/scsi/isci/isci.h138
-rw-r--r--drivers/scsi/isci/phy.c179
-rw-r--r--drivers/scsi/isci/phy.h104
-rw-r--r--drivers/scsi/isci/port.c484
-rw-r--r--drivers/scsi/isci/port.h153
-rw-r--r--drivers/scsi/isci/remote_device.c698
-rw-r--r--drivers/scsi/isci/remote_device.h154
-rw-r--r--drivers/scsi/isci/request.c1472
-rw-r--r--drivers/scsi/isci/request.h429
-rw-r--r--drivers/scsi/isci/sata.c356
-rw-r--r--drivers/scsi/isci/sata.h83
-rw-r--r--drivers/scsi/isci/sci_environment.h112
-rw-r--r--drivers/scsi/isci/task.c1691
-rw-r--r--drivers/scsi/isci/task.h368
-rw-r--r--drivers/scsi/isci/timers.c319
-rw-r--r--drivers/scsi/isci/timers.h126
-rw-r--r--firmware/Makefile1
-rw-r--r--firmware/isci/isci_firmware.bin.ihex11
104 files changed, 51230 insertions, 0 deletions
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index 4a1f029c4fe9..3aa664fa892e 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -830,6 +830,40 @@ config SCSI_GDTH
830 To compile this driver as a module, choose M here: the 830 To compile this driver as a module, choose M here: the
831 module will be called gdth. 831 module will be called gdth.
832 832
833config SCSI_ISCI
834 tristate "Intel(R) C600 Series Chipset SAS Controller"
835 depends on PCI && SCSI
836 # little endian host assumptions
837 depends on X86
838 # (temporary): dma api misuse
839 depends on !DMAR
840 # (temporary): known alpha quality driver
841 depends on EXPERIMENTAL
842 select SCSI_SAS_LIBSAS
843 ---help---
844 This driver supports the 6Gb/s SAS capabilities of the storage
845 control unit found in the Intel(R) C600 series chipset.