[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20220113154635.17581-3-pmenzel@molgen.mpg.de>
Date: Thu, 13 Jan 2022 16:46:35 +0100
From: Paul Menzel <pmenzel@...gen.mpg.de>
To: Damien Le Moal <damien.lemoal@...nsource.wdc.com>
Cc: linux-ide@...r.kernel.org, Paul Menzel <pmenzel@...gen.mpg.de>,
linux-kernel@...r.kernel.org
Subject: [PATCH 2/2] ata: Warn about removal of debounce delay in Linux 5.19
The delay is only needed for a few buggy chipsets (PHYs(?)). As 200 ms
is quite a lot in today times, announce the change of the default in
Linux 5.19, and call for tests and reports.
---
drivers/ata/libata-sata.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/ata/libata-sata.c b/drivers/ata/libata-sata.c
index 29a815e2b7248..026ffcfaeaf26 100644
--- a/drivers/ata/libata-sata.c
+++ b/drivers/ata/libata-sata.c
@@ -318,9 +318,13 @@ int sata_link_resume(struct ata_link *link, const unsigned long *params,
* debouncing. Duration can be configured with module
* parameter debounce_delay_ms.
*/
- if (!(link->flags & ATA_LFLAG_NO_DEBOUNCE_DELAY))
+ if (!(link->flags & ATA_LFLAG_NO_DEBOUNCE_DELAY)) {
ata_msleep(link->ap,
(libata_debounce_delay_ms < 0) ? 200 : libata_debounce_delay_ms);
+ if (libata_debounce_delay_ms < 0)
+ /* negative values are default */
+ ata_link_warn(link, "Due to historical reasons a 200 ms delay is applied in sata_link_resume(). Most controllers do not need that, so the default will change to 0 ms in Linux 5.19. Please test with lower values using libata.debounce_delay_ms and report the results <linux-ide@...r.kernel.org>.\n");
+ }
/* is SControl restored correctly? */
if ((rc = sata_scr_read(link, SCR_CONTROL, &scontrol)))
--
2.30.2
Powered by blists - more mailing lists