Re: [PATCH 4/5] pata: Update experimental tags

Jeff Garzik
2009-11-19T21:49:17Z

On 11/19/2009 02:31 PM, Bartlomiej Zolnierkiewicz wrote:
> Subject: [PATCH] pata_hpt{37x,3x2n}: add debounce delay to cable detection methods
>
> Alan Cox reported that cable detection sometimes works unreliably
> for HPT3xxN and that the issue is fixed by adding debounce delay
> as used by the vendor driver.
>
> Sergei Shtylyov also noticed that debounce delay is needed for all
> HPT37x and HPT3xxN chipsets according to vendor drivers.
>
> Signed-off-by: Bartlomiej Zolnierkiewicz<bzolnier@gmail.com>
> ---
> In comparison to original patch the conversion from PCI access to
> io has been dropped as it is not required for the bugfix and makes
> patch easier for back-porting into -stable kernels.
>
> drivers/ata/pata_hpt37x.c | 3 +++
> drivers/ata/pata_hpt3x2n.c | 3 +++
> 2 files changed, 6 insertions(+)
>
> Index: b/drivers/ata/pata_hpt37x.c
> ===================================================================
> --- a/drivers/ata/pata_hpt37x.c
> +++ b/drivers/ata/pata_hpt37x.c
> @@ -324,6 +324,9 @@ static int hpt37x_pre_reset(struct ata_l
>
> pci_read_config_byte(pdev, 0x5B,&scr2);
> pci_write_config_byte(pdev, 0x5B, scr2& ~0x01);
> +
> + udelay(10); /* debounce */
> +
> /* Cable register now active */
> pci_read_config_byte(pdev, 0x5A,&ata66);
> /* Restore state */
> Index: b/drivers/ata/pata_hpt3x2n.c
> ===================================================================
> --- a/drivers/ata/pata_hpt3x2n.c
> +++ b/drivers/ata/pata_hpt3x2n.c
> @@ -128,6 +128,9 @@ static int hpt3x2n_cable_detect(struct a
>
> pci_read_config_byte(pdev, 0x5B,&scr2);
> pci_write_config_byte(pdev, 0x5B, scr2& ~0x01);
> +
> + udelay(10); /* debounce */
> +
> /* Cable register now active */
> pci_read_config_byte(pdev, 0x5A,&ata66);
> /* Restore state */

applied -- same comment as last email, regarding hpt3x2n_cable_detect() fix