]> git.baikalelectronics.ru Git - kernel.git/commit
[libata] support for > 512 byte sectors (e.g. 4K Native)
authorGrant Grundler <grundler@google.com>
Tue, 17 Aug 2010 17:56:53 +0000 (10:56 -0700)
committerJeff Garzik <jgarzik@redhat.com>
Fri, 22 Oct 2010 00:21:03 +0000 (20:21 -0400)
commit68866f9bba67031a7667eaf8d2712c774b2d6de8
treecccdc9d6270fbc72b9147050232c627f7ddee23b
parent7158cae3fc3bc0c61b747ca597970a95d870225c
[libata] support for > 512 byte sectors (e.g. 4K Native)

This change enables my x86 machine to recognize and talk to a
"Native 4K" SATA device.

When I started working on this, I didn't know Matthew Wilcox had
posted a similar patch 2 years ago:
  http://git.kernel.org/?p=linux/kernel/git/willy/ata.git;a=shortlog;h=refs/heads/ata-large-sectors

Gwendal Grignou pointed me at the the above code and small portions of
this patch include Matthew's work. That's why Mathew is first on the
"Signed-off-by:". I've NOT included his use of a bitmap to determine
512 vs Native for ATA command block size - just used a simple table.
And bugs are almost certainly mine.

Lastly, the patch has been tested with a native 4K 'Engineering
Sample' drive provided by Hitachi GST.

Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
Signed-off-by: Grant Grundler <grundler@google.com>
Reviewed-by: Gwendal Grignou <gwendal@google.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/libata-scsi.c
include/linux/ata.h