tmp_suning_uos_patched/drivers/ata
Bartosz Golaszewski d3d557cf64 sata: ahci-da850: add a workaround for controller instability
We have a use case with the da850 SATA controller where at PLL0
frequency of 456MHz (needed to properly service the LCD controller)
the chip becomes unstable and the hardreset operation is ignored the
first time 50% of times.

The sata core driver already retries to resume the link because some
controllers ignore writes to the SControl register, but just retrying
the resume operation doesn't work - we need to issue he phy/wake reset
again to make it work.

Reimplement ahci_hardreset() in the driver and poke the controller a
couple times before really giving up.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
2017-01-31 17:48:29 +05:30
..
acard-ahci.c
ahci_brcm.c
ahci_ceva.c
ahci_da850.c sata: ahci-da850: add a workaround for controller instability 2017-01-31 17:48:29 +05:30
ahci_imx.c
ahci_mvebu.c
ahci_octeon.c
ahci_platform.c
ahci_qoriq.c ahci: qoriq: added ls1046a platform support 2016-10-19 13:33:01 -04:00
ahci_seattle.c
ahci_st.c ahci: st: Add ports-implemented property in support 2016-08-10 12:16:49 -04:00
ahci_sunxi.c
ahci_tegra.c
ahci_xgene.c
ahci.c Merge branch 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2016-12-13 13:26:24 -08:00
ahci.h sata: ahci: export ahci_do_hardreset() locally 2017-01-31 17:48:21 +05:30
ata_generic.c
ata_piix.c
Kconfig
libahci_platform.c
libahci.c sata: ahci: export ahci_do_hardreset() locally 2017-01-31 17:48:21 +05:30
libata-acpi.c
libata-core.c Merge branch 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2016-12-13 15:30:50 -08:00
libata-eh.c
libata-pmp.c
libata-scsi.c Merge branch 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2016-12-13 15:30:50 -08:00
libata-sff.c
libata-trace.c
libata-transport.c
libata-transport.h
libata-zpodd.c
libata.h ata: Enabling ATA Command Priorities 2016-10-19 14:34:36 -04:00
Makefile
pata_acpi.c
pata_ali.c
pata_amd.c
pata_arasan_cf.c
pata_artop.c
pata_at32.c
pata_at91.c pata_at91: Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR 2016-09-22 11:48:46 -04:00
pata_atiixp.c
pata_atp867x.c
pata_bf54x.c
pata_cmd64x.c
pata_cmd640.c
pata_cs5520.c
pata_cs5530.c
pata_cs5535.c
pata_cs5536.c
pata_cypress.c
pata_efar.c
pata_ep93xx.c
pata_hpt3x2n.c
pata_hpt3x3.c
pata_hpt37x.c
pata_hpt366.c
pata_icside.c
pata_imx.c pata: imx: support controller modes up to PIO4 2016-11-09 11:48:58 -05:00
pata_isapnp.c
pata_it821x.c
pata_it8213.c
pata_ixp4xx_cf.c
pata_jmicron.c
pata_legacy.c
pata_macio.c
pata_marvell.c
pata_mpc52xx.c
pata_mpiix.c
pata_netcell.c
pata_ninja32.c pata_ninja32: Avoid corrupting status flags 2016-08-30 11:59:47 -04:00
pata_ns87410.c
pata_ns87415.c
pata_octeon_cf.c ata: Replace BUG() with BUG_ON(). 2016-09-22 11:46:52 -04:00
pata_of_platform.c
pata_oldpiix.c
pata_opti.c
pata_optidma.c
pata_palmld.c
pata_pcmcia.c
pata_pdc202xx_old.c
pata_pdc2027x.c
pata_piccolo.c
pata_platform.c
pata_pxa.c
pata_radisys.c
pata_rb532_cf.c
pata_rdc.c
pata_rz1000.c
pata_samsung_cf.c
pata_sc1200.c
pata_sch.c
pata_serverworks.c
pata_sil680.c
pata_sis.c
pata_sl82c105.c
pata_triflex.c
pata_via.c
pdc_adma.c
sata_dwc_460ex.c
sata_fsl.c
sata_highbank.c
sata_inic162x.c
sata_mv.c ata: sata_mv: check for errors when parsing nr-ports from dt 2016-11-29 11:35:06 -05:00
sata_nv.c
sata_promise.c
sata_promise.h
sata_qstor.c
sata_rcar.c
sata_sil.c
sata_sil24.c
sata_sis.c
sata_svw.c
sata_sx4.c
sata_uli.c
sata_via.c
sata_vsc.c
sis.h