Tejun Heo
1529c69adc
ata_generic: implement ATA_GEN_* flags and force enable DMA on MBP 7,1
...
IDE mode of MCP89 on MBP 7,1 doesn't set DMA enable bits in the BMDMA
status register. Make the following changes to work around the problem.
* Instead of using hard coded 1 in id->driver_data as class code
match, use ATA_GEN_CLASS_MATCH and carry the matched id in
host->private_data.
* Instead of matching PCI_VENDOR_ID_CENATEK, use ATA_GEN_FORCE_DMA
flag in id instead.
* Add ATA_GEN_FORCE_DMA to the id entry of MBP 7,1.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Peer Chen <pchen@nvidia.com>
Cc: stable@kernel.org
Reported-by: Anders Østhus <grapz666@gmail.com>
Reported-by: Andreas Graf <andreas_graf@csgraf.de>
Reported-by: Benoit Gschwind <gschwind@gnu-log.net>
Reported-by: Damien Cassou <damien.cassou@gmail.com>
Reported-by: tixetsal@juno.com
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2010-07-01 15:34:48 -04:00
..
ahci.c
ahci,ata_generic: let ata_generic handle new MBP w/ MCP89
2010-07-01 15:34:46 -04:00
ahci.h
ahci: add "em_buffer" attribute for AHCI hosts
2010-05-14 17:35:51 -04:00
ahci_platform.c
ahci_platform: properly set up EM messaging
2010-05-14 17:35:51 -04:00
ata_generic.c
ata_generic: implement ATA_GEN_* flags and force enable DMA on MBP 7,1
2010-07-01 15:34:48 -04:00
ata_piix.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
Kconfig
libata-sff: trivial corrections to Kconfig help text
2010-06-02 13:50:00 -04:00
libahci.c
libahci: Fix bug in storing EM messages
2010-07-01 15:34:15 -04:00
libata-acpi.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
libata-core.c
libata: implement on-demand HPA unlocking
2010-06-02 13:50:10 -04:00
libata-eh.c
libata-sff: separate out BMDMA EH
2010-05-19 13:36:46 -04:00
libata-pmp.c
[libata] Disable R_OK (Early ACK) on SII 3726 PMP
2010-05-14 17:08:02 -04:00
libata-scsi.c
libata: implement on-demand HPA unlocking
2010-06-02 13:50:10 -04:00
libata-sff.c
libata-sff: make BMDMA optional
2010-05-25 19:41:12 -04:00
libata.h
libata-sff: separate out BMDMA EH
2010-05-19 13:36:46 -04:00
Makefile
libata-sff: make BMDMA optional
2010-05-25 19:41:12 -04:00
pata_acpi.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_ali.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_amd.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_artop.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_at32.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
pata_at91.c
libata-sff: clean up BMDMA initialization
2010-05-19 13:32:19 -04:00
pata_atiixp.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_atp867x.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
pata_bf54x.c
libata-sff: ata_sff_irq_clear() is BMDMA specific
2010-05-25 19:40:19 -04:00
pata_cmd64x.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_cmd640.c
libata-sff: clean up BMDMA initialization
2010-05-19 13:32:19 -04:00
pata_cs5520.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
pata_cs5530.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_cs5535.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_cs5536.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_cypress.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_efar.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_hpt3x2n.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_hpt3x3.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
pata_hpt37x.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_hpt366.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_icside.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
pata_isapnp.c
pata_it821x.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_it8213.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_ixp4xx_cf.c
pata_jmicron.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_legacy.c
pata_macio.c
powerpc/macio: Fix probing of macio devices by using the right of match table
2010-06-02 17:50:38 +10:00
pata_marvell.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_mpc52xx.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
pata_mpiix.c
pata_netcell.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_ninja32.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
pata_ns87410.c
pata_ns87415.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_octeon_cf.c
libata-sff: kill dummy BMDMA ops from sata_qstor and pata_octeon_cf
2010-05-25 19:40:45 -04:00
pata_of_platform.c
of: Remove duplicate fields from of_platform_driver
2010-05-22 00:10:40 -06:00
pata_oldpiix.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_opti.c
pata_optidma.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_palmld.c
pata_pcmcia.c
Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev
2010-05-20 09:27:37 -07:00
pata_pdc202xx_old.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_pdc2027x.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
pata_piccolo.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_platform.c
libata-sff: clean up BMDMA initialization
2010-05-19 13:32:19 -04:00
pata_qdi.c
pata_radisys.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_rb532_cf.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
2010-03-30 22:02:32 +09:00
pata_rdc.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_rz1000.c
pata_sc1200.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_scc.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
pata_sch.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_serverworks.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_sil680.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_sis.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_sl82c105.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_triflex.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_via.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
pata_winbond.c
pdc_adma.c
libata-sff: ata_sff_[dumb_]qc_prep are BMDMA specific
2010-05-19 13:36:50 -04:00
sata_fsl.c
of: Remove duplicate fields from of_platform_driver
2010-05-22 00:10:40 -06:00
sata_inic162x.c
libata-sff: clean up BMDMA initialization
2010-05-19 13:32:19 -04:00
sata_mv.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
sata_nv.c
sata_nv: don't diddle with nIEN on mcp55
2010-06-02 13:49:57 -04:00
sata_promise.c
libata-sff: prd is BMDMA specific
2010-05-19 13:38:54 -04:00
sata_promise.h
sata_qstor.c
libata-sff: kill dummy BMDMA ops from sata_qstor and pata_octeon_cf
2010-05-25 19:40:45 -04:00
sata_sil.c
libata-sff: ata_sff_irq_clear() is BMDMA specific
2010-05-25 19:40:19 -04:00
sata_sil24.c
sata_sil24: Use memory barriers before issuing commands
2010-06-10 16:06:48 -04:00
sata_sis.c
libata-sff: separate out BMDMA init
2010-05-25 19:40:30 -04:00
sata_svw.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
sata_sx4.c
libata-sff: separate out BMDMA EH
2010-05-19 13:36:46 -04:00
sata_uli.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
sata_via.c
sata_via: explain the magic fix
2010-06-07 16:03:08 -04:00
sata_vsc.c
libata-sff: separate out BMDMA irq handler
2010-05-25 19:40:24 -04:00
sis.h