summaryrefslogtreecommitdiffstats
path: root/drivers/scsi
Commit message (Collapse)AuthorAgeFilesLines
* isci: uplevel port infrastructureDan Williams2011-07-0317-3425/+2929
| | | | | | | | * Move port configuration agent implementation * Merge core/scic_sds_port.[ch] into port.[ch] Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: uplevel phy infrastructureDan Williams2011-07-0311-3031/+2784
| | | | | | | Merge core/scic_sds_phy.[ch] into phy.[ch] Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: uplevel request infrastructureDan Williams2011-07-0327-3198/+2194
| | | | | | | | | | | * Consolidate tiny header files * Move files out of core/ (drop core/scic_sds_ prefix) * Merge core/scic_sds_request.[ch] into request.[ch] * Cleanup request.c namespace (clean forward declarations and global namespace pollution) Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: uplevel state machineDan Williams2011-07-0315-116/+31
| | | | | | | | unify core/sci_base_state.h and core/sci_base_state_machine.[ch] into state_machine.[ch] Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: uplevel register hardware data structures and unsolicited frame handlingDan Williams2011-07-0317-257/+121
| | | | | Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: move core/controller to hostDan Williams2011-07-0328-3940/+3360
| | | | | | | | Now that the data structures are unified unify the implementation in host.[ch] and cleanup namespace pollution. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify constantsDan Williams2011-07-0338-962/+497
| | | | | | | | | | | cross driver constants are spread out over multiple header files, consolidate them into isci.h, and push some includes out to the source files that need them. TODO: remove SCI_MODE_SIZE infrastructure. TODO: task.h is full of inlines that are too large Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify request data structuresDan Williams2011-07-0315-257/+128
| | | | | | | | | | Make scic_sds_request a proper member of isci_request. Also let's us get rid of the dma pool object size tracking since we now know that all requests are sizeof(isci_request). While cleaning up the construct routine incidentally replaced SCI_FIELD_OFFSET with offsetof. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: make command/response iu explicit request object membersDan Williams2011-07-0310-423/+104
| | | | | | | Final elimination of the anonymous data at the end of the request structure. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: move task context alignment from run-time to compile timeDan Williams2011-07-034-113/+13
| | | | | | | | | | | Remove usage of PTR_ALIGN by arranging for the task context to be aligned by the compiler. Another step towards unifying isci_request and scic_sds_request. Once this is complete the task context in the request can likely be removed in favor of building the task directly to tc memory (see: scic_sds_controller_copy_task_context). It's not clear why this needs to be cacheline aligned if we just end up copying before submission... Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: make sgl explicit/aligned request object memberDan Williams2011-07-037-64/+19
| | | | | | | Towards unifying request objects we need all members to be defined in the object and not carved out of anonymous buffer space. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: move stp request info to scic_sds_requestDan Williams2011-07-035-435/+313
| | | | | | | In preparation for unifying allocation of all request information make stp data available in all requests. Incidentally collapse indentation. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify port data structuresDan Williams2011-07-0312-113/+67
| | | | | | | | | Make scic_sds_port a member of isci_port and merge their lifetimes which means removing the port table from scic_sds_controller in favor of the one at the isci_host level. Merge ihost->sas_ports into ihost->ports. _ Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify phy data structuresDan Williams2011-07-0310-313/+187
| | | | | | | | | Make scic_sds_phy a member of isci_phy and merge their lifetimes which means removing the phy table from scic_sds_controller in favor of the one at that isci_host level. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: rnc state machine table c99 conversionJacek Danecki2011-07-032-71/+58
| | | | | | | | This makes the subsequent patches to delete rnc->state_handler more clear. Signed-off-by: Jacek Danecki <Jacek.Danecki@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: remove scic_sds_port_increment_request_countEdmund Nadolski2011-07-032-7/+1
| | | | | | | Removes excessive encapsulation function. Signed-off-by: Edmund Nadolski <edmund.nadolski@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: kill scic_controller_get_port_handle functionEdmund Nadolski2011-07-034-78/+25
| | | | | | | | This function is just overkill and its usage is inconsistent. Replace with inlined code. Signed-off-by: Edmund Nadolski <edmund.nadolski@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Removing unnecessary functions in request.cDave Jiang2011-07-033-71/+12
| | | | | | | No need for wrappers, just access sas_task directly. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify isci_host data structuresArtur Wojcik2011-07-0318-163/+83
| | | | | | | | | Make it explicit that isci_host and scic_sds_controller are one in the same object. Signed-off-by: Artur Wojcik <artur.wojcik@intel.com> [removed ->ihost back pointer] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: implement I_T_nexus_resetDan Williams2011-07-033-64/+76
| | | | | | | | | | | | | This is a requirement for 2.6.39's new libata eh. Still some questions about lldd_dev_gone racing against dev->lldd_dev lookups, but we are at least no more broken than mvsas in this regard. We also short-circuit I_T_nexus_reset invocations from the device discovery path (IDEV_EH similar to MVS_DEV_EH) to filter out the resulting domain rediscoveries triggered by the reset. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: fix ata lockingDan Williams2011-07-031-13/+13
| | | | | | | | Upstream commit a29b5dad "libata: fix locking for sas paths" switched libsas ata locking to the ata_host lock. We need to do the same when returning ata tasks from the execute path. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: removing intel_*.h headersDave Jiang2011-07-0318-676/+17
| | | | | Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Using Linux SSP frame headerDave Jiang2011-07-035-68/+22
| | | | | | | Removing of struct sci_ssp_frame_header and migrate to struct ssp_frame_hdr. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Remove SCIC_SWAP_DWORD()Dave Jiang2011-07-035-91/+60
| | | | | | | | | | | Use Linux native swab32() call instead of SCIC_SWAP_DWORD(). We need to swab() because the hardware munges the data into a "big-endian dword" stream which is byte-swapped from the sas definition regardless of host endian. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: fixup SAS iaf protocols data structureDave Jiang2011-07-037-138/+59
| | | | | | | | | Moved the actual data structure that's read from the phy register to phy header. Removed the parsing of identify address frame protocol bits as that seemed not necessary and we can use existing information. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: remove redundant copies of IAFDave Jiang2011-07-035-136/+11
| | | | | | | | | We need to remove the extra copies of identify address frame that's being kept around. We only need the one copy that libsas is using. Signed-off-by: Dave Jiang <dave.jiang@intel.com> [further cleanups] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Converting smp_response to Linux native smp_respDave Jiang2011-07-033-223/+34
| | | | | Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Fixup of smp requestDave Jiang2011-07-035-260/+196
| | | | | | | | The struct smp_request data structure has be fixed up for Linux consumption. This probably should go to scsi/sas.h eventually. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Convert of sci_ssp_response_iu to ssp_response_iuDave Jiang2011-07-036-252/+141
| | | | | | | | | | | Converting to Linux native format. However the isci driver does a lot of the calculation based on the max size of this data structure and the Linux data structure only has a pointer to the response data. Thus the sizeof(struct ssp_response_iu) will be incorrect and we need to define the max size. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Fixup SSP command IU and task IUDave Jiang2011-07-035-285/+74
| | | | | | | Fixup of SSP command IU and SSP task IU to something that looks like Linux Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: renaming sas_capabilities to scic_phy_capDave Jiang2011-07-033-55/+50
| | | | | | | | | This seems to be a data structure that represents the phy capabilities register from the hardware and has nothing to do with SAS data structs. Moving and fixup Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Collapsing of phy_type data structureDave Jiang2011-07-032-16/+8
| | | | | | | Collapsing of struct scic_sds_phy phy_type data structure Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Convert SAS identify address frame to Linux Native formatDave Jiang2011-07-036-106/+27
| | | | | | | Convert struct sci_sas_identify_address_frame to struct sas_identify_frame Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Convert ATA defines to Linux native definesDave Jiang2011-07-0313-1180/+280
| | | | | | | | | | | * Removing all intel_sata and intel_ata defines * Removing the usage of SAT_PROTOCOL_*. We can get everything from sas_task * Moved SATA FIS types to local sas.h. These defines will have to go into include/scsi/sas.h eventually. * Added offsets for SATA FIS header in order to grab the values Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Convert SATA fis data structures to Linux nativeDave Jiang2011-07-0312-102/+35
| | | | | | | | Converting of sata_fis_reg_d2h to dev_to_host_fis Converting of sata_fis_reg_h2d to host_to_dev_fis Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: remove compile-time (Kconfig) silicon configurationDan Williams2011-07-032-25/+1
| | | | | | | Pre-production silicon support is deprecated, and will be removed completely in the future. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Removing unused define SCIC_SDS_4_ENABLEDDave Jiang2011-07-033-15/+0
| | | | | Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: kill scic_sds_remote_device.state_handlersDan Williams2011-07-032-187/+5
| | | | | | | Remove the now unused state_handler infrastructure for remote_devices. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device frame_handlersDan Williams2011-07-032-177/+89
| | | | | | | | Implement all states in scic_sds_remote_device_frame() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device event_handlersDan Williams2011-07-032-160/+82
| | | | | | | | Implement all states in scic_sds_remote_device_event() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: kill remote_device resume_handlerDan Williams2011-07-032-32/+0
| | | | | | | This is unused infrastructure. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device suspend_handlersDan Williams2011-07-032-44/+13
| | | | | | | | Implement all states in scic_sds_remote_device_suspend() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: kill remote_device complete_task_handlerDan Williams2011-07-032-159/+0
| | | | | | | This is unused infrastructure. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device start_task_handlersDan Williams2011-07-032-152/+90
| | | | | | | | Implement all states in scic_sds_remote_device_start_task() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: kill remote_device continue_io_handlerDan Williams2011-07-032-28/+0
| | | | | | | This is unused infrastructure. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device complete_io_handlersDan Williams2011-07-032-89/+85
| | | | | | | | Implement all states in scic_sds_remote_device_complete_io() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device start_io_handlersDan Williams2011-07-032-215/+125
| | | | | | | | Implement all states in scic_sds_remote_device_start_io() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device reset_complete_handlersDan Williams2011-07-032-43/+12
| | | | | | | | Implement all states in scic_remote_device_reset_complete() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device reset_handlersDan Williams2011-07-032-48/+27
| | | | | | | | Implement all states in scic_remote_device_reset() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: unify remote_device destruct_handlersDan Williams2011-07-032-55/+17
| | | | | | | | Implement all states in scic_remote_device_destruct() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
OpenPOWER on IntegriCloud