aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
Commit message (Collapse)AuthorAge
...
| * isci: Convert SATA fis data structures to Linux nativeDave Jiang2011-07-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | 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-03
| | | | | | | | | | 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-03
| | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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-03
| | | | | | | | | | | | | | | | 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>
| * isci: kill remote_device fail_handlerDan Williams2011-07-03
| | | | | | | | | | | | | | This is just unused infrastructure. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: unify remote_device stop_handlersDan Williams2011-07-03
| | | | | | | | | | | | | | | | Implement all states in scic_remote_device_stop() and delete the state handlers. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: unify remote_device start_handlersDan Williams2011-07-03
| | | | | | | | | | | | | | | | Implement all states in scic_remote_device_start() and delete the state handler. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: fix remote_device start_io regressionsDan Williams2011-07-03
| | | | | | | | | | | | | | | | | | | | While reducing indentation commits 7ab92c9e "isci: make a remote_node_context a proper member of a remote_device", 0879e6a6 "isci: merge remote_device substates into a single state machine" broke handling of situations where i/o's successfully started at the port level need to terminated when the remote_node declines to start the i/o. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: kill scic_remote_device_get_connection_rateDan Williams2011-07-03
| | | | | | | | | | | | A function call to dereference a pointer is a tad much. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: merge remote_device substates into a single state machineDan Williams2011-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A substate is just a state, so uplevel the smp and stp device substates. Three tricks at work here: 1/ scic_sds_remote_device_ready_state_enter: needs to know the the device type so it can immediately transition to a stp or smp ready substate. 2/ scic_sds_remote_device_ready_state_exit: needs to know the device type. In the ssp case the device is no longer ready, in the stp, and smp case we have simply exited to a ready "substate". 3/ scic_sds_remote_device_resume_complete_handler: The one location where we directly check the current state against SCI_BASE_REMOTE_DEVICE_STATE_READY needed to comprehend the possible ready substates. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Removed sci_object.h from project.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | | | | | The sci_object.h file was removed. No sci_base_object is now in the code. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Removed sci_base_object from scic_sds_request.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | | | | | The 'struct sci_base_object' was removed from the struct scic_sds_request and was replaced by a pointer to struct isci_request. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Removed sci_base_object from scic_sds_remote_node_context.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | | | The 'struct sci_base_object' was removed from the struct scic_sds_remote_node_context. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Removed sci_base_object from scic_sds_remote_device.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | | | | | The 'struct sci_base_object' was removed from the struct scic_sds_remote_device. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> [cleaned up sci_dev_to_idev] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Removed sci_base_object from scic_sds_port.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | | | | | The 'struct sci_base_object' was removed from the struct scic_sds_port and was replaced by a pointer to struct isci_port. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Removed sci_base_object from scic_sds_phy.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | | | | | The 'struct sci_base_object' was removed from the struct scic_sds_phy and was replaced by a pointer to struct isci_phy. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Removed sci_base_object from scic_sds_controller.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | | | | | The 'struct sci_base_object' was removed from the struct scic_sds_controller and was replaced by a pointer to struct isci_host. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Removed struct sci_base_object from state machine.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | Changed any occurrence of struct sci_base_object into void. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Implement SCU AFE recipe 10.Maciej Patelczyk2011-07-03
| | | | | | | | | | | | | | Updated SCU AFE initialization values accordingly to the recipe 10. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: Remove excessive log noise with expander hot-unplugDave Jiang2011-07-03
| | | | | | | | | | | | | | | | We are logging excessive output when hot unplug from expander. Moving that to debug. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: allow fallback to option-rom if efi variable retrieval failsDan Williams2011-07-03
| | | | | | | | | | | | | | | | | | If the scu efi driver is disabled but the option-rom is enabled (during an efi boot) allow the code to fallback to scanning legacy option-rom space for the parameters. Reported-by: Yinghai Lu <yinghai.lu@oracle.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: removing non-working ATAPI codeDave Jiang2011-07-03
| | | | | | | | | | | | | | | | | | Removing not used / bit-rotten ATAPI code. This needs to go back and debugged at a later date. Signed-off-by: Dave Jiang <dave.jiang@intel.com> [reflow against devel, delete dead sati headers] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: remove scic_sds_remote_device_get_port_indexDan Williams2011-07-03
| | | | | | | | | | | | Longer to type than the open-coded equivalent. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: remove usage of sci_sas_address in scic_sds_remote_deviceDan Williams2011-07-03
| | | | | | | | | | | | | | The sas address can be retrieved from the domain device and then converted to the always little-endian format in the remote node context. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: kill smp_discover_responseDan Williams2011-07-03
| | | | | | | | | | | | | | | | | | | | | | | | An lldd need never look at the contents of an smp_discover_response frame. Kill the remaining locations where isci is looking at it: 1/ covering for expanders that do not set the stp_attached bit (already handled by sas_ex_discover_end_dev) 2/ an overkill method to notifiy the rest of the driver about remote_device sas addresses Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: kill smp_discover_response_protocols in favor of domain_device.dev_typeDan Williams2011-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is step 1 of removing the contortions to: 1/ unparse expander phy data into a smp discover frame 2/ open-code-parse the smp discover fram into a domain_device.dev_type equivalent libsas has already spent cycles determining the dev_type, so now that scic_sds_remote_device is unified with isci_remote_device we can directly reference dev_type. This might also change multi-level expander detection as we previously only looked at dev_type == EDGE_DEV and we did not consider the FANOUT_DEV case. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: cleanup remote device construction and commentsDan Williams2011-07-03
| | | | | | | | | | | | | | | | | | | | The construction routines scic_remote_device_[de]a_construct both reference the need to call scic_remote_device_construct first. Delete that comment and just have them call it explicitly, also: * move the comments from header to source * delete dead references to scic_[de]a_remote_device_add_phy Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: move remote_device handling out of the coreDan Williams2011-07-03
| | | | | | | | | | | | | | | | Now that the core/lldd remote_device data structures are nominally unified merge the corresponding sources into the top-level directory. Also move the remote_node_context infrastructure which has no analog at the lldd level. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: unify remote_device data structuresDan Williams2011-07-03
| | | | | | | | | | | | | | Make it explicit that isci_remote_device and scic_sds_remote_device are one in the same object. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: remove rnc->device back pointerDan Williams2011-07-03
| | | | | | | | | | | | | | Now that they are one in the same object remove the back pointer reference in favor of container_of. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: make a remote_node_context a proper member of a remote_deviceDan Williams2011-07-03
| | | | | | | | | | | | | | | | A rnc object has the same lifetime as its associated remote_device. It might get re-initialized, but a remote device always has an rnc member. Preparation for unifying scic_sds_remote_device and isci_remote_device Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: rely on irq core for intx multiplexing, and silence screaming intxDan Williams2011-07-03
| | | | | | | | | | | | | | | | | | | | | | Remove the extra logic to poll each controller for interrupts, that's the core's job for shared interrupts. While testing noticed that a number of interrupts fire while waiting for the completion tasklet to run, so added an irq-ack. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: replace this_* and the_* variables with more meaningful namesDave Jiang2011-07-03
| | | | | | | | | | | | | | | | Removed any instances of the_* and this_* to variable names that are more meaningful and tell us what they actually are. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: validate oem parameters early, and fallbackDan Williams2011-07-03
| | | | | | | | | | | | | | | | If the platform specifies invalid parameters warn the user and fallback to internal defaults rather than fail the driver load altogether. Reported-by: Yinghai Lu <yinghai.lu@oracle.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: fix oem parameter header definitionDan Williams2011-07-03
| | | | | | | | | | | | | | | | The element_length is 2 bytes. Reported-by: Yinghai Lu <yinghai.lu@oracle.com> Acked-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: audit usage of BUG_ON macro in isci driverBartosz Barcinski2011-07-03
| | | | | | | | | | | | | | | | | | | | | | Removes unnecessary usage of BUG_ON macro, excluding core directory. In some cases macro is unnecesary, check is done in caller function. In other cases macro is replaced by if construction with appropriate warning. Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> [changed some survivable bug conditions to WARN_ONCE] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: sparse warnings cleanupBartosz Barcinski2011-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean warnings and errors reported by sparse tool. request.c:430:50: warning: mixing different enum types remote_device.c:534:39: warning: symbol 'flags' shadows an earlier one task.c:495:44: warning: mixing different enum types scic_sds_controller.c:2155:24: warning: mixing different enum types scic_sds_controller.c:2272:36: warning: mixing different enum types scic_sds_controller.c:2911:38: warning: incorrect type in initializer (different address spaces) scic_sds_controller.c:2913:25: warning: incorrect type in argument 2 (different address spaces) scic_sds_request.c:875:34: warning: cast removes address space of expression scic_sds_request.c:876:123: warning: incorrect type in argument 2 (different address spaces) scic_sds_port.c:585:51: warning: incorrect type in assignment (different address spaces) scic_sds_port.c:712:9: warning: incorrect type in argument 2 (different address spaces) scic_sds_port.c:1770:25: warning: incorrect type in argument 2 (different address spaces) Signed-off-by: Bartosz Barcinski <Bartosz.Barcinski@intel.com> Signed-off-by: Maciej Patelczyk <maciej.patelczyk@intel.com> [fixed up some false positives and misconversions] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
| * isci: replace sci_sas_link_rate with sas_linkrateDan Williams2011-07-03
| | | | | | | | | | | | | | Drop duplicated enum definition. Reported-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>