linux/drivers/scsi
Sujit Reddy Thumma 1d337ec2f3 ufs: improve init sequence
In ->hce_enable_notify() callback the vendor specific initialization
may carry out additional DME configuration using UIC commands and
hence the UIC command completion interrupt enable bit should be set
before the post reset notification.
Add retries if the link-startup fails. This is required since due to
hardware timing issues, the Uni-Pro link-startup might fail. The UFS
HCI recovery procedure contradicts the Uni-Pro sequence. The UFS HCI
specifies to resend DME_LINKSTARTUP command after IS.ULLS (link-lost
interrupt) is received. The Uni-Pro specifies that if link-startup
fails the link is in "down" state. The link-lost is indicated to the
DME user only when the link is up. Hence, the UFS HCI recovery procedure
of waiting for IS.ULLS and retrying link-startup may not work properly.

At the end, if detection fails, power off (disable clocks, regulators,
phy) if the UFS device detection fails. This saves power while UFS device
is not embedded into the system.

Signed-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>
Signed-off-by: Dolev Raviv <draviv@codeaurora.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-10-01 13:11:21 +02:00
..
aacraid scsi: add use_cmd_list flag 2014-09-15 16:01:58 -07:00
aic7xxx aic7xxx: Use kstrdup 2014-07-25 17:16:54 -04:00
aic94xx [SCSI] libsas: implement > 16 byte CDB support 2013-06-04 11:15:59 -07:00
arcmsr arcmsr: simplify ioctl data read/write 2014-09-25 14:23:40 +02:00
arm scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
be2iscsi be2iscsi: check ip buffer before copying 2014-09-30 09:29:55 +02:00
bfa bfa: Use pci_enable_msix_exact() instead of pci_enable_msix() 2014-07-29 08:38:52 -04:00
bnx2fc bnx2fc: fix incorrect DMA memory mapping in bnx2fc_unmap_sg_list() 2014-09-16 09:10:14 -07:00
bnx2i bnx2i: Make boot_nic entry visible in the sysfs session objects 2014-09-16 09:14:12 -07:00
csiostor csiostor: Use pci_enable_msix_range() instead of pci_enable_msix() 2014-09-16 09:09:56 -07:00
cxgbi cxgb4i: avoid holding mutex in interrupt context 2014-09-22 16:46:13 +02:00
device_handler block: add blk_rq_set_block_pc() 2014-06-06 07:57:37 -06:00
dpt
esas2r esas2r: Fix comment 2014-05-19 19:12:23 +02:00
fcoe fcoe: extend ethtool to FC port speed mapping 2014-09-30 09:28:36 +02:00
fnic fnic: assign FIP_ALL_FCF_MACS to fcoe_all_fcfs 2014-09-16 09:10:02 -07:00
ibmvscsi ibmvfc: fix little endian issues 2014-07-25 17:16:55 -04:00
isci PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
libfc libfc: Replace rcu_assign_pointer() with RCU_INIT_POINTER() 2014-09-30 09:28:36 +02:00
libsas scsi: convert host_busy to atomic_t 2014-07-25 07:43:43 -04:00
lpfc lpfc: update lpfc version to driver version 10.4.8000.0 2014-09-16 09:10:14 -07:00
megaraid megaraid_sas : Driver version update 2014-09-16 09:19:29 -07:00
mpt2sas mpt2sas: fix undefined reference to `__udivdi3' compilation errors 2014-09-22 16:35:45 +02:00
mpt3sas mpt3sas, mpt2sas: fix scsi_add_host error handling problems in _scsih_probe 2014-09-16 09:14:21 -07:00
mvsas Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2014-08-06 21:03:53 -07:00
osd block: add blk_rq_set_block_pc() 2014-06-06 07:57:37 -06:00
pcmcia scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
pm8001 pm8001: Update nvmd response data to request buffer 2014-09-16 09:09:48 -07:00
qla2xxx qla2xxx: Add memory barrier before ringing doorbell. 2014-09-25 14:25:08 +02:00
qla4xxx qla4xxx: fix get_host_stats error propagation 2014-08-01 08:16:39 -04:00
sym53c8xx_2 scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
ufs ufs: improve init sequence 2014-10-01 13:11:21 +02:00
.gitignore
3w-9xxx.c [SCSI] Disable WRITE SAME for RAID and virtual host adapter drivers 2013-11-29 08:48:39 +04:00
3w-9xxx.h
3w-sas.c scsi: use pci_zalloc_consistent 2014-08-08 15:57:29 -07:00
3w-sas.h
3w-xxxx.c [SCSI] Disable WRITE SAME for RAID and virtual host adapter drivers 2013-11-29 08:48:39 +04:00
3w-xxxx.h 3w-xxxx: fix mis-aligned struct accesses 2014-07-25 17:16:56 -04:00
53c700_d.h_shipped
53c700.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
53c700.h
53c700.scr
a100u2w.c scsi: use pci_zalloc_consistent 2014-08-08 15:57:29 -07:00
a100u2w.h
a2091.c zorro: ZTWO_VADDR() should return "void __iomem *" 2013-11-26 11:09:07 +01:00
a2091.h
a3000.c zorro: ZTWO_VADDR() should return "void __iomem *" 2013-11-26 11:09:07 +01:00
a3000.h
a4000t.c zorro: ZTWO_VADDR() should return "void __iomem *" 2013-11-26 11:09:07 +01:00
advansys.c scsi: convert host_busy to atomic_t 2014-07-25 07:43:43 -04:00
aha152x.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
aha152x.h
aha1542.c
aha1542.h
aha1740.c aha1740: switch to ->show_info() 2013-04-09 14:13:23 -04:00
aha1740.h
atari_NCR5380.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
atari_scsi.c SCSI for-linus on 20140609 2014-06-09 18:54:06 -07:00
atari_scsi.h scsi/NCR5380: remove unused macro definitions 2014-05-28 12:11:08 +02:00
atp870u.c SCSI: remove unnecessary pci_set_drvdata() 2013-10-14 15:26:04 +02:00
atp870u.h
BusLogic.c PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
BusLogic.h [SCSI] BusLogic: Port driver to 64-bit. 2013-06-26 18:32:47 -07:00
bvme6000_scsi.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
ch.c scsi: Implement ch_printk() 2014-07-17 22:07:40 +02:00
constants.c [SCSI] scsi constants: command, sense key + additional sense strings 2013-07-09 22:52:29 +01:00
dc395x.c scsi: use 64-bit value for 'max_luns' 2014-07-17 22:07:38 +02:00
dc395x.h
dmx3191d.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
dpt_i2o.c scsi: add use_cmd_list flag 2014-09-15 16:01:58 -07:00
dpti.h scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
dtc.c scsi/NCR5380: fix and standardize NDEBUG macros 2014-05-28 12:10:43 +02:00
dtc.h NCR5830: switch to ->show_info() 2013-04-09 14:13:17 -04:00
eata_generic.h
eata_pio.c [SCSI] remove deprecated IRQF_DISABLED from SCSI 2014-03-19 15:04:44 -07:00
eata_pio.h
eata.c eata: remove driver_lock 2014-09-16 09:09:38 -07:00
esp_scsi.c esp_scsi: Fix tag state corruption when autosensing. 2013-08-01 18:08:34 -07:00
esp_scsi.h esp_scsi: Fix tag state corruption when autosensing. 2013-08-01 18:08:34 -07:00
fdomain.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
fdomain.h
FlashPoint.c [SCSI] BusLogic: Port driver to 64-bit. 2013-06-26 18:32:47 -07:00
g_NCR5380_mmio.c
g_NCR5380.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
g_NCR5380.h scsi/NCR5380: remove old CVS keywords 2014-05-28 12:05:37 +02:00
gdth_ioctl.h
gdth_proc.c gdth: switch to ->show_info() 2013-04-09 14:13:16 -04:00
gdth_proc.h gdth: switch to ->show_info() 2013-04-09 14:13:16 -04:00
gdth.c [SCSI] remove deprecated IRQF_DISABLED from SCSI 2014-03-19 15:04:44 -07:00
gdth.h gdth: switch to ->show_info() 2013-04-09 14:13:16 -04:00
gvp11.c zorro: ZTWO_VADDR() should return "void __iomem *" 2013-11-26 11:09:07 +01:00
gvp11.h
hosts.c scsi: add support for a blk-mq based I/O path. 2014-07-25 17:16:28 -04:00
hpsa_cmd.h hpsa: fix handling of hpsa_volume_offline return value 2014-06-02 09:55:02 +02:00
hpsa.c hpsa: add missing pci_set_master in kdump path 2014-09-25 14:23:41 +02:00
hpsa.h hpsa: fix event filtering to prevent excessive rescans with old firmware 2014-06-02 09:54:59 +02:00
hptiop.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
hptiop.h [SCSI] hptiop: Support HighPoint RR4520/RR4522 HBA 2012-11-27 08:59:43 +04:00
imm.c imm: switch to ->show_info() 2013-04-09 14:13:16 -04:00
imm.h
in2000.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
in2000.h
initio.c [SCSI] remove deprecated IRQF_DISABLED from SCSI 2014-03-19 15:04:44 -07:00
initio.h
ipr.c ipr: don't log error messages when applications issues illegal requests 2014-09-25 14:23:18 +02:00
ipr.h ipr: fix compile failure 2014-09-26 10:07:27 +02:00
ips.c [SCSI] Disable WRITE SAME for RAID and virtual host adapter drivers 2013-11-29 08:48:39 +04:00
ips.h ips: switch to ->show_info() 2013-04-09 14:13:27 -04:00
iscsi_boot_sysfs.c [SCSI] iscsi_boot_sysfs: Fix a memory leak in iscsi_boot_destroy_kset() 2014-03-15 10:19:19 -07:00
iscsi_tcp.c iscsi_tcp: export port being used 2014-09-30 09:29:55 +02:00
iscsi_tcp.h net: Fix use after free by removing length arg from sk_data_ready callbacks. 2014-04-11 16:15:36 -04:00
jazz_esp.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
Kconfig advansys: don't build ARM 2014-07-25 17:16:55 -04:00
lasi700.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
libiscsi_tcp.c [SCSI] libiscsi: Reduce locking contention in fast path 2014-03-15 10:19:18 -07:00
libiscsi.c iscsi_tcp: export port being used 2014-09-30 09:29:55 +02:00
mac53c94.c
mac53c94.h
mac_esp.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
mac_scsi.c scsi/NCR5380: fix and standardize NDEBUG macros 2014-05-28 12:10:43 +02:00
mac_scsi.h scsi/NCR5380: remove old CVS keywords 2014-05-28 12:05:37 +02:00
Makefile tgt: removal 2014-07-17 22:07:44 +02:00
megaraid.c scsi: use 64-bit value for 'max_luns' 2014-07-17 22:07:38 +02:00
megaraid.h [SCSI] megaraid: simplify internal command handling 2014-03-27 08:26:31 -07:00
mesh.c scsi: use pci_zalloc_consistent 2014-08-08 15:57:29 -07:00
mesh.h
mvme16x_scsi.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
mvme147.c switch wd33c93 to ->show_info() 2013-04-09 14:13:15 -04:00
mvme147.h
mvumi.c PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
mvumi.h [SCSI] mvumi: Use PCI_VENDOR_ID_MARVELL_EXT for 0x1b4b 2013-04-15 14:30:44 -06:00
ncr53c8xx.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
ncr53c8xx.h scsi: Remove CONFIG_SCSI_MULTI_LUN 2014-07-17 22:07:35 +02:00
NCR53c406a.c NCR53c406a: don't call free_dma() by default 2014-07-25 17:16:56 -04:00
NCR5380.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
NCR5380.h scsi/NCR5380: dprintk macro 2014-05-28 18:14:16 +02:00
NCR_D700.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
NCR_D700.h
NCR_Q720.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
NCR_Q720.h
nsp32_debug.c
nsp32_io.h
nsp32.c scsi: fix decimal printf format specifiers prefixed with 0x 2014-09-16 09:09:45 -07:00
nsp32.h
osst_detect.h
osst_options.h
osst.c block: add blk_rq_set_block_pc() 2014-06-06 07:57:37 -06:00
osst.h
pas16.c pas16: don't call free_dma() 2014-07-25 17:16:55 -04:00
pas16.h scsi/NCR5380: remove redundant HOSTS_C macro tests 2014-05-28 12:05:36 +02:00
pmcraid.c pmcraid: Use pci_enable_msix_range() instead of pci_enable_msix() 2014-09-16 09:09:57 -07:00
pmcraid.h
ppa.c ppa: switch to ->show_info() 2013-04-09 14:13:17 -04:00
ppa.h
ps3rom.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
qla1280.c x86, platforms: Remove SGI Visual Workstation 2014-02-27 08:07:39 -08:00
qla1280.h
qlogicfas408.c
qlogicfas408.h
qlogicfas.c qlogicfas: don't call free_dma() 2014-07-25 17:16:55 -04:00
qlogicpti.c scsi: convert host_busy to atomic_t 2014-07-25 07:43:43 -04:00
qlogicpti.h
raid_class.c
script_asm.pl
scsi_debug.c scsi_debug: deadlock between completions and surprise module removal 2014-09-30 09:34:37 +02:00
scsi_devinfo.c scsi: do not issue SCSI RSOC command to Promise Vtrak E610f 2014-07-29 18:01:10 -04:00
scsi_error.c scsi: fix various kernel-doc problems in scsi_error.c 2014-09-15 16:01:57 -07:00
scsi_ioctl.c scsi: use dev_printk() variants for ioctl 2014-07-17 22:07:41 +02:00
scsi_lib_dma.c
scsi_lib.c scsi: add use_cmd_list flag 2014-09-15 16:01:58 -07:00
scsi_logging.h
scsi_module.c
scsi_netlink.c net: Use netlink_ns_capable to verify the permisions of netlink messages 2014-04-24 13:44:54 -04:00
scsi_pm.c scsi: async sd resume 2014-04-10 15:30:35 -07:00
scsi_priv.h scsi: add support for a blk-mq based I/O path. 2014-07-25 17:16:28 -04:00
scsi_proc.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
scsi_sas_internal.h
scsi_scan.c scsi: don't add scsi_device if its already visible 2014-10-01 13:11:08 +02:00
scsi_sysctl.c scsi: convert use of typedef ctl_table to struct ctl_table 2014-06-06 16:08:16 -07:00
scsi_sysfs.c scsi: balance out autopm get/put calls in scsi_sysfs_add_sdev() 2014-09-15 16:02:05 -07:00
scsi_trace.c tracing: Add trace_seq_buffer_ptr() helper function 2014-07-01 07:13:39 -04:00
scsi_transport_api.h
scsi_transport_fc.c scsi: add defines for new FC port speeds. 2014-07-25 17:16:54 -04:00
scsi_transport_iscsi.c iscsi class: Fix freeing of skb in get host error path 2014-08-04 13:16:14 +02:00
scsi_transport_sas.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
scsi_transport_spi.c
scsi_transport_srp.c Main set of InfiniBand/RDMA updates for 3.17 merge window: 2014-08-14 11:09:05 -06:00
scsi_typedefs.h
scsi.c scsi: don't store LUN bits in CDB[1] for USB mass-storage devices 2014-09-15 16:01:58 -07:00
scsi.h
scsicam.c
sd_dif.c bio-integrity: Convert to bvec_iter 2013-11-23 22:33:50 -08:00
sd.c scsi: balance out autopm get/put calls in scsi_sysfs_add_sdev() 2014-09-15 16:02:05 -07:00
sd.h sd: Limit transfer length 2014-07-17 22:07:33 +02:00
ses.c [SCSI] ses: Use vpd information from scsi_device 2014-03-27 08:26:31 -07:00
sg.c scsi: convert device_busy to atomic_t 2014-07-25 07:43:45 -04:00
sgiwd93.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
sim710.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
sni_53c710.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
sr_ioctl.c scsi: Implement sr_printk() 2014-07-17 22:07:39 +02:00
sr_vendor.c scsi: Implement sr_printk() 2014-07-17 22:07:39 +02:00
sr.c scsi: balance out autopm get/put calls in scsi_sysfs_add_sdev() 2014-09-15 16:02:05 -07:00
sr.h scsi: move the writeable field from struct scsi_device to struct scsi_cd 2014-07-25 17:16:41 -04:00
st_options.h
st.c scsi: balance out autopm get/put calls in scsi_sysfs_add_sdev() 2014-09-15 16:02:05 -07:00
st.h [SCSI] st: raise device limit 2012-09-14 17:59:29 +01:00
stex.c SCSI: remove unnecessary pci_set_drvdata() 2013-10-14 15:26:04 +02:00
storvsc_drv.c storvsc: get rid of overly verbose warning messages 2014-09-22 16:36:06 +02:00
sun3_NCR5380.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
sun3_scsi_vme.c scsi/NCR5380: merge sun3_scsi_vme.c into sun3_scsi.c 2014-05-28 12:16:28 +02:00
sun3_scsi.c scsi/NCR5380: merge sun3_scsi_vme.c into sun3_scsi.c 2014-05-28 12:16:28 +02:00
sun3_scsi.h scsi/NCR5380: reduce depth of sun3_scsi nested includes 2014-05-28 12:11:33 +02:00
sun3x_esp.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
sun_esp.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
sym53c416.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
sym53c416.h
t128.c scsi/NCR5380: remove old CVS keywords 2014-05-28 12:05:37 +02:00
t128.h scsi/NCR5380: remove old CVS keywords 2014-05-28 12:05:37 +02:00
tmscsim.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
tmscsim.h [SCSI] tmscsim: Move 'last_reset' into host structure 2013-10-25 11:51:37 +01:00
u14-34f.c scsi: fix u14-34f printk format warnings 2014-08-01 08:18:37 -04:00
ultrastor.c
ultrastor.h
virtio_scsi.c virtio-scsi: Implement change_queue_depth for virtscsi targets 2014-07-25 17:17:00 -04:00
vmw_pvscsi.c vmw_pvscsi: Use pci_enable_msix_exact() instead of pci_enable_msix() 2014-07-29 08:38:53 -04:00
vmw_pvscsi.h [SCSI] vmw_pvscsi: Some improvements in pvscsi driver. 2014-03-19 15:04:46 -07:00
wd33c93.c scsi: use 64-bit LUNs 2014-07-17 22:07:37 +02:00
wd33c93.h switch wd33c93 to ->show_info() 2013-04-09 14:13:15 -04:00
wd7000.c [SCSI] remove deprecated IRQF_DISABLED from SCSI 2014-03-19 15:04:44 -07:00
zalon.c Drivers: scsi: remove __dev* attributes. 2013-01-03 15:57:01 -08:00
zorro7xx.c zorro: ZTWO_VADDR() should return "void __iomem *" 2013-11-26 11:09:07 +01:00