linux/drivers/scsi/isci
Dan Williams abec912d71 isci: refactor initialization for S3/S4
Based on an original implementation by Ed Nadolski and Artur Wojcik

In preparation for S3/S4 support refactor initialization so that
driver-load and resume-from-suspend can share the common init path of
isci_host_init().  Organize the initialization into objects that are
self-contained to the driver (initialized by isci_host_init) versus
those that have some upward registration (initialized at allocation time
asd_sas_phy, asd_sas_port, dma allocations).  The largest change is
moving the the validation of the oem and module parameters from
isci_host_init() to isci_host_alloc().

The S3/S4 approach being taken is that libsas will be tasked with
remembering the state of the domain and the lldd is free to be
forgetful.  In the case of isci we'll just re-init using a subset of the
normal driver load path.

[clean up some unused / mis-indented function definitions in host.h]

Signed-off-by: Ed Nadolski <edmund.nadolski@intel.com>
Signed-off-by: Artur Wojcik <artur.wojcik@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2012-05-17 12:27:12 -07:00
..
host.c isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00
host.h isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00
init.c isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00
isci.h [SCSI] isci: oem parameter format v1.3 (cable select) 2012-01-16 11:43:04 +04:00
Makefile isci: merge sata.[ch] into request.c 2011-07-03 04:04:52 -07:00
phy.c isci: Don't filter BROADCAST CHANGE primitives 2012-05-17 12:27:12 -07:00
phy.h isci: kill sci_phy_protocol and sci_request_protocol 2012-05-17 12:27:11 -07:00
port_config.c [SCSI] isci: fix io failures while wide port links are coming up 2012-01-16 11:46:59 +04:00
port.c isci: kill isci_port.domain_dev_list 2012-05-17 12:27:12 -07:00
port.h isci: kill isci_port.domain_dev_list 2012-05-17 12:27:12 -07:00
probe_roms.c isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00
probe_roms.h isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00
registers.h [SCSI] isci: enable clock gating 2012-02-19 08:09:00 -06:00
remote_device.c isci: kill ->is_direct_attached 2012-05-17 12:27:11 -07:00
remote_device.h isci: kill ->is_direct_attached 2012-05-17 12:27:11 -07:00
remote_node_context.c isci: kill ->is_direct_attached 2012-05-17 12:27:11 -07:00
remote_node_context.h [SCSI] isci: debug, provide state-enum-to-string conversions 2012-02-29 16:23:15 -06:00
remote_node_table.c isci: retire scic_sds_ and scic_ prefixes 2011-07-03 04:04:52 -07:00
remote_node_table.h isci: retire scic_sds_ and scic_ prefixes 2011-07-03 04:04:52 -07:00
request.c isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00
request.h isci: kill sci_phy_protocol and sci_request_protocol 2012-05-17 12:27:11 -07:00
sas.h [SCSI] isci: fix support for large smp requests 2011-10-02 13:07:17 -05:00
scu_completion_codes.h isci: uplevel register hardware data structures and unsolicited frame handling 2011-07-03 04:04:47 -07:00
scu_event_codes.h isci: uplevel register hardware data structures and unsolicited frame handling 2011-07-03 04:04:47 -07:00
scu_remote_node_context.h isci: move remote_device handling out of the core 2011-07-03 04:00:38 -07:00
scu_task_context.h [SCSI] isci: T10 DIF support 2012-02-19 09:14:24 -06:00
task.c [SCSI] isci: remove IDEV_EH hack to disable "discovery-time" ata resets 2012-02-29 15:16:52 -06:00
task.h [SCSI] isci: remove bus and reset handlers 2012-02-29 15:16:05 -06:00
unsolicited_frame_control.c isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00
unsolicited_frame_control.h isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00