aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-07-03isci: Removing unused define SCIC_SDS_4_ENABLEDDave Jiang3-15/+0
Signed-off-by: Dave Jiang <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: kill scic_sds_remote_device.state_handlersDan Williams2-187/+5
Remove the now unused state_handler infrastructure for remote_devices. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device frame_handlersDan Williams2-177/+89
Implement all states in scic_sds_remote_device_frame() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device event_handlersDan Williams2-160/+82
Implement all states in scic_sds_remote_device_event() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: kill remote_device resume_handlerDan Williams2-32/+0
This is unused infrastructure. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device suspend_handlersDan Williams2-44/+13
Implement all states in scic_sds_remote_device_suspend() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: kill remote_device complete_task_handlerDan Williams2-159/+0
This is unused infrastructure. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device start_task_handlersDan Williams2-152/+90
Implement all states in scic_sds_remote_device_start_task() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: kill remote_device continue_io_handlerDan Williams2-28/+0
This is unused infrastructure. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device complete_io_handlersDan Williams2-89/+85
Implement all states in scic_sds_remote_device_complete_io() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device start_io_handlersDan Williams2-215/+125
Implement all states in scic_sds_remote_device_start_io() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device reset_complete_handlersDan Williams2-43/+12
Implement all states in scic_remote_device_reset_complete() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device reset_handlersDan Williams2-48/+27
Implement all states in scic_remote_device_reset() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device destruct_handlersDan Williams2-55/+17
Implement all states in scic_remote_device_destruct() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: kill remote_device fail_handlerDan Williams2-28/+0
This is just unused infrastructure. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device stop_handlersDan Williams2-177/+83
Implement all states in scic_remote_device_stop() and delete the state handlers. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: unify remote_device start_handlersDan Williams2-62/+21
Implement all states in scic_remote_device_start() and delete the state handler. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: fix remote_device start_io regressionsDan Williams1-6/+5
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 <[email protected]>
2011-07-03isci: kill scic_remote_device_get_connection_rateDan Williams5-32/+3
A function call to dereference a pointer is a tad much. Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: merge remote_device substates into a single state machineDan Williams5-1396/+800
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Removed sci_object.h from project.Maciej Patelczyk5-109/+4
The sci_object.h file was removed. No sci_base_object is now in the code. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Maciej Patelczyk <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Removed sci_base_object from scic_sds_request.Maciej Patelczyk9-62/+48
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Removed sci_base_object from scic_sds_remote_node_context.Maciej Patelczyk3-31/+9
The 'struct sci_base_object' was removed from the struct scic_sds_remote_node_context. Signed-off-by: Maciej Patelczyk <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Removed sci_base_object from scic_sds_remote_device.Maciej Patelczyk5-59/+42
The 'struct sci_base_object' was removed from the struct scic_sds_remote_device. Signed-off-by: Maciej Patelczyk <[email protected]> [cleaned up sci_dev_to_idev] Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Removed sci_base_object from scic_sds_port.Maciej Patelczyk4-44/+29
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Removed sci_base_object from scic_sds_phy.Maciej Patelczyk6-68/+33
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Removed sci_base_object from scic_sds_controller.Maciej Patelczyk12-57/+49
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Removed struct sci_base_object from state machine.Maciej Patelczyk14-221/+152
Changed any occurrence of struct sci_base_object into void. Signed-off-by: Maciej Patelczyk <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Implement SCU AFE recipe 10.Maciej Patelczyk1-2/+11
Updated SCU AFE initialization values accordingly to the recipe 10. Signed-off-by: Maciej Patelczyk <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: Remove excessive log noise with expander hot-unplugDave Jiang1-7/+8
We are logging excessive output when hot unplug from expander. Moving that to debug. Signed-off-by: Dave Jiang <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: allow fallback to option-rom if efi variable retrieval failsDan Williams1-2/+3
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: removing non-working ATAPI codeDave Jiang10-1659/+0
Removing not used / bit-rotten ATAPI code. This needs to go back and debugged at a later date. Signed-off-by: Dave Jiang <[email protected]> [reflow against devel, delete dead sati headers] Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: remove scic_sds_remote_device_get_port_indexDan Williams2-15/+5
Longer to type than the open-coded equivalent. Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: remove usage of sci_sas_address in scic_sds_remote_deviceDan Williams3-11/+5
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 <[email protected]>
2011-07-03isci: kill smp_discover_responseDan Williams4-337/+23
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 <[email protected]>
2011-07-03isci: kill smp_discover_response_protocols in favor of domain_device.dev_typeDan Williams9-178/+118
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 <[email protected]>
2011-07-03isci: cleanup remote device construction and commentsDan Williams1-59/+42
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 <[email protected]>
2011-07-03isci: move remote_device handling out of the coreDan Williams30-2758/+2325
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 <[email protected]>
2011-07-03isci: unify remote_device data structuresDan Williams9-75/+28
Make it explicit that isci_remote_device and scic_sds_remote_device are one in the same object. Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: remove rnc->device back pointerDan Williams4-90/+65
Now that they are one in the same object remove the back pointer reference in favor of container_of. Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: make a remote_node_context a proper member of a remote_deviceDan Williams6-55/+45
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 <[email protected]>
2011-07-03isci: rely on irq core for intx multiplexing, and silence screaming intxDan Williams2-21/+22
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: replace this_* and the_* variables with more meaningful namesDave Jiang21-1477/+1481
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: validate oem parameters early, and fallbackDan Williams3-38/+49
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 <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: fix oem parameter header definitionDan Williams2-16/+16
The element_length is 2 bytes. Reported-by: Yinghai Lu <[email protected]> Acked-by: Dave Jiang <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: audit usage of BUG_ON macro in isci driverBartosz Barcinski7-18/+15
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 <[email protected]> [changed some survivable bug conditions to WARN_ONCE] Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: sparse warnings cleanupBartosz Barcinski6-17/+16
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 <[email protected]> Signed-off-by: Maciej Patelczyk <[email protected]> [fixed up some false positives and misconversions] Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: replace sci_sas_link_rate with sas_linkrateDan Williams9-33/+22
Drop duplicated enum definition. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: remove base_phy abstractionMaciej Trela6-412/+260
Merge struct sci_base_phy into scic_sds_phy. Until now sci_base_phy was referenced using scic_sds_phy->parent field. 'sci_base_phy' state machine handlers were also merged into scic_sds_phy state handlers. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Maciej Trela <[email protected]> Signed-off-by: Maciej Patelczyk <[email protected]> Signed-off-by: Dan Williams <[email protected]>
2011-07-03isci: remove base_port abstractionMaciej Trela5-524/+285
Merge struct sci_base_port into scic_sds_port. Until now sci_base_port was referenced indirectly with scic_sds_port->parent field. 'sci_base_port' state machine handlers were also incorporated into scic_sds_port handlers. Reported-by: Christoph Hellwig <[email protected]> Signed-off-by: Maciej Trela <[email protected]> Signed-off-by: Maciej Patelczyk <[email protected]> Signed-off-by: Dan Williams <[email protected]>