aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/sata_nv.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-02-03 10:39:55 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2009-02-03 10:39:55 -0500
commit52a84ec2f33debc86507fe7cffd8171660457bf2 (patch)
tree9b2ca62d6a567960384a188c18ec7dc64a036cfa /drivers/ata/sata_nv.c
parentb1792e367053968f2ddb48bc911d314143ce6242 (diff)
parent9062712fa9ed13b531dfc2228086650b8bd6a255 (diff)
Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: libata: implement HORKAGE_1_5_GBPS and apply it to WD My Book libata: add no penalty retry request for EH device handling routines libata: improve probe failure handling libata: add @spd_limit to sata_down_spd_limit() libata: clear dev->ering in smarter way libata: check onlineness before using SPD in sata_down_spd_limit() libata: move ata_dev_disable() to libata-eh.c libata: fix EH device failure handling sata_nv: ck804 has borked hardreset too ide/libata: fix ata_id_is_cfa() (take 4) libata: fix kernel-doc warnings ahci: add a module parameter to ignore the SSS flags for async scanning sata_mv: Fix chip type for Hightpoint RocketRaid 1740/1742 [libata] sata_sil: Fix compilation error with libata debugging enabled
Diffstat (limited to 'drivers/ata/sata_nv.c')
-rw-r--r--drivers/ata/sata_nv.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/ata/sata_nv.c b/drivers/ata/sata_nv.c
index c49ad0e61b6f..444af0415ca1 100644
--- a/drivers/ata/sata_nv.c
+++ b/drivers/ata/sata_nv.c
@@ -436,11 +436,16 @@ static struct ata_port_operations nv_nf2_ops = {
436 .hardreset = nv_noclassify_hardreset, 436 .hardreset = nv_noclassify_hardreset,
437}; 437};
438 438
439/* CK804 finally gets hardreset right */ 439/* For initial probing after boot and hot plugging, hardreset mostly
440 * works fine on CK804 but curiously, reprobing on the initial port by
441 * rescanning or rmmod/insmod fails to acquire the initial D2H Reg FIS
442 * in somewhat undeterministic way. Use noclassify hardreset.
443 */
440static struct ata_port_operations nv_ck804_ops = { 444static struct ata_port_operations nv_ck804_ops = {
441 .inherits = &nv_common_ops, 445 .inherits = &nv_common_ops,
442 .freeze = nv_ck804_freeze, 446 .freeze = nv_ck804_freeze,
443 .thaw = nv_ck804_thaw, 447 .thaw = nv_ck804_thaw,
448 .hardreset = nv_noclassify_hardreset,
444 .host_stop = nv_ck804_host_stop, 449 .host_stop = nv_ck804_host_stop,
445}; 450};
446 451