linux/drivers/ata
Brian Norris 66583c9fa6 ahci: add AHCI_HFLAG_DELAY_ENGINE host flag
The following commit was intended to fix problems with specific AHCI
controller(s) that would become bricks if the AHCI specification was not
followed strictly (that is, if ahci_start_engine() was called while the
controller was in the wrong state):

    commit 7faa33da9b
    ahci: start engine only during soft/hard resets

However, some devices currently have issues with that fix, so we must
implement a flag that delays the ahci_start_engine() call only for specific
controllers.

This commit simply introduces the flag, without enabling it in any driver.

Note that even when AHCI_HFLAG_DELAY_ENGINE is not enabled, this patch does
not constitue a full revert to commit 7faa33da; there is still a change in
behavior to the ahci_port_suspend() failure path.

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Cc: stable@kernel.org
2012-03-13 16:35:37 -04:00
..
acard-ahci.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
ahci_platform.c ahci: platform support for suspend/resume 2012-01-08 19:14:59 -05:00
ahci.c ahci: AHCI-mode SATA patch for Intel Lynx Point DeviceIDs 2012-03-13 12:43:02 -04:00
ahci.h ahci: add AHCI_HFLAG_DELAY_ENGINE host flag 2012-03-13 16:35:37 -04:00
ata_generic.c ata: Convert ata_<foo>_printk(KERN_<LEVEL> to ata_<foo>_<level> 2011-07-23 17:57:36 -04:00
ata_piix.c ata_piix: IDE-mode SATA patch for Intel Lynx Point DeviceIDs 2012-03-13 12:43:02 -04:00
Kconfig pata_of_platform: remove direct dependency on OF_IRQ 2012-01-08 19:14:58 -05:00
libahci.c ahci: add AHCI_HFLAG_DELAY_ENGINE host flag 2012-03-13 16:35:37 -04:00
libata-acpi.c Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2011-08-02 21:17:02 -10:00
libata-core.c [libata] add DVRTD08A and DVR-215 to NOSETXFER device quirk list 2012-01-17 20:50:07 -05:00
libata-eh.c [libata] Issue SRST to Sil3726 PMP 2011-11-09 01:38:00 -05:00
libata-pmp.c [libata] Issue SRST to Sil3726 PMP 2011-11-09 01:38:00 -05:00
libata-scsi.c ata: add ata port runtime PM callbacks 2012-01-08 19:14:58 -05:00
libata-sff.c libata-sff: use ATAPI_{COD|IO} 2012-01-08 19:14:58 -05:00
libata-transport.c [libata] enable ata port async suspend 2012-01-17 20:48:06 -05:00
libata-transport.h [libata] Add ATA transport class 2010-10-21 20:21:03 -04:00
libata.h ata: add ata port system PM callbacks 2012-01-08 19:14:58 -05:00
Makefile libata: remove no longer needed pata_qdi driver 2011-10-14 13:25:24 -04:00
pata_acpi.c ata: remove unnecessary code 2011-07-23 18:07:27 -04:00
pata_ali.c pata_ali: fix "Satelite" typo 2011-10-14 13:10:42 -04:00
pata_amd.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_arasan_cf.c ata/pata_arasan_cf: Add Hibernation support 2012-03-13 12:43:13 -04:00
pata_artop.c pata_artop: add Power Management support 2011-10-14 13:32:54 -04:00
pata_at32.c libata: remove ATA_FLAG_MMIO 2011-03-02 02:36:46 -05:00
pata_at91.c pata/at91: use newly introduced SMC accessors 2012-02-13 18:31:37 +01:00
pata_atiixp.c pata_atiixp: add proper ->prereset method 2011-10-14 13:16:49 -04:00
pata_atp867x.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_bf54x.c [libata] pata_bf54x: Support sg list in bmdma transfer. 2012-01-17 20:49:28 -05:00
pata_cmd64x.c pata_cmd64x: documentation fix 2011-10-14 13:10:46 -04:00
pata_cmd640.c pata_cmd640: implement sff_irq_check() method 2010-10-21 20:21:05 -04:00
pata_cs5520.c ata: Convert dev_printk(KERN_<LEVEL> to dev_<level>( 2011-07-23 17:57:36 -04:00
pata_cs5530.c libata-sff: separate out BMDMA init 2010-05-25 19:40:30 -04:00
pata_cs5535.c pata_cs5535: no need to program PIO0 timings during device init 2011-10-14 13:08:05 -04:00
pata_cs5536.c pata_cs5536: forward port changes from cs5536 2012-01-08 19:14:58 -05:00
pata_cypress.c libata-sff: separate out BMDMA init 2010-05-25 19:40:30 -04:00
pata_efar.c pata_efar: fix register naming used in efar_set_piomode() 2011-10-14 13:38:40 -04:00
pata_hpt3x2n.c ata: pata: Convert pr_*(DRV_NAME ...) to pr_fmt/pr_<level> 2011-03-14 02:56:31 -04:00
pata_hpt3x3.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_hpt37x.c ata: pata: Convert pr_*(DRV_NAME ...) to pr_fmt/pr_<level> 2011-03-14 02:56:31 -04:00
pata_hpt366.c pata_hpt366: add hpt36x_find_mode() helper 2011-10-14 13:07:18 -04:00
pata_icside.c ata: Convert ata_<foo>_printk(KERN_<LEVEL> to ata_<foo>_<level> 2011-07-23 17:57:36 -04:00
pata_imx.c SATA/PATA: convert drivers/ata/* to use module_platform_driver() 2012-01-08 19:14:58 -05:00
pata_isapnp.c [libata] Improve timeout handling 2009-03-24 22:52:39 -04:00
pata_it821x.c pata_it821x: Fix RAID type display, by adding missing comma 2011-07-23 18:04:25 -04:00
pata_it8213.c pata_it8213: fix register naming used in it8213_set_piomode() 2011-10-14 13:25:17 -04:00
pata_ixp4xx_cf.c SATA/PATA: convert drivers/ata/* to use module_platform_driver() 2012-01-08 19:14:58 -05:00
pata_jmicron.c libata-sff: separate out BMDMA init 2010-05-25 19:40:30 -04:00
pata_legacy.c pata_legacy: correctly mask recovery field for HT6560B 2012-03-13 12:43:13 -04:00
pata_macio.c ata: Convert ata_<foo>_printk(KERN_<LEVEL> to ata_<foo>_<level> 2011-07-23 17:57:36 -04:00
pata_marvell.c pata_marvell: Add support for 88SE91A0, 88SE91A4 2011-06-24 02:07:35 -04:00
pata_mpc52xx.c SATA/PATA: convert drivers/ata/* to use module_platform_driver() 2012-01-08 19:14:58 -05:00
pata_mpiix.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_netcell.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_ninja32.c [libata] trivial: trim trailing whitespace for drivers/ata/*.[ch] 2011-03-02 02:36:45 -05:00
pata_ns87410.c ata: Convert dev_printk(KERN_<LEVEL> to dev_<level>( 2011-07-23 17:57:36 -04:00
pata_ns87415.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_octeon_cf.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_of_platform.c pata_of_platform: remove direct dependency on OF_IRQ 2012-01-08 19:14:58 -05:00
pata_oldpiix.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_opti.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_optidma.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_palmld.c SATA/PATA: convert drivers/ata/* to use module_platform_driver() 2012-01-08 19:14:58 -05:00
pata_pcmcia.c ata: Convert ata_<foo>_printk(KERN_<LEVEL> to ata_<foo>_<level> 2011-07-23 17:57:36 -04:00
pata_pdc202xx_old.c pata_pdc202xx_old: implement sff_irq_check() method 2010-10-21 20:21:06 -04:00
pata_pdc2027x.c pata_pdc2027x: add Power Management support 2011-10-14 13:32:52 -04:00
pata_piccolo.c libata-sff: separate out BMDMA init 2010-05-25 19:40:30 -04:00
pata_platform.c SATA/PATA: convert drivers/ata/* to use module_platform_driver() 2012-01-08 19:14:58 -05:00
pata_pxa.c SATA/PATA: convert drivers/ata/* to use module_platform_driver() 2012-01-08 19:14:58 -05:00
pata_radisys.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_rb532_cf.c SATA/PATA: convert drivers/ata/* to use module_platform_driver() 2012-01-08 19:14:58 -05:00
pata_rdc.c pata_rdc: add Power Management support 2011-10-14 13:38:36 -04:00
pata_rz1000.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_samsung_cf.c ata: Convert ata_<foo>_printk(KERN_<LEVEL> to ata_<foo>_<level> 2011-07-23 17:57:36 -04:00
pata_sc1200.c pata_sc1200: do not use c99 style comments 2011-10-14 13:01:42 -04:00
pata_scc.c pata_scc: add proper cable detection method 2011-10-14 13:19:51 -04:00
pata_sch.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_serverworks.c pata_serverworks: add serverworks_fixup() 2011-10-14 13:16:35 -04:00
pata_sil680.c pata_sil680: minor CodingStyle fixups 2011-10-14 12:46:45 -04:00
pata_sis.c pata_sis: code style cleanups for consistency 2011-10-08 00:07:16 -04:00
pata_sl82c105.c pata_sl82c105: add Power Management support 2011-10-14 13:32:53 -04:00
pata_triflex.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
pata_via.c pata_via: add via_fixup() 2011-10-14 13:22:54 -04:00
pdc_adma.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
sata_dwc_460ex.c SATA/PATA: convert drivers/ata/* to use module_platform_driver() 2012-01-08 19:14:58 -05:00
sata_fsl.c sata_fsl: add support for interrupt coalsecing feature 2012-03-13 12:43:13 -04:00
sata_inic162x.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
sata_mv.c ARM: Orion: Get address map from plat-orion instead of via platform_data 2011-12-13 18:46:55 -05:00
sata_nv.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
sata_promise.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
sata_promise.h libata annotations and fixes 2008-01-23 05:24:15 -05:00
sata_qstor.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
sata_sil24.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
sata_sil.c [libata] sata_sil: fix used-uninit warning 2011-08-18 23:52:36 -04:00
sata_sis.c sata_sis.c: trivial spelling fix 2011-11-09 01:36:49 -05:00
sata_svw.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
sata_sx4.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
sata_uli.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
sata_via.c ata: sata_via: Use dev_dbg 2011-07-23 17:57:36 -04:00
sata_vsc.c ata: Add and use ata_print_version_once 2011-07-23 17:57:36 -04:00
sis.h libata: PATA-mode fixes for sis_sata 2007-07-02 10:17:42 -04:00