summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/sata_mv.c
Commit message (Collapse)AuthorAgeFilesLines
* Move libata to drivers/ata.Jeff Garzik2006-08-101-2468/+0
|
* [PATCH] libata: replace pci_module_init() with pci_register_driver()Pavel Roskin2006-08-101-1/+1
| | | | | | | Replace pci_module_init() with pci_register_driver(). Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: Tejun Heo <htejun@gmail.com>
* [PATCH] irq-flags: scsi: Use the new IRQF_ constantsThomas Gleixner2006-07-021-1/+1
| | | | | | | | | | Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: "David S. Miller" <davem@davemloft.net> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: James Bottomley <James.Bottomley@steeleye.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge branch 'upstream-fixes' into upstreamJeff Garzik2006-06-111-0/+3
|\ | | | | | | | | | | Conflicts: drivers/scsi/sata_sil24.c
| * [PATCH] sata_mv: grab host lock inside eng_timeoutMark Lord2006-06-111-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 <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | [PATCH] libata-hp: hook warmplugTejun Heo2006-05-311-0/+1
| | | | | | | | | | | | Hook transportt->user_scan() and hostt->slave_destroy(). Signed-off-by: Tejun Heo <htejun@gmail.com>
* | [PATCH] sata_mv: endian annotationsMark Lord2006-05-241-18/+18
| | | | | | | | | | Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | [PATCH] PATCH: libata. Add ->data_xfer methodAlan Cox2006-05-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | We need to pass the device in order to do per device checks such as 32bit I/O enables. With the changes to include dev->ap we now don't have to add parameters however just clean them up. Also add data_xfer methods to the existing drivers except ata_piix (which is in the other block of patches). If you reject the piix one just add a data_xfer to it... Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | [libata] libata-scsi, sata_mv: trim trailing whitespaceJeff Garzik2006-05-241-1/+1
| |
* | [PATCH] libata: minor fix for irq-pio mergeAlbert Lee2006-05-241-1/+1
| | | | | | | | | | | | | | Minor fix to put the ATA_FLAG_NO_ATAPI flag back. Signed-off-by: Albert Lee <albertcc@tw.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | Merge branch 'upstream-fixes' into upstreamJeff Garzik2006-05-201-57/+77
|\ \ | |/ | | | | | | | | Conflicts: drivers/scsi/libata-core.c
| * [PATCH] sata_mv: version bumpMark Lord2006-05-201-1/+1
| | | | | | | | | | | | | | Increment the version number inside sata_mv.c. Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * [PATCH] sata_mv: endian fixMark Lord2006-05-201-1/+2
| | | | | | | | | | | | | | | | | | | | This fixes a byte-swap issue on PPC, found by Zang Roy-r61911 on the powerpc platform. His original patch also had some other platform-specific changes in #ifdef's, but I'm not sure yet how to incorporate them. Look for another patch for those (soon). Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * [PATCH] sata_mv: remove local copy of queue indexesMark Lord2006-05-201-43/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | The driver currently keeps local copies of the hardware request/response queue indexes. But it expends significant effort ensuring consistency between the two views, and still gets it wrong after an error or reset occurs. This patch removes the local copies, in favour of just accessing the hardware whenever we need them. Eventually this may need to be tweaked again for NCQ, but for now this works and solves problems some users were seeing. Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * [PATCH] sata_mv: spurious interrupt workaroundMark Lord2006-05-201-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | The 60xx chips, and possibly others, incorrectly assert DEV_IRQ interrupts on a regular basis. The cause of this is under investigation (by me and in theory by Marvell also), but regardless we do need to deal with these events. This patch tidies up some interrupt handler code, and ensures that we ignore DEV_IRQ interrupts when the drive still has ATA_BUSY asserted. Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * [PATCH] sata_mv: chip initialization fixesMark Lord2006-05-201-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | The interface control register of the 60xx (and later) Marvell chip requires certain bits to always be set when writing to it. These bits incorrectly read-back as zeros, so the pattern must be ORed in with each write of the register. Also, bit 12 should NOT be set (note that Marvell's own driver also had bit-12 wrong here). While we're at it, we also now do pci_set_master() in the init code. Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * [PATCH] sata_mv: deal with interrupt coalescing interruptsMark Lord2006-05-201-0/+18
| | | | | | | | | | | | | | | | | | In some systems, it is possible that the BIOS may have enabled interrupt coalescing for the Marvell controllers which support it. This patch adds code to detect/ack interrupts from the chip's coalescing (combing) logic. Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * [PATCH] sata_mv: prevent unnecessary double-resetsMark Lord2006-05-201-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The mv_err_intr() function is invoked from the driver's interrupt handler, as well as from the timeout function. This patch prevents it from triggering a one-after-the-other double reset of the controller when invoked from the timeout function. This also adds a check for a timeout race condition that has been observed to occur with this driver in earlier kernels. This should not be needed, in theory, but in practice it has caught bugs. Maybe nuke it at a later date. Signed-off-by: Mark Lord <liml@rtr.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | Merge branch 'irq-pio'Tejun Heo2006-05-151-3/+3
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: drivers/scsi/libata-core.c include/linux/libata.h
| * \ Merge branch 'upstream'Jeff Garzik2006-04-181-1/+1
| |\ \
| * \ \ Merge branch 'upstream'Jeff Garzik2006-04-121-1/+0
| |\ \ \
| * \ \ \ Merge branch 'upstream'Jeff Garzik2006-04-021-1/+1
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: drivers/scsi/libata-core.c drivers/scsi/pdc_adma.c drivers/scsi/sata_mv.c drivers/scsi/sata_nv.c drivers/scsi/sata_promise.c drivers/scsi/sata_qstor.c drivers/scsi/sata_sx4.c drivers/scsi/sata_vsc.c include/linux/libata.h
| * \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-04-011-1/+1
| |\ \ \ \ \
| * \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-03-291-16/+23
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: drivers/scsi/sata_mv.c
| * \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-03-241-3/+5
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: drivers/scsi/sata_vsc.c
| * \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-02-201-0/+1
| |\ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-02-131-1/+0
| |\ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-02-111-25/+25
| |\ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-02-101-7/+3
| |\ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-02-091-13/+210
| |\ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'tmp'Jeff Garzik2006-01-271-11/+1
| |\ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'tmp'Jeff Garzik2006-01-271-2/+2
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'tmp'Jeff Garzik2006-01-271-1/+1
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2006-01-171-1/+0
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | | | | [libata] irq-pio: fix breakage related to err_mask mergeJeff Garzik2005-12-061-1/+1
| | | | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | | | Merge branch 'upstream'Jeff Garzik2005-12-061-3/+6
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2005-11-201-1/+2
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | | | | | | [libata sata_mv] IRQ PIO build fixJeff Garzik2005-11-181-3/+2
| | | | | | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | | | | | Merge branch 'upstream'Jeff Garzik2005-11-181-169/+822
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'master'Jeff Garzik2005-11-111-1/+3
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2005-11-091-2/+2
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'master'Jeff Garzik2005-11-051-16/+32
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'master'Jeff Garzik2005-10-301-11/+12
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2005-10-301-18/+0
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'master'Jeff Garzik2005-10-281-3/+4
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Merge branch 'upstream'Jeff Garzik2005-10-091-192/+954
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | | | | | | | | | | | | | | | | [PATCH] libata: interrupt driven pio for LLDAlbert Lee2005-09-281-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libata.h: libata-core: Add ATA_FLAG_PIO_POLLING flag for LLDs that expect interrupt for command completion only. sata_nv.c: sata_vsc.c: irq handler is wrapper around ata_host_intr(), can handle PIO interrupts. sata_promise.c: sata_sx4.c: sata_qstor.c: sata_mv.c: Private irq handler. Polling mode ATA_FLAG_PIO_POLLING used for compatibility. Signed-off-by: Albert Lee <albertcc@tw.ibm.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
* | | | | | | | | | | | | | | | | | | | | | | | | | | | [PATCH] libata: use ATA printk helpersTejun Heo2006-05-151-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use ATA printk helpers. Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | | | | | | | | | | | | | | | | | | | | | | | | | | [PATCH] libata: use new SCR and on/offline functionsTejun Heo2006-05-151-7/+9
| |_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use new SCR and on/offline functions. Note that for LLDD which know it implements SCR callbacks, SCR functions are guaranteed to succeed and ata_port_online() == !ata_port_offline(). Signed-off-by: Tejun Heo <htejun@gmail.com>
* | | | | | | | | | | | | | | | | | | | | | | | | | | Merge branch 'master'Jeff Garzik2006-04-181-1/+1
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | / | | |_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | |
OpenPOWER on IntegriCloud