linux/drivers/ata
Robert Hancock 453d3131ec ahci: disable FPDMA auto-activate optimization on NVIDIA AHCI
Mike Cui reported that his system with an NVIDIA MCP79 (aka MCP7A)
chipset stopped working with 2.6.32. The problem appears to be that
2.6.32 now enables the FPDMA auto-activate optimization in the ahci
driver. The drive works fine with this enabled on an Intel AHCI so
this appears to be a chipset bug.  Since MCP79 is a fairly recent
NVIDIA chipset and we don't have any info on whether any other NVIDIA
chipsets have this issue, disable FPDMA AA optimization on all NVIDIA
AHCI controllers for now.

Should address http://bugzilla.kernel.org/show_bug.cgi?id=14922

Signed-off-by: Robert Hancock <hancockrwd@gmail.com>
While-we-investigate-issue-this-patch-looks-good-to-me-by:
	Prajakta Gudadhe <pgudadhe@nvidia.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Cc: stable@kernel.org
2010-02-24 22:44:48 -05:00
..
Kconfig ACPI: do not select ACPI_DOCK from ATA_ACPI 2009-12-24 00:04:40 -05:00
Makefile Merge commit 'origin/master' into next 2009-12-09 17:14:38 +11:00
ahci.c ahci: disable FPDMA auto-activate optimization on NVIDIA AHCI 2010-02-24 22:44:48 -05:00
ata_generic.c pata_piccolo: Driver for old Toshiba chipsets 2009-12-03 14:35:31 -05:00
ata_piix.c ata_piix: enable 32bit PIO on SATA piix 2010-01-12 14:33:23 -05:00
libata-acpi.c libata-acpi: missing _SDD is not an error 2009-12-03 02:46:33 -05:00
libata-core.c libata: retry link resume if necessary 2010-01-12 14:34:14 -05:00
libata-eh.c libata: retry FS IOs even if it has failed with AC_ERR_INVALID 2010-01-20 14:25:11 -05:00
libata-pmp.c libata: add SATA PMP revision information for spec 1.2 2009-09-08 21:21:14 -04:00
libata-scsi.c libata-scsi passthru: fix bug which truncated LBA48 return values 2010-02-04 01:01:22 -05:00
libata-sff.c [libata] Call flush_dcache_page after PIO data transfers in libata-sff.c 2010-02-04 01:04:50 -05:00
libata.h libata: make gtf_filter per-dev 2009-10-06 00:26:27 -04:00
pata_acpi.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_ali.c pata_ali: Fix regression with old devices 2009-12-03 02:46:36 -05:00
pata_amd.c pata_amd: do not filter out valid modes in nv_mode_filter 2009-09-17 16:46:41 -04:00
pata_artop.c pata_artop: Serializing support 2009-03-24 22:45:05 -04:00
pata_at32.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_at91.c pata_at91: fix resource release 2009-08-12 06:16:47 -04:00
pata_atiixp.c ahci / atiixp / pci quirks: rename AMD SB900 into Hudson-2 2009-10-16 06:21:20 -04:00
pata_atp867x.c pata_atp867x: add Power Management support 2009-10-06 20:58:23 -04:00
pata_bf54x.c pata_bf54x: handle portmuxing of pins through GPIO PORTs 2009-12-21 13:55:38 -05:00
pata_cmd64x.c pata_cmd64x: fix overclocking of UDMA0-2 modes 2009-12-20 15:42:12 -05:00
pata_cmd640.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_cs5520.c pata_cs5520: remove dead VDMA support 2009-12-03 15:52:51 -05:00
pata_cs5530.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_cs5535.c pata_cs5535: fix comment header typo 2009-11-09 09:40:55 +01:00
pata_cs5536.c pata_cs5536: use 32-bit BM DMA template instead of 16-bit. 2009-12-03 02:46:34 -05:00
pata_cypress.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_efar.c [libata] MWDMA0 is unsupported on PIIX-like PATA controllers 2009-12-03 17:52:16 -05:00
pata_hpt3x2n.c pata_hpt3x2n: fix clock turnaround 2009-12-17 01:11:27 -05:00
pata_hpt3x3.c pata_hpt3x3: Power Management fix 2009-12-03 15:58:53 -05:00
pata_hpt37x.c ata: use pci_dev->revision 2009-12-03 14:36:17 -05:00
pata_hpt366.c ata: use pci_dev->revision 2009-12-03 14:36:17 -05:00
pata_icside.c Merge branch 'origin' into devel 2009-03-28 20:29:51 +00:00
pata_isapnp.c [libata] Improve timeout handling 2009-03-24 22:52:39 -04:00
pata_it821x.c pata-it821x: use PCI_DEVICE_ID_RDC_D1010 define 2009-12-03 02:46:35 -05:00
pata_it8213.c pata_it8213: MWDMA0 is unsupported 2009-12-03 17:53:27 -05:00
pata_ixp4xx_cf.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
pata_jmicron.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_legacy.c pata_legacy: add pointers to QDI65x0 documentation 2009-12-03 16:06:47 -05:00
pata_macio.c libata/drivers: Add driver for Apple "MacIO" IDE controller 2009-12-09 17:09:28 +11:00
pata_marvell.c pata_marvell: fix marvell_pre_reset() documentation 2009-12-03 16:07:12 -05:00
pata_mpc52xx.c powerpc/5xxx: Add common mpc5xxx_get_bus_frequency() function 2009-06-17 00:30:22 -06:00
pata_mpiix.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_netcell.c pata_netcell: Fix typo 2009-06-08 09:12:28 -07:00
pata_ninja32.c ata: Report 16/32bit PIO as best we can 2009-04-16 15:28:23 -04:00
pata_ns87410.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_ns87415.c pata_ns87415: Power Management fix 2009-12-03 16:08:30 -05:00
pata_octeon_cf.c pata_octeon_cf: use resource_size(), to fix resource sizing bug 2009-12-17 01:02:50 -05:00
pata_of_platform.c powerpc: Fix no interrupt handling in pata_of_platform 2008-10-10 15:55:17 +11:00
pata_oldpiix.c [libata] MWDMA0 is unsupported on PIIX-like PATA controllers 2009-12-03 17:52:16 -05:00
pata_opti.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_optidma.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_palmld.c [ARM] 5522/1: PalmLD: IDE support 2009-05-31 14:50:40 +01:00
pata_pcmcia.c pcmcia: rework the irq_req_t typedef 2009-11-28 18:03:14 +01:00
pata_pdc202xx_old.c pata_pdc202xx_old: fix UDMA33 handling 2009-05-11 14:30:07 -04:00
pata_pdc2027x.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_piccolo.c pata_piccolo: Driver for old Toshiba chipsets 2009-12-03 14:35:31 -05:00
pata_platform.c drivers/ata: use resource_size 2009-09-11 02:25:58 -04:00
pata_qdi.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_radisys.c pata_radisys: fix UDMA handling 2009-12-03 16:11:24 -05:00
pata_rb532_cf.c drivers/ata: use resource_size 2009-09-11 02:25:58 -04:00
pata_rdc.c [libata] MWDMA0 is unsupported on PIIX-like PATA controllers 2009-12-03 17:52:16 -05:00
pata_rz1000.c pata_rz1000: Power Management fix 2009-12-03 16:12:35 -05:00
pata_sc1200.c pata_sc1200: Fix crash on boot 2009-10-16 06:22:40 -04:00
pata_scc.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_sch.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_serverworks.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_sil680.c ata: use pci_dev->revision 2009-12-03 14:36:17 -05:00
pata_sis.c Revert "pata_sis: Implement MWDMA for the UDMA 133 capable chips" 2009-12-07 11:41:25 -05:00
pata_sl82c105.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_triflex.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pata_via.c pata_via: clear UDMA transfer mode bit for PIO and MWDMA 2009-12-03 16:13:39 -05:00
pata_winbond.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
pdc_adma.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
sata_fsl.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-12-09 19:43:33 -08:00
sata_inic162x.c drivers/ata: Remove unnecessary semicolons 2009-09-01 19:47:20 -04:00
sata_mv.c Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev 2009-12-19 11:04:29 -08:00
sata_nv.c [SCSI] modify change_queue_depth to take in reason why it is being called 2009-12-04 12:00:41 -06:00
sata_promise.c sata_promise: don't classify overruns as HSM errors 2010-01-12 14:33:07 -05:00
sata_promise.h libata annotations and fixes 2008-01-23 05:24:15 -05:00
sata_qstor.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
sata_sil.c [libata] sata_sil: disable DMA engine in sil_freeze() 2009-09-01 19:47:19 -04:00
sata_sil24.c sata_sil24: MSI support, disabled by default 2009-12-03 02:46:34 -05:00
sata_sis.c sata_sis: convert to slave_link 2009-09-08 21:17:36 -04:00
sata_svw.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
sata_sx4.c sata_sx4: speed up ECC initialization 2009-06-10 07:50:17 -04:00
sata_uli.c [libata] convert drivers to use ata.h mode mask defines 2009-03-24 22:13:27 -04:00
sata_via.c sata_via: Remove redundant device ID for VIA VT8261 2009-11-03 14:27:06 -05:00
sata_vsc.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
sis.h libata: PATA-mode fixes for sis_sata 2007-07-02 10:17:42 -04:00