smartmontools  SVN Rev 4092
Utility to control and monitor storage systems with "S.M.A.R.T."
drivedb.h
Go to the documentation of this file.
1 /*
2  * drivedb.h - smartmontools drive database file
3  *
4  * Home page of code is: http://smartmontools.sourceforge.net
5  *
6  * Copyright (C) 2003-11 Philip Williams, Bruce Allen
7  * Copyright (C) 2008-15 Christian Franke
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2, or (at your option)
12  * any later version.
13  *
14  * You should have received a copy of the GNU General Public License
15  * (for example COPYING); If not, see <http://www.gnu.org/licenses/>.
16  *
17  */
18 
19 /*
20  * Structure used to store drive database entries:
21  *
22  * struct drive_settings {
23  * const char * modelfamily;
24  * const char * modelregexp;
25  * const char * firmwareregexp;
26  * const char * warningmsg;
27  * const char * presets;
28  * };
29  *
30  * The elements are used in the following ways:
31  *
32  * modelfamily Informal string about the model family/series of a
33  * device. Set to "" if no info (apart from device id)
34  * known. The entry is ignored if this string starts with
35  * a dollar sign. Must not start with "USB:", see below.
36  * modelregexp POSIX extended regular expression to match the model of
37  * a device. This should never be "".
38  * firmwareregexp POSIX extended regular expression to match a devices's
39  * firmware. This is optional and should be "" if it is not
40  * to be used. If it is nonempty then it will be used to
41  * narrow the set of devices matched by modelregexp.
42  * warningmsg A message that may be displayed for matching drives. For
43  * example, to inform the user that they may need to apply a
44  * firmware patch.
45  * presets String with vendor-specific attribute ('-v') and firmware
46  * bug fix ('-F') options. Same syntax as in smartctl command
47  * line. The user's own settings override these.
48  *
49  * The regular expressions for drive model and firmware must match the full
50  * string. The effect of "^FULLSTRING$" is identical to "FULLSTRING".
51  * The form ".*SUBSTRING.*" can be used if substring match is desired.
52  *
53  * The table will be searched from the start to end or until the first match,
54  * so the order in the table is important for distinct entries that could match
55  * the same drive.
56  *
57  *
58  * Format for USB ID entries:
59  *
60  * modelfamily String with format "USB: DEVICE; BRIDGE" where
61  * DEVICE is the name of the device and BRIDGE is
62  * the name of the USB bridge. Both may be empty
63  * if no info known.
64  * modelregexp POSIX extended regular expression to match the USB
65  * vendor:product ID in hex notation ("0x1234:0xabcd").
66  * This should never be "".
67  * firmwareregexp POSIX extended regular expression to match the USB
68  * bcdDevice info. Only compared during search if other
69  * entries with same USB vendor:product ID exist.
70  * warningmsg Not used yet.
71  * presets String with one device type ('-d') option.
72  *
73  */
74 
75 /*
76 const drive_settings builtin_knowndrives[] = {
77  */
78  { "$Id: drivedb.h 4089 2015-05-17 17:06:17Z chrfranke $",
79  "-", "-",
80  "This is a dummy entry to hold the SVN-Id of drivedb.h",
81  ""
82  /* Default settings:
83  "-v 1,raw48,Raw_Read_Error_Rate "
84  "-v 2,raw48,Throughput_Performance "
85  "-v 3,raw16(avg16),Spin_Up_Time "
86  "-v 4,raw48,Start_Stop_Count "
87  "-v 5,raw16(raw16),Reallocated_Sector_Ct "
88  "-v 6,raw48,Read_Channel_Margin " // HDD only
89  "-v 7,raw48,Seek_Error_Rate " // HDD only
90  "-v 8,raw48,Seek_Time_Performance " // HDD only
91  "-v 9,raw24(raw8),Power_On_Hours "
92  "-v 10,raw48,Spin_Retry_Count " // HDD only
93  "-v 11,raw48,Calibration_Retry_Count " // HDD only
94  "-v 12,raw48,Power_Cycle_Count "
95  "-v 13,raw48,Read_Soft_Error_Rate "
96  // 14-174 Unknown_Attribute
97  "-v 175,raw48,Program_Fail_Count_Chip " // SSD only
98  "-v 176,raw48,Erase_Fail_Count_Chip " // SSD only
99  "-v 177,raw48,Wear_Leveling_Count " // SSD only
100  "-v 178,raw48,Used_Rsvd_Blk_Cnt_Chip " // SSD only
101  "-v 179,raw48,Used_Rsvd_Blk_Cnt_Tot " // SSD only
102  "-v 180,raw48,Unused_Rsvd_Blk_Cnt_Tot " // SSD only
103  "-v 181,raw48,Program_Fail_Cnt_Total "
104  "-v 182,raw48,Erase_Fail_Count_Total " // SSD only
105  "-v 183,raw48,Runtime_Bad_Block "
106  "-v 184,raw48,End-to-End_Error "
107  // 185-186 Unknown_Attribute
108  "-v 187,raw48,Reported_Uncorrect "
109  "-v 188,raw48,Command_Timeout "
110  "-v 189,raw48,High_Fly_Writes " // HDD only
111  "-v 190,tempminmax,Airflow_Temperature_Cel "
112  "-v 191,raw48,G-Sense_Error_Rate " // HDD only
113  "-v 192,raw48,Power-Off_Retract_Count "
114  "-v 193,raw48,Load_Cycle_Count " // HDD only
115  "-v 194,tempminmax,Temperature_Celsius "
116  "-v 195,raw48,Hardware_ECC_Recovered "
117  "-v 196,raw16(raw16),Reallocated_Event_Count "
118  "-v 197,raw48,Current_Pending_Sector "
119  "-v 198,raw48,Offline_Uncorrectable "
120  "-v 199,raw48,UDMA_CRC_Error_Count "
121  "-v 200,raw48,Multi_Zone_Error_Rate " // HDD only
122  "-v 201,raw48,Soft_Read_Error_Rate " // HDD only
123  "-v 202,raw48,Data_Address_Mark_Errs " // HDD only
124  "-v 203,raw48,Run_Out_Cancel "
125  "-v 204,raw48,Soft_ECC_Correction "
126  "-v 205,raw48,Thermal_Asperity_Rate "
127  "-v 206,raw48,Flying_Height " // HDD only
128  "-v 207,raw48,Spin_High_Current " // HDD only
129  "-v 208,raw48,Spin_Buzz " // HDD only
130  "-v 209,raw48,Offline_Seek_Performnce " // HDD only
131  // 210-219 Unknown_Attribute
132  "-v 220,raw48,Disk_Shift " // HDD only
133  "-v 221,raw48,G-Sense_Error_Rate " // HDD only
134  "-v 222,raw48,Loaded_Hours " // HDD only
135  "-v 223,raw48,Load_Retry_Count " // HDD only
136  "-v 224,raw48,Load_Friction " // HDD only
137  "-v 225,raw48,Load_Cycle_Count " // HDD only
138  "-v 226,raw48,Load-in_Time " // HDD only
139  "-v 227,raw48,Torq-amp_Count " // HDD only
140  "-v 228,raw48,Power-off_Retract_Count "
141  // 229 Unknown_Attribute
142  "-v 230,raw48,Head_Amplitude " // HDD only
143  "-v 231,raw48,Temperature_Celsius "
144  "-v 232,raw48,Available_Reservd_Space "
145  "-v 233,raw48,Media_Wearout_Indicator " // SSD only
146  // 234-239 Unknown_Attribute
147  "-v 240,raw24(raw8),Head_Flying_Hours " // HDD only, smartmontools <= r3966: raw48
148  "-v 241,raw48,Total_LBAs_Written "
149  "-v 242,raw48,Total_LBAs_Read "
150  // 243-249 Unknown_Attribute
151  "-v 250,raw48,Read_Error_Retry_Rate "
152  // 251-253 Unknown_Attribute
153  "-v 254,raw48,Free_Fall_Sensor " // HDD only
154  */
155  },
156  { "Apacer SSD",
157  "(2|4|8|16|32)GB SATA Flash Drive", // tested with APSDM002G15AN-CT/SFDDA01C and SFI2101D, APSDM004G13AN-AT/SFDE001A
158  "SF(DDA01C|I2101D|DE001A)", "", // spec found at http://wfcache.advantech.com/www/certified-peripherals/documents/96fmcff-04g-cs-ap_Datasheet.pdf
159  "-v 160,raw48,Initial_Bad_Block_Count "
160  "-v 161,raw48,Bad_Block_Count "
161  "-v 162,raw48,Spare_Block_Count "
162  "-v 163,raw48,Max_Erase_Count "
163  "-v 164,raw48,Average_Erase_Count "
164  "-v 165,raw48,Average_Erase_Count " // could be wrong
165  "-v 166,raw48,Later_Bad_Block_Count "
166  "-v 167,raw48,SSD_Protect_Mode "
167  "-v 168,raw48,SATA_PHY_Err_Ct "
168  },
169  { "Apple SD/SM/TS...E/F SSDs", // SanDisk/Samsung/Toshiba?
170  "APPLE SSD (S[DM]|TS)0?(128|256|512|768)[EF]", // tested with APPLE SSD SD256E/1021AP, SD0128F/A223321
171  // APPLE SSD SM768E/CXM90A1Q, SM0512F/UXM2JA1Q, TS0256F/109L0704
172  "", "",
173  //"-v 1,raw48,Raw_Read_Error_Rate "
174  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
175  //"-v 9,raw24(raw8),Power_On_Hours "
176  //"-v 12,raw48,Power_Cycle_Count "
177  //"-v 169,raw48,Unknown_Attribute "
178  "-v 173,raw48,Wear_Leveling_Count " // ]
179  "-v 174,raw48,Host_Reads_MiB " // ] guessed (ticket #342), S[DM]*F only
180  "-v 175,raw48,Host_Writes_MiB " // ]
181  //"-v 192,raw48,Power-Off_Retract_Count "
182  //"-v 194,tempminmax,Temperature_Celsius "
183  //"-v 197,raw48,Current_Pending_Sector "
184  //"-v 199,raw48,UDMA_CRC_Error_Count "
185  //"-v 240,raw48,Unknown_SSD_Attribute "
186  },
187  { "Crucial/Micron RealSSD C300/M500", // Marvell 88SS91xx
188  "C300-CTFDDA[AC](064|128|256)MAG|" // Marvell 88SS9174 BJP2, tested with C300-CTFDDAC128MAG/0002,
189  // C300-CTFDDAC064MAG/0006
190  "Crucial_CT(120|240|480)M500SSD[13]", // Marvell 88SS9187 BLD2, tested with Crucial_CT120M500SSD3/MU02,
191  // Crucial_CT120M500SSD1/MU02, Crucial_CT240M500SSD1/MU03, Crucial_CT480M500SSD1/MU03
192  "", "",
193  //"-v 1,raw48,Raw_Read_Error_Rate "
194  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
195  //"-v 9,raw24(raw8),Power_On_Hours "
196  //"-v 12,raw48,Power_Cycle_Count "
197  "-v 170,raw48,Grown_Failing_Block_Ct "
198  "-v 171,raw48,Program_Fail_Count "
199  "-v 172,raw48,Erase_Fail_Count "
200  "-v 173,raw48,Wear_Leveling_Count "
201  "-v 174,raw48,Unexpect_Power_Loss_Ct "
202  "-v 181,raw16,Non4k_Aligned_Access "
203  "-v 183,raw48,SATA_Iface_Downshift "
204  //"-v 184,raw48,End-to-End_Error "
205  //"-v 187,raw48,Reported_Uncorrect "
206  //"-v 188,raw48,Command_Timeout "
207  "-v 189,raw48,Factory_Bad_Block_Ct "
208  //"-v 194,tempminmax,Temperature_Celsius "
209  //"-v 195,raw48,Hardware_ECC_Recovered "
210  //"-v 196,raw16(raw16),Reallocated_Event_Count "
211  //"-v 197,raw48,Current_Pending_Sector "
212  //"-v 198,raw48,Offline_Uncorrectable "
213  //"-v 199,raw48,UDMA_CRC_Error_Count "
214  "-v 202,raw48,Percent_Lifetime_Used "
215  "-v 206,raw48,Write_Error_Rate "
216  "-v 210,raw48,Success_RAIN_Recov_Cnt "
217  "-v 246,raw48,Total_Host_Sector_Write "
218  "-v 247,raw48,Host_Program_Page_Count "
219  "-v 248,raw48,Bckgnd_Program_Page_Cnt"
220  },
221  { "Crucial/Micron RealSSD m4/C400/P400", // Marvell 9176, fixed firmware
222  "C400-MTFDDA[ACK](064|128|256|512)MAM|"
223  "M4-CT(064|128|256|512)M4SSD[123]|" // tested with M4-CT512M4SSD2/0309
224  "MTFDDAK(064|128|256|512|050|100|200|400)MA[MNR]-1[JKS]1.*", // tested with
225  // MTFDDAK256MAR-1K1AA/MA52, MTFDDAK256MAM-1K12/08TH
226  "030[9-Z]|03[1-Z].|0[4-Z]..|[1-Z]....*", // >= "0309"
227  "",
228  //"-v 1,raw48,Raw_Read_Error_Rate "
229  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
230  //"-v 9,raw24(raw8),Power_On_Hours "
231  //"-v 12,raw48,Power_Cycle_Count "
232  "-v 170,raw48,Grown_Failing_Block_Ct "
233  "-v 171,raw48,Program_Fail_Count "
234  "-v 172,raw48,Erase_Fail_Count "
235  "-v 173,raw48,Wear_Leveling_Count "
236  "-v 174,raw48,Unexpect_Power_Loss_Ct "
237  "-v 181,raw16,Non4k_Aligned_Access "
238  "-v 183,raw48,SATA_Iface_Downshift "
239  //"-v 184,raw48,End-to-End_Error "
240  //"-v 187,raw48,Reported_Uncorrect "
241  //"-v 188,raw48,Command_Timeout "
242  "-v 189,raw48,Factory_Bad_Block_Ct "
243  //"-v 194,tempminmax,Temperature_Celsius "
244  //"-v 195,raw48,Hardware_ECC_Recovered "
245  //"-v 196,raw16(raw16),Reallocated_Event_Count "
246  //"-v 197,raw48,Current_Pending_Sector "
247  //"-v 198,raw48,Offline_Uncorrectable "
248  //"-v 199,raw48,UDMA_CRC_Error_Count "
249  "-v 202,raw48,Perc_Rated_Life_Used "
250  "-v 206,raw48,Write_Error_Rate"
251  },
252  { "Crucial/Micron RealSSD m4/C400", // Marvell 9176, buggy or unknown firmware
253  "C400-MTFDDA[ACK](064|128|256|512)MAM|" // tested with C400-MTFDDAC256MAM/0002
254  "M4-CT(064|128|256|512)M4SSD[123]", // tested with M4-CT064M4SSD2/0002,
255  // M4-CT064M4SSD2/0009, M4-CT256M4SSD3/000F
256  "",
257  "This drive may hang after 5184 hours of power-on time:\n"
258  "http://www.tomshardware.com/news/Crucial-m4-Firmware-BSOD,14544.html\n"
259  "See the following web pages for firmware updates:\n"
260  "http://www.crucial.com/support/firmware.aspx\n"
261  "http://www.micron.com/products/solid-state-storage/client-ssd#software",
262  "-v 170,raw48,Grown_Failing_Block_Ct "
263  "-v 171,raw48,Program_Fail_Count "
264  "-v 172,raw48,Erase_Fail_Count "
265  "-v 173,raw48,Wear_Leveling_Count "
266  "-v 174,raw48,Unexpect_Power_Loss_Ct "
267  "-v 181,raw16,Non4k_Aligned_Access "
268  "-v 183,raw48,SATA_Iface_Downshift "
269  "-v 189,raw48,Factory_Bad_Block_Ct "
270  "-v 202,raw48,Perc_Rated_Life_Used "
271  "-v 206,raw48,Write_Error_Rate"
272  },
273  { "Crucial/Micron MX100/MX200/M5x0/M600 Client SSDs",
274  "Crucial_CT(128|256|512)MX100SSD1|"// tested with Crucial_CT256MX100SSD1/MU01
275  "Crucial_CT(200|256|500|512|1000|1024)MX200SSD[1346]|" // tested with Crucial_CT500MX200SSD1/MU01,
276  // Crucial_CT1024MX200SSD1/MU01
277  "Crucial_CT(120|240|480|960)M500SSD1|" // tested with Crucial_CT960M500SSD1/MU03
278  "Crucial_CT(128|256|512|1024)M550SSD[13]|" // tested with Crucial_CT512M550SSD3/MU01, Crucial_CT1024M550SSD1/MU01
279  "Micron_M500_MTFDDA[KTV](120|240|480|960)MAV|"// tested with Micron_M500_MTFDDAK960MAV/MU05
280  "(Micron_)?M510[_-]MTFDDA[KTV](128|256)MAZ|" // tested with M510-MTFDDAK256MAZ/MU01
281  "(Micron_)?M550[_-]MTFDDA[KTV](064|128|256|512|1T0)MAY|" // tested with M550-MTFDDAK256MAY/MU01
282  "Micron_M600_(EE|MT)FDDA[KTV](128|256|512|1T0)MBF[25Z]?", // tested with Micron_M600_MTFDDAK1T0MBF/MU01
283  "", "",
284  //"-v 1,raw48,Raw_Read_Error_Rate "
285  "-v 5,raw48,Reallocate_NAND_Blk_Cnt "
286  //"-v 9,raw24(raw8),Power_On_Hours "
287  //"-v 12,raw48,Power_Cycle_Count "
288  "-v 171,raw48,Program_Fail_Count "
289  "-v 172,raw48,Erase_Fail_Count "
290  "-v 173,raw48,Ave_Block-Erase_Count "
291  "-v 174,raw48,Unexpect_Power_Loss_Ct "
292  "-v 180,raw48,Unused_Reserve_NAND_Blk "
293  "-v 183,raw48,SATA_Interfac_Downshift "
294  "-v 184,raw48,Error_Correction_Count "
295  //"-v 187,raw48,Reported_Uncorrect "
296  //"-v 194,tempminmax,Temperature_Celsius "
297  //"-v 196,raw16(raw16),Reallocated_Event_Count "
298  //"-v 197,raw48,Current_Pending_Sector "
299  //"-v 198,raw48,Offline_Uncorrectable "
300  //"-v 199,raw48,UDMA_CRC_Error_Count "
301  "-v 202,raw48,Percent_Lifetime_Used "
302  "-v 206,raw48,Write_Error_Rate "
303  "-v 210,raw48,Success_RAIN_Recov_Cnt "
304  "-v 246,raw48,Total_Host_Sector_Write "
305  "-v 247,raw48,Host_Program_Page_Count "
306  "-v 248,raw48,Bckgnd_Program_Page_Cnt"
307  },
308  { "Micron M500DC Enterprise SSDs",
309  "Micron_M500DC_(EE|MT)FDDA[AK](120|240|480|800)MBB", // tested with
310  // Micron_M500DC_EEFDDAA120MBB/129, Micron_M500DC_MTFDDAK800MBB/0129
311  "", "",
312  //"-v 1,raw48,Raw_Read_Error_Rate "
313  "-v 5,raw48,Reallocated_Block_Count "
314  //"-v 9,raw24(raw8),Power_On_Hours "
315  //"-v 12,raw48,Power_Cycle_Count "
316  "-v 170,raw48,Reserved_Block_Count "
317  "-v 171,raw48,Program_Fail_Count "
318  "-v 172,raw48,Erase_Fail_Count "
319  "-v 173,raw48,Ave_Block-Erase_Count "
320  "-v 174,raw48,Unexpect_Power_Loss_Ct "
321  "-v 184,raw48,Error_Correction_Count "
322  //"-v 187,raw48,Reported_Uncorrect "
323  "-v 188,raw48,Command_Timeouts "
324  //"-v 194,tempminmax,Temperature_Celsius "
325  "-v 195,raw48,Cumulativ_Corrected_ECC "
326  //"-v 197,raw48,Current_Pending_Sector "
327  //"-v 198,raw48,Offline_Uncorrectable "
328  //"-v 199,raw48,UDMA_CRC_Error_Count "
329  "-v 202,raw48,Percent_Lifetime_Remain "
330  "-v 206,raw48,Write_Error_Rate "
331  "-v 247,raw48,Host_Program_Page_Count "
332  "-v 248,raw48,Bckgnd_Program_Page_Cnt"
333  },
334  { "SandForce Driven SSDs",
335  "SandForce 1st Ed\\.|" // Demo Drive, tested with firmware 320A13F0
336  "ADATA SSD S(396|510|599) .?..GB|" // tested with ADATA SSD S510 60GB/320ABBF0,
337  // ADATA SSD S599 256GB/3.1.0, 64GB/3.4.6
338  "ADATA SP[389]00|" // tested with ADATA SP300/5.0.2d, SP800/5.0.6c,
339  // ADATA SP900/5.0.6 (Premier Pro, SF-2281)
340  "ADATA SSD S[PX]900 (64|128|256|512)GB-DL2|" // tested with ADATA SSD SP900 256GB-DL2/5.0.6,
341  // ADATA SSD SX900 512GB-DL2/5.8.2
342  "ADATA XM11 (128|256)GB|" // tested with ADATA XM11 128GB/5.0.1
343  "ATP Velocity MIV (60|120|240|480)GB|" // tested with ATP Velocity MIV 480GB/110719
344  "Corsair CSSD-F(40|60|80|115|120|160|240)GBP?2.*|" // Corsair Force, tested with
345  // Corsair CSSD-F40GB2/1.1, Corsair CSSD-F115GB2-A/2.1a
346  "Corsair Force ((3 |LS )?SSD|GS|GT)|" // SF-2281, tested with
347  // Corsair Force SSD/5.05, 3 SSD/1.3.2, GT/1.3.3, GS/5.03, LS SSD/S8FM06.5
348  "FM-25S2S-(60|120|240)GBP2|" // G.SKILL Phoenix Pro, SF-1200, tested with
349  // FM-25S2S-240GBP2/4.2
350  "FTM(06|12|24|48)CT25H|" // Supertalent TeraDrive CT, tested with
351  // FTM24CT25H/STTMP2P1
352  "KINGSTON SE50S3(100|240|480)G|" // tested with SE50S3100G/KE1ABBF0
353  "KINGSTON SH10[03]S3(90|120|240|480)G|" // HyperX (3K), SF-2281, tested with
354  // SH100S3240G/320ABBF0, SH103S3120G/505ABBF0
355  "KINGSTON SKC(300S37A|380S3)(60|120|180|240|480)G|" // KC300, SF-2281, tested with
356  // SKC300S37A120G/KC4ABBF0, SKC380S3120G/507ABBF0
357  "KINGSTON SVP200S3(7A)?(60|90|120|240|480)G|" // V+ 200, SF-2281, tested with
358  // SVP200S37A480G/502ABBF0, SVP200S390G/332ABBF0
359  "KINGSTON SMS200S3(30|60|120)G|" // mSATA, SF-2241, tested with SMS200S3120G/KC3ABBF0
360  "KINGSTON SMS450S3(32|64|128)G|" // mSATA, SF-2281, tested with SMS450S3128G/503ABBF0
361  "KINGSTON (SV300|SKC100|SE100)S3.*G|" // other SF-2281
362  "MKNSSDCR(45|60|90|120|180|240|480)GB(-[DM]X)?|" // Mushkin Chronos (Deluxe/Enhanced), SF-2281,
363  // tested with MKNSSDCR120GB, MKNSSDCR120GB-MX/560ABBF0
364  "MKNSSDAT(30|40|60|120|180|240|480)GB(-(DX|V))?|" // Mushkin Atlas (Deluxe/Value), mSATA, SF-2281,
365  // tested with MKNSSDAT120GB-V/540ABBF0
366  "Mushkin MKNSSDCL(40|60|80|90|115|120|180|240|480)GB-DX2?|" // Mushkin Callisto deluxe,
367  // SF-1200/1222, Mushkin MKNSSDCL60GB-DX/361A13F0
368  "OCZ[ -](AGILITY2([ -]EX)?|COLOSSUS2|ONYX2|VERTEX(2|-LE))( [123]\\..*)?|" // SF-1200,
369  // tested with OCZ-VERTEX2/1.11, OCZ-VERTEX2 3.5/1.11
370  "OCZ-NOCTI|" // mSATA, SF-2100, tested with OCZ-NOCTI/2.15
371  "OCZ-REVODRIVE3?( X2)?|" // PCIe, SF-1200/2281, tested with
372  // OCZ-REVODRIVE( X2)?/1.20, OCZ-REVODRIVE3 X2/2.11
373  "OCZ[ -](VELO|VERTEX2[ -](EX|PRO))( [123]\\..*)?|" // SF-1500, tested with
374  // OCZ VERTEX2-PRO/1.10 (Bogus thresholds for attribute 232 and 235)
375  "D2[CR]STK251...-....|" // OCZ Deneva 2 C/R, SF-22xx/25xx,
376  // tested with D2CSTK251M11-0240/2.08, D2CSTK251A10-0240/2.15
377  "OCZ-(AGILITY3|SOLID3|VERTEX3( MI)?)|" // SF-2200, tested with OCZ-VERTEX3/2.02,
378  // OCZ-AGILITY3/2.11, OCZ-SOLID3/2.15, OCZ-VERTEX3 MI/2.15
379  "OCZ Z-DRIVE R4 [CR]M8[48]|" // PCIe, SF-2282/2582, tested with OCZ Z-DRIVE R4 CM84/2.13
380  // (Bogus attributes under Linux)
381  "TALOS2|" // OCZ Talos 2 C/R, SAS (works with -d sat), 2*SF-2282, tested with TALOS2/3.20E
382  "(APOC|DENC|DENEVA|FTNC|GFGC|MANG|MMOC|NIMC|TMSC).*|" // other OCZ SF-1200,
383  // tested with DENCSTE251M11-0120/1.33, DENEVA PCI-E/1.33
384  "(DENR|DRSAK|EC188|NIMR|PSIR|TRSAK).*|" // other OCZ SF-1500
385  "OWC Aura Pro 6G SSD|" // tested with OWC Aura Pro 6G SSD/507ABBF0
386  "OWC Mercury Electra (Pro )?[36]G SSD|" // tested with
387  // OWC Mercury Electra 6G SSD/502ABBF0, OWC Mercury Electra Pro 3G SSD/541ABBF0
388  "OWC Mercury E(xtreme|XTREME) Pro (6G |RE )?SSD|" // tested with
389  // OWC Mercury Extreme Pro SSD/360A13F0, OWC Mercury EXTREME Pro 6G SSD/507ABBF0
390  "Patriot Pyro|" // tested with Patriot Pyro/332ABBF0
391  "SanDisk SDSSDX(60|120|240|480)GG25|" // SanDisk Extreme, SF-2281, tested with
392  // SDSSDX240GG25/R201
393  "SuperSSpeed S301 [0-9]*GB|" // SF-2281, tested with SuperSSpeed S301 128GB/503
394  "SG9XCS2D(0?50|100|200|400)GESLT|" // Smart Storage Systems XceedIOPS2, tested with
395  // SG9XCS2D200GESLT/SA03L370
396  "SSD9SC(120|240|480)GED[EA]|" // PNY Prevail Elite, tested with SSD9SC120GEDA/334ABBF0
397  "(TX32|TX31C1|VN0.?..GCNMK).*|" // Smart Storage Systems XceedSTOR
398  "(TX22D1|TX21B1).*|" // Smart Storage Systems XceedIOPS2
399  "TX52D1.*|" // Smart Storage Systems Xcel-200
400  "TS(64|128|256|512)GSSD[37]20|" // Transcend SSD320/720, SF-2281, tested with
401  // TS128GSSD320, TS256GSSD720/5.2.0
402  "UGB(88P|99S)GC...H[BF].|" // Unigen, tested with
403  // UGB88PGC100HF2/MP Rev2, UGB99SGC100HB3/RC Rev3
404  "VisionTek GoDrive (60|120|240|480)GB", // tested with VisionTek GoDrive 480GB/506ABBF0
405  "", "",
406  "-v 1,raw24/raw32,Raw_Read_Error_Rate "
407  "-v 5,raw48,Retired_Block_Count "
408  "-v 9,msec24hour32,Power_On_Hours_and_Msec "
409  //"-v 12,raw48,Power_Cycle_Count "
410  "-v 13,raw24/raw32,Soft_Read_Error_Rate "
411  "-v 100,raw48,Gigabytes_Erased "
412  "-v 170,raw48,Reserve_Block_Count "
413  "-v 171,raw48,Program_Fail_Count "
414  "-v 172,raw48,Erase_Fail_Count "
415  "-v 174,raw48,Unexpect_Power_Loss_Ct "
416  "-v 177,raw48,Wear_Range_Delta "
417  "-v 181,raw48,Program_Fail_Count "
418  "-v 182,raw48,Erase_Fail_Count "
419  "-v 184,raw48,IO_Error_Detect_Code_Ct "
420  //"-v 187,raw48,Reported_Uncorrect "
421  "-v 189,tempminmax,Airflow_Temperature_Cel "
422  //"-v 194,tempminmax,Temperature_Celsius "
423  "-v 195,raw24/raw32,ECC_Uncorr_Error_Count "
424  //"-v 196,raw16(raw16),Reallocated_Event_Count "
425  "-v 198,raw24/raw32:210zr54,Uncorrectable_Sector_Ct " // KINGSTON SE100S3100G/510ABBF0
426  "-v 199,raw48,SATA_CRC_Error_Count "
427  "-v 201,raw24/raw32,Unc_Soft_Read_Err_Rate "
428  "-v 204,raw24/raw32,Soft_ECC_Correct_Rate "
429  "-v 230,raw48,Life_Curve_Status "
430  "-v 231,raw48,SSD_Life_Left "
431  //"-v 232,raw48,Available_Reservd_Space "
432  "-v 233,raw48,SandForce_Internal "
433  "-v 234,raw48,SandForce_Internal "
434  "-v 235,raw48,SuperCap_Health "
435  "-v 241,raw48,Lifetime_Writes_GiB "
436  "-v 242,raw48,Lifetime_Reads_GiB"
437  },
438  { "Indilinx Barefoot based SSDs",
439  "Corsair CSSD-V(32|60|64|128|256)GB2|" // Corsair Nova, tested with Corsair CSSD-V32GB2/2.2
440  "CRUCIAL_CT(64|128|256)M225|" // tested with CRUCIAL_CT64M225/1571
441  "G.SKILL FALCON (64|128|256)GB SSD|" // tested with G.SKILL FALCON 128GB SSD/2030
442  "OCZ[ -](AGILITY|ONYX|VERTEX( 1199|-TURBO| v1\\.10)?)|" // tested with
443  // OCZ-ONYX/1.6, OCZ-VERTEX 1199/00.P97, OCZ-VERTEX/1.30, OCZ VERTEX-TURBO/1.5, OCZ-VERTEX v1.10/1370
444  "Patriot[ -]Torqx.*|"
445  "RENICE Z2|" // tested with RENICE Z2/2030
446  "STT_FT[MD](28|32|56|64)GX25H|" // Super Talent Ultradrive GX, tested with STT_FTM64GX25H/1916
447  "TS(18|25)M(64|128)MLC(16|32|64|128|256|512)GSSD|" // ASAX Leopard Hunt II, tested with TS25M64MLC64GSSD/0.1
448  "FM-25S2I-(64|128)GBFII|" // G.Skill FALCON II, tested with FM-25S2I-64GBFII
449  "TS(60|120)GSSD25D-M", // Transcend Ultra SSD (SATA II), see also Ticket #80
450  "", "",
451  "-v 1,raw64 " // Raw_Read_Error_Rate
452  "-v 9,raw64 " // Power_On_Hours
453  "-v 12,raw64 " // Power_Cycle_Count
454  "-v 184,raw64,Initial_Bad_Block_Count "
455  "-v 195,raw64,Program_Failure_Blk_Ct "
456  "-v 196,raw64,Erase_Failure_Blk_Ct "
457  "-v 197,raw64,Read_Failure_Blk_Ct "
458  "-v 198,raw64,Read_Sectors_Tot_Ct "
459  "-v 199,raw64,Write_Sectors_Tot_Ct "
460  "-v 200,raw64,Read_Commands_Tot_Ct "
461  "-v 201,raw64,Write_Commands_Tot_Ct "
462  "-v 202,raw64,Error_Bits_Flash_Tot_Ct "
463  "-v 203,raw64,Corr_Read_Errors_Tot_Ct "
464  "-v 204,raw64,Bad_Block_Full_Flag "
465  "-v 205,raw64,Max_PE_Count_Spec "
466  "-v 206,raw64,Min_Erase_Count "
467  "-v 207,raw64,Max_Erase_Count "
468  "-v 208,raw64,Average_Erase_Count "
469  "-v 209,raw64,Remaining_Lifetime_Perc "
470  "-v 210,raw64,Indilinx_Internal "
471  "-v 211,raw64,SATA_Error_Ct_CRC "
472  "-v 212,raw64,SATA_Error_Ct_Handshake "
473  "-v 213,raw64,Indilinx_Internal"
474  },
475  { "Indilinx Barefoot_2/Everest/Martini based SSDs",
476  "OCZ VERTEX[ -]PLUS|" // tested with OCZ VERTEX-PLUS/3.55, OCZ VERTEX PLUS/3.55
477  "OCZ-VERTEX PLUS R2|" // Barefoot 2, tested with OCZ-VERTEX PLUS R2/1.2
478  "OCZ-PETROL|" // Everest 1, tested with OCZ-PETROL/3.12
479  "OCZ-AGILITY4|" // Everest 2, tested with OCZ-AGILITY4/1.5.2
480  "OCZ-VERTEX4", // Everest 2, tested with OCZ-VERTEX4/1.5
481  "", "",
482  //"-v 1,raw48,Raw_Read_Error_Rate "
483  //"-v 3,raw16(avg16),Spin_Up_Time "
484  //"-v 4,raw48,Start_Stop_Count "
485  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
486  //"-v 9,raw24(raw8),Power_On_Hours "
487  //"-v 12,raw48,Power_Cycle_Count "
488  "-v 232,raw48,Lifetime_Writes " // LBA?
489  //"-v 233,raw48,Media_Wearout_Indicator"
490  },
491  { "Indilinx Barefoot 3 based SSDs",
492  "OCZ-VECTOR(150)?|" // tested with OCZ-VECTOR/1.03, OCZ-VECTOR150/1.2
493  "OCZ-VERTEX4[56]0|" // Barefoot 3 M10, tested with OCZ-VERTEX450/1.0, OCZ-VERTEX460/1.0
494  "Radeon R7", // Barefoot 3 M00, tested with Radeon R7/1.00
495  "", "",
496  "-v 5,raw48,Runtime_Bad_Block "
497  //"-v 9,raw24(raw8),Power_On_Hours "
498  //"-v 12,raw48,Power_Cycle_Count "
499  "-v 171,raw48,Avail_OP_Block_Count "
500  "-v 174,raw48,Pwr_Cycle_Ct_Unplanned "
501  "-v 187,raw48,Total_Unc_NAND_Reads "
502  "-v 195,raw48,Total_Prog_Failures "
503  "-v 196,raw48,Total_Erase_Failures "
504  "-v 197,raw48,Total_Unc_Read_Failures "
505  "-v 198,raw48,Host_Reads_GiB "
506  "-v 199,raw48,Host_Writes_GiB "
507  "-v 208,raw48,Average_Erase_Count "
508  "-v 210,raw48,SATA_CRC_Error_Count "
509  "-v 233,raw48,Remaining_Lifetime_Perc "
510  "-v 241,raw48,Host_Writes_GiB " // M00/M10
511  "-v 242,raw48,Host_Reads_GiB " // M00/M10
512  "-v 249,raw48,Total_NAND_Prog_Ct_GiB"
513  },
514  { "OCZ Intrepid 3000 SSDs", // tested with OCZ INTREPID 3600/1.4.3.6, 3800/1.4.3.0
515  "OCZ INTREPID 3[68]00",
516  "", "",
517  "-v 5,raw48,Runtime_Bad_Block "
518  //"-v 9,raw24(raw8),Power_On_Hours "
519  //"-v 12,raw48,Power_Cycle_Count "
520  "-v 100,raw48,Total_Blocks_Erased "
521  "-v 171,raw48,Avail_OP_Block_Count "
522  "-v 174,raw48,Pwr_Cycle_Ct_Unplanned "
523  "-v 184,raw48,Factory_Bad_Block_Count "
524  "-v 187,raw48,Total_Unc_NAND_Reads "
525  "-v 190,tempminmax,Temperature_Celsius "
526  "-v 195,raw48,Total_Prog_Failures "
527  "-v 196,raw48,Total_Erase_Failures "
528  "-v 197,raw48,Total_Unc_Read_Failures "
529  "-v 198,raw48,Host_Reads_GiB "
530  "-v 199,raw48,Host_Writes_GiB "
531  "-v 202,raw48,Total_Read_Bits_Corr_Ct "
532  "-v 205,raw48,Max_Rated_PE_Count "
533  "-v 206,raw48,Min_Erase_Count "
534  "-v 207,raw48,Max_Erase_Count "
535  "-v 208,raw48,Average_Erase_Count "
536  "-v 210,raw48,SATA_CRC_Error_Count "
537  "-v 211,raw48,SATA_UNC_Count "
538  "-v 212,raw48,NAND_Reads_with_Retry "
539  "-v 213,raw48,Simple_Rd_Rtry_Attempts "
540  "-v 214,raw48,Adaptv_Rd_Rtry_Attempts "
541  "-v 221,raw48,Int_Data_Path_Prot_Unc "
542  "-v 222,raw48,RAID_Recovery_Count "
543  "-v 230,raw48,SuperCap_Charge_Status " // 0=not charged, 1=fully charged, 2=unknown
544  "-v 233,raw48,Remaining_Lifetime_Perc "
545  "-v 249,raw48,Total_NAND_Prog_Ct_GiB "
546  "-v 251,raw48,Total_NAND_Read_Ct_GiB"
547  },
548  { "InnoDisk InnoLite SATADOM D150QV-L SSDs", // tested with InnoLite SATADOM D150QV-L/120319
549  "InnoLite SATADOM D150QV-L",
550  "", "",
551  //"-v 1,raw48,Raw_Read_Error_Rate "
552  //"-v 2,raw48,Throughput_Performance "
553  //"-v 3,raw16(avg16),Spin_Up_Time "
554  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
555  //"-v 7,raw48,Seek_Error_Rate " // from InnoDisk iSMART Linux tool, useless for SSD
556  //"-v 8,raw48,Seek_Time_Performance "
557  //"-v 9,raw24(raw8),Power_On_Hours "
558  //"-v 10,raw48,Spin_Retry_Count "
559  //"-v 12,raw48,Power_Cycle_Count "
560  "-v 168,raw48,SATA_PHY_Error_Count "
561  "-v 170,raw48,Bad_Block_Count "
562  "-v 173,raw48,Erase_Count "
563  "-v 175,raw48,Bad_Cluster_Table_Count "
564  "-v 192,raw48,Unexpect_Power_Loss_Ct "
565  //"-v 194,tempminmax,Temperature_Celsius "
566  //"-v 197,raw48,Current_Pending_Sector "
567  "-v 229,hex48,Flash_ID "
568  "-v 235,raw48,Later_Bad_Block "
569  "-v 236,raw48,Unstable_Power_Count "
570  "-v 240,raw48,Write_Head"
571  },
572  { "Intel X25-E SSDs",
573  "SSDSA2SH(032|064)G1.* INTEL", // G1 = first generation
574  "", "",
575  //"-v 3,raw16(avg16),Spin_Up_Time "
576  //"-v 4,raw48,Start_Stop_Count "
577  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
578  //"-v 9,raw24(raw8),Power_On_Hours "
579  //"-v 12,raw48,Power_Cycle_Count "
580  "-v 192,raw48,Unsafe_Shutdown_Count "
581  "-v 225,raw48,Host_Writes_32MiB "
582  "-v 226,raw48,Intel_Internal "
583  "-v 227,raw48,Intel_Internal "
584  "-v 228,raw48,Intel_Internal "
585  //"-v 232,raw48,Available_Reservd_Space "
586  //"-v 233,raw48,Media_Wearout_Indicator"
587  },
588  { "Intel X18-M/X25-M G1 SSDs",
589  "INTEL SSDSA[12]MH(080|160)G1.*", // G1 = first generation, 50nm
590  "", "",
591  //"-v 3,raw16(avg16),Spin_Up_Time "
592  //"-v 4,raw48,Start_Stop_Count "
593  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
594  //"-v 9,raw24(raw8),Power_On_Hours "
595  //"-v 12,raw48,Power_Cycle_Count "
596  "-v 192,raw48,Unsafe_Shutdown_Count "
597  "-v 225,raw48,Host_Writes_32MiB "
598  "-v 226,raw48,Intel_Internal "
599  "-v 227,raw48,Intel_Internal "
600  "-v 228,raw48,Intel_Internal "
601  //"-v 232,raw48,Available_Reservd_Space "
602  //"-v 233,raw48,Media_Wearout_Indicator"
603  },
604  { "Intel X18-M/X25-M/X25-V G2 SSDs", // fixed firmware
605  // tested with INTEL SSDSA2M(080|160)G2GC/2CV102J8 (X25-M)
606  "INTEL SSDSA[12]M(040|080|120|160)G2.*", // G2 = second generation, 34nm
607  "2CV102(J[89A-Z]|[K-Z].)", // >= "2CV102J8"
608  "",
609  //"-v 3,raw16(avg16),Spin_Up_Time "
610  //"-v 4,raw48,Start_Stop_Count "
611  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
612  //"-v 9,raw24(raw8),Power_On_Hours "
613  //"-v 12,raw48,Power_Cycle_Count "
614  //"-v 184,raw48,End-to-End_Error " // G2 only
615  "-v 192,raw48,Unsafe_Shutdown_Count "
616  "-v 225,raw48,Host_Writes_32MiB "
617  "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
618  "-v 227,raw48,Workld_Host_Reads_Perc " // Timed Workload Host Reads Percentage
619  "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
620  //"-v 232,raw48,Available_Reservd_Space "
621  //"-v 233,raw48,Media_Wearout_Indicator"
622  },
623  { "Intel X18-M/X25-M/X25-V G2 SSDs", // buggy or unknown firmware
624  // tested with INTEL SSDSA2M040G2GC/2CV102HD (X25-V)
625  "INTEL SSDSA[12]M(040|080|120|160)G2.*",
626  "",
627  "This drive may require a firmware update to\n"
628  "fix possible drive hangs when reading SMART self-test log:\n"
629  "http://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=18363",
630  "-v 192,raw48,Unsafe_Shutdown_Count "
631  "-v 225,raw48,Host_Writes_32MiB "
632  "-v 226,raw48,Workld_Media_Wear_Indic "
633  "-v 227,raw48,Workld_Host_Reads_Perc "
634  "-v 228,raw48,Workload_Minutes"
635  },
636  { "Intel 311/313 Series SSDs", // tested with INTEL SSDSA2VP020G2/2CV102M5,
637  // INTEL SSDSA2VP020G3/9CV10379,
638  "INTEL SSDSA2VP(020|024)G[23]", // G3 = 313 Series
639  "", "",
640  //"-v 3,raw16(avg16),Spin_Up_Time "
641  //"-v 4,raw48,Start_Stop_Count "
642  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
643  //"-v 9,raw24(raw8),Power_On_Hours "
644  //"-v 12,raw48,Power_Cycle_Count "
645  "-v 170,raw48,Reserve_Block_Count "
646  "-v 171,raw48,Program_Fail_Count "
647  "-v 172,raw48,Erase_Fail_Count "
648  "-v 183,raw48,SATA_Downshift_Count "
649  //"-v 184,raw48,End-to-End_Error "
650  //"-v 187,raw48,Reported_Uncorrect "
651  "-v 192,raw48,Unsafe_Shutdown_Count "
652  "-v 225,raw48,Host_Writes_32MiB "
653  "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
654  "-v 227,raw48,Workld_Host_Reads_Perc " // Timed Workload Host Reads Percentage
655  "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
656  //"-v 232,raw48,Available_Reservd_Space "
657  //"-v 233,raw48,Media_Wearout_Indicator "
658  "-v 241,raw48,Host_Writes_32MiB "
659  "-v 242,raw48,Host_Reads_32MiB"
660  },
661  { "Intel 320 Series SSDs", // tested with INTEL SSDSA2CT040G3/4PC10362,
662  // INTEL SSDSA2CW160G3/4PC10362, INTEL SSDSA2BT040G3/4PC10362, INTEL SSDSA2BW120G3A/4PC10362,
663  // INTEL SSDSA2BW300G3D/4PC10362, INTEL SSDSA2BW160G3L/4PC1LE04
664  "INTEL SSDSA[12][BC][WT](040|080|120|160|300|600)G3[ADL]?",
665  "", "",
666  "-F nologdir "
667  //"-v 3,raw16(avg16),Spin_Up_Time "
668  //"-v 4,raw48,Start_Stop_Count "
669  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
670  //"-v 9,raw24(raw8),Power_On_Hours "
671  //"-v 12,raw48,Power_Cycle_Count "
672  "-v 170,raw48,Reserve_Block_Count "
673  "-v 171,raw48,Program_Fail_Count "
674  "-v 172,raw48,Erase_Fail_Count "
675  "-v 183,raw48,SATA_Downshift_Count " // FW >= 4Px10362
676  //"-v 184,raw48,End-to-End_Error "
677  //"-v 187,raw48,Reported_Uncorrect "
678  "-v 199,raw48,CRC_Error_Count " // FW >= 4Px10362
679  "-v 192,raw48,Unsafe_Shutdown_Count "
680  "-v 225,raw48,Host_Writes_32MiB "
681  "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
682  "-v 227,raw48,Workld_Host_Reads_Perc " // Timed Workload Host Reads Percentage
683  "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
684  //"-v 232,raw48,Available_Reservd_Space "
685  //"-v 233,raw48,Media_Wearout_Indicator "
686  "-v 241,raw48,Host_Writes_32MiB "
687  "-v 242,raw48,Host_Reads_32MiB"
688  },
689  { "Intel 710 Series SSDs", // tested with INTEL SSDSA2BZ[12]00G3/6PB10362
690  "INTEL SSDSA2BZ(100|200|300)G3",
691  "", "",
692  "-F nologdir "
693  //"-v 3,raw16(avg16),Spin_Up_Time "
694  //"-v 4,raw48,Start_Stop_Count "
695  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
696  //"-v 9,raw24(raw8),Power_On_Hours "
697  //"-v 12,raw48,Power_Cycle_Count "
698  "-v 170,raw48,Reserve_Block_Count "
699  "-v 171,raw48,Program_Fail_Count "
700  "-v 172,raw48,Erase_Fail_Count "
701  "-v 174,raw48,Unexpect_Power_Loss_Ct " // Missing in 710 specification from September 2011
702  "-v 183,raw48,SATA_Downshift_Count "
703  //"-v 184,raw48,End-to-End_Error "
704  //"-v 187,raw48,Reported_Uncorrect "
705  //"-v 190,tempminmax,Airflow_Temperature_Cel "
706  "-v 192,raw48,Unsafe_Shutdown_Count "
707  "-v 225,raw48,Host_Writes_32MiB "
708  "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
709  "-v 227,raw48,Workld_Host_Reads_Perc " // Timed Workload Host Reads Percentage
710  "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
711  //"-v 232,raw48,Available_Reservd_Space "
712  //"-v 233,raw48,Media_Wearout_Indicator "
713  "-v 241,raw48,Host_Writes_32MiB "
714  "-v 242,raw48,Host_Reads_32MiB"
715  },
716  { "Intel 510 Series SSDs",
717  "INTEL SSDSC2MH(120|250)A2",
718  "", "",
719  //"-v 3,raw16(avg16),Spin_Up_Time "
720  //"-v 4,raw48,Start_Stop_Count "
721  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
722  //"-v 9,raw24(raw8),Power_On_Hours "
723  //"-v 12,raw48,Power_Cycle_Count "
724  "-v 192,raw48,Unsafe_Shutdown_Count "
725  "-v 225,raw48,Host_Writes_32MiB "
726  //"-v 232,raw48,Available_Reservd_Space "
727  //"-v 233,raw48,Media_Wearout_Indicator"
728  },
729  { "Intel 520 Series SSDs", // tested with INTEL SSDSC2CW120A3/400i, SSDSC2BW480A3F/400i
730  "INTEL SSDSC2[BC]W(060|120|180|240|480)A3F?",
731  "", "",
732  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
733  "-v 9,msec24hour32,Power_On_Hours_and_Msec "
734  //"-v 12,raw48,Power_Cycle_Count "
735  "-v 170,raw48,Available_Reservd_Space "
736  "-v 171,raw48,Program_Fail_Count "
737  "-v 172,raw48,Erase_Fail_Count "
738  "-v 174,raw48,Unexpect_Power_Loss_Ct "
739  //"-v 184,raw48,End-to-End_Error "
740  "-v 187,raw48,Uncorrectable_Error_Cnt "
741  //"-v 192,raw48,Power-Off_Retract_Count "
742  "-v 225,raw48,Host_Writes_32MiB "
743  "-v 226,raw48,Workld_Media_Wear_Indic "
744  "-v 227,raw48,Workld_Host_Reads_Perc "
745  "-v 228,raw48,Workload_Minutes "
746  //"-v 232,raw48,Available_Reservd_Space "
747  //"-v 233,raw48,Media_Wearout_Indicator "
748  "-v 241,raw48,Host_Writes_32MiB "
749  "-v 242,raw48,Host_Reads_32MiB "
750  "-v 249,raw48,NAND_Writes_1GiB"
751  },
752  { "Intel 525 Series SSDs", // mSATA, tested with SSDMCEAC120B3/LLLi
753  "INTEL SSDMCEAC(030|060|090|120|180|240)B3",
754  "", "",
755  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
756  "-v 9,msec24hour32,Power_On_Hours_and_Msec "
757  //"-v 12,raw48,Power_Cycle_Count "
758  "-v 170,raw48,Available_Reservd_Space "
759  "-v 171,raw48,Program_Fail_Count "
760  "-v 172,raw48,Erase_Fail_Count "
761  "-v 174,raw48,Unexpect_Power_Loss_Ct "
762  "-v 183,raw48,SATA_Downshift_Count "
763  //"-v 184,raw48,End-to-End_Error "
764  "-v 187,raw48,Uncorrectable_Error_Cnt "
765  //"-v 190,tempminmax,Airflow_Temperature_Cel "
766  //"-v 192,raw48,Power-Off_Retract_Count "
767  //"-v 199,raw48,UDMA_CRC_Error_Count "
768  "-v 225,raw48,Host_Writes_32MiB "
769  "-v 226,raw48,Workld_Media_Wear_Indic "
770  "-v 227,raw48,Workld_Host_Reads_Perc "
771  "-v 228,raw48,Workload_Minutes "
772  //"-v 232,raw48,Available_Reservd_Space "
773  //"-v 233,raw48,Media_Wearout_Indicator "
774  "-v 241,raw48,Host_Writes_32MiB "
775  "-v 242,raw48,Host_Reads_32MiB "
776  "-v 249,raw48,NAND_Writes_1GiB"
777  },
778  { "Intel 530 Series SSDs", // tested with INTEL SSDSC2BW180A4/DC12, SSDSC2BW240A4/DC12,
779  // INTEL SSDMCEAW120A4/DC33, INTEL SSDMCEAW240A4/DC33
780  "INTEL SSD(MCEA|SC2B)W(080|120|180|240|360|480)A4", // MCEA = mSATA
781  "", "",
782  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
783  "-v 9,msec24hour32,Power_On_Hours_and_Msec "
784  //"-v 12,raw48,Power_Cycle_Count "
785  "-v 170,raw48,Available_Reservd_Space "
786  "-v 171,raw48,Program_Fail_Count "
787  "-v 172,raw48,Erase_Fail_Count "
788  "-v 174,raw48,Unexpect_Power_Loss_Ct "
789  "-v 183,raw48,SATA_Downshift_Count "
790  //"-v 184,raw48,End-to-End_Error "
791  "-v 187,raw48,Uncorrectable_Error_Cnt "
792  //"-v 190,tempminmax,Airflow_Temperature_Cel "
793  //"-v 192,raw48,Power-Off_Retract_Count "
794  //"-v 199,raw48,UDMA_CRC_Error_Count "
795  "-v 225,raw48,Host_Writes_32MiB "
796  "-v 226,raw48,Workld_Media_Wear_Indic "
797  "-v 227,raw48,Workld_Host_Reads_Perc "
798  "-v 228,raw48,Workload_Minutes "
799  //"-v 232,raw48,Available_Reservd_Space "
800  //"-v 233,raw48,Media_Wearout_Indicator "
801  "-v 241,raw48,Host_Writes_32MiB "
802  "-v 242,raw48,Host_Reads_32MiB "
803  "-v 249,raw48,NAND_Writes_1GiB"
804  },
805  { "Intel 330/335 Series SSDs", // tested with INTEL SSDSC2CT180A3/300i, SSDSC2CT240A3/300i,
806  // INTEL SSDSC2CT240A4/335t
807  "INTEL SSDSC2CT(060|120|180|240)A[34]", // A4 = 335 Series
808  "", "",
809  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
810  "-v 9,msec24hour32,Power_On_Hours_and_Msec "
811  //"-v 12,raw48,Power_Cycle_Count "
812  //"-v 181,raw48,Program_Fail_Cnt_Total " // ] Missing in 330 specification from April 2012
813  //"-v 182,raw48,Erase_Fail_Count_Total " // ]
814  //"-v 192,raw48,Power-Off_Retract_Count "
815  "-v 225,raw48,Host_Writes_32MiB "
816  //"-v 232,raw48,Available_Reservd_Space "
817  //"-v 233,raw48,Media_Wearout_Indicator "
818  "-v 241,raw48,Host_Writes_32MiB "
819  "-v 242,raw48,Host_Reads_32MiB "
820  "-v 249,raw48,NAND_Writes_1GiB"
821  },
822  { "Intel 730 and DC S3500/S3700 Series SSDs", // tested with INTEL SSDSC2BP480G4, SSDSC2BB120G4/D2010355,
823  // INTEL SSDSC2BB800G4T, SSDSC2BA200G3/5DV10250
824  "INTEL SSDSC(1N|2B)[ABP](080|100|120|160|200|240|300|400|480|600|800)G[34]T?", // A=S3700, B=S3500, P=730
825  "", "",
826  //"-v 3,raw16(avg16),Spin_Up_Time "
827  //"-v 4,raw48,Start_Stop_Count "
828  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
829  //"-v 9,raw24(raw8),Power_On_Hours "
830  //"-v 12,raw48,Power_Cycle_Count "
831  "-v 170,raw48,Available_Reservd_Space "
832  "-v 171,raw48,Program_Fail_Count "
833  "-v 172,raw48,Erase_Fail_Count "
834  "-v 174,raw48,Unsafe_Shutdown_Count "
835  "-v 175,raw16(raw16),Power_Loss_Cap_Test "
836  "-v 183,raw48,SATA_Downshift_Count "
837  //"-v 184,raw48,End-to-End_Error "
838  //"-v 187,raw48,Reported_Uncorrect "
839  "-v 190,tempminmax,Temperature_Case "
840  "-v 192,raw48,Unsafe_Shutdown_Count "
841  "-v 194,tempminmax,Temperature_Internal "
842  //"-v 197,raw48,Current_Pending_Sector "
843  "-v 199,raw48,CRC_Error_Count "
844  "-v 225,raw48,Host_Writes_32MiB "
845  "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
846  "-v 227,raw48,Workld_Host_Reads_Perc " // Timed Workload Host Reads Percentage
847  "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
848  //"-v 232,raw48,Available_Reservd_Space "
849  //"-v 233,raw48,Media_Wearout_Indicator "
850  "-v 234,raw24/raw32:04321,Thermal_Throttle "
851  "-v 241,raw48,Host_Writes_32MiB "
852  "-v 242,raw48,Host_Reads_32MiB "
853  "-F xerrorlba" // tested with SSDSC2BB600G4/D2010355
854  },
855  { "Kingston branded X25-V SSDs", // fixed firmware
856  "KINGSTON SSDNow 40GB",
857  "2CV102(J[89A-Z]|[K-Z].)", // >= "2CV102J8"
858  "",
859  "-v 192,raw48,Unsafe_Shutdown_Count "
860  "-v 225,raw48,Host_Writes_32MiB "
861  "-v 226,raw48,Workld_Media_Wear_Indic "
862  "-v 227,raw48,Workld_Host_Reads_Perc "
863  "-v 228,raw48,Workload_Minutes"
864  },
865  { "Kingston branded X25-V SSDs", // buggy or unknown firmware
866  "KINGSTON SSDNow 40GB",
867  "",
868  "This drive may require a firmware update to\n"
869  "fix possible drive hangs when reading SMART self-test log.\n"
870  "To update Kingston branded drives, a modified Intel update\n"
871  "tool must be used. Search for \"kingston 40gb firmware\".",
872  "-v 192,raw48,Unsafe_Shutdown_Count "
873  "-v 225,raw48,Host_Writes_32MiB "
874  "-v 226,raw48,Workld_Media_Wear_Indic "
875  "-v 227,raw48,Workld_Host_Reads_Perc "
876  "-v 228,raw48,Workload_Minutes"
877  },
878  { "JMicron based SSDs", // JMicron JMF60x
879  "Kingston SSDNow V Series [0-9]*GB|" // tested with Kingston SSDNow V Series 64GB/B090522a
880  "TS(2|4|8|16|32|64|128|192)GSSD(18|25)[MS]?-[MS]", // Transcend IDE and SATA, tested with
881  // TS32GSSD25-M/V090331, TS32GSSD18M-M/v090331
882  "[BVv].*", // other Transcend SSD versions will be catched by subsequent entry
883  "",
884  //"-v 9,raw24(raw8),Power_On_Hours " // raw value always 0?
885  //"-v 12,raw48,Power_Cycle_Count "
886  //"-v 194,tempminmax,Temperature_Celsius " // raw value always 0?
887  "-v 229,hex64:w012345r,Halt_System/Flash_ID " // Halt, Flash[7]
888  "-v 232,hex64:w012345r,Firmware_Version_Info " // "YYMMDD", #Channels, #Banks
889  "-v 233,hex48:w01234,ECC_Fail_Record " // Fail number, Row[3], Channel, Bank
890  "-v 234,raw24/raw24:w01234,Avg/Max_Erase_Count "
891  "-v 235,raw24/raw24:w01z23,Good/Sys_Block_Count"
892  },
893  { "JMicron based SSDs", // JMicron JMF61x, JMF66x, JMF670
894  "ADATA S596 Turbo|" // tested with ADATA S596 Turbo 256GB SATA SSD (JMicron JMF616)
895  "ADATA SP600|" // tested with ADATA SP600/2.4 (JMicron JMF661)
896  "ADATA SP310|" // Premier Pro SP310 mSATA, JMF667, tested with ADATA SP310/3.04
897  "APPLE SSD TS(064|128|256|512)C|" // Toshiba?, tested with APPLE SSD TS064C/CJAA0201
898  "KINGSTON SNV425S2(64|128)GB|" // SSDNow V Series (2. Generation, JMF618),
899  // tested with KINGSTON SNV425S264GB/C091126a
900  "KINGSTON SSDNOW 30GB|" // tested with KINGSTON SSDNOW 30GB/AJXA0202
901  "KINGSTON SS100S2(8|16)G|" // SSDNow S100 Series, tested with KINGSTON SS100S28G/D100309a
902  "KINGSTON SNVP325S2(64|128|256|512)GB|" // SSDNow V+ Series, tested with KINGSTON SNVP325S2128GB/AGYA0201
903  "KINGSTON SVP?100S2B?(64|96|128|256|512)G|" // SSDNow V100/V+100 Series,
904  // tested with KINGSTON SVP100S296G/CJR10202, KINGSTON SV100S2256G/D110225a
905  "KINGSTON SV200S3(64|128|256)G|" // SSDNow V200 Series, tested with KINGSTON SV200S3128G/E120506a
906  "TOSHIBA THNS128GG4BBAA|" // Toshiba / Super Talent UltraDrive DX,
907  // tested with Toshiba 128GB 2.5" SSD (built in MacBooks)
908  "TOSHIBA THNSNC128GMLJ|" // tested with THNSNC128GMLJ/CJTA0202 (built in Toshiba Protege/Dynabook)
909  "TS(8|16|32|64|128|192|256|512)GSSD25S?-(MD?|S)|" // Transcend IDE and SATA, JMF612, tested with
910  // TS256GSSD25S-M/101028, TS32GSSD25-M/20101227
911  "TS(32|64|128|256)G(SSD|MSA)340", // Transcend SSD340 SATA/mSATA, JMF667/670, tested with
912  // TS256GSSD340/SVN263, TS256GSSD340/SVN423b, TS256GMSA340/SVN263
913  "", "",
914  //"-v 1,raw48,Raw_Read_Error_Rate "
915  //"-v 2,raw48,Throughput_Performance "
916  "-v 3,raw48,Unknown_JMF_Attribute "
917  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
918  "-v 7,raw48,Unknown_JMF_Attribute "
919  "-v 8,raw48,Unknown_JMF_Attribute "
920  //"-v 9,raw24(raw8),Power_On_Hours "
921  "-v 10,raw48,Unknown_JMF_Attribute "
922  //"-v 12,raw48,Power_Cycle_Count "
923  "-v 167,raw48,Unknown_JMF_Attribute "
924  "-v 168,raw48,SATA_Phy_Error_Count "
925  "-v 169,raw48,Unknown_JMF_Attribute "
926  "-v 170,raw16,Bad_Block_Count "
927  "-v 173,raw16,Erase_Count " // JMF661: different?
928  "-v 175,raw48,Bad_Cluster_Table_Count "
929  "-v 192,raw48,Unexpect_Power_Loss_Ct "
930  //"-v 194,tempminmax,Temperature_Celsius "
931  //"-v 197,raw48,Current_Pending_Sector "
932  "-v 233,raw48,Unknown_JMF_Attribute " // FW SVN423b
933  "-v 234,raw48,Unknown_JMF_Attribute " // FW SVN423b
934  "-v 240,raw48,Unknown_JMF_Attribute "
935  //"-v 241,raw48,Total_LBAs_Written " // FW SVN423b
936  //"-v 242,raw48,Total_LBAs_Read " // FW SVN423b
937  },
938  { "Plextor M3/M5/M6 Series SSDs", // Marvell 88SS9174 (M3, M5S), 88SS9187 (M5P, M5Pro), 88SS9188 (M6M/S),
939  // tested with PLEXTOR PX-128M3/1.01, PX-128M3P/1.04, PX-256M3/1.05, PX-128M5S/1.02, PX-256M5S/1.03,
940  // PX-128M5M/1.05, PX-128M5S/1.05, PX-128M5Pro/1.05, PX-512M5Pro/1.06, PX-256M5P/1.01, PX-128M6S/1.03
941  // (1.04/5 Firmware self-test log lifetime unit is bogus, possibly 1/256 hours)
942  "PLEXTOR PX-(64|128|256|512|768)M(3P?|5[MPS]|5Pro|6[MS])",
943  "", "",
944  //"-v 1,raw48,Raw_Read_Error_Rate "
945  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
946  //"-v 9,raw24(raw8),Power_On_Hours "
947  //"-v 12,raw48,Power_Cycle_Count "
948  "-v 170,raw48,Unknown_Plextor_Attrib " // M6S/1.03
949  "-v 171,raw48,Unknown_Plextor_Attrib " // M6S/1.03
950  "-v 172,raw48,Unknown_Plextor_Attrib " // M6S/1.03
951  "-v 173,raw48,Unknown_Plextor_Attrib " // M6S/1.03
952  "-v 174,raw48,Unknown_Plextor_Attrib " // M6S/1.03
953  //"-v 175,raw48,Program_Fail_Count_Chip " // M6S/1.03
954  //"-v 176,raw48,Erase_Fail_Count_Chip " // M6S/1.03
955  //"-v 177,raw48,Wear_Leveling_Count "
956  //"-v 178,raw48,Used_Rsvd_Blk_Cnt_Chip "
957  //"-v 179,raw48,Used_Rsvd_Blk_Cnt_Tot " // M6S/1.03
958  //"-v 180,raw48,Unused_Rsvd_Blk_Cnt_Tot " // M6S/1.03
959  //"-v 181,raw48,Program_Fail_Cnt_Total "
960  //"-v 182,raw48,Erase_Fail_Count_Total "
961  //"-v 183,raw48,Runtime_Bad_Block " // M6S/1.03
962  //"-v 184,raw48,End-to-End_Error " // M6S/1.03
963  //"-v 187,raw48,Reported_Uncorrect "
964  //"-v 188,raw48,Command_Timeout " // M6S/1.03
965  //"-v 192,raw48,Power-Off_Retract_Count "
966  //"-v 195,raw48,Hardware_ECC_Recovered " // MS6/1.03
967  //"-v 196,raw16(raw16),Reallocated_Event_Count "
968  //"-v 198,raw48,Offline_Uncorrectable "
969  //"-v 199,raw48,UDMA_CRC_Error_Count "
970  //"-v 232,raw48,Available_Reservd_Space "
971  //"-v 233,raw48,Media_Wearout_Indicator " // MS6/1.03
972  "-v 241,raw48,Host_Writes_32MiB "
973  "-v 242,raw48,Host_Reads_32MiB"
974  },
975  { "Samsung based SSDs",
976  "SAMSUNG SSD PM800 .*GB|" // SAMSUNG PM800 SSDs, tested with SAMSUNG SSD PM800 TH 64GB/VBM25D1Q
977  "SAMSUNG SSD PM810 .*GB|" // SAMSUNG PM810 (470 series) SSDs, tested with SAMSUNG SSD PM810 2.5" 128GB/AXM06D1Q
978  "SAMSUNG SSD PM851 (mSATA )?(128|256|512)GB|" // tested with SAMSUNG SSD PM851 mSATA 128GB
979  "SAMSUNG SSD SM841N (mSATA )?(128|256|512)GB|" // tested with SAMSUNG SSD SM841N mSATA 256GB
980  "SAMSUNG 470 Series SSD|" // tested with SAMSUNG 470 Series SSD 64GB/AXM09B1Q
981  "SAMSUNG SSD 830 Series|" // tested with SAMSUNG SSD 830 Series 64GB/CXM03B1Q
982  "Samsung SSD 840 (PRO )?Series|" // tested with Samsung SSD 840 PRO Series 128GB/DXM04B0Q,
983  // Samsung SSD 840 Series/DXT06B0Q
984  "Samsung SSD 8[45]0 EVO ((120|250|500)G|1T)B( mSATA)?|" // tested with Samsung SSD 840 EVO (120|250|500)GB/EXT0AB0Q,
985  // Samsung SSD 840 EVO (120|250)GB/EXT0BB6Q, 1TB/EXT0BB0Q, 120GB mSATA/EXT41B6Q,
986  // Samsung SSD 850 EVO 250GB/EMT01B6Q
987  "Samsung SSD 850 PRO ((128|256|512)G|1T)B|" // tested with Samsung SSD 850 PRO 128GB/EXM01B6Q,
988  // Samsung SSD 850 PRO 1TB/EXM01B6Q
989  "SAMSUNG MZ7WD((120|240)HAFV|480HAGM|960HAGP)-00003|" // SM843T Series, tested with
990  // SAMSUNG MZ7WD120HAFV-00003/DXM85W3Q
991  "SAMSUNG MZ7GE(240HMGR|(480|960)HMHP)-00003", // SM853T Series, tested with
992  // SAMSUNG MZ7GE240HMGR-00003/EXT0303Q
993  "", "",
994  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
995  //"-v 9,raw24(raw8),Power_On_Hours "
996  //"-v 12,raw48,Power_Cycle_Count "
997  //"-v 175,raw48,Program_Fail_Count_Chip "
998  //"-v 176,raw48,Erase_Fail_Count_Chip "
999  //"-v 177,raw48,Wear_Leveling_Count "
1000  //"-v 178,raw48,Used_Rsvd_Blk_Cnt_Chip "
1001  //"-v 179,raw48,Used_Rsvd_Blk_Cnt_Tot "
1002  //"-v 180,raw48,Unused_Rsvd_Blk_Cnt_Tot "
1003  //"-v 181,raw48,Program_Fail_Cnt_Total "
1004  //"-v 182,raw48,Erase_Fail_Count_Total "
1005  //"-v 183,raw48,Runtime_Bad_Block "
1006  //"-v 184,raw48,End-to-End_Error " // SM843T Series
1007  "-v 187,raw48,Uncorrectable_Error_Cnt "
1008  //"-v 190,tempminmax,Airflow_Temperature_Cel " // seems to be some sort of temperature value for 470 Series?
1009  //"-v 194,tempminmax,Temperature_Celsius "
1010  "-v 195,raw48,ECC_Error_Rate "
1011  //"-v 198,raw48,Offline_Uncorrectable "
1012  "-v 199,raw48,CRC_Error_Count "
1013  "-v 201,raw48,Supercap_Status "
1014  "-v 202,raw48,Exception_Mode_Status "
1015  "-v 235,raw48,POR_Recovery_Count " // 830/840/850 Series
1016  //"-v 241,raw48,Total_LBAs_Written "
1017  //"-v 242,raw48,Total_LBAs_Read " // PM851, SM841N
1018  },
1019  { "Marvell based SanDisk SSDs",
1020  "SanDisk SD5SG2[0-9]*G1052E|" // X100 (88SS9174), tested with SanDisk SD5SG2256G1052E/10.04.01
1021  "SanDisk SD6S[BF][12]M[0-9]*G(1022I?)?|" // X110/X210 (88SS9175/187?), tested with SanDisk SD6SB1M064G1022I/X231600,
1022  // SanDisk SD6SB1M256G1022I/X231600, SanDisk SD6SF1M128G1022/X231200, SanDisk SD6SB2M512G1022I/X210400
1023  "SanDisk SD7SB6S(128|256|512)G1122|" // X300 (88SS9189?), tested with SanDisk SD7SB6S128G1122/X3310000
1024  "SanDisk SDSSDHP[0-9]*G|" // Ultra Plus (88SS9175), tested with SanDisk SDSSDHP128G/X23[01]6RL
1025  "SanDisk SDSSDHII[0-9]*G|" // Ultra II (88SS9190/88SS9189), tested with SanDisk SDSSDHII120G/X31200RL
1026  "SanDisk SDSSDXPS?[0-9]*G", // Extreme II/Pro (88SS9187), tested with SanDisk SDSSDXP480G/R1311,
1027  // SanDisk SDSSDXPS480G/X21200RL
1028  "", "",
1029  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1030  //"-v 9,raw24(raw8),Power_On_Hours "
1031  //"-v 12,raw48,Power_Cycle_Count "
1032  "-v 165,raw48,Total_Write/Erase_Count "
1033  "-v 166,raw48,Min_W/E_Cycle "
1034  "-v 167,raw48,Min_Bad_Block/Die "
1035  "-v 168,raw48,Maximum_Erase_Cycle "
1036  "-v 169,raw48,Total_Bad_Block "
1037  "-v 171,raw48,Program_Fail_Count "
1038  "-v 172,raw48,Erase_Fail_Count "
1039  "-v 173,raw48,Avg_Write/Erase_Count "
1040  "-v 174,raw48,Unexpect_Power_Loss_Ct "
1041  //"-v 184,raw48,End-to-End_Error "
1042  //"-v 187,raw48,Reported_Uncorrect "
1043  //"-v 188,raw48,Command_Timeout "
1044  //"-v 194,tempminmax,Temperature_Celsius "
1045  "-v 199,raw48,SATA_CRC_Error "
1046  "-v 212,raw48,SATA_PHY_Error "
1047  "-v 230,raw48,Perc_Write/Erase_Count "
1048  "-v 232,raw48,Perc_Avail_Resrvd_Space "
1049  "-v 233,raw48,Total_NAND_Writes_GiB "
1050  "-v 234,raw48,Perc_Write/Erase_Ct_BC "
1051  "-v 241,raw48,Total_Writes_GiB "
1052  "-v 242,raw48,Total_Reads_GiB "
1053  //"-v 243,raw48,Unknown_Attribute "
1054  "-v 244,raw48,Thermal_Throttle "
1055  },
1056  { "SanDisk based SSDs", // see also #463 for the vendor attribute description
1057  "SanDisk iSSD P4 [0-9]*GB|" // tested with SanDisk iSSD P4 16GB/SSD 9.14
1058  "SanDisk pSSD|" // tested with SandDisk pSSD/3 (62.7 GB, SanDisk Extreme USB3.0 SDCZ80-064G-J57, 0x0781:0x5580)
1059  "SanDisk SDSSDP[0-9]*G|" // tested with SanDisk SDSSDP064G/1.0.0, SDSSDP128G/2.0.0
1060  "SanDisk SSD i100 [0-9]*GB|" // tested with SanDisk SSD i100 8GB/11.56.04, 24GB/11.56.04
1061  "SanDisk SSD U100 ([0-9]*GB|SMG2)|" // tested with SanDisk SSD U100 8GB/10.56.00, 256GB/10.01.02, SMG2/10.56.04
1062  "SanDisk SSD U110 (8|16|24|32|64|128)GB|" // tested with SanDisk SSD U110 32GB/U221000
1063  "SanDisk SD7[SU]B[23]Q(064|128|256|512)G.*", // tested with SD7SB3Q064G1122/SD7UB3Q256G1122/SD7SB3Q128G/SD7UB2Q512G1122
1064  "", "",
1065  //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1066  //"-v 9,raw24(raw8),Power_On_Hours "
1067  //"-v 12,raw48,Power_Cycle_Count "
1068  "-v 165,raw48,Total_Write/Erase_Count "
1069  "-v 171,raw48,Program_Fail_Count "
1070  "-v 172,raw48,Erase_Fail_Count "
1071  "-v 173,raw48,Avg_Write/Erase_Count "
1072  "-v 174,raw48,Unexpect_Power_Loss_Ct "
1073  //"-v 187,raw48,Reported_Uncorrect "
1074  "-v 212,raw48,SATA_PHY_Error "
1075  "-v 230,raw48,Perc_Write/Erase_Count "
1076  "-v 232,raw48,Perc_Avail_Resrvd_Space "
1077  "-v 234,raw48,Perc_Write/Erase_Ct_BC "
1078  //"-v 241,raw48,Total_LBAs_Written "
1079  //"-v 242,raw48,Total_LBAs_Read "
1080  "-v 244,raw48,Thermal_Throttle "
1081  },
1082  { "SiliconMotion based SSDs", // SM2246EN (Transcend TS6500)
1083  "TS((16|32|64|128|256|512)G|1T)(SSD|MSA)370", // Transcend SSD370 SATA/mSATA, TS6500, tested with
1084  // TS32GMSA370/20140402, TS16GMSA370/20140516, TS64GSSD370/20140516, TS256GSSD370/N0815B
1085  "", "",
1086  //"-v 1,raw48,Raw_Read_Error_Rate "
1087  //"-v 2,raw48,Throughput_Performance "
1088  //"-v 9,raw24(raw8),Power_On_Hours "
1089  //"-v 12,raw48,Power_Cycle_Count "
1090  "-v 160,raw48,Uncorrectable_Error_Cnt "
1091  "-v 161,raw48,Valid_Spare_Block_Cnt "
1092  "-v 163,raw48,Initial_Bad_Block_Count "
1093  "-v 164,raw48,Total_Erase_Count "
1094  "-v 165,raw48,Max_Erase_Count "
1095  "-v 166,raw48,Min_Erase_Count "
1096  "-v 167,raw48,Average_Erase_Count "
1097  "-v 168,raw48,Max_Erase_Count_of_Spec "
1098  "-v 169,raw48,Remaining_Lifetime_Perc "
1099  //"-v 175,raw48,Program_Fail_Count_Chip "
1100  //"-v 176,raw48,Erase_Fail_Count_Chip "
1101  //"-v 177,raw48,Wear_Leveling_Count "
1102  "-v 178,raw48,Runtime_Invalid_Blk_Cnt "
1103  //"-v 181,raw48,Program_Fail_Cnt_Total "
1104  //"-v 182,raw48,Erase_Fail_Count_Total "
1105  //"-v 187,raw48,Reported_Uncorrect "
1106  //"-v 192,raw48,Power-Off_Retract_Count "
1107  //"-v 194,tempminmax,Temperature_Celsius "
1108  //"-v 195,raw48,Hardware_ECC_Recovered "
1109  //"-v 196,raw16(raw16),Reallocated_Event_Count "
1110  //"-v 197,raw48,Current_Pending_Sector "
1111  //"-v 198,raw48,Offline_Uncorrectable "
1112  //"-v 199,raw48,UDMA_CRC_Error_Count "
1113  "-v 225,raw48,Host_Writes_32MiB " // FW 20140402
1114  //"-v 232,raw48,Available_Reservd_Space "
1115  "-v 241,raw48,Host_Writes_32MiB "
1116  "-v 242,raw48,Host_Reads_32MiB "
1117  "-v 245,raw48,Unkn_SiliconMotion_Attr" // FW N0815B
1118  },
1119  { "Smart Storage Systems Xcel-10 SSDs", // based on http://www.smartm.com/files/salesLiterature/storage/xcel10.pdf
1120  "SMART A25FD-(32|64|128)GI32N", // tested with SMART A25FD-128GI32N/B9F23D4K
1121  "",
1122  "", // attributes info from http://www.adtron.com/pdf/SMART_Attributes_Xcel-10_810800014_RevB.pdf
1123  "-v 1,raw48,Not_Supported "
1124  "-v 2,raw48,Not_Supported "
1125  //"-v 9,raw24(raw8),Power_On_Hours "
1126  //"-v 12,raw48,Power_Cycle_Count "
1127  "-v 191,raw48,Not_Supported "
1128  //"-v 192,raw48,Power-Off_Retract_Count "
1129  "-v 197,raw48,ECC_Error_Count "
1130  //"-v 198,raw48,Offline_Uncorrectable "
1131  //"-v 199,raw48,UDMA_CRC_Error_Count "
1132  "-v 251,raw48,Min_Spares_Remain_Perc " // percentage of the total number of spare blocks available
1133  "-v 252,raw48,Added_Bad_Flash_Blk_Ct " // number of bad flash blocks
1134  "-v 254,raw48,Total_Erase_Blocks_Ct" // number of times the drive has erased any erase block
1135  },
1136  { "Smart Storage Systems XceedSecure2 SSDs",
1137  "(SMART|Adtron) ([AIS]25FBS|S35FCS).*",
1138  "", "",
1139  "-v 9,sec2hour,Power_On_Hours "
1140  "-v 194,hex64,Proprietary_194"
1141  },
1142  { "Smart Storage Systems XceedUltraX/Adtron A25FBX SSDs",
1143  "(SMART|Adtron) (A|I)25FBX.*",
1144  "", "",
1145  "-v 9,hex64,Proprietary_9 "
1146  "-v 194,hex48,Proprietary_194"
1147  },
1148  { "Smart Storage Systems Adtron A25FB 2xN SSDs",
1149  "(SMART|Adtron) A25FB.*2.N",
1150  "", "",
1151  "-v 110,hex64,Proprietary_HWC "
1152  "-v 111,hex64,Proprietary_MP "
1153  "-v 112,hex64,Proprietary_RtR "
1154  "-v 113,hex64,Proprietary_RR "
1155  "-v 120,hex64,Proprietary_HFAll "
1156  "-v 121,hex64,Proprietary_HF1st "
1157  "-v 122,hex64,Proprietary_HF2nd "
1158  "-v 123,hex64,Proprietary_HF3rd "
1159  "-v 125,hex64,Proprietary_SFAll "
1160  "-v 126,hex64,Proprietary_SF1st "
1161  "-v 127,hex64,Proprietary_SF2nd "
1162  "-v 128,hex64,Proprietary_SF3rd "
1163  "-v 194,raw24/raw32:zvzzzw,Fractional_Temperature"
1164  },
1165  { "Smart Storage Systems Adtron A25FB 3xN SSDs",
1166  "(SMART|Adtron) A25FB-.*3.N",
1167  "", "",
1168  "-v 9,sec2hour,Power_On_Hours "
1169  "-v 113,hex48,Proprietary_RR "
1170  "-v 130,raw48:54321,Minimum_Spares_All_Zs"
1171  //"-v 194,tempminmax,Temperature_Celsius"
1172  },
1173  { "STEC Mach2 CompactFlash Cards", // tested with STEC M2P CF 1.0.0/K1385MS
1174  "STEC M2P CF 1.0.0",
1175  "", "",
1176  "-v 100,raw48,Erase_Program_Cycles "
1177  "-v 103,raw48,Remaining_Energy_Storg "
1178  "-v 170,raw48,Reserved_Block_Count "
1179  "-v 171,raw48,Program_Fail_Count "
1180  "-v 172,raw48,Erase_Fail_Count "
1181  "-v 173,raw48,Wear_Leveling_Count "
1182  "-v 174,raw48,Unexpect_Power_Loss_Ct "
1183  "-v 211,raw48,Unknown_Attribute " // ] Missing in specification
1184  "-v 212,raw48,Unknown_Attribute" // ] from September 2012
1185  },
1186  { "Transcend CompactFlash Cards", // tested with TRANSCEND/20080820,
1187  // TS4GCF133/20100709, TS16GCF133/20100709, TS16GCF150/20110407
1188  "TRANSCEND|TS(4|8|16)GCF(133|150)",
1189  "", "",
1190  "-v 7,raw48,Unknown_Attribute "
1191  "-v 8,raw48,Unknown_Attribute"
1192  },
1193  { "Marvell SSD SD88SA024BA0 (SUN branded)",
1194  "MARVELL SD88SA024BA0 SUN24G 0902M0054V",
1195  "", "", ""
1196  },
1197  { "HP 1TB SATA disk GB1000EAFJL",
1198  "GB1000EAFJL",
1199  "", "", ""
1200  },
1201  { "HP 500GB SATA disk MM0500EANCR",
1202  "MM0500EANCR",
1203  "", "", ""
1204  },
1205  { "HP 250GB SATA disk VB0250EAVER",
1206  "VB0250EAVER",
1207  "", "", ""
1208  },
1209  { "IBM Deskstar 60GXP", // ER60A46A firmware
1210  "(IBM-|Hitachi )?IC35L0[12346]0AVER07.*",
1211  "ER60A46A",
1212  "", ""
1213  },
1214  { "IBM Deskstar 60GXP", // All other firmware
1215  "(IBM-|Hitachi )?IC35L0[12346]0AVER07.*",
1216  "",
1217  "IBM Deskstar 60GXP drives may need upgraded SMART firmware.\n"
1218  "Please see http://haque.net/dtla_update/",
1219  ""
1220  },
1221  { "IBM Deskstar 40GV & 75GXP (A5AA/A6AA firmware)",
1222  "(IBM-)?DTLA-30[57]0[123467][05].*",
1223  "T[WX][123468AG][OF]A[56]AA",
1224  "", ""
1225  },
1226  { "IBM Deskstar 40GV & 75GXP (all other firmware)",
1227  "(IBM-)?DTLA-30[57]0[123467][05].*",
1228  "",
1229  "IBM Deskstar 40GV and 75GXP drives may need upgraded SMART firmware.\n"
1230  "Please see http://haque.net/dtla_update/",
1231  ""
1232  },
1233  { "", // ExcelStor J240, J340, J360, J680, J880 and J8160
1234  "ExcelStor Technology J(24|34|36|68|88|816)0",
1235  "", "", ""
1236  },
1237  { "", // Fujitsu M1623TAU
1238  "FUJITSU M1623TAU",
1239  "",
1240  "",
1241  "-v 9,seconds"
1242  },
1243  { "Fujitsu MHG",
1244  "FUJITSU MHG2...ATU?.*",
1245  "",
1246  "",
1247  "-v 9,seconds"
1248  },
1249  { "Fujitsu MHH",
1250  "FUJITSU MHH2...ATU?.*",
1251  "",
1252  "",
1253  "-v 9,seconds"
1254  },
1255  { "Fujitsu MHJ",
1256  "FUJITSU MHJ2...ATU?.*",
1257  "",
1258  "",
1259  "-v 9,seconds"
1260  },
1261  { "Fujitsu MHK",
1262  "FUJITSU MHK2...ATU?.*",
1263  "",
1264  "",
1265  "-v 9,seconds"
1266  },
1267  { "", // Fujitsu MHL2300AT
1268  "FUJITSU MHL2300AT",
1269  "",
1270  "This drive's firmware has a harmless Drive Identity Structure\n"
1271  "checksum error bug.",
1272  "-v 9,seconds"
1273  },
1274  { "", // MHM2200AT, MHM2150AT, MHM2100AT, MHM2060AT
1275  "FUJITSU MHM2(20|15|10|06)0AT",
1276  "",
1277  "This drive's firmware has a harmless Drive Identity Structure\n"
1278  "checksum error bug.",
1279  "-v 9,seconds"
1280  },
1281  { "Fujitsu MHN",
1282  "FUJITSU MHN2...AT",
1283  "",
1284  "",
1285  "-v 9,seconds"
1286  },
1287  { "", // Fujitsu MHR2020AT
1288  "FUJITSU MHR2020AT",
1289  "",
1290  "",
1291  "-v 9,seconds"
1292  },
1293  { "", // Fujitsu MHR2040AT
1294  "FUJITSU MHR2040AT",
1295  "", // Tested on 40BA
1296  "",
1297  "-v 9,seconds -v 192,emergencyretractcyclect "
1298  "-v 198,offlinescanuncsectorct -v 200,writeerrorcount"
1299  },
1300  { "Fujitsu MHS AT",
1301  "FUJITSU MHS20[6432]0AT( .)?",
1302  "",
1303  "",
1304  "-v 9,seconds -v 192,emergencyretractcyclect "
1305  "-v 198,offlinescanuncsectorct -v 200,writeerrorcount "
1306  "-v 201,detectedtacount"
1307  },
1308  { "Fujitsu MHT", // tested with FUJITSU MHT2030AC/909B
1309  "FUJITSU MHT2...(AC|AH|AS|AT|BH)U?.*",
1310  "",
1311  "",
1312  "-v 9,seconds"
1313  },
1314  { "Fujitsu MHU",
1315  "FUJITSU MHU2...ATU?.*",
1316  "",
1317  "",
1318  "-v 9,seconds"
1319  },
1320  { "Fujitsu MHV",
1321  "FUJITSU MHV2...(AH|AS|AT|BH|BS|BT).*",
1322  "",
1323  "",
1324  "-v 9,seconds"
1325  },
1326  { "Fujitsu MPA..MPG",
1327  "FUJITSU MP[A-G]3...A[HTEV]U?.*",
1328  "",
1329  "",
1330  "-v 9,seconds"
1331  },
1332  { "Fujitsu MHY BH",
1333  "FUJITSU MHY2(04|06|08|10|12|16|20|25)0BH.*",
1334  "", "",
1335  "-v 240,raw48,Transfer_Error_Rate"
1336  },
1337  { "Fujitsu MHW AC", // tested with FUJITSU MHW2060AC/00900004
1338  "FUJITSU MHW20(40|60)AC",
1339  "", "", ""
1340  },
1341  { "Fujitsu MHW BH",
1342  "FUJITSU MHW2(04|06|08|10|12|16)0BH.*",
1343  "", "", ""
1344  },
1345  { "Fujitsu MHW BJ",
1346  "FUJITSU MHW2(08|12|16)0BJ.*",
1347  "", "", ""
1348  },
1349  { "Fujitsu MHZ BH",
1350  "FUJITSU MHZ2(04|08|12|16|20|25|32)0BH.*",
1351  "", "", ""
1352  },
1353  { "Fujitsu MHZ BJ",
1354  "FUJITSU MHZ2(08|12|16|20|25|32)0BJ.*",
1355  "",
1356  "",
1357  "-v 9,minutes"
1358  },
1359  { "Fujitsu MHZ BS",
1360  "FUJITSU MHZ2(12|25)0BS.*",
1361  "", "", ""
1362  },
1363  { "Fujitsu MHZ BK",
1364  "FUJITSU MHZ2(08|12|16|25)0BK.*",
1365  "", "", ""
1366  },
1367  { "Fujitsu MJA BH",
1368  "FUJITSU MJA2(08|12|16|25|32|40|50)0BH.*",
1369  "", "", ""
1370  },
1371  { "", // Samsung SV4012H (known firmware)
1372  "SAMSUNG SV4012H",
1373  "RM100-08",
1374  "",
1375  "-v 9,halfminutes -F samsung"
1376  },
1377  { "", // Samsung SV4012H (all other firmware)
1378  "SAMSUNG SV4012H",
1379  "",
1380  "May need -F samsung disabled; see manual for details.",
1381  "-v 9,halfminutes -F samsung"
1382  },
1383  { "", // Samsung SV0412H (known firmware)
1384  "SAMSUNG SV0412H",
1385  "SK100-01",
1386  "",
1387  "-v 9,halfminutes -v 194,10xCelsius -F samsung"
1388  },
1389  { "", // Samsung SV0412H (all other firmware)
1390  "SAMSUNG SV0412H",
1391  "",
1392  "May need -F samsung disabled; see manual for details.",
1393  "-v 9,halfminutes -v 194,10xCelsius -F samsung"
1394  },
1395  { "", // Samsung SV1204H (known firmware)
1396  "SAMSUNG SV1204H",
1397  "RK100-1[3-5]",
1398  "",
1399  "-v 9,halfminutes -v 194,10xCelsius -F samsung"
1400  },
1401  { "", // Samsung SV1204H (all other firmware)
1402  "SAMSUNG SV1204H",
1403  "",
1404  "May need -F samsung disabled; see manual for details.",
1405  "-v 9,halfminutes -v 194,10xCelsius -F samsung"
1406  },
1407  { "", // SAMSUNG SV0322A tested with FW JK200-35
1408  "SAMSUNG SV0322A",
1409  "", "", ""
1410  },
1411  { "SAMSUNG SpinPoint V80", // tested with SV1604N/TR100-23
1412  "SAMSUNG SV(0211|0401|0612|0802|1203|1604)N",
1413  "",
1414  "",
1415  "-v 9,halfminutes -F samsung2"
1416  },
1417  { "", // SAMSUNG SP40A2H with RR100-07 firmware
1418  "SAMSUNG SP40A2H",
1419  "RR100-07",
1420  "",
1421  "-v 9,halfminutes -F samsung"
1422  },
1423  { "", // SAMSUNG SP80A4H with RT100-06 firmware
1424  "SAMSUNG SP80A4H",
1425  "RT100-06",
1426  "",
1427  "-v 9,halfminutes -F samsung"
1428  },
1429  { "", // SAMSUNG SP8004H with QW100-61 firmware
1430  "SAMSUNG SP8004H",
1431  "QW100-61",
1432  "",
1433  "-v 9,halfminutes -F samsung"
1434  },
1435  { "SAMSUNG SpinPoint F1 DT", // tested with HD103UJ/1AA01113
1436  "SAMSUNG HD(083G|16[12]G|25[12]H|32[12]H|50[12]I|642J|75[23]L|10[23]U)J",
1437  "", "", ""
1438  },
1439  { "SAMSUNG SpinPoint F1 EG", // tested with HD103UI/1AA01113
1440  "SAMSUNG HD(252H|322H|502I|642J|753L|103U)I",
1441  "", "", ""
1442  },
1443  { "SAMSUNG SpinPoint F1 RE", // tested with HE103UJ/1AA01113
1444  "SAMSUNG HE(252H|322H|502I|642J|753L|103U)J",
1445  "", "", ""
1446  },
1447  { "SAMSUNG SpinPoint F2 EG", // tested with HD154UI/1AG01118
1448  "SAMSUNG HD(502H|10[23]S|15[34]U)I",
1449  "", "", ""
1450  },
1451  { "SAMSUNG SpinPoint F3", // tested with HD502HJ/1AJ100E4
1452  "SAMSUNG HD(502H|754J|103S)J",
1453  "", "", ""
1454  },
1455  { "Seagate Barracuda SpinPoint F3", // tested with ST1000DM005 HD103SJ/1AJ100E5
1456  "ST[0-9DM]* HD(502H|754J|103S)J",
1457  "", "", ""
1458  },
1459  { "SAMSUNG SpinPoint F3 EG", // tested with HD503HI/1AJ100E4, HD153WI/1AN10002
1460  "SAMSUNG HD(253G|(324|503)H|754J|105S|(153|203)W)I",
1461  "", "", ""
1462  },
1463  { "SAMSUNG SpinPoint F3 RE", // tested with HE103SJ/1AJ30001
1464  "SAMSUNG HE(502H|754J|103S)J",
1465  "", "", ""
1466  },
1467  { "Seagate Samsung Spinpoint F4", // tested with ST250DM001 HD256GJ/1AR10001
1468  "ST(250|320)DM001 HD(256G|322G|323H)J",
1469  "", "", ""
1470  },
1471  { "SAMSUNG SpinPoint F4 EG (AF)",// tested with HD204UI/1AQ10001(buggy|fixed)
1472  "SAMSUNG HD(155|204)UI",
1473  "", // 1AQ10001
1474  "Using smartmontools or hdparm with this\n"
1475  "drive may result in data loss due to a firmware bug.\n"
1476  "****** THIS DRIVE MAY OR MAY NOT BE AFFECTED! ******\n"
1477  "Buggy and fixed firmware report same version number!\n"
1478  "See the following web pages for details:\n"
1479  "http://knowledge.seagate.com/articles/en_US/FAQ/223571en\n"
1480  "http://www.smartmontools.org/wiki/SamsungF4EGBadBlocks",
1481  ""
1482  },
1483  { "SAMSUNG SpinPoint S250", // tested with HD200HJ/KF100-06
1484  "SAMSUNG HD(162|200|250)HJ",
1485  "", "", ""
1486  },
1487  { "SAMSUNG SpinPoint T133", // tested with HD300LJ/ZT100-12, HD400LJ/ZZ100-14, HD401LJ/ZZ100-15
1488  "SAMSUNG HD(250KD|(30[01]|320|40[01])L[DJ])",
1489  "", "", ""
1490  },
1491  { "SAMSUNG SpinPoint T166", // tested with HD252KJ/CM100-11, HD501LJ/CR100-1[01]
1492  "SAMSUNG HD(080G|160H|252K|32[01]K|403L|50[01]L)J",
1493  "", "",
1494  "-v 197,increasing" // at least HD501LJ/CR100-11
1495  },
1496  { "SAMSUNG SpinPoint P120", // VF100-37 firmware, tested with SP2514N/VF100-37
1497  "SAMSUNG SP(16[01]3|2[05][01]4)[CN]",
1498  "VF100-37",
1499  "",
1500  "-F samsung3"
1501  },
1502  { "SAMSUNG SpinPoint P120", // other firmware, tested with SP2504C/VT100-33
1503  "SAMSUNG SP(16[01]3|2[05][01]4)[CN]",
1504  "",
1505  "May need -F samsung3 enabled; see manual for details.",
1506  ""
1507  },
1508  { "SAMSUNG SpinPoint P80 SD", // tested with HD160JJ/ZM100-33
1509  "SAMSUNG HD(080H|120I|160J)J",
1510  "", "", ""
1511  },
1512  { "SAMSUNG SpinPoint P80", // BH100-35 firmware, tested with SP0842N/BH100-35
1513  "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
1514  "BH100-35",
1515  "",
1516  "-F samsung3"
1517  },
1518  { "SAMSUNG SpinPoint P80", // firmware *-35 or later
1519  "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
1520  ".*-3[5-9]",
1521  "May need -F samsung3 enabled; see manual for details.",
1522  ""
1523  },
1524  { "SAMSUNG SpinPoint P80", // firmware *-25...34, tested with
1525  // SP0401N/TJ100-30, SP1614C/SW100-25 and -34
1526  "SAMSUNG SP(04[05]1|08[0124]2|12[0145]3|16[0145]4)[CN]",
1527  ".*-(2[5-9]|3[0-4])",
1528  "",
1529  "-v 9,halfminutes -v 198,increasing"
1530  },
1531  { "SAMSUNG SpinPoint P80", // firmware *-23...24, tested with
1532  // SP0802N/TK100-23,
1533  // SP1213N/TL100-23,
1534  // SP1604N/TM100-23 and -24
1535  "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
1536  ".*-2[34]",
1537  "",
1538  "-v 9,halfminutes -F samsung2"
1539  },
1540  { "SAMSUNG SpinPoint P80", // unknown firmware
1541  "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
1542  "",
1543  "May need -F samsung2 or -F samsung3 enabled; see manual for details.",
1544  ""
1545  },
1546  { "SAMSUNG SpinPoint M40/60/80", // tested with HM120IC/AN100-16, HM160JI/AD100-16
1547  "SAMSUNG HM(0[468]0H|120I|1[026]0J)[CI]",
1548  "",
1549  "",
1550  "-v 9,halfminutes"
1551  },
1552  { "SAMSUNG SpinPoint M5", // tested with HM160HI/HH100-12
1553  "SAMSUNG HM(((061|080)G|(121|160)H|250J)I|160HC)",
1554  "", "", ""
1555  },
1556  { "SAMSUNG SpinPoint M6", // tested with HM320JI/2SS00_01 M6
1557  "SAMSUNG HM(251J|320[HJ]|[45]00L)I",
1558  "", "", ""
1559  },
1560  { "SAMSUNG SpinPoint M7", // tested with HM500JI/2AC101C4
1561  "SAMSUNG HM(250H|320I|[45]00J)I",
1562  "", "", ""
1563  },
1564  { "SAMSUNG SpinPoint M7E (AF)", // tested with HM321HI/2AJ10001, HM641JI/2AJ10001
1565  "SAMSUNG HM(161G|(251|321)H|501I|641J)I",
1566  "", "", ""
1567  },
1568  { "SAMSUNG SpinPoint M7U (USB)", // tested with HM252HX/2AC101C4
1569  "SAMSUNG HM(162H|252H|322I|502J)X",
1570  "", "", ""
1571  },
1572  { "SAMSUNG SpinPoint M8 (AF)", // tested with HN-M101MBB/2AR10001
1573  "SAMSUNG HN-M(250|320|500|640|750|101)MBB",
1574  "", "", ""
1575  },
1576  { "Seagate Samsung SpinPoint M8 (AF)", // tested with
1577  // ST750LM022 HN-M750MBB/2AR10001, ST320LM001 HN-M320MBB/2AR10002,
1578  // APPLE HDD ST500LM012/2BA30003
1579  "ST(250|320|500|640|750|1000)LM0[012][124] HN-M[0-9]*MBB|"
1580  "APPLE HDD ST500LM012",
1581  "", "", ""
1582  },
1583  { "SAMSUNG SpinPoint M8U (USB)", // tested with HN-M500XBB/2AR10001
1584  "SAMSUNG HN-M(320|500|750|101)XBB",
1585  "", "", ""
1586  },
1587  { "Seagate Samsung SpinPoint M8U (USB)", // tested with ST1000LM025 HN-M101ABB/2AR10001
1588  "ST(250|320|500|640|750|1000)LM0[012][3459] HN-M[0-9]*ABB",
1589  "", "", ""
1590  },
1591  { "Seagate Samsung SpinPoint M9T", // tested with ST2000LM003 HN-M201RAD/2BC10003
1592  // (Seagate Expansion Portable)
1593  "ST(1500|2000)LM0(03|04|06|07|10) HN-M[0-9]*RAD",
1594  "", "", ""
1595  },
1596  { "Seagate Samsung SpinPoint M9TU (USB)", // tested with ST1500LM008 HN-M151AAD/2BC10001
1597  // (0x04e8:0x61b5), ST2000LM005 HN-M201AAD2BC10001 (0x04e8:0x61b4)
1598  "ST(1500|2000)LM00[58] HN-M[0-9]*AAD",
1599  "", "", ""
1600  },
1601  { "SAMSUNG SpinPoint MP5", // tested with HM250HJ/2AK10001
1602  "SAMSUNG HM(250H|320H|500J|640J)J",
1603  "", "", ""
1604  },
1605  { "SAMSUNG SpinPoint MT2", // tested with HM100UI/2AM10001
1606  "SAMSUNG HM100UI",
1607  "", "", ""
1608  },
1609  { "SAMSUNG HM100UX (S2 Portable)", // tested with HM100UX/2AM10001
1610  "SAMSUNG HM100UX",
1611  "", "", ""
1612  },
1613  { "SAMSUNG SpinPoint M", // tested with MP0402H/UC100-11
1614  "SAMSUNG MP0(302|402|603|804)H",
1615  "",
1616  "",
1617  "-v 9,halfminutes"
1618  },
1619  { "SAMSUNG SpinPoint N3U-3 (USB, 4KiB LLS)", // tested with HS25YJZ/3AU10-01
1620  "SAMSUNG HS(122H|2[05]YJ)Z",
1621  "", "", ""
1622  },
1623  { "Maxtor Fireball 541DX",
1624  "Maxtor 2B0(0[468]|1[05]|20)H1",
1625  "",
1626  "",
1627  "-v 9,minutes -v 194,unknown"
1628  },
1629  { "Maxtor Fireball 3",
1630  "Maxtor 2F0[234]0[JL]0",
1631  "",
1632  "",
1633  "-v 9,minutes"
1634  },
1635  { "Maxtor DiamondMax 1280 ATA", // no self-test log, ATA2-Fast
1636  "Maxtor 8(1280A2|2160A4|2560A4|3840A6|4000A6|5120A8)",
1637  "",
1638  "",
1639  "-v 9,minutes"
1640  },
1641  { "Maxtor DiamondMax 2160 Ultra ATA",
1642  "Maxtor 8(2160D2|3228D3|3240D3|4320D4|6480D6|8400D8|8455D8)",
1643  "",
1644  "",
1645  "-v 9,minutes"
1646  },
1647  { "Maxtor DiamondMax 2880 Ultra ATA",
1648  "Maxtor 9(0510D4|0576D4|0648D5|0720D5|0840D6|0845D6|0864D6|1008D7|1080D8|1152D8)",
1649  "",
1650  "",
1651  "-v 9,minutes"
1652  },
1653  { "Maxtor DiamondMax 3400 Ultra ATA",
1654  "Maxtor 9(1(360|350|202)D8|1190D7|10[12]0D6|0840D5|06[48]0D4|0510D3|1(350|202)E8|1010E6|0840E5|0640E4)",
1655  "",
1656  "",
1657  "-v 9,minutes"
1658  },
1659  { "Maxtor DiamondMax D540X-4G",
1660  "Maxtor 4G(120J6|160J[68])",
1661  "",
1662  "",
1663  "-v 9,minutes -v 194,unknown"
1664  },
1665  { "Maxtor DiamondMax D540X-4K",
1666  "MAXTOR 4K(020H1|040H2|060H3|080H4)",
1667  "", "", ""
1668  },
1669  { "Maxtor DiamondMax Plus D740X",
1670  "MAXTOR 6L0(20[JL]1|40[JL]2|60[JL]3|80[JL]4)",
1671  "", "", ""
1672  },
1673  { "Maxtor DiamondMax Plus 5120 Ultra ATA 33",
1674  "Maxtor 9(0512D2|0680D3|0750D3|0913D4|1024D4|1360D6|1536D6|1792D7|2048D8)",
1675  "",
1676  "",
1677  "-v 9,minutes"
1678  },
1679  { "Maxtor DiamondMax Plus 6800 Ultra ATA 66",
1680  "Maxtor 9(2732U8|2390U7|204[09]U6|1707U5|1366U4|1024U3|0845U3|0683U2)",
1681  "",
1682  "",
1683  "-v 9,minutes"
1684  },
1685  { "Maxtor DiamondMax D540X-4D",
1686  "Maxtor 4D0(20H1|40H2|60H3|80H4)",
1687  "",
1688  "",
1689  "-v 9,minutes -v 194,unknown"
1690  },
1691  { "Maxtor DiamondMax 16",
1692  "Maxtor 4(R0[68]0[JL]0|R1[26]0L0|A160J0|R120L4)",
1693  "",
1694  "",
1695  "-v 9,minutes"
1696  },
1697  { "Maxtor DiamondMax 4320 Ultra ATA",
1698  "Maxtor (91728D8|91512D7|91303D6|91080D5|90845D4|90645D3|90648D[34]|90432D2)",
1699  "",
1700  "",
1701  "-v 9,minutes"
1702  },
1703  { "Maxtor DiamondMax 17 VL",
1704  "Maxtor 9(0431U1|0641U2|0871U2|1301U3|1741U4)",
1705  "",
1706  "",
1707  "-v 9,minutes"
1708  },
1709  { "Maxtor DiamondMax 20 VL",
1710  "Maxtor (94091U8|93071U6|92561U5|92041U4|91731U4|91531U3|91361U3|91021U2|90841U2|90651U2)",
1711  "",
1712  "",
1713  "-v 9,minutes"
1714  },
1715  { "Maxtor DiamondMax VL 30", // U: ATA66, H: ATA100
1716  "Maxtor (33073U4|32049U3|31536U2|30768U1|33073H4|32305H3|31536H2|30768H1)",
1717  "",
1718  "",
1719  "-v 9,minutes"
1720  },
1721  { "Maxtor DiamondMax 36",
1722  "Maxtor (93652U8|92739U6|91826U4|91369U3|90913U2|90845U2|90435U1)",
1723  "",
1724  "",
1725  "-v 9,minutes"
1726  },
1727  { "Maxtor DiamondMax 40 ATA 66",
1728  "Maxtor 9(0684U2|1024U2|1362U3|1536U3|2049U4|2562U5|3073U6|4098U8)",
1729  "",
1730  "",
1731  "-v 9,minutes"
1732  },
1733  { "Maxtor DiamondMax Plus 40 (Ultra ATA 66 and Ultra ATA 100)",
1734  "Maxtor (54098[UH]8|53073[UH]6|52732[UH]6|52049[UH]4|51536[UH]3|51369[UH]3|51024[UH]2)",
1735  "",
1736  "",
1737  "-v 9,minutes"
1738  },
1739  { "Maxtor DiamondMax 40 VL Ultra ATA 100",
1740  "Maxtor 3(1024H1|1535H2|2049H2|3073H3|4098H4)( B)?",
1741  "",
1742  "",
1743  "-v 9,minutes"
1744  },
1745  { "Maxtor DiamondMax Plus 45 Ulta ATA 100",
1746  "Maxtor 5(4610H6|4098H6|3073H4|2049H3|1536H2|1369H2|1023H2)",
1747  "",
1748  "",
1749  "-v 9,minutes"
1750  },
1751  { "Maxtor DiamondMax 60 ATA 66",
1752  "Maxtor 9(1023U2|1536U2|2049U3|2305U3|3073U4|4610U6|6147U8)",
1753  "",
1754  "",
1755  "-v 9,minutes"
1756  },
1757  { "Maxtor DiamondMax 60 ATA 100",
1758  "Maxtor 9(1023H2|1536H2|2049H3|2305H3|3073H4|4098H6|4610H6|6147H8)",
1759  "",
1760  "",
1761  "-v 9,minutes"
1762  },
1763  { "Maxtor DiamondMax Plus 60",
1764  "Maxtor 5T0(60H6|40H4|30H3|20H2|10H1)",
1765  "",
1766  "",
1767  "-v 9,minutes"
1768  },
1769  { "Maxtor DiamondMax 80",
1770  "Maxtor (98196H8|96147H6)",
1771  "",
1772  "",
1773  "-v 9,minutes"
1774  },
1775  { "Maxtor DiamondMax 536DX",
1776  "Maxtor 4W(100H6|080H6|060H4|040H3|030H2)",
1777  "",
1778  "",
1779  "-v 9,minutes"
1780  },
1781  { "Maxtor DiamondMax Plus 8",
1782  "Maxtor 6(E0[234]|K04)0L0",
1783  "",
1784  "",
1785  "-v 9,minutes"
1786  },
1787  { "Maxtor DiamondMax 10 (ATA/133 and SATA/150)",
1788  "Maxtor 6(B(30|25|20|16|12|10|08)0[MPRS]|L(080[MLP]|(100|120)[MP]|160[MP]|200[MPRS]|250[RS]|300[RS]))0",
1789  "",
1790  "",
1791  "-v 9,minutes"
1792  },
1793  { "Maxtor DiamondMax 10 (SATA/300)",
1794  "Maxtor 6V(080E|160E|200E|250F|300F|320F)0",
1795  "", "", ""
1796  },
1797  { "Maxtor DiamondMax Plus 9",
1798  "Maxtor 6Y((060|080|120|160)L0|(060|080|120|160|200|250)P0|(060|080|120|160|200|250)M0)",
1799  "",
1800  "",
1801  "-v 9,minutes"
1802  },
1803  { "Maxtor DiamondMax 11",
1804  "Maxtor 6H[45]00[FR]0",
1805  "", "", ""
1806  },
1807  { "Maxtor DiamondMax 17",
1808  "Maxtor 6G(080L|160[PE])0",
1809  "", "", ""
1810  },
1811  { "Seagate Maxtor DiamondMax 20",
1812  "MAXTOR STM3(40|80|160)[28]1[12]0?AS?",
1813  "", "", ""
1814  },
1815  { "Seagate Maxtor DiamondMax 21", // tested with MAXTOR STM3250310AS/3.AAF
1816  "MAXTOR STM3(80[28]15|160215|250310|(250|320)820|320620|500630)AS?",
1817  "", "", ""
1818  },
1819  { "Seagate Maxtor DiamondMax 22", // fixed firmware
1820  "(MAXTOR )?STM3(500320|750330|1000340)AS?",
1821  "MX1A", // http://knowledge.seagate.com/articles/en_US/FAQ/207969en
1822  "", ""
1823  },
1824  { "Seagate Maxtor DiamondMax 22", // fixed firmware
1825  "(MAXTOR )?STM3(160813|320614|640323|1000334)AS?",
1826  "MX1B", // http://knowledge.seagate.com/articles/en_US/FAQ/207975en
1827  "", ""
1828  },
1829  { "Seagate Maxtor DiamondMax 22", // buggy firmware
1830  "(MAXTOR )?STM3(500320|750330|1000340)AS?",
1831  "MX15",
1832  "There are known problems with these drives,\n"
1833  "AND THIS FIRMWARE VERSION IS AFFECTED,\n"
1834  "see the following Seagate web pages:\n"
1835  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
1836  "http://knowledge.seagate.com/articles/en_US/FAQ/207969en",
1837  ""
1838  },
1839  { "Seagate Maxtor DiamondMax 22", // unknown firmware
1840  "(MAXTOR )?STM3(160813|32061[34]|500320|640323|750330|10003(34|40))AS?",
1841  "",
1842  "There are known problems with these drives,\n"
1843  "see the following Seagate web pages:\n"
1844  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
1845  "http://knowledge.seagate.com/articles/en_US/FAQ/207969en\n"
1846  "http://knowledge.seagate.com/articles/en_US/FAQ/207975en",
1847  ""
1848  },
1849  { "Seagate Maxtor DiamondMax 23", // new firmware
1850  "STM3((160|250)31|(320|500)41|(750|1000)52)8AS?",
1851  "CC3[D-Z]",
1852  "", ""
1853  },
1854  { "Seagate Maxtor DiamondMax 23", // unknown firmware
1855  "STM3((160|250)31|(320|500)41|(750|1000)52)8AS?",
1856  "",
1857  "A firmware update for this drive may be available,\n"
1858  "see the following Seagate web pages:\n"
1859  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
1860  "http://knowledge.seagate.com/articles/en_US/FAQ/213911en",
1861  ""
1862  },
1863  { "Maxtor MaXLine Plus II",
1864  "Maxtor 7Y250[PM]0",
1865  "",
1866  "",
1867  "-v 9,minutes"
1868  },
1869  { "Maxtor MaXLine II",
1870  "Maxtor [45]A(25|30|32)0[JN]0",
1871  "",
1872  "",
1873  "-v 9,minutes"
1874  },
1875  { "Maxtor MaXLine III (ATA/133 and SATA/150)",
1876  "Maxtor 7L(25|30)0[SR]0",
1877  "",
1878  "",
1879  "-v 9,minutes"
1880  },
1881  { "Maxtor MaXLine III (SATA/300)",
1882  "Maxtor 7V(25|30)0F0",
1883  "", "", ""
1884  },
1885  { "Maxtor MaXLine Pro 500", // There is also a 7H500R0 model, but I
1886  "Maxtor 7H500F0", // haven't added it because I suspect
1887  "", // it might need vendoropts_9_minutes
1888  "", "" // and nobody has submitted a report yet
1889  },
1890  { "", // HITACHI_DK14FA-20B
1891  "HITACHI_DK14FA-20B",
1892  "",
1893  "",
1894  "-v 9,minutes -v 193,loadunload"
1895  },
1896  { "HITACHI Travelstar DK23XX/DK23XXB",
1897  "HITACHI_DK23..-..B?",
1898  "",
1899  "",
1900  "-v 9,minutes -v 193,loadunload"
1901  },
1902  { "Hitachi Endurastar J4K20/N4K20 (formerly DK23FA-20J)",
1903  "(HITACHI_DK23FA-20J|HTA422020F9AT[JN]0)",
1904  "",
1905  "",
1906  "-v 9,minutes -v 193,loadunload"
1907  },
1908  { "Hitachi Endurastar J4K30/N4K30",
1909  "HE[JN]4230[23]0F9AT00",
1910  "",
1911  "",
1912  "-v 9,minutes -v 193,loadunload"
1913  },
1914  { "Hitachi Travelstar C4K60", // 1.8" slim drive
1915  "HTC4260[23]0G5CE00|HTC4260[56]0G8CE00",
1916  "",
1917  "",
1918  "-v 9,minutes -v 193,loadunload"
1919  },
1920  { "IBM Travelstar 4GT",
1921  "IBM-DTCA-2(324|409)0",
1922  "", "", ""
1923  },
1924  { "IBM Travelstar 6GN",
1925  "IBM-DBCA-20(324|486|648)0",
1926  "", "", ""
1927  },
1928  { "IBM Travelstar 25GS, 18GT, and 12GN",
1929  "IBM-DARA-2(25|18|15|12|09|06)000",
1930  "", "", ""
1931  },
1932  { "IBM Travelstar 14GS",
1933  "IBM-DCYA-214000",
1934  "", "", ""
1935  },
1936  { "IBM Travelstar 4LP",
1937  "IBM-DTNA-2(180|216)0",
1938  "", "", ""
1939  },
1940  { "IBM Travelstar 48GH, 30GN, and 15GN",
1941  "(IBM-|Hitachi )?IC25(T048ATDA05|N0(30|20|15|12|10|07|06|05)ATDA04)-.",
1942  "", "", ""
1943  },
1944  { "IBM Travelstar 32GH, 30GT, and 20GN",
1945  "IBM-DJSA-2(32|30|20|10|05)",
1946  "", "", ""
1947  },
1948  { "IBM Travelstar 4GN",
1949  "IBM-DKLA-2(216|324|432)0",
1950  "", "", ""
1951  },
1952  { "IBM/Hitachi Travelstar 60GH and 40GN",
1953  "(IBM-|Hitachi )?IC25(T060ATC[SX]05|N0[4321]0ATC[SX]04)-.",
1954  "", "", ""
1955  },
1956  { "IBM/Hitachi Travelstar 40GNX",
1957  "(IBM-|Hitachi )?IC25N0[42]0ATC[SX]05-.",
1958  "", "", ""
1959  },
1960  { "Hitachi Travelstar 80GN",
1961  "(Hitachi )?IC25N0[23468]0ATMR04-.",
1962  "", "", ""
1963  },
1964  { "Hitachi Travelstar 4K40",
1965  "(Hitachi )?HTS4240[234]0M9AT00",
1966  "", "", ""
1967  },
1968  { "Hitachi Travelstar 4K120",
1969  "(Hitachi )?(HTS4212(60|80|10|12)H9AT00|HTS421260G9AT00)",
1970  "", "", ""
1971  },
1972  { "Hitachi Travelstar 5K80",
1973  "(Hitachi )?HTS5480[8642]0M9AT00",
1974  "", "", ""
1975  },
1976  { "Hitachi Travelstar 5K100",
1977  "(Hitachi )?HTS5410[1864]0G9(AT|SA)00",
1978  "", "", ""
1979  },
1980  { "Hitachi Travelstar E5K100",
1981  "(Hitachi )?HTE541040G9(AT|SA)00",
1982  "", "", ""
1983  },
1984  { "Hitachi Travelstar 5K120",
1985  "(Hitachi )?HTS5412(60|80|10|12)H9(AT|SA)00",
1986  "", "", ""
1987  },
1988  { "Hitachi Travelstar 5K160",
1989  "(Hitachi |HITACHI )?HTS5416([468]0|1[26])J9(AT|SA)00",
1990  "", "", ""
1991  },
1992  { "Hitachi Travelstar E5K160",
1993  "(Hitachi )?HTE5416(12|16|60|80)J9(AT|SA)00",
1994  "", "", ""
1995  },
1996  { "Hitachi Travelstar 5K250",
1997  "(Hitachi |HITACHI )?HTS5425(80|12|16|20|25)K9(A3|SA)00",
1998  "", "", ""
1999  },
2000  { "Hitachi Travelstar 5K320", // tested with HITACHI HTS543232L9SA00/FB4ZC4EC,
2001  // Hitachi HTS543212L9SA02/FBBAC52F
2002  "(Hitachi |HITACHI )?HT(S|E)5432(80|12|16|25|32)L9(A3(00)?|SA0[012])",
2003  "", "", ""
2004  },
2005  { "Hitachi/HGST Travelstar Z5K320", // tested with Hitachi HTS543232A7A384/ES2OA70K
2006  "(Hitachi|HGST) HT[ES]5432(16|25|32)A7A38[145]",
2007  "", "", ""
2008  },
2009  { "Hitachi Travelstar 5K500.B", // tested with Hitachi HTS545050B9SA00/PB4OC60X
2010  "(Hitachi )?HT[ES]5450(12|16|25|32|40|50)B9(A30[01]|SA00)",
2011  "", "", ""
2012  },
2013  { "Hitachi/HGST Travelstar Z5K500", // tested with HGST HTS545050A7E380/GG2OAC90,
2014  // Hitachi HTS545032A7E380/GGBOA7A0, APPLE HDD HTS545050A7E362/GG2AB990
2015  "(Hitachi|HGST|APPLE HDD) HT[ES]5450(25|32|50)A7E3(62|8[01])",
2016  "", "", ""
2017  },
2018  { "Hitachi/HGST Travelstar 5K750", // tested with Hitachi HTS547575A9E384/JE4OA60A,
2019  // APPLE HDD HTS547550A9E384/JE3AD70F
2020  "(Hitachi|APPLE HDD) HT[ES]5475(50|64|75)A9E38[14]",
2021  "", "", ""
2022  },
2023  { "HGST Travelstar 5K1000", // tested with HGST HTS541010A9E680/JA0OA560,
2024  // HGST HTS541075A9E680/JA2OA560
2025  "HGST HT[ES]5410(64|75|10)A9E68[01]",
2026  "", "", ""
2027  },
2028  { "HGST Travelstar Z5K1000", // tested with HGST HTS541010A7E630/SE0OA4A0
2029  "HGST HTS5410(75|10)A7E63[015]",
2030  "", "", ""
2031  },
2032  { "HGST Travelstar 5K1500", // tested with HGST HTS541515A9E630/KA0OA500
2033  "HGST HT[ES]541515A9E63[015]",
2034  "", "", ""
2035  },
2036  { "Hitachi Travelstar 7K60",
2037  "(Hitachi )?HTS726060M9AT00",
2038  "", "", ""
2039  },
2040  { "Hitachi Travelstar E7K60",
2041  "(Hitachi )?HTE7260[46]0M9AT00",
2042  "", "", ""
2043  },
2044  { "Hitachi Travelstar 7K100",
2045  "(Hitachi )?HTS7210[168]0G9(AT|SA)00",
2046  "", "", ""
2047  },
2048  { "Hitachi Travelstar E7K100",
2049  "(Hitachi )?HTE7210[168]0G9(AT|SA)00",
2050  "", "", ""
2051  },
2052  { "Hitachi Travelstar 7K200", // tested with HITACHI HTS722016K9SA00/DCDZC75A
2053  "(Hitachi |HITACHI )?HTS7220(80|10|12|16|20)K9(A3|SA)00",
2054  "", "", ""
2055  },
2056  { "Hitachi Travelstar 7K320", // tested with
2057  // HTS723225L9A360/FCDOC30F, HTS723216L9A362/FC2OC39F
2058  "(Hitachi )?HT[ES]7232(80|12|16|25|32)L9(A300|A36[02]|SA61)",
2059  "", "", ""
2060  },
2061  { "Hitachi Travelstar Z7K320", // tested with HITACHI HTS723232A7A364/EC2ZB70B
2062  "(HITACHI )?HT[ES]7232(16|25|32)A7A36[145]",
2063  "", "", ""
2064  },
2065  { "Hitachi Travelstar 7K500", // tested with Hitachi HTS725050A9A360/PC4OC70D
2066  "(Hitachi )?HT[ES]7250(12|16|25|32|50)A9A36[02-5]",
2067  "", "", ""
2068  },
2069  { "Hitachi/HGST Travelstar Z7K500", // tested with HITACHI HTS725050A7E630/GH2ZB390,
2070  // HGST HTS725050A7E630/GH2OA420
2071  "(HITACHI|HGST) HT[ES]7250(25|32|50)A7E63[015]",
2072  "", "", ""
2073  },
2074  { "Hitachi/HGST Travelstar 7K750", // tested with Hitachi HTS727550A9E364/JF3OA0E0,
2075  // Hitachi HTS727575A9E364/JF4OA0D0
2076  "(Hitachi|HGST) HT[ES]7275(50|64|75)A9E36[14]",
2077  "", "", ""
2078  },
2079  { "HGST Travelstar 7K1000", // tested with HGST HTS721010A9E630/JB0OA3B0
2080  "HGST HTS721010A9E630",
2081  "", "", ""
2082  },
2083  { "IBM Deskstar 14GXP and 16GP",
2084  "IBM-DTTA-3(7101|7129|7144|5032|5043|5064|5084|5101|5129|5168)0",
2085  "", "", ""
2086  },
2087  { "IBM Deskstar 25GP and 22GXP",
2088  "IBM-DJNA-3(5(101|152|203|250)|7(091|135|180|220))0",
2089  "", "", ""
2090  },
2091  { "IBM Deskstar 37GP and 34GXP",
2092  "IBM-DPTA-3(5(375|300|225|150)|7(342|273|205|136))0",
2093  "", "", ""
2094  },
2095  { "IBM/Hitachi Deskstar 120GXP",
2096  "(IBM-)?IC35L((020|040|060|080|120)AVVA|0[24]0AVVN)07-[01]",
2097  "", "", ""
2098  },
2099  { "IBM/Hitachi Deskstar GXP-180",
2100  "(IBM-)?IC35L(030|060|090|120|180)AVV207-[01]",
2101  "", "", ""
2102  },
2103  { "Hitachi CinemaStar 5K320", // tested with Hitachi HCS5C3225SLA380/STBOA37H
2104  "Hitachi HCS5C32(25|32)SLA380",
2105  "", "", ""
2106  },
2107  { "Hitachi Deskstar 5K3000", // tested with HDS5C3030ALA630/MEAOA5C0,
2108  // Hitachi HDS5C3020BLE630/MZ4OAAB0 (OEM, Toshiba Canvio Desktop)
2109  "(Hitachi )?HDS5C30(15|20|30)(ALA|BLE)63[02].*",
2110  "", "", ""
2111  },
2112  { "Hitachi Deskstar 5K4000", // tested with HDS5C4040ALE630/MPAOA250
2113  "(Hitachi )?HDS5C40(30|40)ALE63[01].*",
2114  "", "", ""
2115  },
2116  { "Hitachi Deskstar 7K80",
2117  "(Hitachi )?HDS7280([48]0PLAT20|(40)?PLA320|80PLA380).*",
2118  "", "", ""
2119  },
2120  { "Hitachi Deskstar 7K160",
2121  "(Hitachi )?HDS7216(80|16)PLA[3T]80.*",
2122  "", "", ""
2123  },
2124  { "Hitachi Deskstar 7K250",
2125  "(Hitachi )?HDS7225((40|80|12|16)VLAT20|(12|16|25)VLAT80|(80|12|16|25)VLSA80)",
2126  "", "", ""
2127  },
2128  { "Hitachi Deskstar 7K250 (SUN branded)",
2129  "HITACHI HDS7225SBSUN250G.*",
2130  "", "", ""
2131  },
2132  { "Hitachi Deskstar T7K250",
2133  "(Hitachi )?HDT7225((25|20|16)DLA(T80|380))",
2134  "", "", ""
2135  },
2136  { "Hitachi Deskstar 7K400",
2137  "(Hitachi )?HDS724040KL(AT|SA)80",
2138  "", "", ""
2139  },
2140  { "Hitachi Deskstar 7K500",
2141  "(Hitachi )?HDS725050KLA(360|T80)",
2142  "", "", ""
2143  },
2144  { "Hitachi Deskstar P7K500",
2145  "(Hitachi )?HDP7250(16|25|32|40|50)GLA(36|38|T8)0",
2146  "", "", ""
2147  },
2148  { "Hitachi Deskstar T7K500",
2149  "(Hitachi )?HDT7250(25|32|40|50)VLA(360|380|T80)",
2150  "", "", ""
2151  },
2152  { "Hitachi Deskstar 7K1000",
2153  "(Hitachi )?HDS7210(50|75|10)KLA330",
2154  "", "", ""
2155  },
2156  { "Hitachi Deskstar 7K1000.B",
2157  "(Hitachi )?HDT7210((16|25)SLA380|(32|50|64|75|10)SLA360)",
2158  "", "", ""
2159  },
2160  { "Hitachi Deskstar 7K1000.C", // tested with Hitachi HDS721010CLA330/JP4OA3MA,
2161  // Hitachi HDS721025CLA682/JP1OA41A
2162  "(Hitachi )?HDS7210((16|25)CLA[36]82|(32|50)CLA[36]62|(64|75|10)CLA[36]3[02])",
2163  "", "", ""
2164  },
2165  { "Hitachi Deskstar 7K1000.D", // tested with HDS721010DLE630/MS2OA5Q0
2166  "Hitachi HDS7210(25|32|50|75|10)DLE630",
2167  "", "", ""
2168  },
2169  { "Hitachi Deskstar E7K1000", // tested with HDE721010SLA330/ST6OA31B
2170  "Hitachi HDE7210(50|75|10)SLA330",
2171  "", "", ""
2172  },
2173  { "Hitachi Deskstar 7K2000",
2174  "Hitachi HDS722020ALA330",
2175  "", "", ""
2176  },
2177  { "Hitachi Deskstar 7K3000", // tested with HDS723030ALA640/MKAOA3B0
2178  "Hitachi HDS7230((15|20)BLA642|30ALA640)",
2179  "", "", ""
2180  },
2181  { "Hitachi/HGST Deskstar 7K4000", // tested with Hitachi HDS724040ALE640/MJAOA250
2182  "Hitachi HDS724040ALE640",
2183  "", "", ""
2184  },
2185  { "HGST Deskstar NAS", // tested with HGST HDN724040ALE640/MJAOA5E0,
2186  // HGST HDN726050ALE610/APGNT517, HGST HDN726060ALE610/APGNT517
2187  "HGST HDN72(4030|4040|6050|6060)ALE6[14]0",
2188  "", "", ""
2189  },
2190  { "Hitachi Ultrastar A7K1000", // tested with
2191  // HUA721010KLA330 44X2459 42C0424IBM/GKAOAB4A
2192  "(Hitachi )?HUA7210(50|75|10)KLA330.*",
2193  "", "", ""
2194  },
2195  { "Hitachi Ultrastar A7K2000", // tested with
2196  // HUA722010CLA330 43W7629 42C0401IBM
2197  "(Hitachi )?HUA7220(50|10|20)[AC]LA33[01].*",
2198  "", "", ""
2199  },
2200  { "Hitachi Ultrastar 7K3000", // tested with HUA723030ALA640/MKAOA580
2201  "Hitachi HUA7230(20|30)ALA640",
2202  "", "", ""
2203  },
2204  { "Hitachi/HGST Ultrastar 7K4000", // tested with Hitachi HUS724040ALE640/MJAOA3B0,
2205  // HGST HUS724040ALE640/MJAOA580, HGST HUS724020ALA640/MF6OAA70
2206  "(Hitachi|HGST) HUS7240(20|30|40)AL[AE]64[01]",
2207  "", "", ""
2208  },
2209  { "HGST Ultrastar He6", // tested with HGST HUS726060ALA640/AHGNT1E2
2210  "HGST HUS726060ALA64[01]",
2211  "", "", ""
2212  },
2213  { "HGST MegaScale 4000", // tested with HGST HMS5C4040ALE640/MPAOA580
2214  "HGST HMS5C4040[AB]LE64[01]", // B = DC 4000.B
2215  "", "", ""
2216  },
2217  { "Toshiba 2.5\" HDD (10-20 GB)",
2218  "TOSHIBA MK(101[67]GAP|15[67]GAP|20(1[678]GAP|(18|23)GAS))",
2219  "", "", ""
2220  },
2221  { "Toshiba 2.5\" HDD (30-60 GB)",
2222  "TOSHIBA MK((6034|4032)GSX|(6034|4032)GAX|(6026|4026|4019|3019)GAXB?|(6025|6021|4025|4021|4018|3025|3021|3018)GAS|(4036|3029)GACE?|(4018|3017)GAP)",
2223  "", "", ""
2224  },
2225  { "Toshiba 2.5\" HDD (80 GB and above)",
2226  "TOSHIBA MK(80(25GAS|26GAX|32GAX|32GSX)|10(31GAS|32GAX)|12(33GAS|34G[AS]X)|2035GSS)",
2227  "", "", ""
2228  },
2229  { "Toshiba 2.5\" HDD MK..37GSX", // tested with TOSHIBA MK1637GSX/DL032C
2230  "TOSHIBA MK(12|16)37GSX",
2231  "", "", ""
2232  },
2233  { "Toshiba 2.5\" HDD MK..46GSX", // tested with TOSHIBA MK1246GSX/LB213M
2234  "TOSHIBA MK(80|12|16|25)46GSX",
2235  "", "", ""
2236  },
2237  { "Toshiba 2.5\" HDD MK..50GACY", // tested with TOSHIBA MK8050GACY/TF105A
2238  "TOSHIBA MK8050GACY",
2239  "", "", ""
2240  },
2241  { "Toshiba 2.5\" HDD MK..51GSY", // tested with TOSHIBA MK1251GSY/LD101D
2242  "TOSHIBA MK(80|12|16|25)51GSY",
2243  "",
2244  "",
2245  "-v 9,minutes"
2246  },
2247  { "Toshiba 2.5\" HDD MK..52GSX",
2248  "TOSHIBA MK(80|12|16|25|32)52GSX",
2249  "", "", ""
2250  },
2251  { "Toshiba 2.5\" HDD MK..55GSX", // tested with TOSHIBA MK5055GSX/FG001A, MK3255GSXF/FH115B
2252  "TOSHIBA MK(12|16|25|32|40|50)55GSXF?",
2253  "", "", ""
2254  },
2255  { "Toshiba 2.5\" HDD MK..56GSY", // tested with TOSHIBA MK2556GSYF/LJ001D
2256  "TOSHIBA MK(16|25|32|50)56GSYF?",
2257  "",
2258  "",
2259  "-v 9,minutes"
2260  },
2261  { "Toshiba 2.5\" HDD MK..59GSXP (AF)",
2262  "TOSHIBA MK(32|50|64|75)59GSXP?",
2263  "", "", ""
2264  },
2265  { "Toshiba 2.5\" HDD MK..59GSM (AF)",
2266  "TOSHIBA MK(75|10)59GSM",
2267  "", "", ""
2268  },
2269  { "Toshiba 2.5\" HDD MK..61GSY[N]", // tested with TOSHIBA MK5061GSY/MC102E, MK5061GSYN/MH000A,
2270  // TOSHIBA MK2561GSYN/MH000D
2271  "TOSHIBA MK(16|25|32|50|64)61GSYN?",
2272  "",
2273  "",
2274  "-v 9,minutes" // TOSHIBA MK2561GSYN/MH000D
2275  },
2276  { "Toshiba 2.5\" HDD MK..61GSYB", // tested with TOSHIBA MK5061GSYB/ME0A
2277  "TOSHIBA MK(16|25|32|50|64)61GSYB",
2278  "", "", ""
2279  },
2280  { "Toshiba 2.5\" HDD MK..65GSX", // tested with TOSHIBA MK5065GSX/GJ003A, MK3265GSXN/GH012H,
2281  // MK5065GSXF/GP006B, MK2565GSX H/GJ003A
2282  "TOSHIBA MK(16|25|32|50|64)65GSX[FN]?( H)?", // "... H" = USB ?
2283  "", "", ""
2284  },
2285  { "Toshiba 2.5\" HDD MK..75GSX", // tested with TOSHIBA MK7575GSX/GT001C
2286  "TOSHIBA MK(32|50|64|75)75GSX",
2287  "", "", ""
2288  },
2289  { "Toshiba 2.5\" HDD MK..76GSX", // tested with TOSHIBA MK3276GSX/GS002D
2290  "TOSHIBA MK(16|25|32|50|64)76GSX",
2291  "",
2292  "",
2293  "-v 9,minutes"
2294  },
2295  { "Toshiba 2.5\" HDD MQ01ABB...", // tested with TOSHIBA MQ01ABB200/AY000U
2296  "TOSHIBA MQ01ABB(100|150|200)",
2297  "", "", ""
2298  },
2299  { "Toshiba 2.5\" HDD MQ01ABC...", // tested with TOSHIBA MQ01ABC150/AQ001U
2300  "TOSHIBA MQ01ABC(100|150|200)",
2301  "", "", ""
2302  },
2303  { "Toshiba 2.5\" HDD MQ01ABD...", // tested with TOSHIBA MQ01ABD100/AX001U
2304  "TOSHIBA MQ01ABD(025|032|050|064|075|100)",
2305  "", "", ""
2306  },
2307  { "Toshiba 2.5\" HDD MQ01ABF...", // tested with TOSHIBA MQ01ABF050/AM001J
2308  "TOSHIBA MQ01ABF(050|075|100)",
2309  "", "", ""
2310  },
2311  { "Toshiba 2.5\" HDD MQ01UBB... (USB 3.0)", // tested with TOSHIBA MQ01UBB200/AY000U (0x0480:0xa100)
2312  "TOSHIBA MQ01UBB200",
2313  "", "", ""
2314  },
2315  { "Toshiba 2.5\" HDD MQ01UBD... (USB 3.0)", // tested with TOSHIBA MQ01UBD050/AX001U (0x0480:0xa007),
2316  // TOSHIBA MQ01UBD100/AX001U (0x0480:0x0201)
2317  "TOSHIBA MQ01UBD(050|075|100)",
2318  "", "", ""
2319  },
2320  { "Toshiba 3.5\" HDD MK.002TSKB", // tested with TOSHIBA MK1002TSKB/MT1A
2321  "TOSHIBA MK(10|20)02TSKB",
2322  "", "", ""
2323  },
2324  { "Toshiba 3.5\" MG03ACAxxx(Y) Enterprise HDD", // tested with TOSHIBA MG03ACA100/FL1A
2325  "TOSHIBA MG03ACA[1234]00Y?",
2326  "", "", ""
2327  },
2328  { "Toshiba 3.5\" MD04ACA... Enterprise HDD", // tested with TOSHIBA MD04ACA500/FP1A
2329  "TOSHIBA MD04ACA[2345]00",
2330  "", "", ""
2331  },
2332  { "Toshiba 3.5\" DT01ABA... Desktop HDD", // tested with TOSHIBA DT01ABA300/MZ6OABB0
2333  "TOSHIBA DT01ABA(100|150|200|300)",
2334  "", "", ""
2335  },
2336  { "Toshiba 3.5\" DT01ACA... Desktop HDD", // tested with TOSHIBA DT01ACA100/MS2OA750,
2337  // TOSHIBA DT01ACA200/MX4OABB0, TOSHIBA DT01ACA300/MX6OABB0
2338  "TOSHIBA DT01ACA(025|032|050|075|100|150|200|300)",
2339  "", "", ""
2340  },
2341  { "Toshiba 1.8\" HDD",
2342  "TOSHIBA MK[23468]00[4-9]GA[HL]",
2343  "", "", ""
2344  },
2345  { "Toshiba 1.8\" HDD MK..29GSG",
2346  "TOSHIBA MK(12|16|25)29GSG",
2347  "", "", ""
2348  },
2349  { "", // TOSHIBA MK6022GAX
2350  "TOSHIBA MK6022GAX",
2351  "", "", ""
2352  },
2353  { "", // TOSHIBA MK6409MAV
2354  "TOSHIBA MK6409MAV",
2355  "", "", ""
2356  },
2357  { "Toshiba MKx019GAXB (SUN branded)",
2358  "TOS MK[34]019GAXB SUN[34]0G",
2359  "", "", ""
2360  },
2361  { "Seagate Momentus",
2362  "ST9(20|28|40|48)11A",
2363  "", "", ""
2364  },
2365  { "Seagate Momentus 42",
2366  "ST9(2014|3015|4019)A",
2367  "", "", ""
2368  },
2369  { "Seagate Momentus 4200.2", // tested with ST960812A/3.05
2370  "ST9(100822|808210|60812|50212|402113|30219)A",
2371  "", "", ""
2372  },
2373  { "Seagate Momentus 5400.2",
2374  "ST9(808211|6082[12]|408114|308110|120821|10082[34]|8823|6812|4813|3811)AS?",
2375  "", "", ""
2376  },
2377  { "Seagate Momentus 5400.3",
2378  "ST9(4081[45]|6081[35]|8081[15]|100828|120822|160821)AS?",
2379  "", "", ""
2380  },
2381  { "Seagate Momentus 5400.3 ED",
2382  "ST9(4081[45]|6081[35]|8081[15]|100828|120822|160821)AB",
2383  "", "", ""
2384  },
2385  { "Seagate Momentus 5400.4",
2386  "ST9(120817|(160|200|250)827)AS",
2387  "", "", ""
2388  },
2389  { "Seagate Momentus 5400.5",
2390  "ST9((80|120|160)310|(250|320)320)AS",
2391  "", "", ""
2392  },
2393  { "Seagate Momentus 5400.6",
2394  "ST9(80313|160(301|314)|(12|25)0315|250317|(320|500)325|500327|640320)ASG?",
2395  "", "", ""
2396  },
2397  { "Seagate Momentus 5400.7",
2398  "ST9(160316|(250|320)310|(500|640)320)AS",
2399  "", "", ""
2400  },
2401  { "Seagate Momentus 5400.7 (AF)", // tested with ST9640322AS/0001BSM2
2402  // (device reports 4KiB LPS with 1 sector offset)
2403  "ST9(320312|400321|640322|750423)AS",
2404  "", "", ""
2405  },
2406  { "Seagate Momentus 5400 PSD", // Hybrid drives
2407  "ST9(808212|(120|160)8220)AS",
2408  "", "", ""
2409  },
2410  { "Seagate Momentus 7200.1",
2411  "ST9(10021|80825|6023|4015)AS?",
2412  "", "", ""
2413  },
2414  { "Seagate Momentus 7200.2",
2415  "ST9(80813|100821|120823|160823|200420)ASG?",
2416  "", "", ""
2417  },
2418  { "Seagate Momentus 7200.3",
2419  "ST9((80|120|160)411|(250|320)421)ASG?",
2420  "", "", ""
2421  },
2422  { "Seagate Momentus 7200.4",
2423  "ST9(160412|250410|320423|500420)ASG?",
2424  "", "", ""
2425  },
2426  { "Seagate Momentus 7200 FDE.2",
2427  "ST9((160413|25041[12]|320426|50042[12])AS|(16041[489]|2504[16]4|32042[67]|500426)ASG)",
2428  "", "", ""
2429  },
2430  { "Seagate Momentus 7200.5", // tested with ST9750420AS/0001SDM5, ST9750420AS/0002SDM1
2431  "ST9(50042[34]|64042[012]|75042[02])ASG?",
2432  "", "", ""
2433  },
2434  { "Seagate Momentus XT", // fixed firmware
2435  "ST9(2505610|3205620|5005620)AS",
2436  "SD2[68]", // http://knowledge.seagate.com/articles/en_US/FAQ/215451en
2437  "", ""
2438  },
2439  { "Seagate Momentus XT", // buggy firmware, tested with ST92505610AS/SD24
2440  "ST9(2505610|3205620|5005620)AS",
2441  "SD2[45]",
2442  "These drives may corrupt large files,\n"
2443  "AND THIS FIRMWARE VERSION IS AFFECTED,\n"
2444  "see the following web pages for details:\n"
2445  "http://knowledge.seagate.com/articles/en_US/FAQ/215451en\n"
2446  "http://forums.seagate.com/t5/Momentus-XT-Momentus-Momentus/Momentus-XT-corrupting-large-files-Linux/td-p/109008\n"
2447  "http://superuser.com/questions/313447/seagate-momentus-xt-corrupting-files-linux-and-mac",
2448  ""
2449  },
2450  { "Seagate Momentus XT", // unknown firmware
2451  "ST9(2505610|3205620|5005620)AS",
2452  "",
2453  "These drives may corrupt large files,\n"
2454  "see the following web pages for details:\n"
2455  "http://knowledge.seagate.com/articles/en_US/FAQ/215451en\n"
2456  "http://forums.seagate.com/t5/Momentus-XT-Momentus-Momentus/Momentus-XT-corrupting-large-files-Linux/td-p/109008\n"
2457  "http://superuser.com/questions/313447/seagate-momentus-xt-corrupting-files-linux-and-mac",
2458  ""
2459  },
2460  { "Seagate Momentus XT (AF)", // tested with ST750LX003-1AC154/SM12
2461  "ST750LX003-.*",
2462  "", "", ""
2463  },
2464  { "Seagate Momentus Thin", // tested with ST320LT007-9ZV142/0004LVM1
2465  "ST(160|250|320)LT0(07|09|11|14)-.*",
2466  "", "", ""
2467  },
2468  { "Seagate Laptop Thin HDD", // tested with ST500LT012-9WS142/0001SDM1,
2469  // ST500LM021-1KJ152/0002LIM1
2470  "ST((250|320|500)LT0(12|15|25)|(320|500)LM0(10|21))-.*",
2471  "", "", ""
2472  },
2473  { "Seagate Laptop SSHD", // tested with ST500LM000-1EJ162/SM11
2474  "ST(500|1000)LM0(00|14)-.*",
2475  "", "", ""
2476  },
2477  { "Seagate Medalist 1010, 1720, 1721, 2120, 3230 and 4340", // ATA2, with -t permissive
2478  "ST3(1010|1720|1721|2120|3230|4340)A",
2479  "", "", ""
2480  },
2481  { "Seagate Medalist 2110, 3221, 4321, 6531, and 8641",
2482  "ST3(2110|3221|4321|6531|8641)A",
2483  "", "", ""
2484  },
2485  { "Seagate U4",
2486  "ST3(2112|4311|6421|8421)A",
2487  "", "", ""
2488  },
2489  { "Seagate U5",
2490  "ST3(40823|30621|20413|15311|10211)A",
2491  "", "", ""
2492  },
2493  { "Seagate U6",
2494  "ST3(8002|6002|4081|3061|2041)0A",
2495  "", "", ""
2496  },
2497  { "Seagate U7",
2498  "ST3(30012|40012|60012|80022|120020)A",
2499  "", "", ""
2500  },
2501  { "Seagate U8",
2502  "ST3(4313|6811|8410|4313|13021|17221)A",
2503  "", "", ""
2504  },
2505  { "Seagate U9", // tested with ST3160022ACE/9.51
2506  "ST3(80012|120025|160022)A(CE)?",
2507  "", "", ""
2508  },
2509  { "Seagate U10",
2510  "ST3(20423|15323|10212)A",
2511  "", "", ""
2512  },
2513  { "Seagate UX",
2514  "ST3(10014A(CE)?|20014A)",
2515  "", "", ""
2516  },
2517  { "Seagate Barracuda ATA",
2518  "ST3(2804|2724|2043|1362|1022|681)0A",
2519  "", "", ""
2520  },
2521  { "Seagate Barracuda ATA II",
2522  "ST3(3063|2042|1532|1021)0A",
2523  "", "", ""
2524  },
2525  { "Seagate Barracuda ATA III",
2526  "ST3(40824|30620|20414|15310|10215)A",
2527  "", "", ""
2528  },
2529  { "Seagate Barracuda ATA IV",
2530  "ST3(20011|30011|40016|60021|80021)A",
2531  "", "", ""
2532  },
2533  { "Seagate Barracuda ATA V",
2534  "ST3(12002(3A|4A|9A|3AS)|800(23A|15A|23AS)|60(015A|210A)|40017A)",
2535  "", "", ""
2536  },
2537  { "Seagate Barracuda 5400.1",
2538  "ST340015A",
2539  "", "", ""
2540  },
2541  { "Seagate Barracuda 7200.7 and 7200.7 Plus", // tested with "ST380819AS 39M3701 39M0171 IBM"/3.03
2542  "ST3(200021A|200822AS?|16002[13]AS?|12002[26]AS?|1[26]082[78]AS|8001[13]AS?|8081[79]AS|60014A|40111AS|40014AS?)( .* IBM)?",
2543  "", "", ""
2544  },
2545  { "Seagate Barracuda 7200.8",
2546  "ST3(400[68]32|300[68]31|250[68]23|200826)AS?",
2547  "", "", ""
2548  },
2549  { "Seagate Barracuda 7200.9",
2550  "ST3(402111?|80[28]110?|120[28]1[0134]|160[28]1[012]|200827|250[68]24|300[68]22|(320|400)[68]33|500[68](32|41))AS?.*",
2551  "", "", ""
2552  },
2553  { "Seagate Barracuda 7200.10",
2554  "ST3((80|160)[28]15|200820|250[34]10|(250|300|320|400)[68]20|360320|500[68]30|750[68]40)AS?",
2555  "", "", ""
2556  },
2557  { "Seagate Barracuda 7200.11", // unaffected firmware
2558  "ST3(160813|320[68]13|500[368]20|640[36]23|640[35]30|750[36]30|1000(333|[36]40)|1500341)AS?",
2559  "CC.?.?", // http://knowledge.seagate.com/articles/en_US/FAQ/207957en
2560  "", ""
2561  },
2562  { "Seagate Barracuda 7200.11", // fixed firmware
2563  "ST3(500[368]20|750[36]30|1000340)AS?",
2564  "SD1A", // http://knowledge.seagate.com/articles/en_US/FAQ/207951en
2565  "", ""
2566  },
2567  { "Seagate Barracuda 7200.11", // fixed firmware
2568  "ST3(160813|320[68]13|640[36]23|1000333|1500341)AS?",
2569  "SD[12]B", // http://knowledge.seagate.com/articles/en_US/FAQ/207957en
2570  "", ""
2571  },
2572  { "Seagate Barracuda 7200.11", // buggy or fixed firmware
2573  "ST3(500[368]20|640[35]30|750[36]30|1000340)AS?",
2574  "(AD14|SD1[5-9]|SD81)",
2575  "There are known problems with these drives,\n"
2576  "THIS DRIVE MAY OR MAY NOT BE AFFECTED,\n"
2577  "see the following web pages for details:\n"
2578  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
2579  "http://knowledge.seagate.com/articles/en_US/FAQ/207951en\n"
2580  "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=632758",
2581  ""
2582  },
2583  { "Seagate Barracuda 7200.11", // unknown firmware
2584  "ST3(160813|320[68]13|500[368]20|640[36]23|640[35]30|750[36]30|1000(333|[36]40)|1500341)AS?",
2585  "",
2586  "There are known problems with these drives,\n"
2587  "see the following Seagate web pages:\n"
2588  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
2589  "http://knowledge.seagate.com/articles/en_US/FAQ/207951en\n"
2590  "http://knowledge.seagate.com/articles/en_US/FAQ/207957en",
2591  ""
2592  },
2593  { "Seagate Barracuda 7200.12", // new firmware
2594  "ST3(160318|250318|320418|50041[08]|750528|1000528)AS",
2595  "CC4[9A-Z]",
2596  "", ""
2597  },
2598  { "Seagate Barracuda 7200.12", // unknown firmware
2599  "ST3(160318|250318|320418|50041[08]|750528|1000528)AS",
2600  "",
2601  "A firmware update for this drive may be available,\n"
2602  "see the following Seagate web pages:\n"
2603  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
2604  "http://knowledge.seagate.com/articles/en_US/FAQ/213891en",
2605  ""
2606  },
2607  { "Seagate Barracuda 7200.12", // tested with ST3250312AS/JC45, ST31000524AS/JC45,
2608  // ST3500413AS/JC4B, ST3750525AS/JC4B
2609  "ST3(160318|25031[128]|320418|50041[038]|750(518|52[358])|100052[348])AS",
2610  "", "", ""
2611  },
2612  { "Seagate Barracuda XT", // tested with ST32000641AS/CC13,
2613  // ST4000DX000-1C5160/CC42
2614  "ST(3(2000641|3000651)AS|4000DX000-.*)",
2615  "", "", ""
2616  },
2617  { "Seagate Barracuda 7200.14 (AF)", // new firmware, tested with
2618  // ST3000DM001-9YN166/CC4H, ST3000DM001-9YN166/CC9E
2619  "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.",
2620  "CC(4[H-Z]|[5-9A-Z]..*)", // >= "CC4H"
2621  "",
2622  "-v 188,raw16 -v 240,msec24hour32" // tested with ST3000DM001-9YN166/CC4H
2623  },
2624  { "Seagate Barracuda 7200.14 (AF)", // old firmware, tested with
2625  // ST1000DM003-9YN162/CC46
2626  "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.",
2627  "CC4[679CG]",
2628  "A firmware update for this drive is available,\n"
2629  "see the following Seagate web pages:\n"
2630  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
2631  "http://knowledge.seagate.com/articles/en_US/FAQ/223651en",
2632  "-v 188,raw16 -v 240,msec24hour32"
2633  },
2634  { "Seagate Barracuda 7200.14 (AF)", // unknown firmware
2635  "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.",
2636  "",
2637  "A firmware update for this drive may be available,\n"
2638  "see the following Seagate web pages:\n"
2639  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
2640  "http://knowledge.seagate.com/articles/en_US/FAQ/223651en",
2641  "-v 188,raw16 -v 240,msec24hour32"
2642  },
2643  { "Seagate Barracuda 7200.14 (AF)", // different part number, tested with
2644  // ST1000DM003-1CH162/CC47, ST1000DM003-1CH162/CC49, ST2000DM001-1CH164/CC24,
2645  // ST1000DM000-9TS15E/CC92
2646  "ST(1000|1500|2000|2500|3000)DM00[0-3]-.*",
2647  "", "",
2648  "-v 188,raw16 -v 240,msec24hour32"
2649  },
2650  { "Seagate Barracuda 7200.14 (AF)", // < 1TB, tested with ST250DM000-1BC141
2651  "ST(250|320|500|750)DM00[0-3]-.*",
2652  "", "",
2653  "-v 188,raw16 -v 240,msec24hour32"
2654  },
2655  { "Seagate Desktop HDD.15", // tested with ST4000DM000-1CD168/CC43
2656  "ST4000DM000-.*",
2657  "", "",
2658  "-v 188,raw16 -v 240,msec24hour32"
2659  },
2660  { "Seagate Desktop SSHD", // tested with ST2000DX001-1CM164/CC43
2661  "ST(1000|2000|4000)DX001-.*",
2662  "", "",
2663  "-v 188,raw16 -v 240,msec24hour32"
2664  },
2665  { "Seagate Barracuda LP", // new firmware
2666  "ST3(500412|1000520|1500541|2000542)AS",
2667  "CC3[5-9A-Z]",
2668  "",
2669  "" // -F xerrorlba ?
2670  },
2671  { "Seagate Barracuda LP", // unknown firmware
2672  "ST3(500412|1000520|1500541|2000542)AS",
2673  "",
2674  "A firmware update for this drive may be available,\n"
2675  "see the following Seagate web pages:\n"
2676  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
2677  "http://knowledge.seagate.com/articles/en_US/FAQ/213915en",
2678  "-F xerrorlba" // tested with ST31000520AS/CC32
2679  },
2680  { "Seagate Barracuda Green (AF)", // new firmware
2681  "ST((10|15|20)00DL00[123])-.*",
2682  "CC(3[2-9A-Z]|[4-9A-Z]..*)", // >= "CC32"
2683  "", ""
2684  },
2685  { "Seagate Barracuda Green (AF)", // unknown firmware
2686  "ST((10|15|20)00DL00[123])-.*",
2687  "",
2688  "A firmware update for this drive may be available,\n"
2689  "see the following Seagate web pages:\n"
2690  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
2691  "http://knowledge.seagate.com/articles/en_US/FAQ/218171en",
2692  ""
2693  },
2694  { "Seagate Barracuda ES",
2695  "ST3(250[68]2|32062|40062|50063|75064)0NS",
2696  "", "", ""
2697  },
2698  { "Seagate Barracuda ES.2", // fixed firmware
2699  "ST3(25031|50032|75033|100034)0NS",
2700  "SN[01]6|" // http://knowledge.seagate.com/articles/en_US/FAQ/207963en
2701  "MA(0[^7]|[^0].)", // http://dellfirmware.seagate.com/dell_firmware/DellFirmwareRequest.jsp
2702  "",
2703  "-F xerrorlba" // tested with ST31000340NS/SN06
2704  },
2705  { "Seagate Barracuda ES.2", // buggy firmware (Dell)
2706  "ST3(25031|50032|75033|100034)0NS",
2707  "MA07",
2708  "There are known problems with these drives,\n"
2709  "AND THIS FIRMWARE VERSION IS AFFECTED,\n"
2710  "see the following Seagate web page:\n"
2711  "http://dellfirmware.seagate.com/dell_firmware/DellFirmwareRequest.jsp",
2712  ""
2713  },
2714  { "Seagate Barracuda ES.2", // unknown firmware
2715  "ST3(25031|50032|75033|100034)0NS",
2716  "",
2717  "There are known problems with these drives,\n"
2718  "see the following Seagate web pages:\n"
2719  "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
2720  "http://knowledge.seagate.com/articles/en_US/FAQ/207963en",
2721  ""
2722  },
2723  { "Seagate Constellation (SATA)", // tested with ST9500530NS/SN03
2724  "ST9(160511|500530)NS",
2725  "", "", ""
2726  },
2727  { "Seagate Constellation ES (SATA)", // tested with ST31000524NS/SN11
2728  "ST3(50051|100052|200064)4NS",
2729  "", "", ""
2730  },
2731  { "Seagate Constellation ES (SATA 6Gb/s)", // tested with ST1000NM0011/SN02
2732  "ST(5|10|20)00NM0011",
2733  "", "", ""
2734  },
2735  { "Seagate Constellation ES.2 (SATA 6Gb/s)", // tested with ST32000645NS/0004, ST33000650NS,
2736  // MB3000EBKAB/HPG6
2737  "ST3(2000645|300065[012])NS|"
2738  "MB3000EBKAB", // HP OEM
2739  "", "", ""
2740  },
2741  { "Seagate Constellation ES.3", // tested with ST1000NM0033-9ZM173/0001, ST4000NM0033-9ZM170/SN03
2742  "ST[1234]000NM00[35]3-.*",
2743  "", "", ""
2744  },
2745  { "Seagate Constellation CS", // tested with ST3000NC000/CE02, ST3000NC002-1DY166/CN02
2746  "ST(1000|2000|3000)NC00[0-3](-.*)?",
2747  "", "", ""
2748  },
2749  { "Seagate Constellation.2 (SATA)", // 2.5", tested with ST91000640NS/SN02, MM1000GBKAL/HPGB
2750  "ST9(25061|50062|100064)[012]NS|" // *SS = SAS
2751  "MM1000GBKAL", // HP OEM
2752  "", "", ""
2753  },
2754  { "Seagate Enterprise Capacity 3.5 HDD", // tested with ST6000NM0024-1HT17Z/SN02
2755  "ST[2456]000NM0[01][248]4-.*", // *[069]4 = 4Kn
2756  "", "", ""
2757  },
2758  { "Seagate NAS HDD", // tested with ST2000VN000-1H3164/SC42, ST3000VN000-1H4167/SC43
2759  "ST[234]000VN000-.*",
2760  "", "", ""
2761  },
2762  { "Seagate Archive HDD", // tested with ST8000AS0002-1NA17Z/AR13
2763  "ST[568]000AS00[01][12]-.*",
2764  "", "", ""
2765  },
2766  { "Seagate Pipeline HD 5900.1",
2767  "ST3(160310|320[34]10|500(321|422))CS",
2768  "", "", ""
2769  },
2770  { "Seagate Pipeline HD 5900.2", // tested with ST31000322CS/SC13
2771  "ST3(160316|250[34]12|320(311|413)|500(312|414)|1000(322|424))CS",
2772  "", "", ""
2773  },
2774  { "Seagate Video 3.5 HDD", // tested with ST4000VM000-1F3168/SC23, SC25
2775  "ST(10|15|20|30|40)00VM00[023]-.*",
2776  "", "", ""
2777  },
2778  { "Seagate Medalist 17240, 13030, 10231, 8420, and 4310",
2779  "ST3(17240|13030|10231|8420|4310)A",
2780  "", "", ""
2781  },
2782  { "Seagate Medalist 17242, 13032, 10232, 8422, and 4312",
2783  "ST3(1724|1303|1023|842|431)2A",
2784  "", "", ""
2785  },
2786  { "Seagate NL35",
2787  "ST3(250623|250823|400632|400832|250824|250624|400633|400833|500641|500841)NS",
2788  "", "", ""
2789  },
2790  { "Seagate SV35.2",
2791  "ST3(160815|250820|320620|500630|750640)[AS]V",
2792  "", "", ""
2793  },
2794  { "Seagate SV35.5", // tested with ST31000525SV/CV12
2795  "ST3(250311|500410|1000525)SV",
2796  "", "", ""
2797  },
2798  { "Seagate SV35", // tested with ST2000VX000-9YW164/CV12
2799  "ST([123]000VX00[20]|31000526SV|3500411SV)(-.*)?",
2800  "", "", ""
2801  },
2802  { "Seagate DB35", // tested with ST3250823ACE/3.03
2803  "ST3(200826|250823|300831|400832)ACE",
2804  "", "", ""
2805  },
2806  { "Seagate DB35.2", // tested with ST3160212SCE/3.ACB
2807  "ST3(802110|120213|160212|200827|250824|300822|400833|500841)[AS]CE",
2808  "", "", ""
2809  },
2810  { "Seagate DB35.3",
2811  "ST3(750640SCE|((80|160)215|(250|320|400)820|500830|750840)[AS]CE)",
2812  "", "", ""
2813  },
2814  { "Seagate LD25.2", // tested with ST940210AS/3.ALC
2815  "ST9(40|80)210AS?",
2816  "", "", ""
2817  },
2818  { "Seagate ST1.2 CompactFlash", // tested with ST68022CF/3.01
2819  "ST6[468]022CF",
2820  "", "", ""
2821  },
2822  { "Western Digital Protege",
2823  /* Western Digital drives with this comment all appear to use Attribute 9 in
2824  * a non-standard manner. These entries may need to be updated when it
2825  * is understood exactly how Attribute 9 should be interpreted.
2826  * UPDATE: this is probably explained by the WD firmware bug described in the
2827  * smartmontools FAQ */
2828  "WDC WD([2468]00E|1[26]00A)B-.*",
2829  "", "", ""
2830  },
2831  { "Western Digital Caviar",
2832  /* Western Digital drives with this comment all appear to use Attribute 9 in
2833  * a non-standard manner. These entries may need to be updated when it
2834  * is understood exactly how Attribute 9 should be interpreted.
2835  * UPDATE: this is probably explained by the WD firmware bug described in the
2836  * smartmontools FAQ */
2837  "WDC WD(2|3|4|6|8|10|12|16|18|20|25)00BB-.*",
2838  "", "", ""
2839  },
2840  { "Western Digital Caviar WDxxxAB",
2841  /* Western Digital drives with this comment all appear to use Attribute 9 in
2842  * a non-standard manner. These entries may need to be updated when it
2843  * is understood exactly how Attribute 9 should be interpreted.
2844  * UPDATE: this is probably explained by the WD firmware bug described in the
2845  * smartmontools FAQ */
2846  "WDC WD(3|4|6|8|25)00AB-.*",
2847  "", "", ""
2848  },
2849  { "Western Digital Caviar WDxxxAA",
2850  /* Western Digital drives with this comment all appear to use Attribute 9 in
2851  * a non-standard manner. These entries may need to be updated when it
2852  * is understood exactly how Attribute 9 should be interpreted.
2853  * UPDATE: this is probably explained by the WD firmware bug described in the
2854  * smartmontools FAQ */
2855  "WDC WD...?AA(-.*)?",
2856  "", "", ""
2857  },
2858  { "Western Digital Caviar WDxxxBA",
2859  /* Western Digital drives with this comment all appear to use Attribute 9 in
2860  * a non-standard manner. These entries may need to be updated when it
2861  * is understood exactly how Attribute 9 should be interpreted.
2862  * UPDATE: this is probably explained by the WD firmware bug described in the
2863  * smartmontools FAQ */
2864  "WDC WD...BA",
2865  "", "", ""
2866  },
2867  { "Western Digital Caviar AC", // add only 5400rpm/7200rpm (ata33 and faster)
2868  "WDC AC((116|121|125|225|132|232)|([1-4][4-9][0-9])|([1-4][0-9][0-9][0-9]))00[A-Z]?.*",
2869  "", "", ""
2870  },
2871  { "Western Digital Caviar SE",
2872  /* Western Digital drives with this comment all appear to use Attribute 9 in
2873  * a non-standard manner. These entries may need to be updated when it
2874  * is understood exactly how Attribute 9 should be interpreted.
2875  * UPDATE: this is probably explained by the WD firmware bug described in the
2876  * smartmontools FAQ
2877  * UPDATE 2: this does not apply to more recent models, at least WD3200AAJB */
2878  "WDC WD(4|6|8|10|12|16|18|20|25|30|32|40|50)00(JB|PB)-.*",
2879  "", "", ""
2880  },
2881  { "Western Digital Caviar Blue EIDE", // WD Caviar SE EIDE
2882  /* not completely accurate: at least also WD800JB, WD(4|8|20|25)00BB sold as Caviar Blue */
2883  "WDC WD(16|25|32|40|50)00AAJB-.*",
2884  "", "", ""
2885  },
2886  { "Western Digital Caviar Blue EIDE", // WD Caviar SE16 EIDE
2887  "WDC WD(25|32|40|50)00AAKB-.*",
2888  "", "", ""
2889  },
2890  { "Western Digital RE EIDE",
2891  "WDC WD(12|16|25|32)00SB-.*",
2892  "", "", ""
2893  },
2894  { "Western Digital Caviar Serial ATA",
2895  "WDC WD(4|8|20|32)00BD-.*",
2896  "", "", ""
2897  },
2898  { "Western Digital Caviar SE Serial ATA", // tested with WDC WD3000JD-98KLB0/08.05J08
2899  "WDC WD(4|8|12|16|20|25|30|32|40)00(JD|KD|PD)-.*",
2900  "", "", ""
2901  },
2902  { "Western Digital Caviar SE Serial ATA",
2903  "WDC WD(8|12|16|20|25|30|32|40|50)00JS-.*",
2904  "", "", ""
2905  },
2906  { "Western Digital Caviar SE16 Serial ATA",
2907  "WDC WD(16|20|25|32|40|50|75)00KS-.*",
2908  "", "", ""
2909  },
2910  { "Western Digital Caviar Blue Serial ATA", // WD Caviar SE Serial ATA
2911  /* not completely accurate: at least also WD800BD, (4|8)00JD sold as Caviar Blue */
2912  "WDC WD((8|12|16|25|32)00AABS|(8|12|16|25|32|40|50)00AAJS)-.*",
2913  "", "", ""
2914  },
2915  { "Western Digital Caviar Blue (SATA)", // WD Caviar SE16 Serial ATA
2916  // tested with WD1602ABKS-18N8A0/DELL/02.03B04
2917  "WDC WD((16|20|25|32|40|50|64|75)00AAKS|1602ABKS|10EALS)-.*",
2918  "", "", ""
2919  },
2920  { "Western Digital Blue", // tested with WDC WD5000AZLX-00K4KA0/80.00A80,
2921  // WDC WD10EZEX-00RKKA0/80.00A80, WDC WD10EZEX-75M2NA0/01.01A01
2922  "WDC WD((25|32|50)00AAK|5000AZL|7500AAL|10EAL|10EZE)X-.*",
2923  "", "", ""
2924  },
2925  { "Western Digital RE Serial ATA",
2926  "WDC WD(12|16|25|32)00(SD|YD|YS)-.*",
2927  "", "", ""
2928  },
2929  { "Western Digital RE2 Serial ATA",
2930  "WDC WD((40|50|75)00(YR|YS|AYYS)|(16|32|40|50)0[01]ABYS)-.*",
2931  "", "", ""
2932  },
2933  { "Western Digital RE2-GP",
2934  "WDC WD(5000AB|7500AY|1000FY)PS-.*",
2935  "", "", ""
2936  },
2937  { "Western Digital RE3 Serial ATA", // tested with WDC WD7502ABYS-02A6B0/03.00C06
2938  "WDC WD((25|32|50|75)02A|(75|10)02F)BYS-.*",
2939  "", "", ""
2940  },
2941  { "Western Digital RE4", // tested with WDC WD2003FYYS-18W0B0/01.01D02,
2942  // WDC WD1003FBYZ-010FB0/01.01V03
2943  "WDC WD((25|50)03ABYX|1003FBY[XZ]|(15|20)03FYYS)-.*",
2944  "", "", ""
2945  },
2946  { "Western Digital RE4-GP", // tested with WDC WD2002FYPS-02W3B0/04.01G01
2947  "WDC WD2002FYPS-.*",
2948  "", "", ""
2949  },
2950  { "Western Digital RE4 (SATA 6Gb/s)", // tested with WDC WD2000FYYZ-01UL1B0/01.01K01,
2951  // WD2000FYYX/00.0D1K2
2952  "WDC WD(20|30|40)00FYYZ-.*|WD2000FYYX",
2953  "", "", ""
2954  },
2955  { "Western Digital Se", // tested with WDC WD2000F9YZ-09N20L0/01.01A01
2956  "WDC WD(1002|2000|3000|4000)F9YZ-.*",
2957  "", "", ""
2958  },
2959  { "Western Digital Caviar Green",
2960  "WDC WD((50|64|75)00AA(C|V)S|(50|64|75)00AADS|10EA(C|V)S|(10|15|20)EADS)-.*",
2961  "",
2962  "",
2963  "-F xerrorlba" // tested with WDC WD7500AADS-00M2B0/01.00A01
2964  },
2965  { "Western Digital Caviar Green (AF)",
2966  "WDC WD(((64|75|80)00AA|(10|15|20)EA|(25|30)EZ)R|20EAC)S-.*",
2967  "", "", ""
2968  },
2969  { "Western Digital Green", // tested with
2970  // WDC WD10EZRX-00A8LB0/01.01A01, WDC WD20EZRX-00DC0B0/80.00A80,
2971  // WDC WD30EZRX-00MMMB0/80.00A80, WDC WD40EZRX-00SPEB0/80.00A80,
2972  // WDC WD60EZRX-00MVLB1/80.00A80
2973  "WDC WD(7500AA|(10|15|20)EA|(10|20|25|30|40|50|60)EZ)RX-.*",
2974  "", "", ""
2975  },
2976  { "Western Digital Caviar Black",
2977  "WDC WD((500|640|750)1AAL|1001FA[EL]|2001FAS)S-.*",
2978  "", "", ""
2979  },
2980  { "Western Digital Black", // tested with
2981  // WDC WD5003AZEX-00RKKA0/80.00A80, WDC WD1003FZEX-00MK2A0/01.01A01,
2982  // WDC WD3001FAEX-00MJRA0/01.01L01, WDC WD4001FAEX-00MJRA0/01.01L01
2983  "WDC WD(5002AAL|5003AZE|(64|75)02AAE|((10|15|20)0[23]|[34]001)F[AZ]E)X-.*",
2984  "", "", ""
2985  },
2986  { "Western Digital AV ATA", // tested with WDC WD3200AVJB-63J5A0/01.03E01
2987  "WDC WD(8|16|25|32|50)00AV[BJ]B-.*",
2988  "", "", ""
2989  },
2990  { "Western Digital AV SATA",
2991  "WDC WD(16|25|32)00AVJS-.*",
2992  "", "", ""
2993  },
2994  { "Western Digital AV-GP",
2995  "WDC WD((16|25|32|50|64|75)00AV[CDV]S|(10|15|20)EV[CDV]S)-.*",
2996  "", "", ""
2997  },
2998  { "Western Digital AV-GP (AF)", // tested with WDC WD10EURS-630AB1/80.00A80,
2999  // WDC WD10EUCX-63YZ1Y0/51.0AB52, WDC WD20EURX-64HYZY0/80.00A80
3000  "WDC WD(5000AUDX|7500AURS|10EUCX|(10|15|20|25|30)EUR[SX])-.*",
3001  "", "", ""
3002  },
3003  { "Western Digital AV", // tested with DC WD10JUCT-63CYNY0/01.01A01
3004  "WDC WD((16|25|32|50)00BU[CD]|5000LUC|10JUC)T-.*",
3005  "", "", ""
3006  },
3007  { "Western Digital Raptor",
3008  "WDC WD((360|740|800)GD|(360|740|800|1500)ADF[DS])-.*",
3009  "", "", ""
3010  },
3011  { "Western Digital Raptor X",
3012  "WDC WD1500AHFD-.*",
3013  "", "", ""
3014  },
3015  { "Western Digital VelociRaptor", // tested with WDC WD1500HLHX-01JJPV0/04.05G04
3016  "WDC WD(((800H|(1500|3000)[BH]|1600H|3000G)LFS)|((1500|3000|4500|6000)[BH]LHX))-.*",
3017  "", "", ""
3018  },
3019  { "Western Digital VelociRaptor (AF)", // tested with WDC WD1000DHTZ-04N21V0/04.06A00
3020  "WDC WD(2500H|5000H|1000D)HTZ-.*",
3021  "", "", ""
3022  },
3023  { "Western Digital Scorpio EIDE",
3024  "WDC WD(4|6|8|10|12|16)00(UE|VE)-.*",
3025  "", "", ""
3026  },
3027  { "Western Digital Scorpio Blue EIDE", // tested with WDC WD3200BEVE-00A0HT0/11.01A11
3028  "WDC WD(4|6|8|10|12|16|25|32)00BEVE-.*",
3029  "", "", ""
3030  },
3031  { "Western Digital Scorpio Serial ATA",
3032  "WDC WD(4|6|8|10|12|16|25)00BEAS-.*",
3033  "", "", ""
3034  },
3035  { "Western Digital Scorpio Blue Serial ATA",
3036  "WDC WD((4|6|8|10|12|16|25)00BEVS|(8|12|16|25|32|40|50|64)00BEVT|7500KEVT|10TEVT)-.*",
3037  "", "", ""
3038  },
3039  { "Western Digital Scorpio Blue Serial ATA (AF)", // tested with
3040  // WDC WD10JPVT-00A1YT0/01.01A01
3041  "WDC WD((16|25|32|50|64|75)00BPVT|10[JT]PVT)-.*",
3042  "", "", ""
3043  },
3044  { "Western Digital Scorpio Black", // tested with WDC WD5000BEKT-00KA9T0/01.01A01
3045  "WDC WD(8|12|16|25|32|50)00B[EJ]KT-.*",
3046  "", "", ""
3047  },
3048  { "Western Digital Scorpio Black (AF)",
3049  "WDC WD(50|75)00BPKT-.*",
3050  "", "", ""
3051  },
3052  { "Western Digital Red", // tested with WDC WD10EFRX-68JCSN0/01.01A01,
3053  // WDC WD10JFCX-68N6GN0/01.01A01, WDC WD40EFRX-68WT0N0/80.00A80,
3054  // WDC WD60EFRX-68MYMN1/82.00A82
3055  "WDC WD(7500BFC|10JFC|(10|20|30|40|50|60)EFR)X-.*",
3056  "", "", ""
3057  },
3058  { "Western Digital Red Pro", // tested with WDC WD2001FFSX-68JNUN0/81.00A81
3059  "WDC WD[234]001FFSX-.*",
3060  "", "", ""
3061  },
3062  { "Western Digital Purple", // tested with WDC WD40PURX-64GVNY0/80.00A80
3063  "WDC WD[123456]0PURX-.*",
3064  "", "", ""
3065  },
3066  { "Western Digital Blue Mobile", // tested with WDC WD5000LPVX-08V0TT2/03.01A03
3067  "WDC WD((25|32|50|75)00[BLM]|10[JS])P[CV][TX]-.*",
3068  "", "", ""
3069  },
3070  { "Western Digital Green Mobile", // tested with WDC WD20NPVX-00EA4T0/01.01A01
3071  "WDC WD(15|20)NPV[TX]-.*",
3072  "", "", ""
3073  },
3074  { "Western Digital Black Mobile", // tested with WDC WD7500BPKX-22HPJT0/01.01A01
3075  "WDC WD((16|25|32)00BE|(50|75)00BP)KX-.*",
3076  "", "", ""
3077  },
3078  { "Western Digital Elements / My Passport (USB)", // tested with WDC WD5000BMVW-11AMCS0/01.01A01
3079  "WDC WD(25|32|40|50)00BMV[UVW]-.*", // *W-* = USB 3.0
3080  "", "", ""
3081  },
3082  { "Western Digital Elements / My Passport (USB, AF)", // tested with
3083  // WDC WD5000KMVV-11TK7S1/01.01A01, WDC WD10TMVW-11ZSMS5/01.01A01,
3084  // WDC WD10JMVW-11S5XS1/01.01A01, WDC WD20NMVW-11W68S0/01.01A01
3085  "WDC WD(5000[LK]|7500K|10[JT]|20N)MV[VW]-.*", // *W-* = USB 3.0
3086  "", "", ""
3087  },
3088  { "Quantum Bigfoot", // tested with TS10.0A/A21.0G00, TS12.7A/A21.0F00
3089  "QUANTUM BIGFOOT TS(10\\.0|12\\.7)A",
3090  "", "", ""
3091  },
3092  { "Quantum Fireball lct15",
3093  "QUANTUM FIREBALLlct15 ([123]0|22)",
3094  "", "", ""
3095  },
3096  { "Quantum Fireball lct20",
3097  "QUANTUM FIREBALLlct20 [1234]0",
3098  "", "", ""
3099  },
3100  { "Quantum Fireball CX",
3101  "QUANTUM FIREBALL CX10.2A",
3102  "", "", ""
3103  },
3104  { "Quantum Fireball CR",
3105  "QUANTUM FIREBALL CR(4.3|6.4|8.4|13.0)A",
3106  "", "", ""
3107  },
3108  { "Quantum Fireball EX", // tested with QUANTUM FIREBALL EX10.2A/A0A.0D00
3109  "QUANTUM FIREBALL EX(3\\.2|6\\.4|10\\.2)A",
3110  "", "", ""
3111  },
3112  { "Quantum Fireball ST",
3113  "QUANTUM FIREBALL ST(3.2|4.3|4300)A",
3114  "", "", ""
3115  },
3116  { "Quantum Fireball SE",
3117  "QUANTUM FIREBALL SE4.3A",
3118  "", "", ""
3119  },
3120  { "Quantum Fireball Plus LM",
3121  "QUANTUM FIREBALLP LM(10.2|15|20.[45]|30)",
3122  "", "", ""
3123  },
3124  { "Quantum Fireball Plus AS",
3125  "QUANTUM FIREBALLP AS(10.2|20.5|30.0|40.0|60.0)",
3126  "", "", ""
3127  },
3128  { "Quantum Fireball Plus KX",
3129  "QUANTUM FIREBALLP KX27.3",
3130  "", "", ""
3131  },
3132  { "Quantum Fireball Plus KA",
3133  "QUANTUM FIREBALLP KA(9|10).1",
3134  "", "", ""
3135  },
3136 
3137  ////////////////////////////////////////////////////
3138  // USB ID entries
3139  ////////////////////////////////////////////////////
3140 
3141  // 0x0350 (?)
3142  { "USB: ViPowER USB3.0 Storage; ",
3143  "0x0350:0x0038",
3144  "", // 0x1905
3145  "",
3146  "-d sat,12" // ATA output registers missing
3147  },
3148  // Hewlett-Packard
3149  { "USB: HP Desktop HD BD07; ", // 2TB
3150  "0x03f0:0xbd07",
3151  "",
3152  "",
3153  "-d sat"
3154  },
3155  // ALi
3156  { "USB: ; ALi M5621", // USB->PATA
3157  "0x0402:0x5621",
3158  "",
3159  "",
3160  "" // unsupported
3161  },
3162  // VIA
3163  { "USB: Connectland BE-USB2-35BP-LCM; VIA VT6204",
3164  "0x040d:0x6204",
3165  "",
3166  "",
3167  "" // unsupported
3168  },
3169  // Buffalo / Melco
3170  { "USB: Buffalo JustStore Portable HD-PVU2; ",
3171  "0x0411:0x0181",
3172  "",
3173  "",
3174  "-d sat"
3175  },
3176  { "USB: Buffalo Drivestation Duo; ",
3177  "0x0411:0x01ce",
3178  "",
3179  "",
3180  "-d sat"
3181  },
3182  { "USB: Buffalo DriveStation HD-LBU2 ; Medialogic MLDU11",
3183  "0x0411:0x01ea",
3184  "",
3185  "",
3186  "-d sat"
3187  },
3188  { "USB: Buffalo MiniStation Stealth HD-PCTU2; ",
3189  "0x0411:0x01d9",
3190  "", // 0x0108
3191  "",
3192  "-d sat"
3193  },
3194  { "USB: Buffalo MiniStationHD-PCFU3; ",
3195  "0x0411:0x0240",
3196  "",
3197  "",
3198  "-d sat"
3199  },
3200  // LG Electronics
3201  { "USB: LG Mini HXD5; JMicron",
3202  "0x043e:0x70f1",
3203  "", // 0x0100
3204  "",
3205  "-d usbjmicron"
3206  },
3207  // Philips
3208  { "USB: Philips; ", // SDE3273FC/97 2.5" SATA HDD enclosure
3209  "0x0471:0x2021",
3210  "", // 0x0103
3211  "",
3212  "-d sat"
3213  },
3214  // Toshiba
3215  { "USB: Toshiba Stor.E Slim USB 3.0; ", // TOSHIBA MQ01UBD100
3216  "0x0480:0x0100",
3217  "", // 0x0000
3218  "",
3219  "-d sat"
3220  },
3221  { "USB: Toshiba Canvio Basics; ", // TOSHIBA MQ01UBD100
3222  "0x0480:0x0201",
3223  "",
3224  "",
3225  "-d sat"
3226  },
3227  { "USB: Toshiba Canvio 500GB; SunPlus",
3228  "0x0480:0xa004",
3229  "",
3230  "",
3231  "-d usbsunplus"
3232  },
3233  { "USB: Toshiba Canvio Basics; ",
3234  "0x0480:0xa00[6d]",
3235  "", // 0x0001, 0x0407
3236  "",
3237  "-d sat"
3238  },
3239  { "USB: Toshiba Canvio 3.0 Portable Hard Drive; ", // TOSHIBA MQ01UBD050
3240  "0x0480:0xa007",
3241  "", // 0x0001
3242  "",
3243  "-d sat"
3244  },
3245  { "USB: Toshiba Stor.E Basics; ",
3246  "0x0480:0xa00[9ce]",
3247  "", // 0x0000 (0xa00e)
3248  "",
3249  "-d sat"
3250  },
3251  { "USB: Toshiba Stor.E Plus", // 2TB
3252  "0x0480:0xa00a",
3253  "",
3254  "",
3255  "-d sat"
3256  },
3257  { "USB: Toshiba Canvio ALU; ", // TOSHIBA MQ01UBB200
3258  "0x0480:0xa100",
3259  "",
3260  "",
3261  "-d sat"
3262  },
3263  { "USB: Toshiba Canvio Desktop; ",
3264  "0x0480:0xd0(00|10|11)",
3265  "", // 0x0316 (0xd011)
3266  "",
3267  "-d sat"
3268  },
3269  // Cypress
3270  { "USB: ; Cypress CY7C68300A (AT2)",
3271  "0x04b4:0x6830",
3272  "0x0001",
3273  "",
3274  "" // unsupported
3275  },
3276  { "USB: ; Cypress CY7C68300B/C (AT2LP)",
3277  "0x04b4:0x6830",
3278  "0x0240",
3279  "",
3280  "-d usbcypress"
3281  },
3282  // Fujitsu
3283  { "USB: Fujitsu/Zalman ZM-VE300; ", // USB 3.0
3284  "0x04c5:0x2028",
3285  "", // 0x0001
3286  "",
3287  "-d sat"
3288  },
3289  // Fujitsu chip on DeLock 42475
3290  { "USB: Fujitsu SATA-to-USB3.0 bridge chip", // USB 3.0
3291  "0x04c5:0x201d",
3292  "", // 0x0001
3293  "",
3294  "-d sat"
3295  },
3296  // Myson Century
3297  { "USB: ; Myson Century CS8818",
3298  "0x04cf:0x8818",
3299  "", // 0xb007
3300  "",
3301  "" // unsupported
3302  },
3303  // Samsung
3304  { "USB: Samsung S2 Portable; JMicron",
3305  "0x04e8:0x1f0[568a]", // 0x1f0a: SAMSUNG HN-M101XBB
3306  "",
3307  "",
3308  "-d usbjmicron" // 0x1f0a: works also with "-d sat"
3309  },
3310  { "USB: Samsung S1 Portable; JMicron",
3311  "0x04e8:0x2f03",
3312  "",
3313  "",
3314  "-d usbjmicron"
3315  },
3316  { "USB: Samsung Story Station; ",
3317  "0x04e8:0x5f0[56]",
3318  "",
3319  "",
3320  "-d sat"
3321  },
3322  { "USB: Samsung G2 Portable; JMicron",
3323  "0x04e8:0x6032",
3324  "",
3325  "",
3326  "-d usbjmicron"
3327  },
3328  { "USB: Samsung Story Station 3.0; ",
3329  "0x04e8:0x6052",
3330  "",
3331  "",
3332  "-d sat"
3333  },
3334  { "USB: Samsung Story Station 3.0; ",
3335  "0x04e8:0x6054",
3336  "",
3337  "",
3338  "-d sat"
3339  },
3340  { "USB: Samsung M2 Portable 3.0; ",
3341  "0x04e8:0x60c5",
3342  "",
3343  "",
3344  "-d sat"
3345  },
3346  { "USB: Samsung D3 Station; ",
3347  "0x04e8:0x612[45]", // 3TB, 4TB
3348  "", // 0x200, 0x202
3349  "",
3350  "-d sat"
3351  },
3352  { "USB: Samsung M3 Portable USB 3.0; ", // 1.5/2TB: SpinPoint M9TU
3353  "0x04e8:0x61b[3456]", // 500MB, 2TB, 1.5TB, 1TB
3354  "", // 0x0e00
3355  "",
3356  "-d sat"
3357  },
3358  { "USB: Samsung S3 Portable; ",
3359  "0x04e8:0x61c8", // ST1000LM025 HN-M101ABB
3360  "", // 0x1301
3361  "",
3362  "-d sat"
3363  },
3364  // Sunplus
3365  { "USB: ; SunPlus",
3366  "0x04fc:0x0c05",
3367  "",
3368  "",
3369  "-d usbsunplus"
3370  },
3371  { "USB: ; SunPlus SPDIF215",
3372  "0x04fc:0x0c15",
3373  "", // 0xf615
3374  "",
3375  "-d usbsunplus"
3376  },
3377  { "USB: ; SunPlus SPDIF225", // USB+SATA->SATA
3378  "0x04fc:0x0c25",
3379  "", // 0x0103
3380  "",
3381  "-d usbsunplus"
3382  },
3383  // Iomega
3384  { "USB: Iomega Prestige Desktop USB 3.0; ",
3385  "0x059b:0x0070",
3386  "", // 0x0004
3387  "",
3388  "-d sat" // ATA output registers missing
3389  },
3390  { "USB: Iomega LPHD080-0; ",
3391  "0x059b:0x0272",
3392  "",
3393  "",
3394  "-d usbcypress"
3395  },
3396  { "USB: Iomega MDHD500-U; ",
3397  "0x059b:0x0275",
3398  "", // 0x0001
3399  "",
3400  "" // unsupported
3401  },
3402  { "USB: Iomega MDHD-UE; ",
3403  "0x059b:0x0277",
3404  "",
3405  "",
3406  "-d usbjmicron"
3407  },
3408  { "USB: Iomega LDHD-UP; Sunplus",
3409  "0x059b:0x0370",
3410  "",
3411  "",
3412  "-d usbsunplus"
3413  },
3414  { "USB: Iomega; JMicron",
3415  "0x059b:0x0[45]75", // 0x0475: Iomega GDHDU2 (0x0100), 0x0575: LDHD-UP
3416  "",
3417  "",
3418  "-d usbjmicron"
3419  },
3420  { "USB: Iomega; JMicron",
3421  "0x059b:0x047a",
3422  "", // 0x0100
3423  "",
3424  "-d sat" // works also with "-d usbjmicron"
3425  },
3426  // LaCie
3427  { "USB: LaCie hard disk (FA Porsche design);",
3428  "0x059f:0x0651",
3429  "",
3430  "",
3431  "" // unsupported
3432  },
3433  { "USB: LaCie hard disk; JMicron",
3434  "0x059f:0x0951",
3435  "",
3436  "",
3437  "-d usbjmicron"
3438  },
3439  { "USB: LaCie Rugged Triple Interface; ",
3440  "0x059f:0x100c",
3441  "", // 0x0001
3442  "",
3443  "-d sat"
3444  },
3445  { "USB: LaCie hard disk (Neil Poulton design);",
3446  "0x059f:0x1018",
3447  "",
3448  "",
3449  "-d sat"
3450  },
3451  { "USB: LaCie Desktop Hard Drive; JMicron",
3452  "0x059f:0x1019",
3453  "",
3454  "",
3455  "-d usbjmicron"
3456  },
3457  { "USB: LaCie Rugged Hard Drive; JMicron",
3458  "0x059f:0x101d",
3459  "", // 0x0001
3460  "",
3461  "-d usbjmicron,x"
3462  },
3463  { "USB: LaCie Little Disk USB2; JMicron",
3464  "0x059f:0x1021",
3465  "",
3466  "",
3467  "-d usbjmicron"
3468  },
3469  { "USB: LaCie hard disk; ",
3470  "0x059f:0x1029",
3471  "", // 0x0100
3472  "",
3473  "-d sat"
3474  },
3475  { "USB: Lacie rikiki; JMicron",
3476  "0x059f:0x102a",
3477  "",
3478  "",
3479  "-d usbjmicron,x"
3480  },
3481  { "USB: LaCie rikiki USB 3.0; ",
3482  "0x059f:0x10(49|57)",
3483  "",
3484  "",
3485  "-d sat"
3486  },
3487  { "USB: LaCie minimus USB 3.0; ",
3488  "0x059f:0x104a",
3489  "",
3490  "",
3491  "-d sat"
3492  },
3493  { "USB: LaCie Rugged Mini USB 3.0; ",
3494  "0x059f:0x1051",
3495  "", // 0x0000
3496  "",
3497  "-d sat"
3498  },
3499  // In-System Design
3500  { "USB: ; In-System/Cypress ISD-300A1",
3501  "0x05ab:0x0060",
3502  "", // 0x1101
3503  "",
3504  "-d usbcypress"
3505  },
3506  // Genesys Logic
3507  { "USB: ; Genesys Logic GL881E",
3508  "0x05e3:0x0702",
3509  "",
3510  "",
3511  "" // unsupported
3512  },
3513  { "USB: ; Genesys Logic", // TODO: requires '-T permissive'
3514  "0x05e3:0x0718",
3515  "", // 0x0041
3516  "",
3517  "-d sat"
3518  },
3519  { "USB: ; Genesys Logic GL3310",
3520  "0x05e3:0x0731", // Chieftec USB 3.0 2.5" case
3521  "",
3522  "",
3523  "-d sat"
3524  },
3525  // Micron
3526  { "USB: Micron USB SSD; ",
3527  "0x0634:0x0655",
3528  "",
3529  "",
3530  "" // unsupported
3531  },
3532  // Prolific
3533  { "USB: ; Prolific PL2507", // USB->PATA
3534  "0x067b:0x2507",
3535  "",
3536  "",
3537  "-d usbjmicron,0" // Port number is required
3538  },
3539  { "USB: ; Prolific PL2571/2771/2773/2775", // USB->SATA, USB3->SATA,
3540  "0x067b:0x(2571|277[135])", // USB3+eSATA->SATA, USB3->2xSATA
3541  "",
3542  "",
3543  "-d usbprolific"
3544  },
3545  { "USB: ; Prolific PL3507", // USB+IEE1394->PATA
3546  "0x067b:0x3507",
3547  "", // 0x0001
3548  "",
3549  "-d usbjmicron,p"
3550  },
3551  // Imation
3552  { "USB: Imation ; ", // Imation Odyssey external USB dock
3553  "0x0718:0x1000",
3554  "", // 0x5104
3555  "",
3556  "-d sat"
3557  },
3558  // SanDisk
3559  { "USB: SanDisk SDCZ80 Flash Drive; Fujitsu", // ATA ID: SanDisk pSSD
3560  "0x0781:0x5580",
3561  "",
3562  "",
3563  "-d sat"
3564  },
3565  // Freecom
3566  { "USB: Freecom Mobile Drive XXS; JMicron",
3567  "0x07ab:0xfc88",
3568  "", // 0x0101
3569  "",
3570  "-d usbjmicron,x"
3571  },
3572  { "USB: Freecom Hard Drive XS; Sunplus",
3573  "0x07ab:0xfc8e",
3574  "", // 0x010f
3575  "",
3576  "-d usbsunplus"
3577  },
3578  { "USB: Freecom; ", // Intel labeled
3579  "0x07ab:0xfc8f",
3580  "", // 0x0000
3581  "",
3582  "-d sat"
3583  },
3584  { "USB: Freecom Classic HD 120GB; ",
3585  "0x07ab:0xfccd",
3586  "",
3587  "",
3588  "" // unsupported
3589  },
3590  { "USB: Freecom HD; JMicron", // 500GB
3591  "0x07ab:0xfcd[6a]",
3592  "",
3593  "",
3594  "-d usbjmicron"
3595  },
3596  // Oxford Semiconductor, Ltd
3597  { "USB: ; Oxford",
3598  "0x0928:0x0000",
3599  "",
3600  "",
3601  "" // unsupported
3602  },
3603  { "USB: ; Oxford OXU921DS",
3604  "0x0928:0x0002",
3605  "",
3606  "",
3607  "" // unsupported
3608  },
3609  { "USB: ; Oxford", // Zalman ZM-VE200
3610  "0x0928:0x0010",
3611  "", // 0x0304
3612  "",
3613  "-d sat"
3614  },
3615  // Toshiba
3616  { "USB: Toshiba PX1270E-1G16; Sunplus",
3617  "0x0930:0x0b03",
3618  "",
3619  "",
3620  "-d usbsunplus"
3621  },
3622  { "USB: Toshiba PX1396E-3T01; Sunplus", // similar to Dura Micro 501
3623  "0x0930:0x0b09",
3624  "",
3625  "",
3626  "-d usbsunplus"
3627  },
3628  { "USB: Toshiba Stor.E Steel; Sunplus",
3629  "0x0930:0x0b11",
3630  "",
3631  "",
3632  "-d usbsunplus"
3633  },
3634  { "USB: Toshiba Stor.E; ",
3635  "0x0930:0x0b1[9ab]",
3636  "", // 0x0001
3637  "",
3638  "-d sat"
3639  },
3640  // Lumberg, Inc.
3641  { "USB: Toshiba Stor.E; Sunplus",
3642  "0x0939:0x0b1[56]",
3643  "",
3644  "",
3645  "-d usbsunplus"
3646  },
3647  // Apricorn
3648  { "USB: Apricorn SATA Wire; ",
3649  "0x0984:0x0040",
3650  "",
3651  "",
3652  "-d sat"
3653  },
3654  // Seagate
3655  { "USB: Seagate External Drive; Cypress",
3656  "0x0bc2:0x0503",
3657  "", // 0x0240
3658  "",
3659  "-d usbcypress"
3660  },
3661  { "USB: Seagate FreeAgent Go; ",
3662  "0x0bc2:0x2(000|100|101)",
3663  "",
3664  "",
3665  "-d sat"
3666  },
3667  { "USB: Seagate FreeAgent Go FW; ",
3668  "0x0bc2:0x2200",
3669  "",
3670  "",
3671  "-d sat"
3672  },
3673  { "USB: Seagate Expansion Portable; ",
3674  "0x0bc2:0x23(00|12|20|21)",
3675  "", // 0x0219 (0x2312)
3676  "",
3677  "-d sat"
3678  },
3679  { "USB: Seagate FreeAgent Desktop; ",
3680  "0x0bc2:0x3000",
3681  "",
3682  "",
3683  "-d sat"
3684  },
3685  { "USB: Seagate FreeAgent Desk; ",
3686  "0x0bc2:0x3001",
3687  "",
3688  "",
3689  "-d sat"
3690  },
3691  { "USB: Seagate FreeAgent Desk; ", // 1TB
3692  "0x0bc2:0x3008",
3693  "",
3694  "",
3695  "-d sat,12"
3696  },
3697  { "USB: Seagate FreeAgent XTreme; ",
3698  "0x0bc2:0x3101",
3699  "",
3700  "",
3701  "-d sat"
3702  },
3703  { "USB: Seagate Expansion External; ",
3704  "0x0bc2:0x33(00|12|20|21|32)", // 0x3321: Expansion Desktop 4TB
3705  "",
3706  "",
3707  "-d sat"
3708  },
3709  { "USB: Seagate FreeAgent GoFlex USB 2.0; ",
3710  "0x0bc2:0x502[01]",
3711  "",
3712  "",
3713  "-d sat"
3714  },
3715  { "USB: Seagate FreeAgent GoFlex USB 3.0; ",
3716  "0x0bc2:0x5031",
3717  "",
3718  "",
3719  "-d sat,12"
3720  },
3721  { "USB: Seagate FreeAgent; ",
3722  "0x0bc2:0x5040",
3723  "",
3724  "",
3725  "-d sat"
3726  },
3727  { "USB: Seagate FreeAgent GoFlex USB 3.0; ", // 2TB
3728  "0x0bc2:0x507[01]",
3729  "",
3730  "",
3731  "-d sat"
3732  },
3733  { "USB: Seagate FreeAgent GoFlex Desk USB 3.0; ", // 3TB
3734  "0x0bc2:0x50a1",
3735  "",
3736  "",
3737  "-d sat,12" // "-d sat" does not work (ticket #151)
3738  },
3739  { "USB: Seagate FreeAgent GoFlex Desk USB 3.0; ", // 2TB, 4TB
3740  "0x0bc2:0x50a[57]",
3741  "", // 0x0100
3742  "",
3743  "-d sat"
3744  },
3745  { "USB: Seagate FreeAgent GoFlex Pro for Mac; ",
3746  "0x0bc2:0x6121",
3747  "", // 0x0148
3748  "",
3749  "-d sat"
3750  },
3751  { "USB: Seagate Backup Plus USB 3.0; ", // 1TB
3752  "0x0bc2:0xa0[01]3",
3753  "", // 0x0100
3754  "",
3755  "-d sat"
3756  },
3757  { "USB: Seagate Backup Plus Desktop USB 3.0; ",
3758  "0x0bc2:0xa(0a[14]|b31)", // 4TB, 3TB (8 LBA/1 PBA offset), 5TB
3759  "",
3760  "",
3761  "-d sat"
3762  },
3763  { "USB: Seagate Slim Portable Drive; ", // SRD00F1
3764  "0x0bc2:0xab00",
3765  "",
3766  "",
3767  "-d sat"
3768  },
3769  { "USB: Seagate Backup Plus Slim USB 3.0; ", // (ticket #443)
3770  "0x0bc2:0xab2[14]",
3771  "", // 0x0100
3772  "",
3773  "-d sat"
3774  },
3775  // Dura Micro
3776  { "USB: Dura Micro; Cypress",
3777  "0x0c0b:0xb001",
3778  "", // 0x1110
3779  "",
3780  "-d usbcypress"
3781  },
3782  { "USB: Dura Micro 509; Sunplus",
3783  "0x0c0b:0xb159",
3784  "", // 0x0103
3785  "",
3786  "-d usbsunplus"
3787  },
3788  // Maxtor
3789  { "USB: Maxtor OneTouch 200GB; ",
3790  "0x0d49:0x7010",
3791  "",
3792  "",
3793  "" // unsupported
3794  },
3795  { "USB: Maxtor OneTouch; ",
3796  "0x0d49:0x7300",
3797  "", // 0x0121
3798  "",
3799  "-d sat"
3800  },
3801  { "USB: Maxtor OneTouch 4; ",
3802  "0x0d49:0x7310",
3803  "", // 0x0125
3804  "",
3805  "-d sat"
3806  },
3807  { "USB: Maxtor OneTouch 4 Mini; ",
3808  "0x0d49:0x7350",
3809  "", // 0x0125
3810  "",
3811  "-d sat"
3812  },
3813  { "USB: Maxtor BlackArmor Portable; ",
3814  "0x0d49:0x7550",
3815  "",
3816  "",
3817  "-d sat"
3818  },
3819  { "USB: Maxtor Basics Desktop; ",
3820  "0x0d49:0x7410",
3821  "", // 0x0122
3822  "",
3823  "-d sat"
3824  },
3825  { "USB: Maxtor Basics Portable; ",
3826  "0x0d49:0x7450",
3827  "", // 0x0122
3828  "",
3829  "-d sat"
3830  },
3831  // Oyen Digital
3832  { "USB: Oyen Digital MiniPro USB 3.0; ",
3833  "0x0dc4:0x020a",
3834  "",
3835  "",
3836  "-d sat"
3837  },
3838  // Cowon Systems, Inc.
3839  { "USB: Cowon iAudio X5; ",
3840  "0x0e21:0x0510",
3841  "",
3842  "",
3843  "-d usbcypress"
3844  },
3845  // iRiver
3846  { "USB: iRiver iHP-120/140 MP3 Player; Cypress",
3847  "0x1006:0x3002",
3848  "", // 0x0100
3849  "",
3850  "-d usbcypress"
3851  },
3852  // Western Digital
3853  { "USB: WD My Passport (IDE); Cypress",
3854  "0x1058:0x0701",
3855  "", // 0x0240
3856  "",
3857  "-d usbcypress"
3858  },
3859  { "USB: WD My Passport; ",
3860  "0x1058:0x0(70[245a]|730|74[0128a]|7a8|8[123]0)",
3861  "",
3862  "",
3863  "-d sat"
3864  },
3865  { "USB: WD My Book; ",
3866  "0x1058:0x09(00|06|10)",
3867  "", // 06=0x0012, 10=0x0106
3868  "",
3869  "-d sat"
3870  },
3871  { "USB: WD Elements Desktop; ",
3872  "0x1058:0x10(01|03|21|7c)",
3873  "", // 01=0x0104, 03=0x0175, 21=0x2002, 7c=0x1065
3874  "",
3875  "-d sat"
3876  },
3877  { "USB: WD Elements; ",
3878  "0x1058:0x10(10|23|42|48|a2|a8|b8)",
3879  "", // 10=0x0105, a8=0x1042, b8=0x1007
3880  "",
3881  "-d sat"
3882  },
3883  { "USB: WD My Book; ",
3884  "0x1058:0x11(00|01|02|04|05|10|30|40)",
3885  "", // 00/01=0x0165, 02=0x1028, 10=0x1030, 30=0x1012, 40=0x1003
3886  "",
3887  "-d sat"
3888  },
3889  // Atech Flash Technology
3890  { "USB: ; Atech", // Enclosure from Kingston SSDNow notebook upgrade kit
3891  "0x11b0:0x6298",
3892  "", // 0x0108
3893  "",
3894  "-d sat"
3895  },
3896  // ADATA
3897  { "USB: ADATA; ",
3898  "0x125f:0xa(11|31|35)a", // 0xa11a: Classic CH11 1TB, 0xa31a: HV620 2TB (0x0100)
3899  "", // 0xa35a: HD650 2TB (0x6503)
3900  "",
3901  "-d sat"
3902  },
3903  { "USB: ADATA; Cypress",
3904  "0x125f:0xa9[34]a", // 0xa93a: SH93 (0x0150)
3905  "",
3906  "",
3907  "-d usbcypress"
3908  },
3909  // Initio
3910  { "USB: ; Initio 316000",
3911  "0x13fd:0x0540",
3912  "",
3913  "",
3914  "" // unsupported
3915  },
3916  { "USB: ; Initio", // Thermaltake BlacX
3917  "0x13fd:0x0840",
3918  "",
3919  "",
3920  "-d sat"
3921  },
3922  { "USB: ; Initio", // USB->SATA+PATA, Chieftec CEB-25I
3923  "0x13fd:0x1040",
3924  "", // 0x0106
3925  "",
3926  "" // unsupported
3927  },
3928  { "USB: ; Initio 6Y120L0", // CoolerMaster XCraft RX-3HU
3929  "0x13fd:0x1150",
3930  "",
3931  "",
3932  "" // unsupported
3933  },
3934  { "USB: ; Initio", // USB->SATA
3935  "0x13fd:0x1240",
3936  "", // 0x0104
3937  "",
3938  "-d sat"
3939  },
3940  { "USB: ; Initio", // USB+SATA->SATA
3941  "0x13fd:0x1340",
3942  "", // 0x0208
3943  "",
3944  "-d sat"
3945  },
3946  { "USB: ; Initio",
3947  "0x13fd:0x1640",
3948  "", // 0x0864
3949  "",
3950  "-d sat,12" // some SMART commands fail, see ticket #295
3951  },
3952  { "USB: Intenso Memory Station 2,5\"; Initio",
3953  "0x13fd:0x1840",
3954  "",
3955  "",
3956  "-d sat"
3957  },
3958  { "USB: ; Initio", // NexStar CX USB enclosure
3959  "0x13fd:0x1e40",
3960  "",
3961  "",
3962  "-d sat"
3963  },
3964  { "USB: ; Initio",
3965  "0x13fd:0x39[14]0", // 0x3910: Seagate Expansion Portable SRD00F1 (0x0100)
3966  "", // 0x3940: MS-TECH LU-275S (0x0306)
3967  "",
3968  "-d sat"
3969  },
3970  // Super Top
3971  { "USB: Super Top generic enclosure; ",
3972  "0x14cd:0x6116",
3973  "", // 0x0150, older report suggests -d usbcypress
3974  "", // 0x0160 also reported as unsupported
3975  "-d sat"
3976  },
3977  // JMicron
3978  { "USB: ; JMicron JMS539", // USB2/3->SATA (old firmware)
3979  "0x152d:0x0539",
3980  "0x0100", // 1.00
3981  "",
3982  "-d usbjmicron"
3983  },
3984  { "USB: ; JMicron JMS539", // USB2/3->SATA (new firmware)
3985  "0x152d:0x0539",
3986  "0x020[56]|" // 2.05, ticket #338
3987  "0x28(03|12)", // 28.03, Mediasonic ProBox HF2-SU3S2 Rev 2 (port multiplier, ticket #504)
3988  "", // 28.12, Mediasonic ProBox H82-SU3S2 (port multiplier)
3989  "-d sat"
3990  },
3991  { "USB: ; JMicron ", // USB->SATA->4xSATA (port multiplier)
3992  "0x152d:0x0551",
3993  "", // 0x0100
3994  "",
3995  "-d usbjmicron,x"
3996  },
3997  { "USB: ; JMicron JMS567", // USB2/3->SATA
3998  "0x152d:0x0567",
3999  "", // 0x0114
4000  "", // 0x0205, 2.05, Mediasonic ProBox HF2-SU3S2 Rev 3 (port multiplier, ticket #504)
4001  "-d sat"
4002  },
4003  { "USB: OCZ THROTTLE OCZESATATHR8G; JMicron JMF601",
4004  "0x152d:0x0602",
4005  "",
4006  "",
4007  "" // unsupported
4008  },
4009  { "USB: ; JMicron JM20329", // USB->SATA
4010  "0x152d:0x2329",
4011  "", // 0x0100
4012  "",
4013  "-d usbjmicron"
4014  },
4015  { "USB: ; JMicron JM20336", // USB+SATA->SATA, USB->2xSATA
4016  "0x152d:0x2336",
4017  "", // 0x0100
4018  "",
4019  "-d usbjmicron,x"
4020  },
4021  { "USB: Generic JMicron adapter; JMicron",
4022  "0x152d:0x2337",
4023  "",
4024  "",
4025  "-d usbjmicron"
4026  },
4027  { "USB: ; JMicron JM20337/8", // USB->SATA+PATA, USB+SATA->PATA
4028  "0x152d:0x2338",
4029  "", // 0x0100
4030  "",
4031  "-d usbjmicron"
4032  },
4033  { "USB: ; JMicron JM20339", // USB->SATA
4034  "0x152d:0x2339",
4035  "", // 0x0100
4036  "",
4037  "-d usbjmicron,x"
4038  },
4039  { "USB: ; JMicron", // USB+SATA->SATA
4040  "0x152d:0x2351", // e.g. Verbatim Portable Hard Drive 500Gb
4041  "", // 0x0100
4042  "",
4043  "-d sat"
4044  },
4045  { "USB: ; JMicron", // USB->SATA
4046  "0x152d:0x2352",
4047  "", // 0x0100
4048  "",
4049  "-d usbjmicron,x"
4050  },
4051  { "USB: ; JMicron", // USB->SATA
4052  "0x152d:0x2509",
4053  "", // 0x0100
4054  "",
4055  "-d usbjmicron,x"
4056  },
4057  { "USB: ; JMicron JMS566", // USB3->SATA
4058  "0x152d:0x2566", // e.g. Chieftec CEB-7035S
4059  "", // 0x0114
4060  "",
4061  "-d usbjmicron,x"
4062  },
4063  { "USB: ; JMicron",
4064  "0x152d:0x2590",
4065  "", // 0x0x8105 (ticket #550)
4066  "",
4067  "-d sat"
4068  },
4069  { "USB: ; JMicron JMS567", // USB2/3->SATA
4070  "0x152d:0x3562",
4071  "", // 0x0310, StarTech S358BU33ERM (port multiplier, ticket #508)
4072  "",
4073  "-d sat"
4074  },
4075  { "USB: ; JMicron", // USB3->SATA
4076  "0x152d:0x3569",
4077  "", // 0x0203
4078  "",
4079  "-d sat"
4080  },
4081  // ASMedia
4082  { "USB: ; ASMedia ASM1053/1153",
4083  "0x174c:0x1[01]53",
4084  "",
4085  "",
4086  "-d sat"
4087  },
4088  { "USB: ; ASMedia ASM1051",
4089  "0x174c:0x5106", // 0x174c:0x55aa after firmware update
4090  "",
4091  "",
4092  "-d sat"
4093  },
4094  { "USB: ; ASMedia AS2105", // Icy Box IB-AC603A-U3
4095  "0x174c:0x5136",
4096  "", // 0x0001
4097  "",
4098  "-d sat"
4099  },
4100  { "USB: ; ASMedia", // Vantec NexStar USB 3.0 & SATA dual drive dock
4101  "0x174c:0x5516",
4102  "",
4103  "",
4104  "-d sat"
4105  },
4106  { "USB: ; ASMedia", // MEDION HDDrive-n-GO, LaCie Rikiki USB 3.0,
4107  // Silicon Power Armor A80 (ticket #237)
4108  // reported as unsupported: BYTECC T-200U3, Kingwin USB 3.0 docking station
4109  "0x174c:0x55aa",
4110  "", // 0x0100
4111  "",
4112  "-d sat"
4113  },
4114  // LucidPort
4115  { "USB: ; LucidPORT USB300", // RaidSonic ICY BOX IB-110StU3-B, Sharkoon SATA QuickPort H3
4116  "0x1759:0x500[02]", // 0x5000: USB 2.0, 0x5002: USB 3.0
4117  "",
4118  "",
4119  "-d sat"
4120  },
4121  { "USB: ; LucidPort", // Fuj:tech SATA-USB3 dock
4122  "0x1759:0x5100",
4123  "", // 0x2580
4124  "",
4125  "-d sat"
4126  },
4127  // Verbatim
4128  { "USB: Verbatim Portable Hard Drive; Sunplus",
4129  "0x18a5:0x0214",
4130  "", // 0x0112
4131  "",
4132  "-d usbsunplus"
4133  },
4134  { "USB: Verbatim FW/USB160; Oxford OXUF934SSA-LQAG", // USB+IEE1394->SATA
4135  "0x18a5:0x0215",
4136  "", // 0x0001
4137  "",
4138  "-d sat"
4139  },
4140  { "USB: Verbatim External Hard Drive 47519; Sunplus", // USB->SATA
4141  "0x18a5:0x0216",
4142  "",
4143  "",
4144  "-d usbsunplus"
4145  },
4146  { "USB: Verbatim Pocket Hard Drive; JMicron", // SAMSUNG SpinPoint N3U-3 (USB, 4KiB LLS)
4147  "0x18a5:0x0227",
4148  "",
4149  "",
4150  "-d usbjmicron" // "-d usbjmicron,x" does not work
4151  },
4152  { "USB: Verbatim External Hard Drive; JMicron", // 2TB
4153  "0x18a5:0x022a",
4154  "",
4155  "",
4156  "-d usbjmicron"
4157  },
4158  { "USB: Verbatim Store'n'Go; JMicron", // USB->SATA
4159  "0x18a5:0x022b",
4160  "", // 0x0100
4161  "",
4162  "-d usbjmicron"
4163  },
4164  { "USB: Verbatim Pocket Hard Drive; ", // 1TB USB 3.0
4165  "0x18a5:0x0237",
4166  "",
4167  "",
4168  "-d sat,12"
4169  },
4170  { "USB: Verbatim External Hard Drive; ", // 3TB USB 3.0
4171  "0x18a5:0x0400",
4172  "",
4173  "",
4174  "-d sat"
4175  },
4176  // Silicon Image
4177  { "USB: Vantec NST-400MX-SR; Silicon Image 5744",
4178  "0x1a4a:0x1670",
4179  "",
4180  "",
4181  "" // unsupported
4182  },
4183  // SunplusIT
4184  { "USB: ; SunplusIT",
4185  "0x1bcf:0x0c31",
4186  "",
4187  "",
4188  "-d usbsunplus"
4189  },
4190  // TrekStor
4191  { "USB: TrekStor DataStation; ", // DataStation maxi light (USB 3.0)
4192  "0x1e68:0x0050",
4193  "", // 0x0100
4194  "",
4195  "-d sat"
4196  },
4197  // Innostor
4198  { "USB: ; Innostor IS611", // USB3->SATA+PATA
4199  "0x1f75:0x0611", // SMART access via PATA does not work
4200  "",
4201  "",
4202  "-d sat"
4203  },
4204  { "USB: ; Innostor IS621", // USB3->SATA
4205  "0x1f75:0x0621", // Dynex 2.5" USB 3.0 Exclosure DX-HD302513
4206  "",
4207  "",
4208  "-d sat"
4209  },
4210  { "USB: ; Innostor IS888", // USB3->SATA
4211  "0x1f75:0x0888", // Sharkoon SATA QuickDeck Pro USB 3.0
4212  "", // 0x0034
4213  "",
4214  "" // unsupported
4215  },
4216  // VIA Labs
4217  { "USB: ; VIA VL701", // USB2/3->SATA
4218  "0x2109:0x0701", // Intenso 2,5" 1TB USB3
4219  "", // 0x0107
4220  "",
4221  "-d sat" // ATA output registers missing
4222  },
4223  // 0x2537 (?)
4224  { "USB: ; ", // USB 3.0
4225  "0x2537:0x106[68]", // 0x1066: Orico 2599US3, 0x1068: Fantec ER-35U3
4226  "", // 0x0100
4227  "",
4228  "-d sat"
4229  },
4230  // Power Quotient International
4231  { "USB: PQI H560; ",
4232  "0x3538:0x0902",
4233  "", // 0x0000
4234  "",
4235  "-d sat"
4236  },
4237  // Hitachi/SimpleTech
4238  { "USB: Hitachi Touro Desk; JMicron", // 3TB
4239  "0x4971:0x1011",
4240  "",
4241  "",
4242  "-d usbjmicron"
4243  },
4244  { "USB: Hitachi Touro; ",
4245  "0x4971:0x101[45]", // 14=1TB, 15=2TB
4246  "", // 0x0000
4247  "",
4248  "-d sat" // ATA output registers missing
4249  },
4250  { "USB: Hitachi Touro Mobile; ", // 1TB
4251  "0x4971:0x1020",
4252  "",
4253  "",
4254  "-d sat"
4255  },
4256  { "USB: Hitachi/SimpleTech; JMicron", // 1TB
4257  "0x4971:0xce17",
4258  "",
4259  "",
4260  "-d usbjmicron,x"
4261  },
4262  // OnSpec
4263  { "USB: ; OnSpec", // USB->PATA
4264  "0x55aa:0x2b00",
4265  "", // 0x0100
4266  "",
4267  "" // unsupported
4268  },
4269  // 0x6795 (?)
4270  { "USB: Sharkoon 2-Bay RAID Box; ", // USB 3.0
4271  "0x6795:0x2756",
4272  "", // 0x0100
4273  "",
4274  "-d sat"
4275  },
4276 /*
4277 }; // builtin_knowndrives[]
4278  */