]> git.baikalelectronics.ru Git - kernel.git/commit
[libata] replace sata_settings with devslp_timing
authorShane Huang <shane.huang@amd.com>
Mon, 17 Dec 2012 15:18:59 +0000 (23:18 +0800)
committerJeff Garzik <jgarzik@redhat.com>
Mon, 14 Jan 2013 18:29:15 +0000 (13:29 -0500)
commit37a8d76859446bc16d05f800002f8483bb37ade6
tree59f3fd6a8285925c79419132b469602f4c36a0bf
parentcc35dec6cf8dfdafb9b5a6c5561e3bbe8687de63
[libata] replace sata_settings with devslp_timing

NCQ capability was used to check availability of SATA Settings page
from Identify Device Data Log, which contains DevSlp timing variables.
It does not work on some HDDs and leads to error messages.

IDENTIFY word 78 bit 5(Hardware Feature Control) can't work either
because it is only the sufficient condition of Identify Device data
log, not the necessary condition.

This patch replaced ata_device->sata_settings with ->devslp_timing
to only save DevSlp timing variables(8 bytes), instead of the whole
SATA Settings page(512 bytes).

Addresses https://bugzilla.kernel.org/show_bug.cgi?id=51881

Reported-by: Borislav Petkov <bp@alien8.de>
Signed-off-by: Shane Huang <shane.huang@amd.com>
Cc: stable@vger.kernel.org
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/libahci.c
drivers/ata/libata-core.c
include/linux/ata.h
include/linux/libata.h