aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi
AgeCommit message (Collapse)AuthorFilesLines
2006-06-22Merge branch 'master' into upstreamJeff Garzik122-45064/+6361
Conflicts: drivers/scsi/libata-core.c drivers/scsi/libata-scsi.c include/linux/pci_ids.h
2006-06-22IB/iser: iSER Kconfig and MakefileOr Gerlitz1-0/+1
Kconfig and Makefile for iSER. Signed-off-by: Or Gerlitz <[email protected]> Signed-off-by: Roland Dreier <[email protected]>
2006-06-21[PATCH] PCI: Move various PCI IDs to header fileBrent Casavant2-29/+6
Move various QLogic, Vitesse, and Intel storage controller PCI IDs to the main header file. Signed-off-by: Brent Casavant <[email protected]> Acked-by: Jes Sorensen <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-06-21Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6Linus Torvalds119-45024/+6349
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (85 commits) [SCSI] 53c700: remove reliance on deprecated cmnd fields [SCSI] hptiop: don't use cmnd->bufflen [SCSI] hptiop: HighPoint RocketRAID 3xxx controller driver [SCSI] aacraid: small misc. cleanups [SCSI] aacraid: Update supported product information [SCSI] aacraid: Fix return code interpretation [SCSI] scsi_transport_sas: fix panic in sas_free_rphy [SCSI] remove RQ_SCSI_* flags [SCSI] remove scsi_request infrastructure [SCSI] mptfusion: change driver revision to 3.03.10 [SCSI] mptfc: abort of board reset leaves port dead requiring reboot [SCSI] mptfc: fix fibre channel infinite request/response loop [SCSI] mptfc: set fibre channel fw target missing timers to one second [SCSI] mptfusion: move fc event/reset handling to mptfc [SCSI] spi transport: don't allow dt to be set on SE or HVD buses [SCSI] aic7xxx: expose the bus setting to sysfs [SCSI] scsi: remove Documentation/scsi/cpqfc.txt [SCSI] drivers/scsi: Use ARRAY_SIZE macro [SCSI] Remove last page_address from dc395x.c [SCSI] hptiop: HighPoint RocketRAID 3xxx controller driver ... Fixed up conflicts in drivers/message/fusion/mptbase.c manually (due to the sparc interrupt cleanups)
2006-06-20[PATCH] libata: convert several bmdma-style controllers to new EH, take #3Tejun Heo4-16/+21
Convert sata_sis, svw, uli and vsc drivers to new EH. All the drivers used to specify ATA_FLAG_SATA_RESET to tell libata to use SATA hardreset instead of SRST. This patch makes all the converted drivers use the standard bmdma error handler which uses both SRST and SATA hardreset. All the controllers should be able to perform SRST but still needs verification. If some of the controllers can't do SRST, it will be very easy to spot as it will show up during boot probing. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[PATCH] sata_via: convert to new EH, take #3Tejun Heo1-6/+6
Convert sata_via to new EH. vt6420 used ATA_FLAG_SRST while vt6421 used ATA_FLAG_SATA_RESET. This difference seems to be an accident rather than intended. This patch makes both flavors use ata_bmdma_error_handler() which makes use of both SRST and SATA hardreset. This behavior change is intended and if it breaks anything, it should be very easy to spot. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[libata] sata_nv: s/spin_lock_irqsave/spin_lock/ in irq handlerJeff Garzik1-6/+4
We don't need to use the heavier spin lock in the irq handler. It's quite possible we can do this in nv_generic_interrupt() as well, but I didn't take the time to pursue that train of thought. Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[PATCH] sata_nv: add hotplug supportTejun Heo1-1/+8
Add hotplug support. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[PATCH] sata_nv: convert to new EHTejun Heo1-26/+89
Convert to new EH. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[PATCH] sata_nv: better irq handlersTejun Heo1-17/+194
nf2/3 and ck804 have irq status register. Implement better irq handler for those flavors of nv. This patch makes different flavors of nv controllers use different irq handlers by using separate port_info for each flavor. This change also makes following EH and hotplug updates easier to integrate. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[PATCH] sata_nv: simplify constantsTejun Heo1-19/+12
Simplify interrupt constants and make NFORCE3 equal to NFORCE2. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[PATCH] sata_nv: kill struct nv_host_desc and nv_hostTejun Heo1-48/+2
nv_host_desc and nv_host are used to discern different generations of nv controllers. Kill those. New EH/hotplug implementation will use standard port_info/ata_port_operations for that. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[PATCH] sata_nv: kill not-working hotplug codeTejun Heo1-169/+0
sata_nv contained hotplug code which is mainly for demonstrating how hotplug event is handled. This patch kills the demo code in prepration for real hotplug implementation. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-20[SPARC]: Kill __irq_itoa().David S. Miller3-11/+5
This ugly hack was long overdue to die. It was a way to print out Sparc interrupts in a more freindly format, since IRQ numbers were arbitrary opaque 32-bit integers which vectored into PIL levels. These 32-bit integers were not necessarily in the 0-->NR_IRQS range, but the PILs they vectored to were. The idea now is that we will increase NR_IRQS a little bit and use a virtual<-->real IRQ number mapping scheme similar to PowerPC. That makes this IRQ printing hack irrelevant, and furthermore only a handful of drivers actually used __irq_itoa() making it even less useful. Signed-off-by: David S. Miller <[email protected]>
2006-06-19Improve SATA core suspend/resumeLinus Torvalds1-0/+1
Doing a full ata_busy_sleep() seems to get suspend and resume working fine on the Apple Mac Mini, at least. Signed-off-by: Linus Torvalds <[email protected]>
2006-06-19[SCSI] 53c700: remove reliance on deprecated cmnd fieldsJames Bottomley2-39/+49
This one's quite tricky. The 53c700 uses the now deprecated fields of the command structure for saving the prior command when it does autosense. To fix this, we have to add extra fields to the LUN to accommodate a copy of the real command. Signed-off-by: James Bottomley <[email protected]>
2006-06-19[SCSI] hptiop: don't use cmnd->bufflenJames Bottomley1-1/+1
use cmnd->request_bufflen instead. Signed-off-by: James Bottomley <[email protected]>
2006-06-19[SCSI] hptiop: HighPoint RocketRAID 3xxx controller driverHighPoint Linux Team1-11/+3
Updates: - don't bypass SYNCHRONIZE_CACHE command - return SCSI_MLQUEUE_HOST_BUSY when no free request slots - move scsi_remove_host() to the begin of hpt_remove(), or it will not work after resources being released. Signed-off-by: HighPoint Linux Team <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-19[SCSI] aacraid: small misc. cleanupsMark Haverkamp3-8/+4
Received from Mark Salyzyn Spelling correction, orphaned comment removal & update branch name. Signed-off-by: Mark Haverkamp <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-19[SCSI] aacraid: Update supported product informationMark Haverkamp1-4/+4
Received From Mark Salyzyn Some of the cards product names changed. Signed-off-by: Mark Haverkamp <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-13[libata] Update docs to reflect current driver APIJeff Garzik1-1/+1
2006-06-12[SCSI] aacraid: Fix return code interpretationMark Haverkamp1-1/+1
Received from Mark Salyzyn clear_user return is 0 for success, the code fragment is written to assume that it is the count of the number of bytes zero'd. Signed-off-by: Mark Haverkamp <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-12[SCSI] scsi_transport_sas: fix panic in sas_free_rphyJames Bottomley1-0/+14
This is a hold over from the end device/expander conversion. Apparently the rphy list pointer is never initialised, so list_del() on the uninitialised pointer can panic the system Signed-off-by: James Bottomley <[email protected]>
2006-06-12[PATCH] libata: add host_set->next for legacy two host_sets case, take #3Tejun Heo2-2/+17
For a legacy ATA controller, libata registers two separate host sets. There was no connection between the two hosts making it impossible to traverse all ports related to the controller. This patch adds host_set->next which points to the second host_set and makes ata_pci_remove_one() remove all associated host_sets. * On device removal, all ports hanging off the device are properly detached. Prior to this patch, ports on the first host_set weren't detached casuing oops on driver unloading. * On device removal, both host_sets are properly freed This will also be used by new power management code to suspend and resume all ports of a controller. host_set/port representation will be improved to handle legacy controllers better and this host_set linking will go away with it. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-12[PATCH] libata: fix oops caused rescanning NULL sdevTejun Heo1-8/+9
Depending on timing, ata_scsi_dev_rescan() might encounter a device which is enabled but not yet attached to sdev. On such cases, the original code caused oops. This patch makes ata_scsi_dev_rescan() rescan only device which are attached to sdevs. While at it, properly indent leading comment and add description about how it's synchronized with sdev attach/detach. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-12[PATCH] sata_sil: update device hotplug handling, take #2Tejun Heo1-1/+19
SIEN on some 3112 controllers doesn't mask SATA IRQ properly. IRQ stays asserted even after SIEN is masked and IRQ is acked. Also, even while frozen, any SATA PHY event including hardreset raises SATA IRQ. Clearing SError seems to be the only way to deassert SATA IRQ. This patch makes sil_host_intr() clear SError on SATA IRQs and ignore SATA IRQs reported while frozen so that hardreset doesn't trigger hotplug event (which ends up hardresetting again). In such cases, the port still gets re-frozen to minimize the danger of screaming interrupts. This results in one nil EH repeat on controllers with broken SIEN but other than that does no harm. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-12[PATCH] libata: fast exit from EH while unloadingTejun Heo1-0/+4
Make EH exit fast if the port is being unloaded. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-12[PATCH] libata: fix ATA_EH_REVALIDATE clearingTejun Heo1-3/+3
ATA_EH_REVALIDATE should be cleared after all devices on the target port have been revalidated. Fix ata_eh_revalidate_and_attach() accordingly. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-12[PATCH] libata: fix comment above ata_exec_internal()Tejun Heo1-1/+3
Add RETURNS comment above ata_exec_internal() and kill extra blank line. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-12[PATCH] sata_sil: add controller unplug detection in sil_interrupt()Tejun Heo1-1/+2
Short-circuit interrupt handling if BMDMA2 is reported as 0xffffffff indicating device removal. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-12[PATCH] Snoop SET FEATURES - WRITE CACHE ENABLE/DISABLE command(v5)zhao, forrest4-0/+41
This patch makes libata snoop 'SET FEATURES - WRITE CACHE ENABLE/DISABLE' command, executing requisite revalidation processes to update cached data. Signed-off-by: Forrest Zhao <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-11libata: more verbose request_irq() failureJeff Garzik1-2/+7
Suggested by Jarek P.
2006-06-11[PATCH] libata: Setup nbytes in ata_sg_init_oneBrian King1-0/+1
Setup nbytes in ata_sg_init_one to the total transfer length of the command. This is needed by some HBAs that need to know the total transfer length of each command. Signed-off-by: Brian King <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-11libata: Adjust initial debugging levels through preprocessor defines.Borislav Petkov1-1/+9
Signed-off-by: <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-11[PATCH] sata_sil24: endian anotationsAlexey Dobriyan1-8/+8
With help from Tejun Heo. Signed-off-by: Alexey Dobriyan <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-11Merge branch 'upstream-fixes' into upstreamJeff Garzik5-3/+14
Conflicts: drivers/scsi/sata_sil24.c
2006-06-11[PATCH] sata_mv: grab host lock inside eng_timeoutMark Lord1-0/+3
Bug fix: mv_eng_timeout() calls mv_err_intr() without first grabbing the host lock, which can lead to all sorts of interesting scenarios. This whole error-handling portion of sata_mv is nasty (and will get fixed for the new EH stuff), but for now this patch will help keep it on life-support. Signed-off-by: Mark Lord <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-11[PATCH] libata: add missing ->data_xfer for pdc_admaTejun Heo1-0/+1
pdc_adma use libata-core PIO path but were left out during ->data_xfer conversion. Initialize with proper callbacks. This patch is against the current libata-dev#ALL. Controllers which implement their own PIO HSM (ahci and sil24) don't need ->data_xfer, so the above two are the only drivers which were left out during conversion. From: "Barry K. Nathan" <[email protected]> Signed-off-by: Barry K. Nathan <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-06-11[PATCH] libata: add missing finish_wait() call in ata_port_wait_eh()Tejun Heo1-0/+1
Add missing finish_wait() call after wait loop in ata_port_wait_eh(). Signed-off-by: Tejun Heo <[email protected]>
2006-06-10[SCSI] remove RQ_SCSI_* flagsChristoph Hellwig2-3/+3
The RQ_SCSI_* flags are a vestiage of a long past history. The EH code still sets them but we never make use of that information. The other users is pluto.c which never had a chance to work but needs to be kept compiling to keep Davem happy, so copy over the definition there. We could probably get rid of RQ_ACTIVE/RQ_INACTIVE aswell with some work, there's only two more or less bogus looking uses in ubd and scsi. Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-10[SCSI] remove scsi_request infrastructureChristoph Hellwig13-277/+12
With Achim patch the last user (gdth) is switched away from scsi_request so we an kill it now. Also disables some code in i2o_scsi that was broken since the sg driver stopped using scsi_requests. Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-10Merge ../linux-2.6James Bottomley29-307/+410
2006-06-10[SCSI] spi transport: don't allow dt to be set on SE or HVD busesJames Bottomley1-0/+9
This is really just a belt and braces test. The standards require disks to respond DT not capable on a non-LVD bus ... however, not all disks follow the standards ... Signed-off-by: James Bottomley <[email protected]>
2006-06-10[SCSI] aic7xxx: expose the bus setting to sysfsJames Bottomley3-7/+92
Read the transciever register and display in the host transport properties. I'm still not entirely sure what this does for multiple transciever adapters (like some 160 ones) however, I suspect it displays the transciever state of the switchable bus segment. Signed-off-by: James Bottomley <[email protected]>
2006-06-10[SCSI] drivers/scsi: Use ARRAY_SIZE macroTobias Klauser47-200/+167
Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove duplicates of the macro. Signed-off-by: Tobias Klauser <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-10[SCSI] Remove last page_address from dc395x.cGuennadi Liakhovetski1-24/+35
Dynamically map scattergather buffer instead of using page_address(). Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-10[SCSI] hptiop: HighPoint RocketRAID 3xxx controller driverHighPoint Linux Team4-0/+1977
HighPoint RocketRAID 3220/3320 series 8 channel PCI-X SATA RAID Host Adapters. Fixes from original submission: Merge Andrew Morton's patches: - Provide locking for global list - Fix debug printks - uninline function with multiple callsites - coding style fixups - remove unneeded casts of void* - kfree(NULL) is legal - Don't "succeed" if register_chrdev() failed - otherwise we'll later unregister a not-registered chrdev. - Don't return from hptiop_do_ioctl() with the spinlock held. - uninline __hpt_do_ioctl() Update for Arjan van de Ven's comments: - put all asm/ includes after the linux/ ones - replace mdelay with msleep - add pci posting flush - do not set pci command reqister in map_pci_bar - do not try merging sg elements in hptiop_buildsgl() - remove unused outstandingcommands member from hba structure - remove unimplemented hptiop_abort() handler - remove typedef u32 hpt_id_t Other updates: - fix endianess Signed-off-by: HighPoint Linux Team <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-10[SCSI] remove the scsi_request interface from the gdth driverLeubner, Achim5-497/+297
Initial pass at converting the gdth driver away from the scsi_request interface so that the request interface can be removed post 2.6.18 without breaking gdth. Based on changes from Christoph Hellwig <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-06-09kconfig: remove leading whitespace in menu promptsRoman Zippel1-5/+5
This removes all the leading whitespace kconfig now warns about. Signed-off-by: Roman Zippel <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]>
2006-06-06[SCSI] fix up request buffer reference in various scsi driversChristoph Hellwig15-22/+22
Various scsi drivers use scsi_cmnd.buffer and scsi_cmnd.bufflen in their queuecommand functions. Those fields are internal storage for the midlayer only and are used to restore the original payload after request_buffer and request_bufflen have been overwritten for EH. Using the buffer and bufflen fields means they do very broken things in error handling. Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: James Bottomley <[email protected]>