summaryrefslogtreecommitdiffstats
path: root/sys/cam
diff options
context:
space:
mode:
authorsmh <smh@FreeBSD.org>2013-08-14 15:18:28 +0000
committersmh <smh@FreeBSD.org>2013-08-14 15:18:28 +0000
commit2c42b706ab7a60a3ba0ab83d1d6682f9e2ab50bf (patch)
tree0d88cf59dd80a6a0118a14c83b28f5573e5498c6 /sys/cam
parent09553452e7dfbf16dcb4dfb3013b5b732d1d3b99 (diff)
downloadFreeBSD-src-2c42b706ab7a60a3ba0ab83d1d6682f9e2ab50bf.zip
FreeBSD-src-2c42b706ab7a60a3ba0ab83d1d6682f9e2ab50bf.tar.gz
Added 4K quirks for:-
* OCZ Agility 2 SSDs * Marvell SSDs * Intel X25-M Series SSDs
Diffstat (limited to 'sys/cam')
-rw-r--r--sys/cam/ata/ata_da.c24
-rw-r--r--sys/cam/scsi/scsi_da.c24
2 files changed, 48 insertions, 0 deletions
diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c
index f201231..c8ed689 100644
--- a/sys/cam/ata/ata_da.c
+++ b/sys/cam/ata/ata_da.c
@@ -349,6 +349,14 @@ static struct ada_quirk_entry ada_quirk_table[] =
},
{
/*
+ * Intel X25-M Series SSDs
+ * 4k optimised & trim only works in 4k requests + 4k aligned
+ */
+ { T_DIRECT, SIP_MEDIA_FIXED, "*", "INTEL SSDSA2M*", "*" },
+ /*quirks*/ADA_Q_4K
+ },
+ {
+ /*
* Kingston E100 Series SSDs
* 4k optimised & trim only works in 4k requests + 4k aligned
*/
@@ -365,6 +373,22 @@ static struct ada_quirk_entry ada_quirk_table[] =
},
{
/*
+ * Marvell SSDs (entry taken from OpenSolaris)
+ * 4k optimised & trim only works in 4k requests + 4k aligned
+ */
+ { T_DIRECT, SIP_MEDIA_FIXED, "*", "MARVELL SD88SA02*", "*" },
+ /*quirks*/ADA_Q_4K
+ },
+ {
+ /*
+ * OCZ Agility 2 SSDs
+ * 4k optimised & trim only works in 4k requests + 4k aligned
+ */
+ { T_DIRECT, SIP_MEDIA_FIXED, "*", "OCZ-AGILITY2*", "*" },
+ /*quirks*/ADA_Q_4K
+ },
+ {
+ /*
* OCZ Agility 3 SSDs
* 4k optimised & trim only works in 4k requests + 4k aligned
*/
diff --git a/sys/cam/scsi/scsi_da.c b/sys/cam/scsi/scsi_da.c
index 617afbd..8ee47f9 100644
--- a/sys/cam/scsi/scsi_da.c
+++ b/sys/cam/scsi/scsi_da.c
@@ -1008,6 +1008,14 @@ static struct da_quirk_entry da_quirk_table[] =
},
{
/*
+ * Intel X25-M Series SSDs
+ * 4k optimised & trim only works in 4k requests + 4k aligned
+ */
+ { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "INTEL SSDSA2M*", "*" },
+ /*quirks*/DA_Q_4K
+ },
+ {
+ /*
* Kingston E100 Series SSDs
* 4k optimised & trim only works in 4k requests + 4k aligned
*/
@@ -1024,6 +1032,22 @@ static struct da_quirk_entry da_quirk_table[] =
},
{
/*
+ * Marvell SSDs (entry taken from OpenSolaris)
+ * 4k optimised & trim only works in 4k requests + 4k aligned
+ */
+ { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "MARVELL SD88SA02*", "*" },
+ /*quirks*/DA_Q_4K
+ },
+ {
+ /*
+ * OCZ Agility 2 SSDs
+ * 4k optimised & trim only works in 4k requests + 4k aligned
+ */
+ { T_DIRECT, SIP_MEDIA_FIXED, "*", "OCZ-AGILITY2*", "*" },
+ /*quirks*/DA_Q_4K
+ },
+ {
+ /*
* OCZ Agility 3 SSDs
* 4k optimised & trim only works in 4k requests + 4k aligned
*/
OpenPOWER on IntegriCloud