android_kernel_samsung_msm8976/drivers/scsi
Subhash Jadavani 8b9e5f6832 scsi: ufs: optimize system suspend handling
Consider following sequence of events:
1. UFS is runtime suspended, link_state = Hibern8, device_state = sleep
2. System goes into system suspend, ufshcd_system_suspend() brings both
   link and device to active state and then puts the device in Power_Down
   state and link in OFF state.
3. System resumes at some later point in time, ufshcd_system_resume()
   doesn't do anything as UFS state is runtime suspended. Note that link
   is still on OFF state and device is in Power_Down state.
4. Now system again goes into suspend without any UFS accesses before it.
   ufshcd_system_suspend() again brings both link and device to active
   state and then puts the device in Power_Down state and link if OFF
   state. But it's unnecessary to bring the link & device in active state
   as both link and device are already in desired low power states. This
   change fixes this issue by adding proper state checks in
   ufshcd_system_suspend().

Change-Id: I6ada697f5f844724e0da77fa960401d1d6a1288e
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
2014-11-25 10:21:13 -08:00
..
aacraid SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
aic7xxx
aic7xxx_old
aic94xx
arcmsr SCSI: arcmsr: upper 32 of dma address lost 2014-05-06 07:55:30 -07:00
arm
be2iscsi
bfa SCSI: bfa: Chinook quad port 16G FC HBA claim issue 2014-02-06 11:08:17 -08:00
bnx2fc
bnx2i
csiostor
cxgbi
device_handler
dpt
fcoe
fnic
ibmvscsi ibmvscsi: Add memory barriers for send / receive 2014-07-09 11:13:59 -07:00
isci arch: Mass conversion of smp_mb__*() 2014-08-15 11:45:28 -07:00
libfc
libsas SCSI: libsas: fix usage of ata_tf_to_fis 2013-12-11 22:36:27 -08:00
lpfc
megaraid SCSI: megaraid: Use resource_size_t for PCI resources, not long 2014-06-16 13:42:53 -07:00
mpt2sas mpt2sas: Don't disable device twice at suspend. 2014-05-13 13:59:41 +02:00
mpt3sas SCSI: Allow MPT Fusion SAS 3.0 driver to be built into the kernel 2013-09-26 17:18:01 -07:00
mvsas
osd
pcmcia
pm8001 SCSI: pm80xx: fix Adaptec 71605H hang 2013-09-07 22:09:58 -07:00
qla2xxx SCSI: qla2xxx: fix error handling of qla2x00_mem_alloc() 2014-05-06 07:55:30 -07:00
qla4xxx
sym53c8xx_2 sym53c8xx_2: Set DID_REQUEUE return code when aborting squeue 2014-07-09 11:14:03 -07:00
ufs scsi: ufs: optimize system suspend handling 2014-11-25 10:21:13 -08:00
.gitignore
3w-9xxx.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
3w-9xxx.h
3w-sas.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
3w-sas.h
3w-xxxx.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
3w-xxxx.h
53c700.c
53c700.h
53c700.scr
53c700_d.h_shipped
a100u2w.c
a100u2w.h
a2091.c
a2091.h
a3000.c
a3000.h
a4000t.c
advansys.c
aha152x.c
aha152x.h
aha1542.c
aha1542.h
aha1740.c
aha1740.h
aic7xxx_old.c
atari_NCR5380.c
atari_scsi.c
atari_scsi.h
atp870u.c
atp870u.h
BusLogic.c
BusLogic.h
bvme6000_scsi.c
ch.c
constants.c
dc395x.c
dc395x.h
dmx3191d.c
dpt_i2o.c
dpti.h
dtc.c
dtc.h
eata.c
eata_generic.h
eata_pio.c
eata_pio.h
esp_scsi.c esp_scsi: Fix tag state corruption when autosensing. 2013-10-13 16:08:32 -07:00
esp_scsi.h esp_scsi: Fix tag state corruption when autosensing. 2013-10-13 16:08:32 -07:00
fdomain.c
fdomain.h
FlashPoint.c
g_NCR5380.c
g_NCR5380.h
g_NCR5380_mmio.c
gdth.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
gdth.h
gdth_ioctl.h
gdth_proc.c
gdth_proc.h
gvp11.c
gvp11.h
hosts.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
hpsa.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
hpsa.h
hpsa_cmd.h
hptiop.c
hptiop.h
imm.c
imm.h
in2000.c
in2000.h
initio.c
initio.h
ipr.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
ipr.h
ips.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
ips.h
iscsi_boot_sysfs.c
iscsi_tcp.c
iscsi_tcp.h
jazz_esp.c
Kconfig
lasi700.c
libiscsi.c
libiscsi_tcp.c
libsrp.c
mac53c94.c
mac53c94.h
mac_esp.c
mac_scsi.c
mac_scsi.h
Makefile
megaraid.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
megaraid.h
mesh.c
mesh.h
mvme16x_scsi.c
mvme147.c
mvme147.h
mvumi.c
mvumi.h
ncr53c8xx.c
ncr53c8xx.h
NCR53c406a.c
NCR5380.c
NCR5380.h
NCR_D700.c
NCR_D700.h
NCR_Q720.c
NCR_Q720.h
nsp32.c
nsp32.h
nsp32_debug.c
nsp32_io.h
osst.c
osst.h
osst_detect.h
osst_options.h
pas16.c
pas16.h
pmcraid.c SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers 2013-12-11 22:36:28 -08:00
pmcraid.h
ppa.c
ppa.h
ps3rom.c
qla1280.c
qla1280.h
qlogicfas.c
qlogicfas408.c
qlogicfas408.h
qlogicpti.c
qlogicpti.h
raid_class.c
script_asm.pl
scsi.c
scsi.h
scsi_debug.c
scsi_devinfo.c
scsi_error.c
scsi_ioctl.c
scsi_lib.c
scsi_lib_dma.c
scsi_logging.h
scsi_module.c
scsi_netlink.c net: Use netlink_ns_capable to verify the permisions of netlink messages 2014-06-26 15:12:37 -04:00
scsi_pm.c scsi: pm: keep request queue and scsi device runtime status in sync 2014-11-18 18:50:37 -08:00
scsi_priv.h
scsi_proc.c
scsi_sas_internal.h
scsi_scan.c Merge upstream tag 'v3.10.49' into msm-3.10 2014-08-20 13:23:09 -07:00
scsi_sysctl.c
scsi_sysfs.c Merge upstream tag 'v3.10.49' into msm-3.10 2014-08-20 13:23:09 -07:00
scsi_tgt_if.c
scsi_tgt_lib.c
scsi_tgt_priv.h
scsi_trace.c
scsi_transport_api.h
scsi_transport_fc.c
scsi_transport_fc_internal.h
scsi_transport_iscsi.c
scsi_transport_sas.c
scsi_transport_spi.c
scsi_transport_srp.c
scsi_transport_srp_internal.h
scsi_typedefs.h
scsicam.c
sd.c scsi: sd: reduce log level for suspend/resume log messages 2014-11-21 14:52:56 -08:00
sd.h scsi: sd: separate timeout for discard command 2014-11-05 16:21:10 -08:00
sd_dif.c
ses.c
sg.c
sgiwd93.c
sim710.c
sni_53c710.c
sr.c
sr.h
sr_ioctl.c
sr_vendor.c
st.c
st.h
st_options.h
stex.c
storvsc_drv.c SCSI: storvsc: NULL pointer dereference fix 2014-03-23 21:38:19 -07:00
sun3_NCR5380.c
sun3_scsi.c
sun3_scsi.h
sun3_scsi_vme.c
sun3x_esp.c
sun_esp.c
sym53c416.c
sym53c416.h
t128.c
t128.h
tmscsim.c
tmscsim.h
u14-34f.c
ultrastor.c
ultrastor.h
virtio_scsi.c virtio-scsi: fix various bad behavior on aborted requests 2014-07-09 11:13:59 -07:00
vmw_pvscsi.c
vmw_pvscsi.h
wd33c93.c
wd33c93.h
wd7000.c
zalon.c
zorro7xx.c