linux/drivers/scsi
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
..
aacraid [SCSI] aacraid: Added Sync.mode to support series 7/8/9 controllers 2012-02-19 08:09:01 -06:00
aic7xxx Documentation: remove references to /etc/modprobe.conf 2012-03-30 16:03:15 -07:00
aic7xxx_old Fix common misspellings 2011-03-31 11:26:23 -03:00
aic94xx [SCSI] libsas: don't recover end devices attached to disabled phys 2012-02-29 15:42:51 -06:00
arcmsr Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
arm Disintegrate and delete asm/system.h 2012-03-28 15:58:21 -07:00
be2iscsi SCSI updates for post 3.2 merge window 2012-01-10 10:36:08 -08:00
bfa [SCSI] bfa: Update the driver version to 3.0.23.0 2012-03-28 10:02:46 +01:00
bnx2fc SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
bnx2i Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-03-23 10:07:16 -07:00
cxgbi SCSI updates on 20120319 2012-03-22 12:55:29 -07:00
device_handler [SCSI] scsi_dh_rdac: Fix for unbalanced reference count 2012-02-22 12:15:19 -06:00
dpt atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
fcoe SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
fnic [SCSI] fnic: fix incorrect use of SLAB_CACHE_DMA flag 2011-06-29 16:05:41 -05:00
ibmvscsi powerpc+sparc/vio: Modernize driver registration 2012-03-28 11:33:24 +11:00
isci isci: refactor initialization for S3/S4 2012-05-17 12:27:12 -07:00
libfc [SCSI] libfc: update mfs boundry checking 2012-04-25 08:46:29 +01:00
libsas [SCSI] Revert "[SCSI] libsas: fix sas port naming" 2012-04-23 12:15:53 +01:00
lpfc Merge branch 'akpm' (Andrew's patch-bomb) 2012-04-05 15:30:34 -07:00
megaraid [SCSI] megaraid_sas: Version and Changelog update 2012-01-16 11:28:33 +04:00
mpt2sas SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
mvsas SCSI updates on 20120319 2012-03-22 12:55:29 -07:00
osd [SCSI] osd_uld: Bump MAX_OSD_DEVICES from 64 to 1,048,576 2012-02-25 08:25:09 -06:00
pcmcia module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
pm8001 SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
qla2xxx [SCSI] qla2xxx: Update version number to 8.04.00.03-k. 2012-05-10 08:19:10 +01:00
qla4xxx SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
sym53c8xx_2 [SCSI] sym53c8xx: Fix NULL pointer dereference in slave_destroy 2012-01-10 17:01:18 -06:00
ufs [SCSI] ufshcd: UFS Host controller driver 2012-03-27 08:26:28 +01:00
.gitignore
3w-9xxx.c [SCSI] 3w-9xxx: fix iommu_iova leak 2011-09-26 09:28:58 -05:00
3w-9xxx.h Fix common misspellings 2011-03-31 11:26:23 -03:00
3w-sas.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
3w-sas.h
3w-xxxx.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
3w-xxxx.h Fix common misspellings 2011-03-31 11:26:23 -03:00
53c700_d.h_shipped Fix common misspellings 2011-03-31 11:26:23 -03:00
53c700.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
53c700.h
53c700.scr Fix common misspellings 2011-03-31 11:26:23 -03:00
a100u2w.c Merge branch 'master' into for-next 2010-12-22 18:57:02 +01:00
a100u2w.h
a2091.c scsi: Fix up files implicitly depending on module.h inclusion 2011-10-31 19:31:24 -04:00
a2091.h
a3000.c scsi: Fix up files implicitly depending on module.h inclusion 2011-10-31 19:31:24 -04:00
a3000.h
a4000t.c
advansys.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
aha152x.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
aha152x.h
aha1542.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
aha1542.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
aha1740.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
aha1740.h
aic7xxx_old.c Fix common misspellings 2011-03-31 11:26:23 -03:00
atari_NCR5380.c [SCSI] atari_NCR5380: Provide a dummy NCR5380_exit() 2011-06-29 15:11:21 -05:00
atari_scsi.c [SCSI] atari_NCR5380: Provide a dummy NCR5380_exit() 2011-06-29 15:11:21 -05:00
atari_scsi.h
atp870u.c SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
atp870u.h
BusLogic.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
BusLogic.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
bvme6000_scsi.c
ch.c Merge branch 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:52:56 -07:00
constants.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-05-23 09:12:26 -07:00
dc395x.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
dc395x.h Fix common misspellings 2011-03-31 11:26:23 -03:00
dmx3191d.c
dpt_i2o.c [SCSI] remove cmd->serial_number litter 2011-05-01 10:22:40 -05:00
dpti.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
dtc.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
dtc.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
eata_generic.h
eata_pio.c [SCSI] remove cmd->serial_number litter 2011-05-01 10:22:40 -05:00
eata_pio.h
eata.c [SCSI] remove cmd->serial_number litter 2011-05-01 10:22:40 -05:00
esp_scsi.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-05-23 09:12:26 -07:00
esp_scsi.h
fd_mcs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
fdomain.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
fdomain.h
FlashPoint.c Fix common misspellings 2011-03-31 11:26:23 -03:00
g_NCR5380_mmio.c
g_NCR5380.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
g_NCR5380.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
gdth_ioctl.h
gdth_proc.c [SCSI] gdth: Add missing call to gdth_ioctl_free 2010-12-31 09:50:09 -06:00
gdth_proc.h
gdth.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
gdth.h treewide: Fix comment and string typo 'bufer' 2011-12-06 09:53:40 +01:00
gvp11.c scsi: Fix up files implicitly depending on module.h inclusion 2011-10-31 19:31:24 -04:00
gvp11.h
hosts.c [SCSI] fix oops in all legacy host adapters caused by 6f381fa 2012-05-10 08:24:13 +01:00
hpsa_cmd.h [SCSI] hpsa: eliminate 8 external target limitation 2012-02-19 08:08:56 -06:00
hpsa.c [SCSI] hpsa: add some older controllers to the kdump blacklist 2012-02-19 09:40:51 -06:00
hpsa.h [SCSI] hpsa: factor out driver name 2012-02-19 08:08:55 -06:00
hptiop.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
hptiop.h
ibmmca.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
imm.c Fix common misspellings 2011-03-31 11:26:23 -03:00
imm.h
in2000.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
in2000.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
initio.c Fix common misspellings 2011-03-31 11:26:23 -03:00
initio.h Fix common misspellings 2011-03-31 11:26:23 -03:00
ipr.c [SCSI] libsas, libata: fix start of life for a sas ata_port 2012-04-23 12:11:47 +01:00
ipr.h [SCSI] ipr: Driver version 2.5.3 2012-03-28 15:09:28 +01:00
ips.c scsi: remove the second argument of k[un]map_atomic() 2012-03-20 21:48:19 +08:00
ips.h Fix common misspellings 2011-03-31 11:26:23 -03:00
iscsi_boot_sysfs.c switch ->is_visible() to returning umode_t 2012-01-03 22:54:55 -05:00
iscsi_tcp.c [SCSI] libiscsi_tcp: fix max_r2t manipulation 2012-02-19 08:09:00 -06:00
iscsi_tcp.h [SCSI] iscsi_tcp: use iscsi_conn_get_addr_param libiscsi function 2011-02-24 12:41:10 -05:00
jazz_esp.c misc latin1 to utf8 conversions 2012-01-02 13:04:55 +01:00
Kconfig SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
lasi700.c
libiscsi_tcp.c SCSI updates on 20120319 2012-03-22 12:55:29 -07:00
libiscsi.c [SCSI] libiscsi: fix cmd timeout/completion race 2012-02-19 08:09:00 -06:00
libsrp.c scsi: Fix up files implicitly depending on module.h inclusion 2011-10-31 19:31:24 -04:00
mac53c94.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
mac53c94.h
mac_esp.c mac_esp: rename irq 2012-01-22 14:50:03 +01:00
mac_scsi.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
mac_scsi.h
Makefile SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
megaraid.c scsi: remove the second argument of k[un]map_atomic() 2012-03-20 21:48:19 +08:00
megaraid.h Fix common misspellings 2011-03-31 11:26:23 -03:00
mesh.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
mesh.h
mvme16x_scsi.c
mvme147.c
mvme147.h
mvumi.c [SCSI] mvumi: Add Marvell UMI driver 2011-08-27 08:36:58 -06:00
mvumi.h [SCSI] mvumi: Add Marvell UMI driver 2011-08-27 08:36:58 -06:00
ncr53c8xx.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
ncr53c8xx.h
NCR53c406a.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
NCR5380.c Fix common misspellings 2011-03-31 11:26:23 -03:00
NCR5380.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
NCR_D700.c
NCR_D700.h
NCR_Q720.c
NCR_Q720.h
nsp32_debug.c treewide: fix a few typos in comments 2011-05-10 10:16:21 +02:00
nsp32_io.h
nsp32.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
nsp32.h Fix common misspellings 2011-03-31 11:26:23 -03:00
osst_detect.h
osst_options.h
osst.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
osst.h Fix common misspellings 2011-03-31 11:26:23 -03:00
pas16.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
pas16.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
pmcraid.c SCSI, pmcraid: Fix spelling error in a pmcraid_err() call 2011-12-15 16:35:38 +01:00
pmcraid.h scsi: Fix typo in pmcraid.h 2012-02-21 11:40:37 +01:00
ppa.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
ppa.h
ps3rom.c scsi: Fix up files implicitly depending on module.h inclusion 2011-10-31 19:31:24 -04:00
qla1280.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
qla1280.h
qlogicfas408.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
qlogicfas408.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
qlogicfas.c
qlogicpti.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
qlogicpti.h of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
raid_class.c
script_asm.pl
scsi_debug.c SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
scsi_devinfo.c [SCSI] Blacklist Traxdata CDR4120 and IOMEGA Zip drive to avoid lock ups. 2011-06-29 15:08:47 -05:00
scsi_error.c SCSI: Fix error handling when no ULD is attached 2012-04-15 11:08:53 -07:00
scsi_ioctl.c
scsi_lib_dma.c scsi: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:31:23 -04:00
scsi_lib.c [SCSI] scsi_lib: use correct DMA device in __scsi_alloc_queue 2012-04-22 18:56:18 +01:00
scsi_logging.h
scsi_module.c
scsi_netlink.c Merge branch 'for-linus' of git://selinuxproject.org/~jmorris/linux-security 2012-01-14 18:36:33 -08:00
scsi_pm.c [SCSI] scsi_pm: Fix bug in the SCSI power management handler 2012-02-18 08:54:19 -06:00
scsi_priv.h [SCSI] scsi_pm: Fix bug in the SCSI power management handler 2012-02-18 08:54:19 -06:00
scsi_proc.c scsi: fix scsi_proc new kernel-doc warning 2011-05-28 23:12:11 -07:00
scsi_sas_internal.h
scsi_scan.c Merge 3.3-rc7 into usb-next 2012-03-12 09:13:31 -07:00
scsi_sysctl.c
scsi_sysfs.c [SCSI] scsi: Added support for adapter and firmware reset 2011-08-27 08:36:46 -06:00
scsi_tgt_if.c scsi: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:31:23 -04:00
scsi_tgt_lib.c [SCSI] esp, scsi_tgt_lib, fcoe: use list_move() instead of list_del()/list_add() combination 2011-05-01 10:20:10 -05:00
scsi_tgt_priv.h
scsi_trace.c [SCSI] scsi_trace: Decode UNMAP bit in WRITE SAME(10) 2011-05-24 12:38:36 -04:00
scsi_transport_api.h
scsi_transport_fc_internal.h
scsi_transport_fc.c [SCSI] scsi_transport_fc: Add FDMI host attributes 2012-02-19 08:08:57 -06:00
scsi_transport_iscsi.c [SCSI] iscsi class: fix gfp use in ping compl and host event 2012-03-27 08:26:36 +01:00
scsi_transport_sas.c [SCSI] scsi_transport_sas: 'enable' phys on reset 2012-02-29 15:43:54 -06:00
scsi_transport_spi.c switch ->is_visible() to returning umode_t 2012-01-03 22:54:55 -05:00
scsi_transport_srp_internal.h
scsi_transport_srp.c
scsi_typedefs.h
scsi_wait_scan.c
scsi.c [SCSI] Handle disk devices which can not process medium access commands 2012-02-19 10:14:52 -06:00
scsi.h
scsicam.c fs: move code out of buffer.c 2012-01-03 22:54:07 -05:00
sd_dif.c scsi: remove the second argument of k[un]map_atomic() 2012-03-20 21:48:19 +08:00
sd.c SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
sd.h [SCSI] Handle disk devices which can not process medium access commands 2012-02-19 10:14:52 -06:00
ses.c [SCSI] ses: requesting a fault indication 2011-06-29 12:14:25 -05:00
sg.c [SCSI] sg: convert to kstrtoul_from_user() 2012-01-16 12:17:29 +04:00
sgiwd93.c update David Miller's old email address 2011-04-06 06:19:38 -07:00
sim710.c
sni_53c710.c misc latin1 to utf8 conversions 2012-01-02 13:04:55 +01:00
sr_ioctl.c scsi: Fix up files implicitly depending on module.h inclusion 2011-10-31 19:31:24 -04:00
sr_vendor.c
sr.c [SCSI] sr: check_events() ignore GET_EVENT when TUR says otherwise 2011-07-21 14:15:58 -07:00
sr.h [SCSI] sr: check_events() ignore GET_EVENT when TUR says otherwise 2011-07-21 14:15:58 -07:00
st_options.h
st.c SCSI updates on 20120331 2012-03-31 13:31:23 -07:00
st.h [SCSI] st: expand ability to write immediate filemarks 2012-03-27 08:26:34 +01:00
stex.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
storvsc_drv.c Merge branch 'kmap_atomic' of git://github.com/congwang/linux 2012-03-21 09:40:26 -07:00
sun3_NCR5380.c [SCSI] sun3: Remove commented out merge_contiguous_buffers 2011-06-29 15:15:05 -05:00
sun3_scsi_vme.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
sun3_scsi.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
sun3_scsi.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
sun3x_esp.c
sun_esp.c dt/sparc: Eliminate users of of_platform_{,un}register_driver 2011-02-28 01:36:39 -07:00
sym53c416.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
sym53c416.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
t128.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
t128.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
tmscsim.c [SCSI] remove cmd->serial_number litter 2011-05-01 10:22:40 -05:00
tmscsim.h
u14-34f.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
ultrastor.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
ultrastor.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
virtio_scsi.c [SCSI] virtio_scsi: fix TMF use-after-free 2012-05-10 08:27:06 +01:00
vmw_pvscsi.c [SCSI] vmw_pvscsi: Try setting host->max_id as suggested by the device. 2012-03-27 08:26:36 +01:00
vmw_pvscsi.h [SCSI] vmw_pvscsi: Try setting host->max_id as suggested by the device. 2012-03-27 08:26:36 +01:00
wd33c93.c Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-05-26 13:19:00 -07:00
wd33c93.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
wd7000.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
zalon.c
zorro7xx.c