From: Sergei Shtylyov Date: Thu, 19 Jan 2012 16:09:56 +0000 (+0300) Subject: pata_legacy: correctly mask recovery field for HT6560B X-Git-Tag: firefly_0821_release~7541^2~1491 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=dfa5919bcc4079b0d48bb0441da8d5b144fef34f;p=firefly-linux-kernel-4.4.55.git pata_legacy: correctly mask recovery field for HT6560B commit 9716387311c790de381214c03e7f1b72b91a8189 upstream. According to the HT6560H datasheet, the recovery timing field is 4-bit wide, with a value of 0 meaning 16 cycles. Correct obvious thinko in the recovery field mask. Signed-off-by: Sergei Shtylyov Signed-off-by: Jeff Garzik Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/ata/pata_legacy.c b/drivers/ata/pata_legacy.c index 6bd9425ba5ab..d750962916b1 100644 --- a/drivers/ata/pata_legacy.c +++ b/drivers/ata/pata_legacy.c @@ -396,8 +396,7 @@ static void ht6560b_set_piomode(struct ata_port *ap, struct ata_device *adev) ata_timing_compute(adev, adev->pio_mode, &t, 20000, 1000); active = clamp_val(t.active, 2, 15); - recover = clamp_val(t.recover, 2, 16); - recover &= 0x15; + recover = clamp_val(t.recover, 2, 16) & 0x0F; inb(0x3E6); inb(0x3E6);