linux/drivers/scsi
Tejun Heo e318049949 [PATCH] libata-eh-fw: implement freeze/thaw
Freezing is performed atomic w.r.t. host_set->lock and once frozen
LLDD is not allowed to access the port or any qc on it.  Also, libata
makes sure that no new qc gets issued to a frozen port.

A frozen port is thawed after a reset operation completes
successfully, so reset methods must do its job while the port is
frozen.  During initialization all ports get frozen before requesting
IRQ, so reset methods are always invoked on a frozen port.

Optional ->freeze and ->thaw operations notify LLDD that the port is
being frozen and thawed, respectively.  LLDD can disable/enable
hardware interrupt in these callbacks if the controller's IRQ mask can
be changed dynamically.  If the controller doesn't allow such
operation, LLDD can check for frozen state in the interrupt handler
and ack/clear interrupts unconditionally while frozen.

Signed-off-by: Tejun Heo <htejun@gmail.com>
2006-05-15 20:58:09 +09:00
..
aacraid [SCSI] aacraid: Driver version update 2006-04-13 10:13:21 -05:00
aic7xxx [SCSI] aic79xx: target hotplug fixes 2006-04-13 13:23:11 -05:00
aic7xxx_old
arm
dpt
ibmvscsi [SCSI] ibmvscsi: remove drivers/scsi/ibmvscsi/srp.h 2006-04-13 13:21:51 -05:00
lpfc
megaraid
pcmcia
qla2xxx
sym53c8xx_2 [SCSI] sym2: Fix build when spinlock debugging is enabled 2006-04-13 10:13:30 -05:00
.gitignore
3w-9xxx.c [SCSI] 3ware 9000 disable local irqs during kmap_atomic 2006-04-13 13:27:38 -05:00
3w-9xxx.h
3w-xxxx.c
3w-xxxx.h
53c7xx.c
53c7xx.h
53c7xx.scr
53c7xx_d.h_shipped
53c7xx_u.h_shipped
53c700.c
53c700.h
53c700.scr
53c700_d.h_shipped
a100u2w.c
a100u2w.h
a2091.c
a2091.h
a3000.c
a3000.h
advansys.c
advansys.h
aha152x.c
aha152x.h
aha1542.c
aha1542.h
aha1740.c
aha1740.h
ahci.c [PATCH] libata: use ATA printk helpers 2006-05-15 20:57:56 +09:00
aic7xxx_old.c
amiga7xx.c
amiga7xx.h
ata_piix.c [PATCH] libata: use ATA printk helpers 2006-05-15 20:57:56 +09:00
atari_dma_emul.c
atari_NCR5380.c
atari_scsi.c
atari_scsi.h
atp870u.c
atp870u.h
blz1230.c
blz2060.c
BusLogic.c
BusLogic.h
bvme6000.c
bvme6000.h
ch.c
constants.c
cyberstorm.c
cyberstormII.c
dc395x.c
dc395x.h
dec_esp.c
dmx3191d.c
dpt_i2o.c
dpti.h
dtc.c
dtc.h
eata.c
eata_generic.h
eata_pio.c
eata_pio.h
esp.c
esp.h
fastlane.c
fcal.c
fcal.h
fd_mcs.c
fdomain.c
fdomain.h
FlashPoint.c
g_NCR5380.c
g_NCR5380.h
g_NCR5380_mmio.c
gdth.c
gdth.h
gdth_ioctl.h
gdth_kcompat.h
gdth_proc.c
gdth_proc.h
gvp11.c
gvp11.h
hosts.c
hosts.h
ibmmca.c
ibmmca.h
ide-scsi.c
imm.c
imm.h
in2000.c
in2000.h
initio.c
initio.h
ipr.c [SCSI] ipr: Reset device cleanup 2006-04-13 10:13:29 -05:00
ipr.h [SCSI] ipr: Bump version 2006-04-13 10:13:30 -05:00
ips.c
ips.h
iscsi_tcp.c
iscsi_tcp.h
jazz_esp.c
Kconfig [SCSI] Change Kconfig option from IOMAPPED to MMIO 2006-04-13 10:13:22 -05:00
lasi700.c
libata-bmdma.c
libata-core.c [PATCH] libata-eh-fw: implement freeze/thaw 2006-05-15 20:58:09 +09:00
libata-eh.c [PATCH] libata-eh-fw: implement freeze/thaw 2006-05-15 20:58:09 +09:00
libata-scsi.c [PATCH] libata-eh-fw: implement ata_port_schedule_eh() and ata_port_abort() 2006-05-15 20:58:07 +09:00
libata.h [PATCH] libata-eh-fw: implement ata_port_schedule_eh() and ata_port_abort() 2006-05-15 20:58:07 +09:00
mac53c94.c
mac53c94.h
mac_esp.c
mac_scsi.c
mac_scsi.h
Makefile Merge branch 'master' 2006-04-18 04:54:00 -04:00
mca_53c9x.c
megaraid.c
megaraid.h
mesh.c
mesh.h
mvme16x.c
mvme16x.h
mvme147.c
mvme147.h
ncr53c8xx.c
ncr53c8xx.h
NCR53C9x.c
NCR53C9x.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
oktagon_esp.c
oktagon_io.S
osst.c
osst.h
osst_detect.h
osst_options.h
pas16.c
pas16.h
pci2000.h
pdc_adma.c
pluto.c
pluto.h
ppa.c
ppa.h
psi240i.c
psi240i.h
psi_chip.h
ql1040_fw.h
ql1280_fw.h
ql12160_fw.h
qla1280.c
qla1280.h
qlogicfas.c
qlogicfas408.c
qlogicfas408.h
qlogicpti.c
qlogicpti.h
qlogicpti_asm.c
raid_class.c
sata_mv.c [PATCH] libata: use ATA printk helpers 2006-05-15 20:57:56 +09:00
sata_nv.c
sata_promise.c [PATCH] libata: use ATA printk helpers 2006-05-15 20:57:56 +09:00
sata_promise.h
sata_qstor.c
sata_sil.c [PATCH] libata: use ATA printk helpers 2006-05-15 20:57:56 +09:00
sata_sil24.c [PATCH] libata: use ATA printk helpers 2006-05-15 20:57:56 +09:00
sata_sis.c
sata_svw.c
sata_sx4.c [PATCH] libata: use ATA printk helpers 2006-05-15 20:57:56 +09:00
sata_uli.c
sata_via.c
sata_vsc.c
script_asm.pl
scsi.c [PATCH] SCSI: Introduce scsi_req_abort_cmd (REPOST) 2006-05-15 20:57:18 +09:00
scsi.h
scsi_debug.c
scsi_debug.h
scsi_devinfo.c [SCSI] add SCSI_UNKNOWN and LUN transfer limit restrictions 2006-04-13 10:13:31 -05:00
scsi_error.c [PATCH] SCSI: implement shost->host_eh_scheduled 2006-05-15 20:57:20 +09:00
scsi_ioctl.c [SCSI] unify SCSI_IOCTL_SEND_COMMAND implementations 2006-04-13 10:13:15 -05:00
scsi_lib.c [PATCH] SCSI: implement shost->host_eh_scheduled 2006-05-15 20:57:20 +09:00
scsi_logging.h
scsi_module.c
scsi_priv.h [PATCH] SCSI: implement shost->host_eh_scheduled 2006-05-15 20:57:20 +09:00
scsi_proc.c
scsi_sas_internal.h [SCSI] expose sas internal class for the domain transport 2006-04-13 10:13:27 -05:00
scsi_scan.c [SCSI] add SCSI_UNKNOWN and LUN transfer limit restrictions 2006-04-13 10:13:31 -05:00
scsi_sysctl.c
scsi_sysfs.c
scsi_transport_fc.c [SCSI] FC transport: fixes for workq deadlocks 2006-04-13 13:25:16 -05:00
scsi_transport_iscsi.c
scsi_transport_sas.c [SCSI] scsi_transport_sas: don't scan a non-existent end device 2006-04-14 15:33:41 -05:00
scsi_transport_spi.c
scsi_typedefs.h
scsicam.c
sd.c
seagate.c
seagate.h
sg.c [SCSI] sg: fix leak when dio setup fails 2006-04-13 10:13:27 -05:00
sgiwd93.c
sim710.c
sr.c
sr.h
sr_ioctl.c
sr_vendor.c
st.c
st.h
st_options.h
sun3_NCR5380.c
sun3_scsi.c
sun3_scsi.h
sun3_scsi_vme.c
sun3x_esp.c
sym53c416.c
sym53c416.h
t128.c
t128.h
tmscsim.c
tmscsim.h
u14-34f.c
ultrastor.c
ultrastor.h
wd33c93.c
wd33c93.h
wd7000.c
zalon.c