1 /*
2  * drivedb.h - smartmontools drive database file
3  *
4  * Home page of code is: https://www.smartmontools.org
5  *
6  * Copyright (C) 2003-11 Philip Williams, Bruce Allen
7  * Copyright (C) 2008-21 Christian Franke
8  *
9  * SPDX-License-Identifier: GPL-2.0-or-later
10  */
11 
12 /*
13  * Structure used to store drive database entries:
14  *
15  * struct drive_settings {
16  *   const char * modelfamily;
17  *   const char * modelregexp;
18  *   const char * firmwareregexp;
19  *   const char * warningmsg;
20  *   const char * presets;
21  * };
22  *
23  * The elements are used in the following ways:
24  *
25  *  modelfamily     Informal string about the model family/series of a
26  *                  device. Set to "" if no info (apart from device id)
27  *                  known.  The entry is ignored if this string starts with
28  *                  a dollar sign.  Must not start with "USB:", see below.
29  *  modelregexp     POSIX extended regular expression to match the model of
30  *                  a device.  This should never be "".
31  *  firmwareregexp  POSIX extended regular expression to match a devices's
32  *                  firmware.  This is optional and should be "" if it is not
33  *                  to be used.  If it is nonempty then it will be used to
34  *                  narrow the set of devices matched by modelregexp.
35  *  warningmsg      A message that may be displayed for matching drives.  For
36  *                  example, to inform the user that they may need to apply a
37  *                  firmware patch.
38  *  presets         String with vendor-specific attribute ('-v') and firmware
39  *                  bug fix ('-F') options.  Same syntax as in smartctl command
40  *                  line.  The user's own settings override these.
41  *
42  * The regular expressions for drive model and firmware must match the full
43  * string.  The effect of "^FULLSTRING$" is identical to "FULLSTRING".
44  * The form ".*SUBSTRING.*" can be used if substring match is desired.
45  *
46  * The table will be searched from the start to end or until the first match,
47  * so the order in the table is important for distinct entries that could match
48  * the same drive.
49  *
50  *
51  * Format for USB ID entries:
52  *
53  *  modelfamily     String with format "USB: DEVICE; BRIDGE" where
54  *                  DEVICE is the name of the device and BRIDGE is
55  *                  the name of the USB bridge.  Both may be empty
56  *                  if no info known.
57  *  modelregexp     POSIX extended regular expression to match the USB
58  *                  vendor:product ID in hex notation ("0x1234:0xabcd").
59  *                  This should never be "".
60  *  firmwareregexp  POSIX extended regular expression to match the USB
61  *                  bcdDevice info.  Only compared during search if other
62  *                  entries with same USB vendor:product ID exist.
63  *  warningmsg      Not used yet.
64  *  presets         String with one device type ('-d') option.
65  *
66  */
67 
68 /*
69 const drive_settings builtin_knowndrives[] = {
70  */
71   { "VERSION: 7.3 $Id: drivedb.h 5236 2021-09-14 13:17:47Z chrfranke $",
72     "-", "-",
73     "Version information",
74     ""
75   },
76   { "DEFAULT",
77     "-", "-",
78     "Default settings",
79     "-v 1,raw48,Raw_Read_Error_Rate "
80     "-v 2,raw48,Throughput_Performance "
81     "-v 3,raw16(avg16),Spin_Up_Time "
82     "-v 4,raw48,Start_Stop_Count "
83     "-v 5,raw16(raw16),Reallocated_Sector_Ct "
84     "-v 6,raw48,Read_Channel_Margin,HDD "
85     "-v 7,raw48,Seek_Error_Rate,HDD "
86     "-v 8,raw48,Seek_Time_Performance,HDD "
87     "-v 9,raw24(raw8),Power_On_Hours "
88     "-v 10,raw48,Spin_Retry_Count,HDD "
89     "-v 11,raw48,Calibration_Retry_Count,HDD "
90     "-v 12,raw48,Power_Cycle_Count "
91     "-v 13,raw48,Read_Soft_Error_Rate "
92     //  14-174 Unknown_Attribute
93     "-v 175,raw48,Program_Fail_Count_Chip,SSD "
94     "-v 176,raw48,Erase_Fail_Count_Chip,SSD "
95     "-v 177,raw48,Wear_Leveling_Count,SSD "
96     "-v 178,raw48,Used_Rsvd_Blk_Cnt_Chip,SSD "
97     "-v 179,raw48,Used_Rsvd_Blk_Cnt_Tot,SSD "
98     "-v 180,raw48,Unused_Rsvd_Blk_Cnt_Tot,SSD "
99     "-v 181,raw48,Program_Fail_Cnt_Total "
100     "-v 182,raw48,Erase_Fail_Count_Total,SSD "
101     "-v 183,raw48,Runtime_Bad_Block "
102     "-v 184,raw48,End-to-End_Error "
103     //  185-186 Unknown_Attribute
104     "-v 187,raw48,Reported_Uncorrect "
105     "-v 188,raw48,Command_Timeout "
106     "-v 189,raw48,High_Fly_Writes,HDD "
107     "-v 190,tempminmax,Airflow_Temperature_Cel "
108     "-v 191,raw48,G-Sense_Error_Rate,HDD "
109     "-v 192,raw48,Power-Off_Retract_Count "
110     "-v 193,raw48,Load_Cycle_Count,HDD "
111     "-v 194,tempminmax,Temperature_Celsius "
112     "-v 195,raw48,Hardware_ECC_Recovered "
113     "-v 196,raw16(raw16),Reallocated_Event_Count "
114     "-v 197,raw48,Current_Pending_Sector "
115     "-v 198,raw48,Offline_Uncorrectable "
116     "-v 199,raw48,UDMA_CRC_Error_Count "
117     "-v 200,raw48,Multi_Zone_Error_Rate,HDD "
118     "-v 201,raw48,Soft_Read_Error_Rate,HDD "
119     "-v 202,raw48,Data_Address_Mark_Errs,HDD "
120     "-v 203,raw48,Run_Out_Cancel "
121     "-v 204,raw48,Soft_ECC_Correction "
122     "-v 205,raw48,Thermal_Asperity_Rate "
123     "-v 206,raw48,Flying_Height,HDD "
124     "-v 207,raw48,Spin_High_Current,HDD "
125     "-v 208,raw48,Spin_Buzz,HDD "
126     "-v 209,raw48,Offline_Seek_Performnce,HDD "
127     //  210-219 Unknown_Attribute
128     "-v 220,raw48,Disk_Shift,HDD "
129     "-v 221,raw48,G-Sense_Error_Rate,HDD "
130     "-v 222,raw48,Loaded_Hours,HDD "
131     "-v 223,raw48,Load_Retry_Count,HDD "
132     "-v 224,raw48,Load_Friction,HDD "
133     "-v 225,raw48,Load_Cycle_Count,HDD "
134     "-v 226,raw48,Load-in_Time,HDD "
135     "-v 227,raw48,Torq-amp_Count,HDD "
136     "-v 228,raw48,Power-off_Retract_Count "
137     //  229 Unknown_Attribute
138     "-v 230,raw48,Head_Amplitude,HDD "
139     "-v 231,raw48,Temperature_Celsius,HDD "
140     "-v 232,raw48,Available_Reservd_Space "
141     "-v 233,raw48,Media_Wearout_Indicator,SSD "
142     //  234-239 Unknown_Attribute
143     "-v 240,raw24(raw8),Head_Flying_Hours,HDD "
144     "-v 241,raw48,Total_LBAs_Written "
145     "-v 242,raw48,Total_LBAs_Read "
146     //  243-249 Unknown_Attribute
147     "-v 250,raw48,Read_Error_Retry_Rate "
148     //  251-253 Unknown_Attribute
149     "-v 254,raw48,Free_Fall_Sensor,HDD"
150   },
151   { "Swissbit C440 Industrial CompactFlash Card",
152     // spec v1.23 found at http://www.farnell.com/datasheets/1821167.pdf
153     // tested with SFCF4096H2BU4TO-I-MS-527-STD
154     "SFCF(2048|4096|8192|16GB|32GB|64GB)H[0-9]BU[24]TO-(C|I)-(MS|QT|NU)-5[0-9]7-STD",
155     "", "",
156     "-v 196,raw24/raw24,Spare_Blocks "
157     "-v 213,raw24/raw24,Spare_Blocks_Worst_Chip "
158     "-v 229,raw48,Erase_Count "
159     "-v 203,raw48,Total_ECC_Errors "
160     "-v 232,raw48,Total_Number_of_Reads "
161     "-v 214,raw48,Reserved_Attribute " // Spec says "to be determined"
162     "-v 215,raw48,Current_TRIM_Percent "
163   },
164   { "Swissbit X-600m Series Industrial mSATA SSD",
165     // spec v1.06 found at https://www.mouser.com/pdfdocs/Swissbit_X-600m_Datasheet.pdf
166     // tested with SFSA016GU1AA2TO-I-DB-216-STD
167     "SFSA(008|016|032|064|128)GU[0-9]AA[124]TO-(C|I)-(DB|QC|NC)-2[0-9]6-STD",
168     "", "",
169   //"-v 1,raw48,Raw_Read_Error_Rate "
170   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
171   //"-v 9,raw24(raw8),Power_On_Hours "
172   //"-v 12,raw48,Power_Cycle_Count "
173     "-v 160,raw48,Uncorrectable_Error_Cnt "
174     "-v 161,raw48,Spare_Blocks_Remaining "
175     "-v 163,raw48,Initial_Bad_Block_Count "
176     "-v 164,raw48,Total_Erase_Count "
177     "-v 165,raw48,Max_Erase_Count "
178     "-v 166,raw48,Min_Erase_Count "
179     "-v 167,raw48,Average_Erase_Count "
180     "-v 168,raw48,Max_Erase_Count_of_Spec "
181     "-v 169,raw48,Power_On_Uncorr_Err_Cnt "
182     "-v 192,raw48,Init_Spare_Blocks_Avail "
183     "-v 193,raw48,Dynamic_Remaps "
184   //"-v 194,tempminmax,Temperature_Celsius "
185   //"-v 195,raw48,Hardware_ECC_Recovered "
186   //"-v 196,raw16(raw16),Reallocated_Event_Count "
187   //"-v 198,raw48,Offline_Uncorrectable "
188     "-v 199,raw48,SATA_CRC_Error_Count "
189     "-v 215,raw48,TRIM_Count "
190     "-v 235,hex56,Flash_Writes_LBAs_Low "
191     "-v 237,hex48,Flash_Writes_LBAs_High "
192     "-v 241,hex56,Total_LBAs_Written_Low "
193     "-v 242,hex56,Total_LBAs_Read_Low "
194     "-v 243,hex48,Total_LBAs_Written_High "
195     "-v 244,hex48,Total_LBAs_Read_High "
196     "-v 248,raw48,Perc_Rated_Life_Remain "
197     "-v 249,raw48,Spares_Remaining_Perc "
198   },
199   { "Apacer SDM4 Series SSD Module",
200     "(2|4|8|16|32|64)GB SATA Flash Drive", // tested with APSDM002G15AN-CT/SFDDA01C and SFI2101D
201     "SF(DDA01C|I2101D)",
202     "",
203     "-v 160,raw48,Initial_Bad_Block_Count "
204     "-v 161,raw48,Bad_Block_Count "
205     "-v 162,raw48,Spare_Block_Count "
206     "-v 163,raw48,Max_Erase_Count "
207     "-v 164,raw48,Average_Erase_Count "
208     "-v 165,raw48,Average_Erase_Count " // could be wrong
209   },
210   { "Apacer SDM5/5A/5A-M Series SSD Module",
211     "(1|2|4|8|16|32|64)GB SATA Flash Drive", // tested with APSDM016GA2AN-PTM1/SFDK004A,
212       // APSDM016GA3AN-ATM/SFDE001A, APSDM004G13AN-AT/SFDE001A
213     "SF(DK004A|DE001A)",
214     "",
215   //"-v 9,raw24(raw8),Power_On_Hours "
216   //"-v 12,raw48,Power_Cycle_Count "
217     "-v 163,raw48,Max_Erase_Count "
218     "-v 164,raw48,Average_Erase_Count "
219     "-v 166,raw48,Grown_Bad_Block_Count "
220     "-v 167,raw48,SSD_Write_Protect_Mode "
221     "-v 168,raw48,SATA_PHY_Err_Ct "
222     "-v 175,raw48,Bad_Cluster_Table_Count "
223     "-v 192,raw48,Unexpect_Power_Loss_Ct "
224   //"-v 194,tempminmax,Temperature_Celsius "
225   //"-v 241,raw48,Total_LBAs_Written "
226   },
227   { "Apacer AS340 SSDs",
228     "Apacer AS340 (120|240|480|960)GB", // tested with Apacer AS340 120GB/AP612PE0
229     "", "",
230   //"-v 9,raw24(raw8),Power_On_Hours "
231   //"-v 12,raw48,Power_Cycle_Count "
232     "-v 163,raw48,Max_Erase_Count "
233     "-v 164,raw48,Average_Erase_Count "
234     "-v 166,raw48,Later_Bad_Block_Count "
235     "-v 167,raw48,SSD_Protect_Mode "
236     "-v 168,raw48,SATA_PHY_Error_Count "
237     "-v 171,raw48,Program_Fail_Count "
238     "-v 172,raw48,Erase_Fail_Count "
239     "-v 175,raw48,Bad_Cluster_Table_Count "
240     "-v 192,raw48,Unexpect_Power_Loss_Ct "
241   //"-v 194,tempminmax,Temperature_Celsius "
242     "-v 231,raw48,Lifetime_Left "
243   //"-v 241,raw48,Total_LBAs_Written "
244   },
245   { "Apacer SSDs",
246     "([1248]|1[056]|20|3[02]|40|60|64|80|12[08]|160|240|256|320|480|512|640|960|1280|1920|3840)(GB|TB) SATA Flash Drive|"
247     "S[GH]250-M2[48][02] 128GB SSD", // tested with 120GB SATA Flash Drive/SFMB6130, SH250-M242 128GB SSD/SFMB8120
248     "SFM[BC][0-9A-Z][0-9A-Z][1-9A-Z][0-9A-Z]",
249     "",
250   //"-v 9,raw24(raw8),Power_On_Hours "
251   //"-v 12,raw48,Power_Cycle_Count "
252     "-v 163,raw48,Maximum_Erase_Count "
253     "-v 164,raw48,Average_Erase_Count "
254     "-v 166,raw48,Total_Later_Bad_Blk_Ct "
255     "-v 167,raw48,SSD_Protect_Mode "
256     "-v 168,raw48,SATA_PHY_Error_Count "
257     "-v 171,raw48,Program_Fail_Count "
258     "-v 172,raw48,Erase_Fail_Count "
259     "-v 175,raw48,Bad_Cluster_Table_Ct "
260     "-v 192,raw48,Unexpect_Power_Loss_Ct "
261   //"-v 194,tempminmax,Temperature_Celsius "
262     "-v 231,raw48,Lifetime_Left "
263   //"-v 241,raw48,Total_LBAs_Written "
264   },
265   { "Apple MacBook Air SSD", // probably Toshiba
266     "APPLE SSD TS(064|128)E", // tested with APPLE SSD TS064E/TQAABBF0
267     "", "",
268     "-v 173,raw48,Wear_Leveling_Count " //  ]
269     "-v 241,raw48,Host_Writes_GiB "     //  ]  guessed (ticket #655)
270     "-v 242,raw48,Host_Reades_GiB "     //  ]
271   },
272   { "Apple SD/SM/TS...E/F/G SSDs", // SanDisk/Samsung/Toshiba?
273     "APPLE SSD (S[DM]|TS)0?(128|256|512|768|1024)[EFG]", // tested with APPLE SSD SD256E/1021AP, SD0128F/A223321
274       // APPLE SSD SM768E/CXM90A1Q, SM0512F/UXM2JA1Q, TS0256F/109L0704, SM0512G/BXW1SA0Q, SM1024G/BXW1SA0Q
275     "", "",
276   //"-v 1,raw48,Raw_Read_Error_Rate "
277   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
278   //"-v 9,raw24(raw8),Power_On_Hours "
279   //"-v 12,raw48,Power_Cycle_Count "
280     "-v 169,raw48,Unknown_Apple_Attrib "
281     "-v 173,raw48,Wear_Leveling_Count " // ]
282     "-v 174,raw48,Host_Reads_MiB "      // ] guessed (ticket #342), S[DM]*F only
283     "-v 175,raw48,Host_Writes_MiB "     // ]
284   //"-v 192,raw48,Power-Off_Retract_Count "
285   //"-v 194,tempminmax,Temperature_Celsius "
286   //"-v 197,raw48,Current_Pending_Sector "
287   //"-v 199,raw48,UDMA_CRC_Error_Count "
288   //"-v 240,raw48,Unknown_SSD_Attribute "
289   },
290   { "ATP SATA III aMLC M.2 2242 Embedded SSD",
291     "ATP I-Temp M\\.2 2242", // tested with ATP I-Temp M.2 2242/R0822A
292     "","",
293     "-v 1,raw48,Raw_Read_Error_Count "
294   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
295   //"-v 9,raw24(raw8),Power_On_Hours "
296   //"-v 12,raw48,Power_Cycle_Count "
297     "-v 14,raw48,Device_Raw_Capacity "
298     "-v 15,raw48,Device_User_Capacity "
299     "-v 16,raw48,Initial_Spare_Blocks "
300     "-v 17,raw48,Remaining_Spare_Blocks "
301     "-v 100,raw48,Total_Erease_Count "
302     "-v 160,raw48,Uncorrectable_Sectors "
303     "-v 172,raw48,Block_Erase_Failure "
304     "-v 173,raw48,Max_Erase_Count "
305     "-v 174,raw48,Unexpected_Power_Cycle "
306     "-v 175,raw48,Average_Erase_Count "
307     "-v 181,raw48,Program_Fail_Blocks "
308     "-v 187,raw48,Reported_UE_Counts "
309     "-v 194,raw48,Device_Temperature "
310   //"-v 195,raw48,Hardware_ECC_Recovered "
311   //"-v 197,raw48,Current_Pending_Sector "
312   //"-v 198,raw48,Offline_Uncorrectable "
313     "-v 199,raw48,SATA_CRC_Error_Count "
314     "-v 202,raw48,Percent_Lifetime_Used "
315     "-v 205,raw48,Thermal_Asperity_Rate "
316     "-v 231,raw48,Controller_Temperature "
317     "-v 234,raw48,Nand_Sectors_Read "
318     "-v 235,raw48,Device_Sectors_Written "
319     "-v 241,raw48,Nand_Sectors_Written "
320     "-v 242,raw48,Device_Bytes_Read "
321     "-v 248,raw48,PCT_Life_Remaining "
322     "-v 249,raw48,Spare_Block_Remaining "
323   },
324   { "Crucial/Micron RealSSD C300/P300", // Marvell 88SS9174
325     "C300-CTFDDA[AC](064|128|256)MAG|" // tested with C300-CTFDDAC128MAG/0002,
326       // C300-CTFDDAC064MAG/0006
327     "P300-MTFDDAC(050|100|200)SAL", // tested with P300-MTFDDAC100SAL/0003
328     "", "",
329   //"-v 1,raw48,Raw_Read_Error_Rate "
330   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
331   //"-v 9,raw24(raw8),Power_On_Hours "
332   //"-v 12,raw48,Power_Cycle_Count "
333     "-v 170,raw48,Grown_Failing_Block_Ct "
334     "-v 171,raw48,Program_Fail_Count "
335     "-v 172,raw48,Erase_Fail_Count "
336     "-v 173,raw48,Wear_Leveling_Count "
337     "-v 174,raw48,Unexpect_Power_Loss_Ct "
338     "-v 181,raw16,Non4k_Aligned_Access "
339     "-v 183,raw48,SATA_Iface_Downshift "
340   //"-v 184,raw48,End-to-End_Error "
341   //"-v 187,raw48,Reported_Uncorrect "
342   //"-v 188,raw48,Command_Timeout "
343     "-v 189,raw48,Factory_Bad_Block_Ct "
344   //"-v 194,tempminmax,Temperature_Celsius "
345   //"-v 195,raw48,Hardware_ECC_Recovered "
346   //"-v 196,raw16(raw16),Reallocated_Event_Count "
347   //"-v 197,raw48,Current_Pending_Sector "
348   //"-v 198,raw48,Offline_Uncorrectable "
349   //"-v 199,raw48,UDMA_CRC_Error_Count "
350     "-v 202,raw48,Percent_Lifetime_Used "
351     "-v 206,raw48,Write_Error_Rate "
352   },
353   { "Crucial/Micron RealSSD m4/C400/P400", // Marvell 9176, fixed firmware
354     "C400-MTFDDA[ACK](064|128|256|512)MAM|"
355       // M4-CT032M4SSD3/04MH
356     "M4-CT(032|064|128|256|512)M4SSD[123]|" // tested with M4-CT512M4SSD2/0309
357     "MTFDDA[AK](064|128|256|512|050|100|200|400)MA[MNR]-1[JKS]1.*", // tested with
358       // MTFDDAK256MAR-1K1AA/MA52, MTFDDAK256MAM-1K12/08TH,
359       // MTFDDAA064MAR-1J1AB  49Y5835 49Y5838IBM/MA49 (P400e)
360     "030[9-Z]|03[1-Z].|0[4-Z]..|[1-Z]....*", // >= "0309"
361     "",
362   //"-v 1,raw48,Raw_Read_Error_Rate "
363   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
364   //"-v 9,raw24(raw8),Power_On_Hours "
365   //"-v 12,raw48,Power_Cycle_Count "
366     "-v 170,raw48,Grown_Failing_Block_Ct "
367     "-v 171,raw48,Program_Fail_Count "
368     "-v 172,raw48,Erase_Fail_Count "
369     "-v 173,raw48,Wear_Leveling_Count "
370     "-v 174,raw48,Unexpect_Power_Loss_Ct "
371     "-v 181,raw16,Non4k_Aligned_Access "
372     "-v 183,raw48,SATA_Iface_Downshift "
373   //"-v 184,raw48,End-to-End_Error "
374   //"-v 187,raw48,Reported_Uncorrect "
375   //"-v 188,raw48,Command_Timeout "
376     "-v 189,raw48,Factory_Bad_Block_Ct "
377   //"-v 194,tempminmax,Temperature_Celsius "
378   //"-v 195,raw48,Hardware_ECC_Recovered "
379   //"-v 196,raw16(raw16),Reallocated_Event_Count "
380   //"-v 197,raw48,Current_Pending_Sector "
381   //"-v 198,raw48,Offline_Uncorrectable "
382   //"-v 199,raw48,UDMA_CRC_Error_Count "
383     "-v 202,raw48,Perc_Rated_Life_Used "
384     "-v 206,raw48,Write_Error_Rate "
385     "-v 225,raw48,Unknown_Marvell_Attr " // P400e
386     "-v 231,raw48,Unknown_Marvell_Attr " // P400e
387     "-v 242,raw48,Host_Reads" // P400e: 2MiB?
388   },
389   { "Crucial/Micron RealSSD m4/C400", // Marvell 9176, buggy or unknown firmware
390     "C400-MTFDDA[ACK](064|128|256|512)MAM|" // tested with C400-MTFDDAC256MAM/0002
391     "M4-CT(032|064|128|256|512)M4SSD[123]", // tested with M4-CT064M4SSD2/0002,
392       // M4-CT064M4SSD2/0009, M4-CT256M4SSD3/000F
393     "",
394     "This drive may hang after 5184 hours of power-on time:\n"
395     "https://www.tomshardware.com/news/Crucial-m4-Firmware-BSOD,14544.html\n"
396     "See the following web page for firmware updates:\n"
397     "http://www.crucial.com/usa/en/support-ssd",
398     "-v 170,raw48,Grown_Failing_Block_Ct "
399     "-v 171,raw48,Program_Fail_Count "
400     "-v 172,raw48,Erase_Fail_Count "
401     "-v 173,raw48,Wear_Leveling_Count "
402     "-v 174,raw48,Unexpect_Power_Loss_Ct "
403     "-v 181,raw16,Non4k_Aligned_Access "
404     "-v 183,raw48,SATA_Iface_Downshift "
405     "-v 189,raw48,Factory_Bad_Block_Ct "
406     "-v 202,raw48,Perc_Rated_Life_Used "
407     "-v 206,raw48,Write_Error_Rate"
408   },
409   { "Crucial/Micron Client SSDs", // MX100, MX200, BX300, MX300, BX500, MX500, M500, M600, 1100, 1300
410       // See also tnfd22_client_ssd_smart_attributes.pdf Rev. E from 2018-09-28
411       // (covers M500 FW>=MU03, M510, M550, MX100, M600, MX200, 1100, MX300, 1300)
412     "Crucial_CT(128|256|512)MX100SSD1|"// Marvell 88SS9189, tested with Crucial_CT256MX100SSD1/MU01
413     "Crucial_CT(200|250|256|500|512|1000|1024)MX200SSD[1346]|" // Marvell 88SS9189, tested with
414       // Crucial_CT500MX200SSD1/MU01, Crucial_CT1024MX200SSD1/MU01, Crucial_CT250MX200SSD3/MU01,
415       // Crucial_CT250MX200SSD1/MU03
416     "Crucial_CT(275|525|750|1050|2050)MX300SSD[14]|" // Marvell 88SS1074, tested with
417       // Crucial_CT275MX300SSD1/M0CR040, Crucial_CT525MX300SSD1/M0CR021, Crucial_CT750MX300SSD1/M0CR011,
418       // Crucial_CT2050MX300SSD1/M0CR031
419     "Crucial_CT(120|240|480|960)M500SSD[134]|" // Marvell 88SS9187, tested with
420       // Crucial_CT120M500SSD1/MU02, Crucial_CT120M500SSD3/MU02, Crucial_CT240M500SSD1/MU03,
421       // Crucial_CT480M500SSD1/MU03, Crucial_CT960M500SSD1/MU03, Crucial_CT240M500SSD4/MU05
422     "Crucial_CT(128|256|512|1024)M550SSD[134]|" // tested with Crucial_CT512M550SSD3/MU01,
423       // Crucial_CT1024M550SSD1/MU01, Crucial_CT128M550SSD4/MU02
424     "CT(120|240|480)BX300SSD1|" // Silicon Motion SM2258, same attributes as Marvell-based Crucial SSDs,
425       // tested with CT240BX300SSD1/M2CR010
426     "CT(120|240|480|960|[12]000)BX500SSD1|" // Silicon Motion SM2258XT, tested with CT120BX500SSD1/M6CR013,
427       // CT1000BX500SSD1/M6CR030, CT2000BX500SSD1/M6CR030
428     "CT(250|500|1000|2000)MX500SSD[14]|" // Silicon Motion SM2258, tested with CT250MX500SSD1/M3CR010
429       // CT500MX500SSD1/M3CR010, CT1000MX500SSD1/M3CR010, CT2000MX500SSD1/M3CR010,
430       // CT500MX500SSD1/M3CR020, CT250MX500SSD4/M3CR022, CT500MX500SSD1/M3CR022,
431       // CT500MX500SSD1/M3CR023, CT1000MX500SSD1/M3CR032
432     "Micron_M500_MTFDDA[KTV](120|240|480|960)MAV|"// tested with Micron_M500_MTFDDAK960MAV/MU05
433     "Micron_M500DC_(EE|MT)FDDA[AK](120|240|480|800)MBB|" // tested with Micron_M500DC_EEFDDAA120MBB/129,
434       // Micron_M500DC_MTFDDAK800MBB/0129
435     "(Micron[_ ])?M500IT[_ ]MTFDDA[KTY](032|050|060|064|120|128|240|256)[MS]BD|" // tested with M500IT_MTFDDAK240MBD/MG02
436     "(Micron_)?M510[_-]MTFDDA[KTV](128|256)MAZ|" // tested with M510-MTFDDAK256MAZ/MU01
437     "MICRON_M510DC_(EE|MT)FDDAK(120|240|480|800|960)MBP|" // tested with Micron_M510DC_MTFDDAK240MBP/0005
438     "(Micron_)?M550[_-]MTFDDA[KTV](064|128|256|512|1T0)MAY|" // tested with M550-MTFDDAK256MAY/MU01
439     "(Micron_M600_)?(EE|MT)FDDA[KTV](128|256|512|1T0)MBF[25Z]?(-.*)?|" // tested with Micron_M600_MTFDDAK1T0MBF/MU01,
440       // MTFDDAK256MBF-1AN1ZABHA/M603
441     "(Micron_1100_)?MTFDDA[KV](256|512|1T0|2T0)TBN(-.*)?|" // Marvell 88SS1074, tested with
442       // Micron_1100_MTFDDAK256TBN/M0MU020, MTFDDAK256TBN/M0MA020 (OEM), MTFDDAV256TBN-1AR15ABHA/HPC0T14
443     "Micron 1100 SATA (256G|512G|1T|2T)B|" // tested with Micron 1100 SATA 256GB/M0DL022
444     "(Micron_1300_)?(EE|MT)FDDA[KV](256|512|1T0|2T0)TDL(-.*)?", // tested with Micron_1300_MTFDDAK256TDL/M5MU000,
445       // Micron_1300_MTFDDAK1T0TDL/M5MU000, MTFDDAK2T0TDL/M5MU030, MTFDDAK256TDL-1AW1ZABFA/M5MA030
446     "", "",
447   //"-v 1,raw48,Raw_Read_Error_Rate "
448     "-v 5,raw48,Reallocate_NAND_Blk_Cnt "
449   //"-v 9,raw24(raw8),Power_On_Hours "
450   //"-v 12,raw48,Power_Cycle_Count "
451     "-v 170,raw48,Reserved_Block_Count "
452     "-v 171,raw48,Program_Fail_Count "
453     "-v 172,raw48,Erase_Fail_Count "
454     "-v 173,raw48,Ave_Block-Erase_Count "
455     "-v 174,raw48,Unexpect_Power_Loss_Ct "
456     "-v 180,raw48,Unused_Reserve_NAND_Blk "
457     "-v 183,raw48,SATA_Interfac_Downshift "
458     "-v 184,raw48,Error_Correction_Count "
459   //"-v 187,raw48,Reported_Uncorrect "
460   //"-v 194,tempminmax,Temperature_Celsius "
461     "-v 195,raw48,Cumulativ_Corrected_ECC "
462   //"-v 196,raw16(raw16),Reallocated_Event_Count "
463     "-v 197,raw48,Current_Pending_ECC_Cnt " // MX500: May flip 0 <> 1 (ticket #1227)
464   //"-v 198,raw48,Offline_Uncorrectable "
465   //"-v 199,raw48,UDMA_CRC_Error_Count "
466     "-v 202,raw48,Percent_Lifetime_Remain " // norm = max(100-raw,0); raw = percent_lifetime_used
467     "-v 206,raw48,Write_Error_Rate "
468     "-v 210,raw48,Success_RAIN_Recov_Cnt "
469     "-v 223,raw48,Unkn_CrucialMicron_Attr " // M6CR030
470     "-v 246,raw48,Total_LBAs_Written "
471     "-v 247,raw48,Host_Program_Page_Count "
472     "-v 248,raw48,FTL_Program_Page_Count "
473     "-v 249,raw48,Unkn_CrucialMicron_Attr " // M6CR030
474   //"-v 250,raw48,Read_Error_Retry_Rate "   // M6CR030
475     "-v 251,raw48,Unkn_CrucialMicron_Attr " // M6CR030
476     "-v 252,raw48,Unkn_CrucialMicron_Attr " // M6CR030
477     "-v 253,raw48,Unkn_CrucialMicron_Attr " // M6CR030
478     "-v 254,raw48,Unkn_CrucialMicron_Attr"  // M6CR030
479   },
480   // Reference: https://www.micron.com/resource-details/feec878a-265e-49a7-8086-15137c5f9011
481   // TN-FD-34: 5100 SSD SMART Implementation
482   { "Micron 5100 Pro / 52x0 / 5300 SSDs",
483     "(Micron_5100_)?(EE|MT)FDDA[KV](240|480|960|1T9|3T8|7T6)T(BY|CB|CC)|" // Matches both stock and Dell OEM
484       // tested with Micron_5100_MTFDDAK3T8TCB/D0MU410, MTFDDAK3T8TCB/D0MU410
485     "(Micron_5200_)?MTFDDAK(480|960|1T9|3T8|7T6)TD(C|D|N)|" // tested with Micron_5200_MTFDDAK3T8TDD/D1MU505
486     "Micron_5210_MTFDDAK(480|960|1T9|3T8|7T6)QDE|" // tested with Micron_5210_MTFDDAK7T6QDE/D2MU804
487     "Micron_5300(HC)?_MTFDDA[KV](240|480|960|1T9|3T8|7T6)TD[ST]", // tested with Micron_5300_MTFDDAK1T9TDS/D3MU001,
488       // Micron_5300HC_MTFDDAK960TDS/D3MN010
489     "", "",
490   //"-v 1,raw48,Raw_Read_Error_Rate "
491   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
492   //"-v 9,raw24(raw8),Power_On_Hours "  // raw24(raw8)??
493   //"-v 12,raw48,Power_Cycle_Count "
494     "-v 170,raw48,Reserved_Block_Pct " // Percentage of remaining reserved blocks available
495     "-v 171,raw48,Program_Fail_Count "
496     "-v 172,raw48,Erase_Fail_Count "
497     "-v 173,raw48,Avg_Block-Erase_Count "
498     "-v 174,raw48,Unexpect_Power_Loss_Ct "
499   //"-v 180,raw48,Unused_Rsvd_Blk_Cnt_Tot " // absolute count of remaining reserved blocks available
500     "-v 183,raw48,SATA_Int_Downshift_Ct " // SATA speed downshift count
501   //"-v 184,raw48,End-to-End_Error "
502   //"-v 187,raw48,Reported_Uncorrect " // Number of UECC correction failures
503   //"-v 188,raw48,Command_Timeout "
504   //"-v 194,tempminmax,Temperature_Celsius " // 100 - degrees C, wraps: 101 reported as 255
505   //"-v 195,raw48,Hardware_ECC_Recovered "
506   //"-v 196,raw16(raw16),Reallocated_Event_Count "
507   //"-v 197,raw48,Current_Pending_Sector " // Use the raw value
508   //"-v 198,raw48,Offline_Uncorrectable "  // Use the raw value
509   //"-v 199,raw48,UDMA_CRC_Error_Count "   // Use the raw value
510     "-v 202,raw48,Percent_Lifetime_Remain " // Remaining endurance, trips at 10%
511     "-v 206,raw48,Write_Error_Rate "
512     "-v 210,raw48,RAIN_Success_Recovered "  // Total number of NAND pages recovered by RAIN
513     "-v 211,raw48,Integ_Scan_Complete_Cnt "  // Number of periodic data integrity scans completed
514     "-v 212,raw48,Integ_Scan_Folding_Cnt "   // Number of blocks reallocated by integrity scans
515     "-v 213,raw48,Integ_Scan_Progress "      // Current is percentage, raw is absolute number of superblocks scanned by the current integrity scan
516     "-v 246,raw48,Total_LBAs_Written "
517     "-v 247,raw48,Host_Program_Page_Count "
518     "-v 248,raw48,Bckgnd_Program_Page_Cnt"
519   },
520   { "Micron M500DC/M510DC Enterprise SSDs",
521     "Micron_M500DC_(EE|MT)FDDA[AK](120|240|480|800)MBB|" // tested with
522       // Micron_M500DC_EEFDDAA120MBB/129, Micron_M500DC_MTFDDAK800MBB/0129
523     "MICRON_M510DC_(EE|MT)FDDAK(120|240|480|800|960)MBP", // tested with
524       // Micron_M510DC_MTFDDAK240MBP/0005
525     "", "",
526   //"-v 1,raw48,Raw_Read_Error_Rate "
527     "-v 5,raw48,Reallocated_Block_Count "
528   //"-v 9,raw24(raw8),Power_On_Hours "
529   //"-v 12,raw48,Power_Cycle_Count "
530     "-v 170,raw48,Reserved_Block_Count "
531     "-v 171,raw48,Program_Fail_Count "
532     "-v 172,raw48,Erase_Fail_Count "
533     "-v 173,raw48,Ave_Block-Erase_Count "
534     "-v 174,raw48,Unexpect_Power_Loss_Ct "
535     "-v 184,raw48,Error_Correction_Count "
536   //"-v 187,raw48,Reported_Uncorrect "
537     "-v 188,raw48,Command_Timeouts "
538   //"-v 194,tempminmax,Temperature_Celsius "
539     "-v 195,raw48,Cumulativ_Corrected_ECC "
540   //"-v 197,raw48,Current_Pending_Sector "
541   //"-v 198,raw48,Offline_Uncorrectable "
542   //"-v 199,raw48,UDMA_CRC_Error_Count "
543     "-v 202,raw48,Percent_Lifetime_Remain "
544     "-v 206,raw48,Write_Error_Rate "
545     "-v 247,raw48,Host_Program_Page_Count "
546     "-v 248,raw48,Bckgnd_Program_Page_Cnt"
547   },
548   { "SandForce Driven SSDs", // Corsair Force LS with buggy firmware only
549     "Corsair Force LS SSD", // tested with Corsair Force LS SSD/S9FM01.8
550     "S9FM01\\.8",
551     "A firmware update is available for this drive.\n"
552     "It is HIGHLY RECOMMENDED for drives with specific serial numbers.\n"
553     "See the following web pages for details:\n"
554     "https://www.corsair.com/en-us/force-series-ls-60gb-sata-3-6gb-s-ssd\n"
555     "https://www.smartmontools.org/ticket/628",
556     "-v 1,raw24/raw32,Raw_Read_Error_Rate "
557     "-v 5,raw48,Retired_Block_Count "
558     "-v 9,msec24hour32,Power_On_Hours_and_Msec "
559   //"-v 12,raw48,Power_Cycle_Count "
560     "-v 162,raw48,Unknown_SandForce_Attr "
561     "-v 170,raw48,Reserve_Block_Count "
562     "-v 172,raw48,Erase_Fail_Count "
563     "-v 173,raw48,Unknown_SandForce_Attr "
564     "-v 174,raw48,Unexpect_Power_Loss_Ct "
565     "-v 181,raw48,Program_Fail_Count "
566   //"-v 187,raw48,Reported_Uncorrect "
567   //"-v 192,raw48,Power-Off_Retract_Count "
568   //"-v 194,tempminmax,Temperature_Celsius "
569   //"-v 196,raw16(raw16),Reallocated_Event_Count "
570     "-v 218,raw48,Unknown_SandForce_Attr "
571     "-v 231,raw48,SSD_Life_Left "
572     "-v 241,raw48,Lifetime_Writes_GiB "
573     "-v 242,raw48,Lifetime_Reads_GiB"
574   },
575   { "SandForce Driven SSDs",
576     "SandForce 1st Ed\\.|" // Demo Drive, tested with firmware 320A13F0
577     "ADATA SSD S(396|510|599) .?..GB|" // tested with ADATA SSD S510 60GB/320ABBF0,
578       // ADATA SSD S599 256GB/3.1.0, 64GB/3.4.6
579     "ADATA SP[389]00|" // tested with ADATA SP300/5.0.2d, SP800/5.0.6c,
580       // ADATA SP900/5.0.6 (Premier Pro, SF-2281)
581     "ADATA SSD S[PX]900 (64|128|256|512)GB-DL2|" // tested with ADATA SSD SP900 256GB-DL2/5.0.6,
582       // ADATA SSD SX900 512GB-DL2/5.8.2
583     "ADATA XM11 (128|256)GB|" // tested with ADATA XM11 128GB/5.0.1
584     "ATP Velocity MIV (60|120|240|480)GB|" // tested with ATP Velocity MIV 480GB/110719
585     "Comay BladeDrive E28 (800|1600|3200)GB|" // LSI SF-2581, tested with Comay BladeDrive E28 800GB/2.71
586     "Corsair CSSD-F(40|60|80|115|120|160|240)GBP?2.*|" // Corsair Force, tested with
587       // Corsair CSSD-F40GB2/1.1, Corsair CSSD-F115GB2-A/2.1a
588     "Corsair Voyager GTX|" // Corsair Voyager GTX/S9FM02J6
589     "Corsair Force ((3 |LS )?SSD|GS|GT)|" // SF-2281, tested with
590       // Corsair Force SSD/5.05, 3 SSD/1.3.2, GT/1.3.3, GS/5.03,
591       // Corsair Force LS SSD/S8FM06.5, S9FM01.8, S9FM02.0
592     "FM-25S2S-(60|120|240)GBP2|" // G.SKILL Phoenix Pro, SF-1200, tested with
593       // FM-25S2S-240GBP2/4.2
594     "FTM(06|12|24|48)CT25H|" // Supertalent TeraDrive CT, tested with
595       // FTM24CT25H/STTMP2P1
596     "KINGSTON SE50S37?(100|240|480)G|" // tested with KINGSTON SE50S3100G/KE1ABBF0,
597       // KINGSTON SE50S37100G/61AABBF0 (E50)
598     "KINGSTON SH10[03]S3(90|120|240|480)G|" // HyperX (3K), SF-2281, tested with
599       // SH100S3240G/320ABBF0, SH103S3120G/505ABBF0
600     "KINGSTON SKC(300S37A|380S3)(60|120|180|240|480)G|" // KC300, SF-2281, tested with
601       // SKC300S37A120G/KC4ABBF0, SKC380S3120G/507ABBF0
602     "KINGSTON SVP200S3(7A)?(60|90|120|240|480)G|" // V+ 200, SF-2281, tested with
603       // SVP200S37A480G/502ABBF0, SVP200S390G/332ABBF0
604     "KINGSTON SMS200S3(30|60|120)G|" // mSATA, SF-2241, tested with SMS200S3120G/KC3ABBF0
605     "KINGSTON SMS450S3(32|64|128)G|" // mSATA, SF-2281, tested with SMS450S3128G/503ABBF0
606     "KINGSTON (SV300|SKC100|SE100)S3.*G|" // other SF-2281
607     "KINGSTON SHFS37A(120|240|480)G|" // HyperX Fury, SF-2281, tested with KINGSTON SHFS37A240G/608ABBF0
608     "KINGSTON SNS4151S316GD|" // KINGSTON SNS4151S316GD/S9FM01.6
609     "MKNSSDCR(45|60|90|120|180|240|360|480)GB(-(7|DX7?|MX|G2))?|" // Mushkin Chronos (7mm/Deluxe/MX/G2),
610       // SF-2281, tested with MKNSSDCR120GB, MKNSSDCR120GB-MX/560ABBF0, MKNSSDCR480GB-DX7/603ABBF0
611     "MKNSSDEC(60|120|240|480|512)GB|" // Mushkin Enhanced ECO2, tested with MKNSSDEC120GB/604ABBF0
612     "MKNSSDAT(30|40|60|120|180|240|480)GB(-(DX|V))?|" // Mushkin Atlas (Deluxe/Value), mSATA, SF-2281,
613       // tested with MKNSSDAT120GB-V/540ABBF0
614     "Mushkin MKNSSDCL(40|60|80|90|115|120|180|240|480)GB-DX2?|" // Mushkin Callisto deluxe,
615       // SF-1200/1222, Mushkin MKNSSDCL60GB-DX/361A13F0
616     "MXSSD3MDSF-(60|120)G|" // MX-DS FUSION, tested with MXSSD3MDSF-60G/2.32
617     "OCZ[ -](AGILITY2([ -]EX)?|COLOSSUS2|ONYX2|VERTEX(2|-LE))( [123]\\..*)?|" // SF-1200,
618       // tested with OCZ-VERTEX2/1.11, OCZ-VERTEX2 3.5/1.11
619     "OCZ-NOCTI|" // mSATA, SF-2100, tested with OCZ-NOCTI/2.15
620     "OCZ-REVODRIVE3?( X2)?|" // PCIe, SF-1200/2281, tested with
621       // OCZ-REVODRIVE( X2)?/1.20, OCZ-REVODRIVE3 X2/2.11
622     "OCZ-REVODRIVE350|"
623     "OCZ[ -](VELO|VERTEX2[ -](EX|PRO))( [123]\\..*)?|" // SF-1500, tested with
624       // OCZ VERTEX2-PRO/1.10 (Bogus thresholds for attribute 232 and 235)
625     "D2[CR]STK251...-....(\\.C)?|" // OCZ Deneva 2 C/R, SF-22xx/25xx,
626       // tested with D2CSTK251M11-0240/2.08, D2CSTK251A10-0240/2.15, D2RSTK251M11-0100.C/3.22
627     "OCZ-(AGILITY3|SOLID3|VERTEX3( LT| MI)?)|"  // SF-2200, tested with OCZ-VERTEX3/2.02,
628       // OCZ-AGILITY3/2.11, OCZ-SOLID3/2.15, OCZ-VERTEX3 MI/2.15, OCZ-VERTEX3 LT/2.22
629     "OCZ Z-DRIVE R4 [CR]M8[48]|" // PCIe, SF-2282/2582, tested with OCZ Z-DRIVE R4 CM84/2.13
630       // (Bogus attributes under Linux)
631     "OCZ Z-DRIVE 4500|"
632     "OCZ-VELO DRIVE|" // VeloDrive R, PCIe, tested with OCZ-VELO DRIVE/1.33
633     "TALOS2|" // OCZ Talos 2 C/R, SAS (works with -d sat), 2*SF-2282, tested with TALOS2/3.20E
634     "(APOC|DENC|DENEVA|FTNC|GFGC|MANG|MMOC|NIMC|TMSC).*|" // other OCZ SF-1200,
635       // tested with DENCSTE251M11-0120/1.33, DENEVA PCI-E/1.33
636     "(DENR|DRSAK|EC188|NIMR|PSIR|TRSAK).*|" // other OCZ SF-1500
637     "OWC Aura Pro( 6G SSD)?|" // tested with OWC Aura Pro 6G SSD/507ABBF0, OWC Aura Pro/603ABBF0
638     "OWC Mercury Electra (Pro )?[36]G SSD|" // tested with
639       // OWC Mercury Electra 6G SSD/502ABBF0, OWC Mercury Electra Pro 3G SSD/541ABBF0
640     "OWC Mercury E(xtreme|XTREME) Pro (6G |RE )?SSD|" // tested with
641       // OWC Mercury Extreme Pro SSD/360A13F0, OWC Mercury EXTREME Pro 6G SSD/507ABBF0
642     "Patriot Pyro|" // tested with Patriot Pyro/332ABBF0
643     "SanDisk SDSSDX(60|120|240|480)GG25|" // SanDisk Extreme, SF-2281, tested with
644       // SDSSDX240GG25/R201
645     "SanDisk SDSSDA(120|240|480)G|" // SanDisk SSD Plus, tested with SanDisk SDSSDA240G/U21010RL
646     "SuperSSpeed S301 [0-9]*GB|" // SF-2281, tested with SuperSSpeed S301 128GB/503
647     "SG9XCS2D(0?50|100|200|400)GESLT|" // Smart Storage Systems XceedIOPS2, tested with
648       // SG9XCS2D200GESLT/SA03L370
649     "SSD9SC(120|240|480)GED[EA]|" // PNY Prevail Elite, tested with SSD9SC120GEDA/334ABBF0
650     "(TX32|TX31C1|VN0.?..GCNMK).*|" // Smart Storage Systems XceedSTOR
651     "(TX22D1|TX21B1).*|" // Smart Storage Systems XceedIOPS2
652     "TX52D1.*|" // Smart Storage Systems Xcel-200
653     "TS(64|128|256|512)GSSD[37]20|" // Transcend SSD320/720, SF-2281, tested with
654       // TS128GSSD320, TS256GSSD720/5.2.0
655     "UGB(88P|99S)GC...H[BF].|" // Unigen, tested with
656       // UGB88PGC100HF2/MP Rev2, UGB99SGC100HB3/RC Rev3
657     "SG9XCS(1F|2D)(50|100|200|400)GE01|" // XceedIOPS, tested with SG9XCS2D50GE01/SA03F34V
658     "VisionTek GoDrive (60|120|240|480)GB", // tested with VisionTek GoDrive 480GB/506ABBF0
659     "", "",
660     "-v 1,raw24/raw32,Raw_Read_Error_Rate "
661     "-v 5,raw48,Retired_Block_Count "
662     "-v 9,msec24hour32,Power_On_Hours_and_Msec "
663   //"-v 12,raw48,Power_Cycle_Count "
664     "-v 13,raw24/raw32,Soft_Read_Error_Rate "
665     "-v 100,raw48,Gigabytes_Erased "
666     "-v 162,raw48,Unknown_SandForce_Attr " // Corsair Force LS SSD/S9FM01.8, *2.0
667     "-v 170,raw48,Reserve_Block_Count "
668     "-v 171,raw48,Program_Fail_Count "
669     "-v 172,raw48,Erase_Fail_Count "
670     "-v 173,raw48,Unknown_SandForce_Attr " // Corsair Force LS SSD/S9FM01.8, *2.0
671     "-v 174,raw48,Unexpect_Power_Loss_Ct "
672     "-v 177,raw48,Wear_Range_Delta "
673     "-v 181,raw48,Program_Fail_Count "
674     "-v 182,raw48,Erase_Fail_Count "
675     "-v 184,raw48,IO_Error_Detect_Code_Ct "
676   //"-v 187,raw48,Reported_Uncorrect "
677     "-v 189,tempminmax,Airflow_Temperature_Cel "
678   //"-v 192,raw48,Power-Off_Retract_Count "
679   //"-v 194,tempminmax,Temperature_Celsius "
680     "-v 195,raw24/raw32,ECC_Uncorr_Error_Count "
681   //"-v 196,raw16(raw16),Reallocated_Event_Count "
682     "-v 198,raw24/raw32:210zr54,Uncorrectable_Sector_Ct " // KINGSTON SE100S3100G/510ABBF0
683     "-v 199,raw48,SATA_CRC_Error_Count "
684     "-v 201,raw24/raw32,Unc_Soft_Read_Err_Rate "
685     "-v 204,raw24/raw32,Soft_ECC_Correct_Rate "
686     "-v 218,raw48,Unknown_SandForce_Attr " // Corsair Force LS SSD/S9FM01.8, *2.0
687     "-v 230,raw48,Life_Curve_Status "
688     "-v 231,raw48,SSD_Life_Left "
689   //"-v 232,raw48,Available_Reservd_Space "
690     "-v 233,raw48,SandForce_Internal "
691     "-v 234,raw48,SandForce_Internal "
692     "-v 235,raw48,SuperCap_Health "
693     "-v 241,raw48,Lifetime_Writes_GiB "
694     "-v 242,raw48,Lifetime_Reads_GiB"
695   },
696   { "StorFly CFast SATA 6Gbps SSDs",
697     // http://datasheet.octopart.com/VSFCS2CC060G-100-Virtium-datasheet-82287733.pdf
698     // tested with StorFly VSFCS2CC060G-100/0409-000
699     "StorFly VSFCS2C[CI](016|030|060|120|240)G-...",
700     // C - commercial, I industrial
701     "", "",
702     "-v 192,raw48,Unsafe_Shutdown_Count "
703     "-v 160,raw48,Uncorrectable_Error_Cnt "
704     // 0729 - remaining in block life. In 0828  remaining is normalized to 100% then decreases
705     "-v 161,raw48,Spares_Remaining "
706     "-v 241,raw48,Host_Writes_32MiB "
707     "-v 242,raw48,Host_Reads_32MiB "
708     "-v 169,raw48,Lifetime_Remaining% "
709     "-v 248,raw48,Lifetime_Remaining% " //  later then 0409 FW.
710     "-v 249,raw48,Spares_Remaining_Perc " //  later then 0409 FW.
711   },
712   { "Phison Driven SSDs", // see MKP_521_Phison_SMART_attribute.pdf
713     "BP4 mSATA SSD|" // MyDigital BP4, tested with BP4 mSATA SSD/S8FM06.9
714     "Corsair Force LE200 SSD|" // tested with Corsair Force LE200 SSD/SBFM10, .../SBFM60.9
715     "GIGABYTE GP-GSTFS31((120|240|256|480)G|100T)NTD|" // tested with GIGABYTE GP-GSTFS31120GNTD/SBFM61.3
716     "GOODRAM IRIDIUM PRO|" // tested with GOODRAM IRIDIUM PRO/SAFM01.5
717     "IR-SSDPR-S25A-(120|240|480|960)|" // Goodram IRIDM, tested with IR-SSDPR-S25A-120/SBFM91.3,
718       // IR-SSDPR-S25A-240/SBFM91.2
719     "KINGSTON O(C|M[48S])P0S3(64|128|256|512)B-[0A]0|" // tested with KINGSTON OCP0S364B-A0/SBFK62A3,
720       // KINGSTON OM4P0S3256B-A0/SBFK62A3, KINGSTON OM8P0S364B-A0/SBFK62A3,
721       // KINGSTON OMSP0S3128B-00/SBFK62A3
722     "KINGSTON SEDC400S37(400|480|800|960|1600|1800)G|" // DC400, tested with
723       // KINGSTON SEDC400S37480G/SAFM02.[GH], KINGSTON SEDC400S37960G/SAFM32.I
724     "KINGSTON SEDC(450R|500[MR])(480|960|1920|3840|7680)G|" // DC450R, DC500M/R, tested with
725       // KINGSTON SEDC450R480G/SCEKH3. KINGSTON SEDC500M1920G/SCEKJ2.3,
726       // KINGSTON SEDC500R480G/SCEKJ2.3, KINGSTON SEDC450R7680G/SCEKH3.4
727     "KINGSTON SUV300S37A(120|240|480)G|" // UV300 SSD, tested with KINGSTON SUV300S37A120G/SAFM11.K
728     "KINGSTON SKC310S3B?7A960G|" // SSDNow KC310, KINGSTON SKC310S37A960G/SAFM00.r
729     "KINGSTON SKC400S37(128G|256G|512G|1T)|" // SSDNow KC400, KINGSTON SKC400S37128G
730     "KINGSTON SV310S3(7A|D7|N7A|B7A)960G|" // SSDNow V310
731     "KINGSTON SHSS3B?7A(120|240|480|960)G|" // HyperX Savage
732     "KINGSTON  ?SA400(M8|S37)(120|240|480|960)G|" // Kingston A400 SSD, Phison S11 or
733       // Silicon Motion controller (see ticket #801), tested with
734       // KINGSTON SA400S37240G/SBFK10D7, KINGSTON SA400S37120G/SBFK71E0, */SBFKB1D1
735       // KINGSTON  SA400S37480G/SBFK10D7 (two spaces), KINGSTON SA400M8240G/SBFK61E1
736     "Patriot (Flare|Blast|Blaze|Burst)|" // tested with Patriot Flare/SBFM91.2,
737       // Patriot Blast/SAFM11.3, Patriot Blaze/S9FM02, Patriot Burst/SBFM11.2
738     "PNY CS(900|1311|2211) (120|240|480|960)GB SSD|" // tested with PNY CS900 120GB SSD/CS900612,
739       // PNY CS900 240GB SSD/CS900613, PNY CS1311 120GB SSD/CS131122, PNY CS2211 240GB SSD/CS221016
740     "SSD Smartbuy (60|64|120|128|240|256|480|512|960|1024|2000)GB|" // PS3111-S11, tested with
741       // SSD Smartbuy 240GB/SBFM91.1, SSD Smartbuy 64GB/SBFM21.1
742     "SSD PHISON 256GB PS3110-S10C|" // tested with SSD PHISON 256GB PS3110-S10C/SAFM12.2
743     "SSDPR-CX400-(128|256|512|1024)|" // Goodram CX400, tested with SSDPR-CX400-512/SBFM61.3
744     "SSM28(128|256|512)GPTCB3B-S11[24]61[123]", // tested with SSM28256GPTCB3B-S112612/SBFM61.2
745     "", "",
746   //"-v 1,raw48,Raw_Read_Error_Rate "
747     "-v 2,raw48,Not_In_Use "
748     "-v 3,raw48,Not_In_Use "
749     "-v 5,raw48,Not_In_Use "
750     "-v 7,raw48,Not_In_Use "
751     "-v 8,raw48,Not_In_Use "
752   //"-v 9,raw24(raw8),Power_On_Hours "
753     "-v 5,raw48,Retired_Block_Count "
754   //"-v 9,raw24(raw8),Power_On_Hours "
755     "-v 10,raw48,Not_In_Use "
756   //"-v 12,raw48,Power_Cycle_Count "
757     "-v 167,raw48,Write_Protect_Mode " // DC500
758     "-v 168,raw48,SATA_Phy_Error_Count "
759     "-v 169,raw48,Bad_Block_Rate " // DC500
760     "-v 170,raw24/raw24:z54z10,Bad_Blk_Ct_Erl/Lat " // Early bad block/Later bad block
761     "-v 172,raw48,Erase_Fail_Count " // DC500
762     "-v 173,raw16(avg16),MaxAvgErase_Ct "
763     "-v 175,raw48,Not_In_Use "
764     "-v 181,raw48,Program_Fail_Count " // DC500
765     "-v 182,raw48,Erase_Fail_Count " // DC500
766     "-v 183,raw48,Unknown_Phison_Attr "
767   //"-v 187,raw48,Reported_Uncorrect "
768     "-v 192,raw48,Unsafe_Shutdown_Count "
769     "-v 193,raw48,Power_Fail_Uncompl_Cnt "
770   //"-v 194,tempminmax,Temperature_Celsius "
771     "-v 195,raw48,Power_Fail_Health "
772   //"-v 196,raw16(raw16),Reallocated_Event_Count "
773     "-v 197,raw48,Not_In_Use "
774     "-v 199,raw48,SATA_CRC_Error_Count "
775     "-v 207,raw48,Thermal_Throttling_Cnt "
776     "-v 218,raw48,CRC_Error_Count "
777     "-v 231,raw48,SSD_Life_Left "
778     "-v 232,raw48,Read_Fail_Count "
779     "-v 233,raw48,Flash_Writes_GiB "
780     "-v 240,raw48,Not_In_Use "
781     "-v 241,raw48,Lifetime_Writes_GiB "
782     "-v 242,raw48,Lifetime_Reads_GiB "
783     "-v 244,raw48,Average_Erase_Count "
784     "-v 245,raw48,Max_Erase_Count "
785     "-v 246,raw48,Total_Erase_Count "
786   },
787   // this is a copy of the Phison bases record for the OEM drives with a very
788   // weak information in the model. Detection is based on Firmware.
789   { "Phison Driven OEM SSDs", // see MKP_521_Phison_SMART_attribute.pdf
790     "GOODRAM|" // tested with GOODRAM CX200 (GOODRAM/SAFM12.2)
791     "Hoodisk SSD|" // tested with Hoodisk SSD/SBFM01.3
792     "INTENSO|" // tested with Intenso SSD SATA III Top (INTENSO/S9FM02.6, .../SAFM01.6)
793     "INTENSO SATA III SSD|" // tested with INTENSO SATA III SSD/SBFM11.2, .../SBFM81.3
794     "SATA SSD|" // tested with Supermicro SSD-DM032-PHI (SATA SSD/S9FM02.1),
795       // PC Engines msata16d (SATA SSD/S9FM02.3), FoxLine flssd240x4s(SATA SSD/SBFM10.5)
796     "SPCC Solid State Disk", // Silicon Power A55, tested with SPCC Solid State Disk/SBFM61.2
797     "S[89AB]FM[0-9][0-9]\\.[0-9]",
798     "",
799   //"-v 1,raw48,Raw_Read_Error_Rate "
800     "-v 2,raw48,Not_In_Use "
801     "-v 3,raw48,Not_In_Use "
802     "-v 5,raw48,Not_In_Use "
803     "-v 7,raw48,Not_In_Use "
804     "-v 8,raw48,Not_In_Use "
805   //"-v 9,raw24(raw8),Power_On_Hours "
806     "-v 5,raw48,Retired_Block_Count "
807   //"-v 9,raw24(raw8),Power_On_Hours "
808     "-v 10,raw48,Not_In_Use "
809   //"-v 12,raw48,Power_Cycle_Count "
810     "-v 168,raw48,SATA_Phy_Error_Count "
811     "-v 170,raw24/raw24:z54z10,Bad_Blk_Ct_Erl/Lat " // Early bad block/Later bad block
812     "-v 173,raw16(avg16),MaxAvgErase_Ct "
813     "-v 175,raw48,Not_In_Use "
814     "-v 183,raw48,Unknown_Attribute "
815   //"-v 187,raw48,Reported_Uncorrect "
816     "-v 192,raw48,Unsafe_Shutdown_Count "
817   //"-v 194,tempminmax,Temperature_Celsius "
818     "-v 196,raw48,Not_In_Use "
819     "-v 197,raw48,Not_In_Use "
820     "-v 199,raw48,CRC_Error_Count "
821     "-v 218,raw48,CRC_Error_Count "
822     "-v 231,raw48,SSD_Life_Left "
823     "-v 233,raw48,Flash_Writes_GiB "
824     "-v 240,raw48,Not_In_Use "
825     "-v 241,raw48,Lifetime_Writes_GiB "
826     "-v 242,raw48,Lifetime_Reads_GiB "
827     "-v 244,raw48,Average_Erase_Count "
828     "-v 245,raw48,Max_Erase_Count "
829     "-v 246,raw48,Total_Erase_Count "
830   },
831   { "Indilinx Barefoot based SSDs",
832     "Corsair CSSD-V(32|60|64|128|256)GB2|" // Corsair Nova, tested with Corsair CSSD-V32GB2/2.2
833     "Corsair CMFSSD-(32|64|128|256)D1|" // Corsair Extreme, tested with Corsair CMFSSD-128D1/1.0
834     "CRUCIAL_CT(64|128|256)M225|" // tested with CRUCIAL_CT64M225/1571
835     "G.SKILL FALCON (64|128|256)GB SSD|" // tested with G.SKILL FALCON 128GB SSD/2030
836     "OCZ[ -](AGILITY|ONYX|VERTEX( 1199|-TURBO| v1\\.10)?)|" // tested with
837       // OCZ-ONYX/1.6, OCZ-VERTEX 1199/00.P97, OCZ-VERTEX/1.30, OCZ VERTEX-TURBO/1.5, OCZ-VERTEX v1.10/1370
838     "Patriot[ -]Torqx.*|"
839     "RENICE Z2|" // tested with RENICE Z2/2030
840     "STT_FT[MD](28|32|56|64)GX25H|" // Super Talent Ultradrive GX, tested with STT_FTM64GX25H/1916
841     "TS(18|25)M(64|128)MLC(16|32|64|128|256|512)GSSD|" // ASAX Leopard Hunt II, tested with TS25M64MLC64GSSD/0.1
842     "FM-25S2I-(64|128)GBFII|" // G.Skill FALCON II, tested with FM-25S2I-64GBFII
843     "TS(60|120)GSSD25D-M", // Transcend Ultra SSD (SATA II), see also Ticket #80
844     "", "",
845     "-v 1,raw64 " // Raw_Read_Error_Rate
846     "-v 9,raw64 " // Power_On_Hours
847     "-v 12,raw64 " // Power_Cycle_Count
848     "-v 184,raw64,Initial_Bad_Block_Count "
849     "-v 195,raw64,Program_Failure_Blk_Ct "
850     "-v 196,raw64,Erase_Failure_Blk_Ct "
851     "-v 197,raw64,Read_Failure_Blk_Ct "
852     "-v 198,raw64,Read_Sectors_Tot_Ct "
853     "-v 199,raw64,Write_Sectors_Tot_Ct "
854     "-v 200,raw64,Read_Commands_Tot_Ct "
855     "-v 201,raw64,Write_Commands_Tot_Ct "
856     "-v 202,raw64,Error_Bits_Flash_Tot_Ct "
857     "-v 203,raw64,Corr_Read_Errors_Tot_Ct "
858     "-v 204,raw64,Bad_Block_Full_Flag "
859     "-v 205,raw64,Max_PE_Count_Spec "
860     "-v 206,raw64,Min_Erase_Count "
861     "-v 207,raw64,Max_Erase_Count "
862     "-v 208,raw64,Average_Erase_Count "
863     "-v 209,raw64,Remaining_Lifetime_Perc "
864     "-v 210,raw64,Indilinx_Internal "
865     "-v 211,raw64,SATA_Error_Ct_CRC "
866     "-v 212,raw64,SATA_Error_Ct_Handshake "
867     "-v 213,raw64,Indilinx_Internal"
868   },
869   { "Indilinx Barefoot_2/Everest/Martini based SSDs",
870     "OCZ VERTEX[ -]PLUS|" // tested with OCZ VERTEX-PLUS/3.55, OCZ VERTEX PLUS/3.55
871     "OCZ-VERTEX PLUS R2|" // Barefoot 2, tested with OCZ-VERTEX PLUS R2/1.2
872     "OCZ-OCTANE|" // Everest 1, tested with OCZ-OCTANE/1.13
873     "OCZ-PETROL|" // Everest 1, tested with OCZ-PETROL/3.12
874     "OCZ-AGILITY4|" // Everest 2, tested with OCZ-AGILITY4/1.5.2
875     "OCZ-VERTEX4", // Everest 2, tested with OCZ-VERTEX4/1.5
876     "", "",
877   //"-v 1,raw48,Raw_Read_Error_Rate "
878   //"-v 3,raw16(avg16),Spin_Up_Time "
879   //"-v 4,raw48,Start_Stop_Count "
880   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
881   //"-v 9,raw24(raw8),Power_On_Hours "
882   //"-v 12,raw48,Power_Cycle_Count "
883     "-v 232,raw48,Lifetime_Writes " // LBA?
884   //"-v 233,raw48,Media_Wearout_Indicator"
885   },
886   { "Indilinx Barefoot 3 based SSDs",
887     "OCZ-VECTOR(1[58]0)?|" // tested with OCZ-VECTOR/1.03, OCZ-VECTOR150/1.2, OCZ-VECTOR180
888     "OCZ-VERTEX4[56]0A?|" // Barefoot 3 M10, tested with OCZ-VERTEX450/1.0, OCZ-VERTEX460/1.0, VERTEX460A
889     "OCZ-SABER1000|"
890     "OCZ-ARC100|"
891     "Radeon R7", // Barefoot 3 M00, tested with Radeon R7/1.00
892     "", "",
893     "-v 5,raw48,Runtime_Bad_Block "
894   //"-v 9,raw24(raw8),Power_On_Hours "
895   //"-v 12,raw48,Power_Cycle_Count "
896     "-v 171,raw48,Avail_OP_Block_Count "
897     "-v 174,raw48,Pwr_Cycle_Ct_Unplanned "
898     "-v 187,raw48,Total_Unc_NAND_Reads "
899     "-v 195,raw48,Total_Prog_Failures "
900     "-v 196,raw48,Total_Erase_Failures "
901     "-v 197,raw48,Total_Unc_Read_Failures "
902     "-v 198,raw48,Host_Reads_GiB "
903     "-v 199,raw48,Host_Writes_GiB "
904     "-v 205,raw48,Max_Rated_PE_Count "
905     "-v 206,raw48,Min_Erase_Count "
906     "-v 207,raw48,Max_Erase_Count "
907     "-v 208,raw48,Average_Erase_Count "
908     "-v 210,raw48,SATA_CRC_Error_Count "
909     "-v 212,raw48,Pages_Requiring_Rd_Rtry "
910     "-v 213,raw48,Snmple_Retry_Attempts "
911     "-v 214,raw48,Adaptive_Retry_Attempts "
912     "-v 222,raw48,RAID_Recovery_Count "
913     "-v 224,raw48,In_Warranty "
914     "-v 225,raw48,DAS_Polarity "
915     "-v 226,raw48,Partial_Pfail "
916     "-v 230,raw48,Write_Throttling "
917     "-v 233,raw48,Remaining_Lifetime_Perc "
918     "-v 241,raw48,Host_Writes_GiB " // M00/M10
919     "-v 242,raw48,Host_Reads_GiB "  // M00/M10
920     "-v 249,raw48,Total_NAND_Prog_Ct_GiB "
921     "-v 251,raw48,Total_NAND_Read_Ct_GiB"
922   },
923   { "OCZ Intrepid 3000 SSDs", // tested with OCZ INTREPID 3600/1.4.3.6, 3800/1.4.3.0, 3700/1.5.0.4
924     "OCZ INTREPID 3[678]00",
925     "", "",
926     "-v 5,raw48,Runtime_Bad_Block "
927   //"-v 9,raw24(raw8),Power_On_Hours "
928   //"-v 12,raw48,Power_Cycle_Count "
929     "-v 100,raw48,Total_Blocks_Erased "
930     "-v 171,raw48,Avail_OP_Block_Count "
931     "-v 174,raw48,Pwr_Cycle_Ct_Unplanned "
932     "-v 184,raw48,Factory_Bad_Block_Count "
933     "-v 187,raw48,Total_Unc_NAND_Reads "
934     "-v 190,tempminmax,Temperature_Celsius "
935     "-v 195,raw48,Total_Prog_Failures "
936     "-v 196,raw48,Total_Erase_Failures "
937     "-v 197,raw48,Total_Unc_Read_Failures "
938     "-v 198,raw48,Host_Reads_GiB "
939     "-v 199,raw48,Host_Writes_GiB "
940     "-v 202,raw48,Total_Read_Bits_Corr_Ct "
941     "-v 205,raw48,Max_Rated_PE_Count "
942     "-v 206,raw48,Min_Erase_Count "
943     "-v 207,raw48,Max_Erase_Count "
944     "-v 208,raw48,Average_Erase_Count "
945     "-v 210,raw48,SATA_CRC_Error_Count "
946     "-v 211,raw48,SATA_UNC_Count "
947     "-v 212,raw48,NAND_Reads_with_Retry "
948     "-v 213,raw48,Simple_Rd_Rtry_Attempts "
949     "-v 214,raw48,Adaptv_Rd_Rtry_Attempts "
950     "-v 221,raw48,Int_Data_Path_Prot_Unc "
951     "-v 222,raw48,RAID_Recovery_Count "
952     "-v 230,raw48,SuperCap_Charge_Status " // 0=not charged, 1=fully charged, 2=unknown
953     "-v 233,raw48,Remaining_Lifetime_Perc "
954     "-v 249,raw48,Total_NAND_Prog_Ct_GiB "
955     "-v 251,raw48,Total_NAND_Read_Ct_GiB"
956   },
957   { "OCZ/Toshiba Trion SSDs",
958     "OCZ-TRION1[05]0|" // tested with OCZ-TRION100/SAFM11.2A, TRION150/SAFZ72.2
959     "TOSHIBA-TR150|" // tested with TOSHIBA-TR150/SAFZ12.3
960     "TOSHIBA Q300( Pro\\.)?", // tested with TOSHIBA Q300 Pro./JYRA0101
961     "", "",
962   //"-v 9,raw24(raw8),Power_On_Hours "
963   //"-v 12,raw48,Power_Cycle_Count "
964     "-v 167,raw48,SSD_Protect_Mode "
965     "-v 168,raw48,SATA_PHY_Error_Count "
966     "-v 169,raw48,Bad_Block_Count "
967     "-v 173,raw48,Erase_Count "
968     "-v 192,raw48,Unexpect_Power_Loss_Ct "
969   //"-v 194,tempminmax,Temperature_Celsius "
970     "-v 241,raw48,Host_Writes"
971   },
972   { "InnoDisk InnoLite SATADOM D150QV SSDs", // tested with InnoLite SATADOM D150QV-L/120319
973                                              // InnoLite SATADOM D150QV/120319
974     "InnoLite SATADOM D150QV.*",
975     "", "",
976   //"-v 1,raw48,Raw_Read_Error_Rate "
977   //"-v 2,raw48,Throughput_Performance "
978   //"-v 3,raw16(avg16),Spin_Up_Time "
979   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
980   //"-v 7,raw48,Seek_Error_Rate " // from InnoDisk iSMART Linux tool, useless for SSD
981   //"-v 8,raw48,Seek_Time_Performance "
982   //"-v 9,raw24(raw8),Power_On_Hours "
983   //"-v 10,raw48,Spin_Retry_Count "
984   //"-v 12,raw48,Power_Cycle_Count "
985     "-v 168,raw48,SATA_PHY_Error_Count "
986     "-v 170,raw16,Bad_Block_Count_New/Tot "
987     "-v 173,raw16,Erase_Count_Max/Avg "
988     "-v 175,raw48,Bad_Cluster_Table_Count "
989     "-v 192,raw48,Unexpect_Power_Loss_Ct "
990   //"-v 194,tempminmax,Temperature_Celsius "
991   //"-v 197,raw48,Current_Pending_Sector "
992     "-v 229,hex48,Flash_ID "
993     "-v 235,raw16,Lat_Bad_Blk_Era/Wri/Rea "
994     "-v 236,raw48,Unstable_Power_Count "
995     "-v 240,raw48,Write_Head"
996   },
997   { "Innodisk 1ME3/3ME/3SE SSDs", // tested with 2.5" SATA SSD 3ME/S140714,
998       // Mini PCIeDOM 1ME3/S15604, InnoDisk Corp. - mSATA 3SE/S130710
999     "((1\\.8|2\\.5)\"? SATA SSD|InnoDisk Corp\\. - mSATA|Mini PCIeDOM|SATA Slim) (1ME3|3[MS]E)",
1000     "", "",
1001   //"-v 1,raw48,Raw_Read_Error_Rate "
1002   //"-v 2,raw48,Throughput_Performance "
1003   //"-v 3,raw16(avg16),Spin_Up_Time "
1004   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1005     "-v 7,raw48,Seek_Error_Rate "       // ?
1006     "-v 8,raw48,Seek_Time_Performance " // ?
1007   //"-v 9,raw24(raw8),Power_On_Hours "
1008     "-v 10,raw48,Spin_Retry_Count "     // ?
1009   //"-v 12,raw48,Power_Cycle_Count "
1010     "-v 168,raw48,SATA_PHY_Error_Count "
1011     "-v 169,hex48,Unknown_Innodisk_Attr "
1012     "-v 170,raw16,Bad_Block_Count "
1013     "-v 173,raw16,Erase_Count "
1014     "-v 175,raw48,Bad_Cluster_Table_Count "
1015     "-v 176,raw48,Uncorr_RECORD_Count "
1016   //"-v 192,raw48,Power-Off_Retract_Count "
1017   //"-v 194,tempminmax,Temperature_Celsius " // ] only in spec
1018   //"-v 197,raw48,Current_Pending_Sector "
1019     "-v 225,raw48,Unknown_Innodisk_Attr "
1020     "-v 229,hex48,Flash_ID "
1021     "-v 235,raw48,Later_Bad_Block "
1022     "-v 236,raw48,Unstable_Power_Count "
1023     "-v 240,raw48,Write_Head"
1024   },
1025   { "Innodisk 3IE2/3ME2/3MG2/3SE2/3TG6 SSDs", // tested with 2.5" SATA SSD 3MG2-P/M140402,
1026       // 1.8 SATA SSD 3IE2-P/M150821, 2.5" SATA SSD 3IE2-P/M150821,
1027       // SATA Slim 3MG2-P/M141114, M.2 (S80) 3MG2-P/M141114, M.2 (S42) 3SE2-P/M150821,
1028       // M.2 (S42) 3ME2/M151013, SATA Slim 3TG6-P/A19926J
1029     "((1\\.8|2\\.5)\"? SATA SSD|SATA Slim|M\\.2 \\(S(42|80)\\)) 3(IE2|ME2|MG2|SE2|TG6)(-P)?",
1030     "", "",
1031   //"-v 1,raw48,Raw_Read_Error_Rate "
1032   //"-v 2,raw48,Throughput_Performance "
1033   //"-v 9,raw24(raw8),Power_On_Hours "
1034   //"-v 12,raw48,Power_Cycle_Count "
1035     "-v 160,raw48,Uncorrectable_Error_Cnt "
1036     "-v 161,raw48,Number_of_Pure_Spare "
1037     "-v 163,raw48,Total_Bad_Block_Count "
1038     "-v 164,raw48,Total_Erase_Count "
1039     "-v 165,raw48,Max_Erase_Count "
1040     "-v 166,raw48,Min_Erase_Count "
1041     "-v 167,raw48,Average_Erase_Count "
1042     "-v 168,raw48,Max_Erase_Count_of_Spec "
1043     "-v 169,raw48,Remaining_Lifetime_Perc "
1044     "-v 170,raw48,Spare_Block_Count "
1045     "-v 171,raw48,Program_Fail_Count "
1046     "-v 172,raw48,Erase_Fail_Count "
1047   //"-v 175,raw48,Program_Fail_Count_Chip "
1048   //"-v 176,raw48,Erase_Fail_Count_Chip "
1049   //"-v 177,raw48,Wear_Leveling_Count "
1050     "-v 178,raw48,Runtime_Invalid_Blk_Cnt "
1051   //"-v 181,raw48,Program_Fail_Cnt_Total "
1052   //"-v 182,raw48,Erase_Fail_Count_Total "
1053   //"-v 187,raw48,Reported_Uncorrect " // ] only in spec
1054   //"-v 192,raw48,Power-Off_Retract_Count "
1055   //"-v 194,tempminmax,Temperature_Celsius "
1056   //"-v 195,raw48,Hardware_ECC_Recovered "
1057   //"-v 196,raw16(raw16),Reallocated_Event_Count "
1058   //"-v 197,raw48,Current_Pending_Sector "
1059   //"-v 198,raw48,Offline_Uncorrectable "
1060   //"-v 199,raw48,UDMA_CRC_Error_Count "
1061     "-v 225,raw48,Host_Writes_32MiB "  // ]
1062     "-v 229,raw48,Flash_ID "  // ]
1063   //"-v 232,raw48,Available_Reservd_Space "
1064     "-v 233,raw48,Flash_Writes_32MiB " // ]
1065     "-v 234,raw48,Flash_Reads_32MiB "  // ]
1066     "-v 235,raw48,Later_Bad_Block_Info "  // ]
1067     "-v 241,raw48,Host_Writes_32MiB "
1068     "-v 242,raw48,Host_Reads_32MiB "
1069     "-v 245,raw48,Flash_Writes_32MiB "
1070     "-v 248,raw48,Remaining_Life "
1071     "-v 249,raw48,Spare_Blocks_Remaining"
1072   },
1073   { "Innodisk 1IE3/3IE3/3ME3/3IE4/3ME4 SSDs", // tested with 2.5" SATA SSD 3ME3/S15A19,
1074       // InnoDisk Corp. - mSATA 3ME3/S15A19, mSATA mini 3ME3/S15A19, M.2 (S42) 3ME3,
1075       // SATA Slim 3ME3/S15A19, SATADOM-MH 3ME3/S15A19, SATADOM-ML 3ME3/S15A19,
1076       // SATADOM-MV 3ME3/S15A19, SATADOM-SL 3ME3/S15A19, SATADOM-SV 3ME3/S15A19,
1077       // SATADOM-SL 3IE3/S151019N, 2.5" SATA SSD 3IE3/S15C14i, CFast 3IE3/S15C14i,
1078       // InnoDisk Corp. - mSATA 3IE3/S15C14i, Mini PCIeDOM 1IE3/S15C14i, CFast 3ME3/S15A19
1079       // mSATA mini 3IE3/S15C14i, M.2 (S42) 3IE3/S15C14i, SATA Slim 3IE3/S15C14i,
1080       // SATADOM-SH 3IE3 V2/S15C14i, SATADOM-SL 3IE3 V2/S15A19i, SATADOM-SV 3IE3 V2/S15C14i
1081       // mSATA 3ME4/L16711, M.2 (S42) 3ME4/L16711, SATADOM-MH 3ME4/L16B01,
1082       // SATADOM-SH 3ME4/L16B01, SATADOM-SH Type C 3ME4/L16B01, SATADOM-SH Type D 3ME4/L16B01,
1083       // mSATA 3IE4/L16B01Hi
1084     "(2.5\" SATA SSD|CFast|InnoDisk Corp\\. - mSATA|Mini PCIeDOM|mSATA( mini)?|"
1085     "M\\.2 \\(S42\\)|SATA Slim|SATADOM-[MS][HLV]( Type [CD])?) (1IE3|3[IM]E[34])( V2)?",
1086     "", "",
1087   //"-v 1,raw48,Raw_Read_Error_Rate "
1088   //"-v 2,raw48,Throughput_Performance "
1089   //"-v 3,raw16(avg16),Spin_Up_Time "
1090     "-v 5,raw48,Later_Bad_Block "
1091     "-v 7,raw48,Seek_Error_Rate "       // ?
1092     "-v 8,raw48,Seek_Time_Performance " // ?
1093   //"-v 9,raw24(raw8),Power_On_Hours "
1094     "-v 10,raw48,Spin_Retry_Count "     // ?
1095   //"-v 12,raw48,Power_Cycle_Count "
1096     "-v 163,raw48,Total_Bad_Block_Count "
1097     "-v 165,raw48,Max_Erase_Count "
1098     "-v 167,raw48,Average_Erase_Count "
1099     "-v 168,raw48,SATA_PHY_Error_Count "
1100     "-v 169,raw48,Remaining_Lifetime_Perc "
1101     "-v 170,raw48,Spare_Block_Count "
1102     "-v 171,raw48,Program_Fail_Count "
1103     "-v 172,raw48,Erase_Fail_Count "
1104     "-v 175,raw48,Bad_Cluster_Table_Count "
1105     "-v 176,raw48,RANGE_RECORD_Count "
1106   //"-v 187,raw48,Reported_Uncorrect "
1107   //"-v 192,raw48,Power-Off_Retract_Count "
1108   //"-v 194,tempminmax,Temperature_Celsius "
1109   //"-v 197,raw48,Current_Pending_Sector "
1110     "-v 225,raw48,Data_Log_Write_Count "
1111     "-v 229,hex48,Flash_ID "
1112     "-v 232,raw48,Spares_Remaining_Perc "
1113     "-v 235,raw16,Later_Bad_Blk_Inf_R/W/E " // Read/Write/Erase
1114     "-v 240,raw48,Write_Head "
1115     "-v 241,raw48,Host_Writes_32MiB "
1116     "-v 242,raw48,Host_Reads_32MiB"
1117   },
1118   { "InnoDisk iCF 9000 / 1SE2 Cards", // tested with InnoDisk Corp. - iCF9000 1GB/140808,
1119       // InnoDisk Corp. - iCF9000 64GB/140808, InnoDisk Corp. - EDC 1SE2 H 64GB/131216
1120     "InnoDisk Corp\\. - (iCF9000|EDC 1SE2 H) (1|2|4|8|16|32|64)GB",
1121     "", "",
1122   //"-v 1,raw48,Raw_Read_Error_Rate "
1123   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1124   //"-v 12,raw48,Power_Cycle_Count "
1125     "-v 160,raw48,Uncorrectable_Error_Cnt "
1126     "-v 161,raw48,Valid_Spare_Block_Cnt "
1127     "-v 162,raw48,Child_Pair_Count "
1128     "-v 163,raw48,Initial_Bad_Block_Count "
1129     "-v 164,raw48,Total_Erase_Count "
1130     "-v 165,raw48,Max_Erase_Count "
1131     "-v 166,raw48,Min_Erase_Count "
1132     "-v 167,raw48,Average_Erase_Count "
1133   //"-v 192,raw48,Power-Off_Retract_Count "
1134   //"-v 194,tempminmax,Temperature_Celsius "
1135   //"-v 195,raw48,Hardware_ECC_Recovered "
1136   //"-v 196,raw16(raw16),Reallocated_Event_Count "
1137   //"-v 198,raw48,Offline_Uncorrectable "
1138   //"-v 199,raw48,UDMA_CRC_Error_Count "
1139   //"-v 229,raw48,Flash_ID " // only in spec
1140     "-v 241,raw48,Host_Writes_32MiB "
1141     "-v 242,raw48,Host_Reads_32MiB"
1142   },
1143   { "Intel X25-E SSDs", // tested with
1144       // INTELSSDSA2SH064G1IB 43W7659 44E9163IBM/447C8860
1145     "(INTEL)?SSDSA2SH(032|064)G1.* (.*IBM|INTEL)", // G1 = first generation
1146     "", "",
1147   //"-v 3,raw16(avg16),Spin_Up_Time "
1148   //"-v 4,raw48,Start_Stop_Count "
1149   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1150   //"-v 9,raw24(raw8),Power_On_Hours "
1151   //"-v 12,raw48,Power_Cycle_Count "
1152     "-v 192,raw48,Unsafe_Shutdown_Count "
1153     "-v 225,raw48,Host_Writes_32MiB "
1154     "-v 226,raw48,Intel_Internal "
1155     "-v 227,raw48,Intel_Internal "
1156     "-v 228,raw48,Intel_Internal "
1157   //"-v 232,raw48,Available_Reservd_Space "
1158   //"-v 233,raw48,Media_Wearout_Indicator"
1159   },
1160   { "Intel X18-M/X25-M G1 SSDs",
1161     "INTEL SSDSA[12]MH(080|160)G1.*",  // G1 = first generation, 50nm
1162     "", "",
1163   //"-v 3,raw16(avg16),Spin_Up_Time "
1164   //"-v 4,raw48,Start_Stop_Count "
1165   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1166   //"-v 9,raw24(raw8),Power_On_Hours "
1167   //"-v 12,raw48,Power_Cycle_Count "
1168     "-v 192,raw48,Unsafe_Shutdown_Count "
1169     "-v 225,raw48,Host_Writes_32MiB "
1170     "-v 226,raw48,Intel_Internal "
1171     "-v 227,raw48,Intel_Internal "
1172     "-v 228,raw48,Intel_Internal "
1173   //"-v 232,raw48,Available_Reservd_Space "
1174   //"-v 233,raw48,Media_Wearout_Indicator"
1175   },
1176   { "Intel X18-M/X25-M/X25-V G2 SSDs", // fixed firmware
1177       // tested with INTEL SSDSA2M(080|160)G2GC/2CV102J8 (X25-M)
1178     "INTEL SSDSA[12]M(040|080|120|160)G2.*",  // G2 = second generation, 34nm
1179     "2CV102(J[89A-Z]|[K-Z].)", // >= "2CV102J8"
1180     "",
1181   //"-v 3,raw16(avg16),Spin_Up_Time "
1182   //"-v 4,raw48,Start_Stop_Count "
1183   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1184   //"-v 9,raw24(raw8),Power_On_Hours "
1185   //"-v 12,raw48,Power_Cycle_Count "
1186   //"-v 184,raw48,End-to-End_Error " // G2 only
1187     "-v 192,raw48,Unsafe_Shutdown_Count "
1188     "-v 225,raw48,Host_Writes_32MiB "
1189     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1190     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1191     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1192   //"-v 232,raw48,Available_Reservd_Space "
1193   //"-v 233,raw48,Media_Wearout_Indicator"
1194   },
1195   { "Intel X18-M/X25-M/X25-V G2 SSDs", // buggy or unknown firmware
1196       // tested with INTEL SSDSA2M040G2GC/2CV102HD (X25-V)
1197     "INTEL SSDSA[12]M(040|080|120|160)G2.*",
1198     "",
1199     "This drive may require a firmware update to\n"
1200     "fix possible drive hangs when reading SMART self-test log:\n"
1201     "https://downloadcenter.intel.com/download/26491",
1202     "-v 192,raw48,Unsafe_Shutdown_Count "
1203     "-v 225,raw48,Host_Writes_32MiB "
1204     "-v 226,raw48,Workld_Media_Wear_Indic "
1205     "-v 227,raw48,Workld_Host_Reads_Perc "
1206     "-v 228,raw48,Workload_Minutes"
1207   },
1208   { "Intel 311/313 Series SSDs", // tested with INTEL SSDSA2VP020G2/2CV102M5,
1209       // INTEL SSDSA2VP020G3/9CV10379, INTEL SSDMAEXC024G3H/9CV10379
1210     "INTEL SSD(SA2VP|MAEXC)(020|024)G[23]H?",
1211       // SA2VP = 2.5", MAEXC = mSATA, G2 = 311, G3 = 313
1212     "", "",
1213   //"-v 3,raw16(avg16),Spin_Up_Time "
1214   //"-v 4,raw48,Start_Stop_Count "
1215   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1216   //"-v 9,raw24(raw8),Power_On_Hours "
1217   //"-v 12,raw48,Power_Cycle_Count "
1218     "-v 170,raw48,Reserve_Block_Count "
1219     "-v 171,raw48,Program_Fail_Count "
1220     "-v 172,raw48,Erase_Fail_Count "
1221     "-v 183,raw48,SATA_Downshift_Count "
1222   //"-v 184,raw48,End-to-End_Error "
1223   //"-v 187,raw48,Reported_Uncorrect "
1224     "-v 192,raw48,Unsafe_Shutdown_Count "
1225     "-v 225,raw48,Host_Writes_32MiB "
1226     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1227     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1228     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1229   //"-v 232,raw48,Available_Reservd_Space "
1230   //"-v 233,raw48,Media_Wearout_Indicator "
1231     "-v 241,raw48,Host_Writes_32MiB "
1232     "-v 242,raw48,Host_Reads_32MiB"
1233   },
1234   { "Intel 320 Series SSDs", // tested with INTEL SSDSA2CT040G3/4PC10362,
1235       // INTEL SSDSA2CW160G3/4PC10362, SSDSA2BT040G3/4PC10362, SSDSA2BW120G3A/4PC10362,
1236       // INTEL SSDSA2BW300G3D/4PC10362, SSDSA2BW160G3L/4PC1LE04, SSDSA1NW160G3/4PC10362,
1237       // INTEL SSDSA2BW160G3H/4PC10365
1238     "INTEL SSDSA[12][BCN][WT](040|080|120|160|300|600)G3[ADHL]?",
1239       // 2B = 2.5" 7mm, 2C = 2.5" 9.5mm, 1N = 1.8" microSATA, *H = HP OEM
1240     "", "",
1241     "-F nologdir "
1242   //"-v 3,raw16(avg16),Spin_Up_Time "
1243   //"-v 4,raw48,Start_Stop_Count "
1244   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1245   //"-v 9,raw24(raw8),Power_On_Hours "
1246   //"-v 12,raw48,Power_Cycle_Count "
1247     "-v 170,raw48,Reserve_Block_Count "
1248     "-v 171,raw48,Program_Fail_Count "
1249     "-v 172,raw48,Erase_Fail_Count "
1250     "-v 183,raw48,SATA_Downshift_Count " // FW >= 4Px10362
1251   //"-v 184,raw48,End-to-End_Error "
1252   //"-v 187,raw48,Reported_Uncorrect "
1253     "-v 199,raw48,CRC_Error_Count "      // FW >= 4Px10362
1254     "-v 192,raw48,Unsafe_Shutdown_Count "
1255     "-v 225,raw48,Host_Writes_32MiB "
1256     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1257     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1258     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1259   //"-v 232,raw48,Available_Reservd_Space "
1260   //"-v 233,raw48,Media_Wearout_Indicator "
1261     "-v 241,raw48,Host_Writes_32MiB "
1262     "-v 242,raw48,Host_Reads_32MiB"
1263   },
1264   { "Intel 710 Series SSDs", // tested with INTEL SSDSA2BZ[12]00G3/6PB10362
1265     "INTEL SSDSA2BZ(100|200|300)G3",
1266     "", "",
1267     "-F nologdir "
1268   //"-v 3,raw16(avg16),Spin_Up_Time "
1269   //"-v 4,raw48,Start_Stop_Count "
1270   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1271   //"-v 9,raw24(raw8),Power_On_Hours "
1272   //"-v 12,raw48,Power_Cycle_Count "
1273     "-v 170,raw48,Reserve_Block_Count "
1274     "-v 171,raw48,Program_Fail_Count "
1275     "-v 172,raw48,Erase_Fail_Count "
1276     "-v 174,raw48,Unexpect_Power_Loss_Ct " // Missing in 710 specification from September 2011
1277     "-v 183,raw48,SATA_Downshift_Count "
1278   //"-v 184,raw48,End-to-End_Error "
1279   //"-v 187,raw48,Reported_Uncorrect "
1280   //"-v 190,tempminmax,Airflow_Temperature_Cel "
1281     "-v 192,raw48,Unsafe_Shutdown_Count "
1282     "-v 225,raw48,Host_Writes_32MiB "
1283     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1284     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1285     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1286   //"-v 232,raw48,Available_Reservd_Space "
1287   //"-v 233,raw48,Media_Wearout_Indicator "
1288     "-v 241,raw48,Host_Writes_32MiB "
1289     "-v 242,raw48,Host_Reads_32MiB"
1290   },
1291   { "Intel 510 Series SSDs",
1292     "INTEL SSDSC2MH(120|250)A2",
1293     "", "",
1294   //"-v 3,raw16(avg16),Spin_Up_Time "
1295   //"-v 4,raw48,Start_Stop_Count "
1296   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1297   //"-v 9,raw24(raw8),Power_On_Hours "
1298   //"-v 12,raw48,Power_Cycle_Count "
1299     "-v 192,raw48,Unsafe_Shutdown_Count "
1300     "-v 225,raw48,Host_Writes_32MiB "
1301   //"-v 232,raw48,Available_Reservd_Space "
1302   //"-v 233,raw48,Media_Wearout_Indicator"
1303   },
1304   { "Intel 520 Series SSDs", // tested with INTEL SSDSC2CW120A3/400i, SSDSC2BW480A3F/400i,
1305       // INTEL SSDSC2BW180A3L/LB3i
1306     "INTEL SSDSC2[BC]W(060|120|180|240|480)A3[FL]?",
1307     "", "",
1308   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1309     "-v 9,msec24hour32,Power_On_Hours_and_Msec "
1310   //"-v 12,raw48,Power_Cycle_Count "
1311     "-v 170,raw48,Available_Reservd_Space "
1312     "-v 171,raw48,Program_Fail_Count "
1313     "-v 172,raw48,Erase_Fail_Count "
1314     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1315   //"-v 184,raw48,End-to-End_Error "
1316     "-v 187,raw48,Uncorrectable_Error_Cnt "
1317   //"-v 192,raw48,Power-Off_Retract_Count "
1318     "-v 225,raw48,Host_Writes_32MiB "
1319     "-v 226,raw48,Workld_Media_Wear_Indic "
1320     "-v 227,raw48,Workld_Host_Reads_Perc "
1321     "-v 228,raw48,Workload_Minutes "
1322   //"-v 232,raw48,Available_Reservd_Space "
1323   //"-v 233,raw48,Media_Wearout_Indicator "
1324     "-v 241,raw48,Host_Writes_32MiB "
1325     "-v 242,raw48,Host_Reads_32MiB "
1326     "-v 249,raw48,NAND_Writes_1GiB"
1327   },
1328   { "Intel 525 Series SSDs", // mSATA, tested with SSDMCEAC120B3/LLLi
1329     "INTEL SSDMCEAC(030|060|090|120|180|240)B3",
1330     "", "",
1331   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1332     "-v 9,msec24hour32,Power_On_Hours_and_Msec "
1333   //"-v 12,raw48,Power_Cycle_Count "
1334     "-v 170,raw48,Available_Reservd_Space "
1335     "-v 171,raw48,Program_Fail_Count "
1336     "-v 172,raw48,Erase_Fail_Count "
1337     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1338     "-v 183,raw48,SATA_Downshift_Count "
1339   //"-v 184,raw48,End-to-End_Error "
1340     "-v 187,raw48,Uncorrectable_Error_Cnt "
1341   //"-v 190,tempminmax,Airflow_Temperature_Cel "
1342   //"-v 192,raw48,Power-Off_Retract_Count "
1343   //"-v 199,raw48,UDMA_CRC_Error_Count "
1344     "-v 225,raw48,Host_Writes_32MiB "
1345     "-v 226,raw48,Workld_Media_Wear_Indic "
1346     "-v 227,raw48,Workld_Host_Reads_Perc "
1347     "-v 228,raw48,Workload_Minutes "
1348   //"-v 232,raw48,Available_Reservd_Space "
1349   //"-v 233,raw48,Media_Wearout_Indicator "
1350     "-v 241,raw48,Host_Writes_32MiB "
1351     "-v 242,raw48,Host_Reads_32MiB "
1352     "-v 249,raw48,NAND_Writes_1GiB"
1353   },
1354   { "Intel 53x and Pro 1500/2500 Series SSDs", // SandForce SF-2281, tested with
1355       // INTEL SSDSC2BW180A4/DC12, SSDSC2BW240A4/DC12, SSDMCEAW120A4/DC33
1356       // INTEL SSDMCEAW240A4/DC33, SSDSC2BF480A5/TG26, SSDSC2BW240H6/RG21
1357       // INTEL SSDSC2BF180A4H/LH6i
1358     "INTEL SSD(MCEA|SC2B|SCKJ)[WF](056|080|120|180|240|360|480)(A4H?|A5|H6)",
1359       // SC2B = 2.5", MCEA = mSATA, SCKJ = M.2; A4 = 530/Pro 1500, A5 = Pro 2500, H6 = 535
1360     "", "",
1361   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1362     "-v 9,msec24hour32,Power_On_Hours_and_Msec "
1363   //"-v 12,raw48,Power_Cycle_Count "
1364     "-v 170,raw48,Available_Reservd_Space "
1365     "-v 171,raw48,Program_Fail_Count "
1366     "-v 172,raw48,Erase_Fail_Count "
1367     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1368     "-v 183,raw48,SATA_Downshift_Count "
1369   //"-v 184,raw48,End-to-End_Error "
1370     "-v 187,raw48,Uncorrectable_Error_Cnt "
1371   //"-v 190,tempminmax,Airflow_Temperature_Cel "
1372   //"-v 192,raw48,Power-Off_Retract_Count "
1373   //"-v 199,raw48,UDMA_CRC_Error_Count "
1374     "-v 225,raw48,Host_Writes_32MiB "
1375     "-v 226,raw48,Workld_Media_Wear_Indic "
1376     "-v 227,raw48,Workld_Host_Reads_Perc "
1377     "-v 228,raw48,Workload_Minutes "
1378   //"-v 232,raw48,Available_Reservd_Space "
1379   //"-v 233,raw48,Media_Wearout_Indicator "
1380     "-v 241,raw48,Host_Writes_32MiB "
1381     "-v 242,raw48,Host_Reads_32MiB "
1382     "-v 249,raw48,NAND_Writes_1GiB"
1383   },
1384   { "Intel 330/335 Series SSDs", // tested with INTEL SSDSC2CT180A3/300i, SSDSC2CT240A3/300i,
1385       // INTEL SSDSC2CT240A4/335t
1386     "INTEL SSDSC2CT(060|120|180|240)A[34]", // A4 = 335 Series
1387     "", "",
1388   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1389     "-v 9,msec24hour32,Power_On_Hours_and_Msec "
1390   //"-v 12,raw48,Power_Cycle_Count "
1391   //"-v 181,raw48,Program_Fail_Cnt_Total " // ] Missing in 330 specification from April 2012
1392   //"-v 182,raw48,Erase_Fail_Count_Total " // ]
1393   //"-v 192,raw48,Power-Off_Retract_Count "
1394     "-v 225,raw48,Host_Writes_32MiB "
1395   //"-v 232,raw48,Available_Reservd_Space "
1396   //"-v 233,raw48,Media_Wearout_Indicator "
1397     "-v 241,raw48,Host_Writes_32MiB "
1398     "-v 242,raw48,Host_Reads_32MiB "
1399     "-v 249,raw48,NAND_Writes_1GiB"
1400   },
1401   // https://www.intel.com/content/www/us/en/solid-state-drives/ssd-540s-series-spec.html
1402   // https://www.intel.com/content/www/us/en/solid-state-drives/ssd-540s-series-m2-spec.html
1403   { "Intel 540 Series SSDs", // INTEL SSDSC2KW120H6/LSF036C, INTEL SSDSC2KW480H6/LSF036C
1404     "INTEL SSDSC[K2]KW(120H|180H|240H|360H|480H|010X)6",
1405     "", "",
1406     "-v 9,msec24hour32,Power_On_Hours_and_Msec "
1407     "-v 170,raw48,Available_Reservd_Space "
1408     "-v 171,raw48,Program_Fail_Count "
1409     "-v 172,raw48,Erase_Fail_Count "
1410     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1411     "-v 183,raw48,SATA_Downshift_Count "
1412     "-v 187,raw48,Uncorrectable_Error_Cnt "
1413     "-v 225,raw48,Host_Writes_32MiB "
1414     "-v 226,raw48,Workld_Media_Wear_Indic "
1415     "-v 227,raw48,Workld_Host_Reads_Perc "
1416     "-v 228,raw48,Workload_Minutes "
1417     "-v 249,raw48,NAND_Writes_1GiB"
1418   },
1419   { "Intel 545s Series SSDs", // tested with INTEL SSDSCKKW512G8, INTEL SSDSC2KW512G8/LHF002C
1420       // SSDSCKKW128G8X1, SSDSCKKW256G8X1, SSDSCKKW512G8X1, SSDSCKKW010T8X1
1421     "INTEL SSDSC[2K]KW(128G|256G|512G|010T)8.*",
1422     "", "",
1423   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1424   //"-v 9,raw24(raw8),Power_On_Hours "
1425   //"-v 12,raw48,Power_Cycle_Count "
1426   //"-v 170,raw48,Available_Reservd_Space "
1427     "-v 171,raw48,Program_Fail_Count "
1428     "-v 172,raw48,Erase_Fail_Count "
1429   //"-v 173 is missing in official Intel doc"
1430     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1431     "-v 183,raw48,SATA_Downshift_Count "
1432   //"-v 184,raw48,End-to-End_Error "
1433   //"-v 187,raw48,Reported_Uncorrect "
1434     "-v 190,tempminmax,Temperature_Case "
1435     "-v 192,raw48,Unsafe_Shutdown_Count "
1436     "-v 199,raw48,CRC_Error_Count "
1437     "-v 225,raw48,Host_Writes_32MiB "
1438     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1439     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1440     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1441   //"-v 232,raw48,Available_Reservd_Space "
1442   //"-v 233,raw48,Media_Wearout_Indicator "
1443   //"-v 236 is missing in official Intel doc"
1444     "-v 241,raw48,Host_Writes_32MiB "
1445     "-v 242,raw48,Host_Reads_32MiB "
1446     "-v 249,raw48,NAND_Writes_1GiB "
1447   //"-v 252 is missing in official intel doc"
1448   },
1449   { "Intel 730 and DC S35x0/3610/3700 Series SSDs", // tested with INTEL SSDSC2BP480G4, SSDSC2BB120G4/D2010355,
1450       // INTEL SSDSC2BB800G4T, SSDSC2BA200G3/5DV10250, SSDSC2BB080G6/G2010130,  SSDSC2BX200G4/G2010110,
1451       // INTEL SSDSC2BB016T6/G2010140, SSDSC2BX016T4/G2010140, SSDSC2BB150G7/N2010101,
1452       // INTEL SSDSC2BB480H4/D2010380
1453     "INTEL SSDSC(1N|2B)[ABPX]((080|100|120|150|160|200|240|300|400|480|600|800)[GH][3467][RT]?|(012|016)T[46])",
1454       // A = S3700, B*4 = S3500, B*6 = S3510, P = 730, X = S3610
1455       // Dell ships drives with model of the form SSDSC2BB120G4R
1456     "", "",
1457   //"-v 3,raw16(avg16),Spin_Up_Time "
1458   //"-v 4,raw48,Start_Stop_Count "
1459   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1460   //"-v 9,raw24(raw8),Power_On_Hours "
1461   //"-v 12,raw48,Power_Cycle_Count "
1462     "-v 170,raw48,Available_Reservd_Space "
1463     "-v 171,raw48,Program_Fail_Count "
1464     "-v 172,raw48,Erase_Fail_Count "
1465     "-v 174,raw48,Unsafe_Shutdown_Count "
1466     "-v 175,raw16(raw16),Power_Loss_Cap_Test "
1467     "-v 183,raw48,SATA_Downshift_Count "
1468   //"-v 184,raw48,End-to-End_Error "
1469   //"-v 187,raw48,Reported_Uncorrect "
1470     "-v 190,tempminmax,Temperature_Case "
1471     "-v 192,raw48,Unsafe_Shutdown_Count "
1472     "-v 194,tempminmax,Temperature_Internal "
1473   //"-v 197,raw48,Current_Pending_Sector "
1474     "-v 199,raw48,CRC_Error_Count "
1475     "-v 225,raw48,Host_Writes_32MiB "
1476     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1477     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1478     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1479   //"-v 232,raw48,Available_Reservd_Space "
1480   //"-v 233,raw48,Media_Wearout_Indicator "
1481     "-v 234,raw24/raw32:04321,Thermal_Throttle "
1482     "-v 241,raw48,Host_Writes_32MiB "
1483     "-v 242,raw48,Host_Reads_32MiB "
1484     "-v 243,raw48,NAND_Writes_32MiB " // S3510/3610
1485     "-F xerrorlba" // tested with SSDSC2BB600G4/D2010355
1486   },
1487   // https://www.intel.com/content/www/us/en/solid-state-drives/ssd-pro-5400s-series-spec.html
1488   // https://www.intel.com/content/www/us/en/solid-state-drives/ssd-pro-5400s-series-m2-spec.html
1489   { "Intel SSD Pro 5400s Series", // Tested with SSDSC2KF480H6/LSF036P
1490     "INTEL SSDSC[2K]KF(120H|180H|240H|360H|480H|010X)6",
1491     "", "",
1492     "-v 170,raw48,Available_Reservd_Space "
1493     "-v 171,raw48,Program_Fail_Count "
1494     "-v 172,raw48,Erase_Fail_Count "
1495     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1496     "-v 183,raw48,SATA_Downshift_Count "
1497     "-v 187,raw48,Uncorrectable_Error_Cnt "
1498     "-v 225,raw48,Host_Writes_32MiB "
1499     "-v 226,raw48,Workld_Media_Wear_Indic "
1500     "-v 227,raw48,Workld_Host_Reads_Perc "
1501     "-v 228,raw48,Workload_Minutes "
1502     "-v 249,raw48,NAND_Writes_1GiB "
1503   },
1504   { "Intel DC S3110 Series SSDs", // Tested with INTEL SSDSCKKI256G8
1505     "INTEL SSDSCKKI(128|256|512)G8",
1506     "", "",
1507   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1508   //"-v 9,raw24(raw8),Power_On_Hours "
1509   //"-v 12,raw48,Power_Cycle_Count "
1510     "-v 170,raw48,Available_Reservd_Space "
1511     "-v 171,raw48,Program_Fail_Count "
1512     "-v 172,raw48,Erase_Fail_Count "
1513   //"-v 173 is missing in official Intel doc"
1514     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1515     "-v 183,raw48,SATA_Downshift_Count "
1516   //"-v 184,raw48,End-to-End_Error "
1517     "-v 187,raw48,Uncorrectable_Error_Cnt "
1518   //"-v 190,tempminmax,Airflow_Temperature_Cel "
1519   //"-v 192,raw48,Power-Off_Retract_Count "
1520   //"-v 199,raw48,UDMA_CRC_Error_Count "
1521     "-v 225,raw48,Host_Writes_32MiB "
1522     "-v 226,raw48,Workld_Media_Wear_Indic "
1523     "-v 227,raw48,Workld_Host_Reads_Perc "
1524     "-v 228,raw48,Workload_Minutes "
1525   //"-v 232,raw48,Available_Reservd_Space "
1526   //"-v 233,raw48,Media_Wearout_Indicator "
1527   //"-v 236 is missing in official Intel doc"
1528     "-v 241,raw48,Host_Writes_32MiB "
1529     "-v 242,raw48,Host_Reads_32MiB "
1530     "-v 249,raw48,NAND_Writes_1GiB "
1531   //"-v 252 is missing in official Intel doc"
1532   },
1533   { "Intel 3710 Series SSDs", // INTEL SSDSC2BA200G4R/G201DL2B (dell)
1534     "INTEL SSDSC2BA(200G|400G|800G|012T)4.?",
1535     "", "",
1536     "-v 9,msec24hour32,Power_On_Hours_and_Msec "
1537     "-v 170,raw48,Available_Reservd_Space "
1538     "-v 171,raw48,Program_Fail_Count "
1539     "-v 172,raw48,Erase_Fail_Count "
1540     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1541     "-v 183,raw48,SATA_Downshift_Count "
1542     "-v 187,raw48,Uncorrectable_Error_Cnt "
1543     "-v 225,raw48,Host_Writes_32MiB "
1544     "-v 226,raw48,Workld_Media_Wear_Indic "
1545     "-v 227,raw48,Workld_Host_Reads_Perc "
1546     "-v 228,raw48,Workload_Minutes "
1547     "-v 234,raw24/raw32:04321,Thermal_Throttle "
1548     "-v 243,raw48,NAND_Writes_32MiB "
1549   },
1550   { "Intel S3520 Series SSDs", // INTEL SSDSC2BB960G7/N2010112, INTEL SSDSC2BB016T7/N2010112
1551     "INTEL SSDSC(2|K)(J|B)B(240G|480G|960G|150G|760G|800G|012T|016T)7.?",
1552     "", "",
1553   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1554   //"-v 9,raw24(raw8),Power_On_Hours "
1555   //"-v 12,raw48,Power_Cycle_Count "
1556     "-v 170,raw48,Available_Reservd_Space "
1557     "-v 171,raw48,Program_Fail_Count "
1558     "-v 172,raw48,Erase_Fail_Count "
1559     "-v 174,raw48,Unsafe_Shutdown_Count "
1560     "-v 175,raw16(raw16),Power_Loss_Cap_Test "
1561     "-v 183,raw48,SATA_Downshift_Count "
1562     "-v 184,raw48,End-to-End_Error_Count "
1563     "-v 187,raw48,Uncorrectable_Error_Cnt "
1564     "-v 190,tempminmax,Case_Temperature "
1565     "-v 192,raw48,Unsafe_Shutdown_Count "
1566     "-v 194,tempminmax,Drive_Temperature "
1567     "-v 197,raw48,Pending_Sector_Count "
1568     "-v 199,raw48,CRC_Error_Count "
1569     "-v 225,raw48,Host_Writes_32MiB "
1570     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1571     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1572     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1573   //"-v 232,raw48,Available_Reservd_Space "
1574   //"-v 233,raw48,Media_Wearout_Indicator "
1575     "-v 234,raw24/raw32:04321,Thermal_Throttle_Status "
1576     "-v 241,raw48,Host_Writes_32MiB "
1577     "-v 242,raw48,Host_Reads_32MiB "
1578     "-v 243,raw48,NAND_Writes_32MiB"
1579   },
1580   { "Dell Certified Intel S3520 Series SSDs",
1581     "SSDSC(2|K)(J|B)B(240G|480G|960G|120G|760G|800G|012T|016T)7R.?",
1582     "", "",
1583     "-v 170,raw48,Available_Reservd_Space "
1584     "-v 174,raw48,Unsafe_Shutdown_Count "
1585     "-v 195,raw48,Uncorrectable_Error_Cnt "
1586     "-v 199,raw48,CRC_Error_Count "
1587     "-v 201,raw16(raw16),Power_Loss_Cap_Test "
1588     "-v 202,raw48,End_of_Life "
1589     "-v 225,raw48,Host_Writes_32MiB "
1590     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1591     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1592     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1593     "-v 233,raw48,Total_LBAs_Written "
1594     "-v 234,raw24/raw32:04321,Thermal_Throttle_Status "
1595     "-v 245,raw48,Percent_Life_Remaining"
1596   },
1597   { "Intel S4510/S4610/S4500/S4600 Series SSDs", // INTEL SSDSC2KB480G7/SCV10100,
1598       // INTEL SSDSC2KB960G7/SCV10100, INTEL SSDSC2KB038T7/SCV10100,
1599       // INTEL SSDSC2KB038T7/SCV10121, INTEL SSDSC2KG240G7/SCV10100
1600     "INTEL SSDSC(2K|KK)(B|G)(240G|480G|960G|019T|038T)(7|8).?",
1601     "", "",
1602   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1603   //"-v 9,raw24(raw8),Power_On_Hours "
1604   //"-v 12,raw48,Power_Cycle_Count "
1605     "-v 170,raw48,Available_Reservd_Space "
1606     "-v 171,raw48,Program_Fail_Count "
1607     "-v 172,raw48,Erase_Fail_Count "
1608     "-v 174,raw48,Unsafe_Shutdown_Count "
1609     "-v 175,raw16(raw16),Power_Loss_Cap_Test "
1610     "-v 183,raw48,SATA_Downshift_Count "
1611     "-v 184,raw48,End-to-End_Error_Count "
1612     "-v 187,raw48,Uncorrectable_Error_Cnt "
1613     "-v 190,tempminmax,Drive_Temperature "
1614     "-v 192,raw48,Unsafe_Shutdown_Count "
1615     "-v 197,raw48,Pending_Sector_Count "
1616     "-v 199,raw48,CRC_Error_Count "
1617     "-v 225,raw48,Host_Writes_32MiB "
1618     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1619     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1620     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1621   //"-v 232,raw48,Available_Reservd_Space "
1622   //"-v 233,raw48,Media_Wearout_Indicator "
1623     "-v 234,raw24/raw32:04321,Thermal_Throttle_Status "
1624     "-v 235,raw16(raw16),Power_Loss_Cap_Test "
1625     "-v 241,raw48,Host_Writes_32MiB "
1626     "-v 242,raw48,Host_Reads_32MiB "
1627     "-v 243,raw48,NAND_Writes_32MiB"
1628   },
1629   { "Dell Certified Intel S4x00/D3-S4x10 Series SSDs", // INTEL SSDSC2KB480G7R/SCV1DL58,
1630       // INTEL SSDSC2KB960G7R/SCV1DL58, INTEL SSDSC2KB038T7R/SCV1DL58,
1631       // INTEL SSDSC2KB038T7R/SCV1DL58, INTEL SSDSC2KG240G7R/SCV1DL58
1632     "SSDSC(2K|KK)(B|G)(240G|480G|960G|019T|038T)(7R|8R).?",
1633     "", "",
1634     "-v 170,raw48,Available_Reservd_Space "
1635     "-v 174,raw48,Unsafe_Shutdown_Count "
1636     "-v 195,raw48,Uncorrectable_Error_Cnt "
1637     "-v 199,raw48,CRC_Error_Count "
1638     "-v 201,raw16(raw16),Power_Loss_Cap_Test "
1639     "-v 202,raw48,End_of_Life "
1640     "-v 225,raw48,Host_Writes_32MiB "
1641     "-v 226,raw48,Workld_Media_Wear_Indic " // Timed Workload Media Wear Indicator (percent*1024)
1642     "-v 227,raw48,Workld_Host_Reads_Perc "  // Timed Workload Host Reads Percentage
1643     "-v 228,raw48,Workload_Minutes " // 226,227,228 can be reset by 'smartctl -t vendor,0x40'
1644     "-v 233,raw48,Total_LBAs_Written "
1645     "-v 234,raw24/raw32:04321,Thermal_Throttle_Status "
1646     "-v 245,raw48,Percent_Life_Remaining"
1647   },
1648   { "Kingston branded X25-V SSDs", // fixed firmware
1649     "KINGSTON SSDNow 40GB",
1650     "2CV102(J[89A-Z]|[K-Z].)", // >= "2CV102J8"
1651     "",
1652     "-v 192,raw48,Unsafe_Shutdown_Count "
1653     "-v 225,raw48,Host_Writes_32MiB "
1654     "-v 226,raw48,Workld_Media_Wear_Indic "
1655     "-v 227,raw48,Workld_Host_Reads_Perc "
1656     "-v 228,raw48,Workload_Minutes"
1657   },
1658   { "Kingston branded X25-V SSDs", // buggy or unknown firmware
1659     "KINGSTON SSDNow 40GB",
1660     "",
1661     "This drive may require a firmware update to\n"
1662     "fix possible drive hangs when reading SMART self-test log.\n"
1663     "To update Kingston branded drives, a modified Intel update\n"
1664     "tool must be used. Search for \"kingston 40gb firmware\".",
1665     "-v 192,raw48,Unsafe_Shutdown_Count "
1666     "-v 225,raw48,Host_Writes_32MiB "
1667     "-v 226,raw48,Workld_Media_Wear_Indic "
1668     "-v 227,raw48,Workld_Host_Reads_Perc "
1669     "-v 228,raw48,Workload_Minutes"
1670   },
1671   { "Kingston SSDNow UV400/500",
1672     "KINGSTON SUV400S37A?(120|240|480|960)G|" // tested with KINGSTON SUV400S37120G/0C3J96R9,
1673       // KINGSTON SUV400S37240G/0C3J96R9, KINGSTON SUV400S37240G/0C3K87RA,
1674       // KINGSTON SUV400S37120G/0C3K87RA
1675     "KINGSTON SUV500(M[8S])?(120|240|480|960)G", // tested with KINGSTON SUV500120G/003056R6,
1676       // KINGSTON SUV500240G/003056R6, KINGSTON SUV500480G/003056RI,
1677       // KINGSTON SUV500MS120G/003056RA, KINGSTON SUV500MS120G/003056RI,
1678       // KINGSTON SUV500M8120G/003056RI
1679     "", "",
1680   //"-v 1,raw48,Raw_Read_Error_Rate "
1681   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1682   //"-v 9,raw24(raw8),Power_On_Hours "
1683   //"-v 12,raw48,Power_Cycle_Count "
1684     "-v 100,raw48,Unknown_Kingston_Attr "
1685     "-v 101,raw48,Unknown_Kingston_Attr "
1686     "-v 170,raw48,Reserved_Block_Count "
1687     "-v 171,raw48,Program_Fail_Count "
1688     "-v 172,raw48,Erase_Fail_Count "
1689     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1690   //"-v 175,raw48,Program_Fail_Count_Chip,SSD "
1691   //"-v 176,raw48,Erase_Fail_Count_Chip,SSD "
1692   //"-v 177,raw48,Wear_Leveling_Count,SSD "
1693   //"-v 178,raw48,Used_Rsvd_Blk_Cnt_Chip,SSD "
1694   //"-v 180,raw48,Unused_Rsvd_Blk_Cnt_Tot,SSD "
1695   //"-v 183,raw48,Runtime_Bad_Block "
1696   //"-v 187,raw48,Reported_Uncorrect "
1697   //"-v 194,tempminmax,Temperature_Celsius "
1698   //"-v 195,raw48,Hardware_ECC_Recovered "
1699   //"-v 196,raw16(raw16),Reallocated_Event_Count "
1700   //"-v 197,raw48,Current_Pending_Sector "
1701   //"-v 199,raw48,UDMA_CRC_Error_Count "
1702     "-v 201,raw48,Unc_Read_Error_Rate "
1703   //"-v 204,raw48,Soft_ECC_Correction "
1704     "-v 231,raw48,SSD_Life_Left "
1705     "-v 241,raw48,Host_Writes_GiB "
1706     "-v 242,raw48,Host_Reads_GiB "
1707     "-v 250,raw48,Read_Retry_Count"
1708   },
1709   { "JMicron based SSDs", // JMicron JMF60x
1710     "Kingston SSDNow V Series [0-9]*GB|" // tested with Kingston SSDNow V Series 64GB/B090522a
1711     "TS(2|4|8|16|32|64|128|192)GSSD(18|25)[MS]?-[MS]", // Transcend IDE and SATA, tested with
1712       // TS32GSSD25-M/V090331, TS32GSSD18M-M/v090331
1713     "[BVv].*", // other Transcend SSD versions will be caught by subsequent entry
1714     "",
1715   //"-v 9,raw24(raw8),Power_On_Hours " // raw value always 0?
1716   //"-v 12,raw48,Power_Cycle_Count "
1717   //"-v 194,tempminmax,Temperature_Celsius " // raw value always 0?
1718     "-v 229,hex64:w012345r,Halt_System/Flash_ID " // Halt, Flash[7]
1719     "-v 232,hex64:w012345r,Firmware_Version_Info " // "YYMMDD", #Channels, #Banks
1720     "-v 233,hex48:w01234,ECC_Fail_Record " // Fail number, Row[3], Channel, Bank
1721     "-v 234,raw24/raw24:w01234,Avg/Max_Erase_Count "
1722     "-v 235,raw24/raw24:w01z23,Good/Sys_Block_Count"
1723   },
1724   { "JMicron/Maxiotek based SSDs", // JMicron JMF61x, JMF66x, JMF670
1725     "ADATA S596 Turbo|"  // tested with ADATA S596 Turbo 256GB SATA SSD (JMicron JMF616)
1726     "ADATA SP310|"  // Premier Pro SP310 mSATA, JMF667, tested with ADATA SP310/3.04
1727     "ADATA SP600(NS34)?|" // tested with ADATA SP600/2.4 (JMicron JMF661)
1728     "ADATA SX930|"  // tested with ADATA SX930/6.8SE
1729     "APPLE SSD TS(064|128|256|512)C|"  // Toshiba?, tested with APPLE SSD TS064C/CJAA0201
1730     "IM2S3138E-(128|256)GM-B|" // ADATA OEM, tested with IM2S3138E-128GM-B/DA002
1731     "KingSpec KDM-SA\\.51-008GMJ|" // tested with KingSpec KDM-SA.51-008GMJ/1.092.37 (JMF605?)
1732     "KINGSTON SNV425S2(64|128)GB|"  // SSDNow V Series (2. Generation, JMF618),
1733                                     // tested with KINGSTON SNV425S264GB/C091126a
1734     "KINGSTON SSDNOW 30GB|" // tested with KINGSTON SSDNOW 30GB/AJXA0202
1735     "KINGSTON SS100S2(8|16)G|"  // SSDNow S100 Series, tested with KINGSTON SS100S28G/D100309a
1736     "KINGSTON SNVP325S2(64|128|256|512)GB|" // SSDNow V+ Series, tested with KINGSTON SNVP325S2128GB/AGYA0201
1737     "KINGSTON SVP?100S2B?(64|96|128|256|512)G|"  // SSDNow V100/V+100 Series,
1738       // tested with KINGSTON SVP100S296G/CJR10202, KINGSTON SV100S2256G/D110225a
1739     "KINGSTON SV200S3(64|128|256)G|" // SSDNow V200 Series, tested with KINGSTON SV200S3128G/E120506a
1740     "NT-(64|128|256|512|[12]T)|" // KingSpec NT, MAS0902A-B2C or CS1802A-B2C, tested with NT-512/T191212
1741     "TOSHIBA THNS128GG4BBAA|"  // Toshiba / Super Talent UltraDrive DX,
1742                                // tested with Toshiba 128GB 2.5" SSD (built in MacBooks)
1743     "TOSHIBA THNSNC128GMLJ|" // tested with THNSNC128GMLJ/CJTA0202 (built in Toshiba Protege/Dynabook)
1744     "TS(8|16|32|64|128|192|256|512)GSSD25S?-(MD?|S)|" // Transcend IDE and SATA, JMF612, tested with
1745       // TS256GSSD25S-M/101028, TS32GSSD25-M/20101227
1746     "TS(32|64|128|256)G(SSD|MSA)[37]40K?", // Transcend SSD340/340K/740 SATA/mSATA, JMF667/670, tested with
1747       // TS256GSSD340/SVN263, TS256GSSD340/SVN423b, TS256GMSA340/SVN263,
1748       // TS128GSSD340K/SVN216,TS64GSSD740/SVN167d
1749     "", "",
1750   //"-v 1,raw48,Raw_Read_Error_Rate "
1751   //"-v 2,raw48,Throughput_Performance "
1752     "-v 3,raw48,Unknown_JMF_Attribute "
1753   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1754     "-v 7,raw48,Unknown_JMF_Attribute "
1755     "-v 8,raw48,Unknown_JMF_Attribute "
1756   //"-v 9,raw24(raw8),Power_On_Hours "
1757     "-v 10,raw48,Unknown_JMF_Attribute "
1758   //"-v 12,raw48,Power_Cycle_Count "
1759     "-v 167,raw48,Unknown_JMF_Attribute "
1760     "-v 168,raw48,SATA_Phy_Error_Count "
1761     "-v 169,raw48,Unknown_JMF_Attribute "
1762     "-v 170,raw16,Bad_Block_Count "
1763     "-v 173,raw16,Erase_Count " // JMF661: different?
1764     "-v 175,raw48,Bad_Cluster_Table_Count "
1765     "-v 180,raw48,Unknown_JMF_Attribute "
1766     "-v 187,raw48,Unknown_JMF_Attribute "
1767     "-v 192,raw48,Unexpect_Power_Loss_Ct "
1768   //"-v 194,tempminmax,Temperature_Celsius "
1769   //"-v 197,raw48,Current_Pending_Sector "
1770     "-v 231,raw48,Unknown_JMF_Attribute "
1771     "-v 233,raw48,Unknown_JMF_Attribute " // FW SVN423b
1772     "-v 234,raw48,Unknown_JMF_Attribute " // FW SVN423b
1773     "-v 240,raw48,Unknown_JMF_Attribute "
1774   //"-v 241,raw48,Total_LBAs_Written "    // FW SVN423b
1775   //"-v 242,raw48,Total_LBAs_Read "       // FW SVN423b
1776   },
1777   { "Plextor M3/M5/M6/M7 Series SSDs", // Marvell 88SS9174 (M3, M5S), 88SS9187 (M5P, M5Pro), 88SS9188 (M6M/S),
1778       // tested with PLEXTOR PX-128M3/1.01, PX-128M3P/1.04, PX-256M3/1.05, PX-128M5S/1.02, PX-256M5S/1.03,
1779       // PX-128M5M/1.05, PX-128M5S/1.05, PX-128M5Pro/1.05, PX-512M5Pro/1.06, PX-256M5P/1.01, PX-128M6S/1.03
1780       // (1.04/5 Firmware self-test log lifetime unit is bogus, possibly 1/256 hours)
1781       // PLEXTOR PX-256M6S+/1.00, PLEXTOR  PX-128M3/1.00, PLEXTOR PX-128M3/1.07, PLEXTOR PX-128M6V/1.04,
1782       // PLEXTOR PX-128M6G-2242/1.01, PLEXTOR PX-512M7VC/1.05
1783     "PLEXTOR  ?PX-(64|128|256|512|768)M(3P?|5[MPS]|5Pro|6[GMSV]|7VC)(\\+|-.*)?",
1784     "", "",
1785   //"-v 1,raw48,Raw_Read_Error_Rate "
1786   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1787   //"-v 9,raw24(raw8),Power_On_Hours "
1788   //"-v 12,raw48,Power_Cycle_Count "
1789     "-v 170,raw48,Unknown_Plextor_Attrib "  // M6S/1.03
1790     "-v 171,raw48,Unknown_Plextor_Attrib "  // M6S/1.03
1791     "-v 172,raw48,Unknown_Plextor_Attrib "  // M6S/1.03
1792     "-v 173,raw48,Unknown_Plextor_Attrib "  // M6S/1.03
1793     "-v 174,raw48,Unknown_Plextor_Attrib "  // M6S/1.03
1794   //"-v 175,raw48,Program_Fail_Count_Chip " // M6S/1.03
1795   //"-v 176,raw48,Erase_Fail_Count_Chip "   // M6S/1.03
1796   //"-v 177,raw48,Wear_Leveling_Count "
1797   //"-v 178,raw48,Used_Rsvd_Blk_Cnt_Chip "
1798   //"-v 179,raw48,Used_Rsvd_Blk_Cnt_Tot "   // M6S/1.03
1799   //"-v 180,raw48,Unused_Rsvd_Blk_Cnt_Tot " // M6S/1.03
1800   //"-v 181,raw48,Program_Fail_Cnt_Total "
1801   //"-v 182,raw48,Erase_Fail_Count_Total "
1802   //"-v 183,raw48,Runtime_Bad_Block "       // M6S/1.03
1803   //"-v 184,raw48,End-to-End_Error "        // M6S/1.03
1804   //"-v 187,raw48,Reported_Uncorrect "
1805   //"-v 188,raw48,Command_Timeout "         // M6S/1.03
1806   //"-v 192,raw48,Power-Off_Retract_Count "
1807   //"-v 195,raw48,Hardware_ECC_Recovered "  // MS6/1.03
1808   //"-v 196,raw16(raw16),Reallocated_Event_Count "
1809   //"-v 198,raw48,Offline_Uncorrectable "
1810   //"-v 199,raw48,UDMA_CRC_Error_Count "
1811   //"-v 232,raw48,Available_Reservd_Space "
1812   //"-v 233,raw48,Media_Wearout_Indicator " // MS6/1.03
1813     "-v 241,raw48,Host_Writes_32MiB "
1814     "-v 242,raw48,Host_Reads_32MiB"
1815   },
1816   { "Samsung based SSDs",
1817     "SAMSUNG SSD PM800 .*GB|"  // SAMSUNG PM800 SSDs, tested with SAMSUNG SSD PM800 TH 64GB/VBM25D1Q
1818     "SAMSUNG SSD PM810 .*GB|"  // SAMSUNG PM810 (470 series) SSDs, tested with
1819       // SAMSUNG SSD PM810 2.5" 128GB/AXM06D1Q
1820     "SAMSUNG SSD SM841N? (2\\.5\"? 7mm |mSATA )?(128|256|512)GB( SED)?|" // tested with
1821       // SAMSUNG SSD SM841 2.5" 7mm 256GB/DXM02D0Q, SAMSUNG SSD SM841 mSATA 512GB/DXM44D0Q,
1822       // SAMSUNG SSD SM841N 2.5 7mm 128GB/DXM03D0Q, SAMSUNG SSD SM841N mSATA 256GB SED/DXM45D6Q
1823     "SAMSUNG SSD PM851 (mSATA |M\\.2 )?(2280 )?(128|256|512)GB|" // tested with SAMSUNG SSD PM851 mSATA 128GB,
1824       // SAMSUNG SSD PM851 M.2 2280 256GB/EXT25D0Q
1825     "SAMSUNG 470 Series SSD|"  // tested with SAMSUNG 470 Series SSD 64GB/AXM09B1Q
1826     "Samsung SSD 750 EVO (120|250|500)GB|" // tested with Samsung SSD 750 EVO 250GB/MAT01B6Q
1827     "SAMSUNG SSD 830 Series|"  // tested with SAMSUNG SSD 830 Series 64GB/CXM03B1Q
1828     "SAMSUNG SSD PM830 .*|" // SAMSUNG SSD PM830 2.5" 7mm 128GB/CXM03D1Q
1829     "MZ7PC(512|256|128|064)HA(GH|FU|DR)-000.*|" // probably PM830, tested with SAMSUNG MZ7PC128HAFU-000L1/CXM04L1Q
1830     "Samsung SSD 840 (PRO )?Series|" // tested with Samsung SSD 840 PRO Series 128GB/DXM04B0Q,
1831       // Samsung SSD 840 Series/DXT06B0Q
1832     "Samsung SSD 8[4-7]0 EVO (mSATA |M\\.2 )?((120|250|500|750)G|[124]T)B|" // tested with
1833       // Samsung SSD 840 EVO (120|250|500|750)GB/EXT0AB0Q,
1834       // Samsung SSD 840 EVO (120|250)GB/EXT0BB6Q, 1TB/EXT0BB0Q, 120GB mSATA/EXT41B6Q,
1835       // Samsung SSD 850 EVO 250GB/EMT01B6Q, Samsung SSD 850 EVO M.2 250GB/EMT21B6Q,
1836       // Samsung SSD 850 EVO mSATA 120GB/EMT41B6Q, Samsung SSD 850 EVO 2TB/EMT02B6Q,
1837       // Samsung SSD 860 EVO 250GB/RVT01B6Q, Samsung SSD 860 EVO mSATA 250GB/RVT41B6Q,
1838       // Samsung SSD 860 EVO 500GB/RVT01B6Q, Samsung SSD 860 EVO mSATA 500GB/RVT41B6Q,
1839       // Samsung SSD 860 EVO mSATA 1TB/RVT41B6Q, Samsung SSD 860 EVO 2TB/RVT01B6Q,
1840       // Samsung SSD 860 EVO 4TB/RVT04B6Q, Samsung SSD 870 EVO 1TB/SVT01B6Q
1841     "Samsung SSD 8[56]0 PRO ((128|256|512)G|[124]T)B|" // tested with Samsung SSD 850 PRO 128GB/EXM01B6Q,
1842       // Samsung SSD 850 PRO 1TB/EXM01B6Q, Samsung SSD 850 PRO 2TB/EXM02B6Q,
1843       // Samsung SSD 860 PRO 256GB/RVM01B6Q, Samsung SSD 860 PRO 512GB/RVM01B6Q,
1844       // Samsung SSD 860 PRO 1TB/RVM01B6Q
1845     "Samsung SSD 8[67]0 QVO [1248]TB|" // tested with Samsung SSD 860 QVO 1TB/RVQ02B6Q,
1846       // Samsung SSD 860 QVO 2TB/RVQ01B6Q, Samsung SSD 870 QVO 4TB/SVQ01B6Q
1847     "Samsung SSD 883 DCT ((240|480|960)G|(1\\.92|3\\.84)T)B|" // tested with
1848       // Samsung SSD 883 DCT 480GB/HXT7404Q, Samsung SSD 883 DCT 3.84TB/HXT7404Q
1849     "Samsung SSD 845DC EVO .*|" // Samsung SSD 845DC EVO 960GB/EXT03X3Q
1850     "SAMSUNG MZ7PA256HMDR-.*|" // PM810 (470 Series), tested with SAMSUNG MZ7PA256HMDR-010H1/AXM07H1Q
1851     "SAMSUNG MZ[7M]PC(032|064|128|256|512)HBCD-.*|" // PM830, tested with SAMSUNG MZMPC032HBCD-000L1/CXM12L1Q
1852     "SAMSUNG MZ7TD(128|256)HAFV-.*|" // 840 Series, tested with SAMSUNG MZ7TD256HAFV-000L7/DXT06L6Q
1853     "SAMSUNG MZ[7M]TD(128|256|512)HA[GF][LMV]-.*|" // PM841, tested with SAMSUNG MZMTD512HAGL-00000/DXT4200Q,
1854       // SAMSUNG MZ7TD512HAGM-000L1/DXT06L0Q, SAMSUNG MZMTD128HAFV-000L1/DXT43L0Q
1855     "SAMSUNG MZ7WD((120|240)H[AC]FV|480HAGM|960HAGP)-00003|" // SM843T Series, tested with
1856       // SAMSUNG MZ7WD120HAFV-00003/DXM85W3Q, SAMSUNG MZ7WD120HCFV-00003/DXM9203Q
1857     "SAMSUNG MZ[7N]TE(128|256|512)HM(HP|JH)-.*|" // PM851, tested with SAMSUNG MZ7TE256HMHP-000L7/EXT09L6Q,
1858       // SAMSUNG MZNTE256HMHP-000H1/EXT22H0Q, SAMSUNG MZNTE512HMJH-000L2/EXT26L0Q
1859     "SAMSUNG MZMPF(032|064)HCFV-.*|" // CM851 mSATA, tested with SAMSUNG MZMPF032HCFV-000H1/FXM42H2Q
1860     "SAMSUNG MZ7GE(240HMGR|(480|960)HMHP)-00003|" // SM853T Series, tested with
1861       // SAMSUNG MZ7GE240HMGR-00003/EXT0303Q
1862     "SAMSUNG MZ7LM(120|240|480|960|1T9|3T8)HC(JM|HP|GR|FD)-.*|" // PM863 Series, tested with
1863       // SAMSUNG MZ7LM960HCHP-0E003/GXT3003Q
1864     "(SAMSUNG )?MZ7LM(240|480|960|1T9|3T8)HM(JP|HQ|LP)(-.*|0D3)|" // PM863a Series, tested with
1865       // SAMSUNG MZ7LM3T8HMLP-00005/GXT5104Q, MZ7LM240HMHQ0D3/GC5B (Dell)
1866     "(SAMSUNG )?MZ7KM(120|240|480|960|1T9)H[AM](FD|GR|H[PQ]|J[MP])(-.*|0D3)|" // SM863(a), tested with
1867       // SAMSUNG MZ7KM480HAHP-0E005/GXM1003Q, SAMSUNG MZ7KM480HMHQ-00005/GXM5104Q,
1868       // SAMSUNG MZ7KM960HMJP-00005/GXM5304Q, MZ7KM960HMJP0D3/GD53 (Dell)
1869     "SAMSUNG MZ7LH(240|480|960|1T9|3T8|7T6)H[AM](HQ|JR|LT|LA)-.*|" //PM883, tested with SAMSUNG MZ7LH960HAJR-00005
1870     "SAMSUNG MZ7KH(240|480|960|1T9|3T8)HA(HQ|JR|LS)-.*|" //SM883
1871     "SAMSUNG MZ[7N](LF|TY)(128|192|256)H[CD](GS|HP)-.*|" // CM871/871a, tested with SAMSUNG MZNLF128HCHP-000H1/FXT21H1Q,
1872       // SAMSUNG MZNTY256HDHP-000/MAT21K0Q, SAMSUNG MZ7LF192HCGS-000L1/FXT03L1Q
1873     "SAMSUNG MZ[7NY]LN(128|256|512|1T0)H[ACM](GR|HP|HQ|J[HPQ]|LR)-.*|" // PM871/871a/b, tested with
1874       // SAMSUNG MZ7LN128HCHP-00000/EMT0100Q, SAMSUNG MZ7LN256HAHQ-000H1/MVT03H6Q,
1875       // SAMSUNG MZNLN256HMHQ-000H1/MAV21H3Q, SAMSUNG MZYLN256HCHP-000L2/EMT63L0Q
1876     "SAMSUNG SSD PM871 .*|" // SAMSUNG SSD PM871 2.5 7mm 256GB/EMT02D0Q
1877       // SAMSUNG MZ7LN256HMJP-00000/MAV0100Q, SAMSUNG MZ7LN512HMJP-00000/MAV0100Q
1878     "SAMSUNG MZHPV(128|256|512)HDG(L|M)-.*|" // SM951, tested with SAMSUNG MZHPV512HDGL-00000/BXW2500Q,
1879       // SAMSUNG MZHPV128HDGM-00000 (BXW2500Q)
1880     "Samsung Portable SSD T5", // tested with Samsung Portable SSD T5 (0x04e8:0x61f5)
1881     "", "",
1882   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1883   //"-v 9,raw24(raw8),Power_On_Hours "
1884   //"-v 12,raw48,Power_Cycle_Count "
1885     "-v 170,raw48,Unused_Rsvd_Blk_Ct_Chip " // CM871
1886     "-v 171,raw48,Program_Fail_Count_Chip " // CM871
1887     "-v 172,raw48,Erase_Fail_Count_Chip " // CM871
1888     "-v 173,raw48,Wear_Leveling_Count " // CM871
1889     "-v 174,raw48,Unexpect_Power_Loss_Ct " // CM871
1890   //"-v 175,raw48,Program_Fail_Count_Chip "
1891   //"-v 176,raw48,Erase_Fail_Count_Chip "
1892   //"-v 177,raw48,Wear_Leveling_Count "
1893   //"-v 178,raw48,Used_Rsvd_Blk_Cnt_Chip "
1894   //"-v 179,raw48,Used_Rsvd_Blk_Cnt_Tot "
1895   //"-v 180,raw48,Unused_Rsvd_Blk_Cnt_Tot "
1896   //"-v 181,raw48,Program_Fail_Cnt_Total "
1897   //"-v 182,raw48,Erase_Fail_Count_Total "
1898   //"-v 183,raw48,Runtime_Bad_Block "
1899   //"-v 184,raw48,End-to-End_Error " // SM843T Series
1900     "-v 187,raw48,Uncorrectable_Error_Cnt "
1901   //"-v 190,tempminmax,Airflow_Temperature_Cel "  // seems to be some sort of temperature value for 470 Series?
1902     "-v 191,raw48,Unknown_Samsung_Attr " // PM810
1903   //"-v 194,tempminmax,Temperature_Celsius "
1904     "-v 195,raw48,ECC_Error_Rate "
1905   //"-v 196,raw16(raw16),Reallocated_Event_Count "
1906   //"-v 198,raw48,Offline_Uncorrectable "
1907     "-v 199,raw48,CRC_Error_Count "
1908     "-v 201,raw48,Supercap_Status "
1909     "-v 202,raw48,Exception_Mode_Status "
1910   //"-v 233,raw48,Media_Wearout_Indicator " // PM851, 840
1911     "-v 234,raw48,Unknown_Samsung_Attr " // PM851, 840
1912     "-v 235,raw48,POR_Recovery_Count " // PM851, 830/840/850
1913     "-v 236,raw48,Unknown_Samsung_Attr " // PM851, 840
1914     "-v 237,raw48,Unknown_Samsung_Attr " // PM851, 840
1915     "-v 238,raw48,Unknown_Samsung_Attr " // PM851, 840
1916   //"-v 241,raw48,Total_LBAs_Written "
1917   //"-v 242,raw48,Total_LBAs_Read " // PM851, SM841N
1918     "-v 243,raw48,SATA_Downshift_Ct " // PM863
1919     "-v 244,raw48,Thermal_Throttle_St " // PM863
1920     "-v 245,raw48,Timed_Workld_Media_Wear " // PM863
1921     "-v 246,raw48,Timed_Workld_RdWr_Ratio " // PM863
1922     "-v 247,raw48,Timed_Workld_Timer " // PM863
1923     "-v 249,raw48,NAND_Writes_1GiB " // CM871a, PM871
1924     "-v 250,raw48,SATA_Iface_Downshift " // from the spec
1925     "-v 251,raw48,NAND_Writes" // PM863
1926   },
1927   { "Marvell based SanDisk SSDs",
1928     "SanDisk SD5SG2[0-9]*G1052E|" // X100 (88SS9174), tested with SanDisk SD5SG2256G1052E/10.04.01
1929     "SanDisk SD6S[BF][12]M[0-9]*G(1022I?)?|" // X110/X210 (88SS9175/187?), tested with SanDisk SD6SB1M064G1022I/X231600,
1930       // SanDisk SD6SB1M256G1022I/X231600, SanDisk SD6SF1M128G1022/X231200, SanDisk SD6SB2M512G1022I/X210400
1931     "SanDisk SD7S[BN]6S-?(128|256|512)G(1122|-1006)|" // X300 (88SS9189?), tested with
1932       // SanDisk SD7SB6S128G1122/X3310000, SanDisk SD7SN6S-512G-1006/X3511006
1933     "SanDisk SD8S[BN]8U-?((128|256|512)G|1T00)(1122|-1006)|" // X400 (88SS1074), tested with SanDisk SD8SB8U128G1122/X4120000
1934     "SanDisk SD9S[BN]8W-?((128|256|512)G|[12]T00)1122|" // X600, tested with SanDisk SD9SB8W128G1122/X6107000
1935     "SanDisk SDSSDA-((120|240|480)G|[12]T00)|" // Plus, tested with SanDisk SDSSDA-2T00/411040RL
1936     "SanDisk SDSSDHP[0-9]*G|" // Ultra Plus (88SS9175), tested with SanDisk SDSSDHP128G/X23[01]6RL
1937     "SanDisk (SDSSDHII|Ultra II )[0-9]*GB?|" // Ultra II (88SS9190/88SS9189), tested with
1938       // SanDisk SDSSDHII120G/X31200RL, SanDisk Ultra II 960GB/X41100RL
1939     "SanDisk SDSSDH2(128|256)G|" // SanDisk SDSSDH2128G/X211200
1940     "SanDisk SDSSDH3((250|500|1000|1024|2000)G| [24]T00)|" // Ultra 3D, tested with SanDisk SDSSDH3250G/X61170RL,
1941       // SanDisk SDSSDH3500G/X61110RL, SanDisk SDSSDH31024G/X6107000, SanDisk SDSSDH3 2T00/411040RL,
1942       // SanDisk SDSSDH3 4T00/411040RL
1943     "SanDisk SDSSDXPS?[0-9]*G|" // Extreme II/Pro (88SS9187), tested with SanDisk SDSSDXP480G/R1311,
1944       // SanDisk SDSSDXPS480G/X21200RL
1945     "SanDisk SSD G5 BICS4|" // WD Blue SSD WDS100T2B0A (#1378), tested with SanDisk SSD G5 BICS4/415000WD
1946     "SanDisk SSD PLUS (120|240|480|1000) ?GB|" // Plus (88SS1074), tested with SanDisk SSD PLUS 120 GB/UE3000RL,
1947       // SanDisk SSD PLUS 120 GB/UE4500RL, SanDisk SSD PLUS 1000GB/UH4400RL
1948     "SSD SATAIII 16GB", // SSD SATAIII 16GB/i221100 (see #923)
1949     "", "",
1950   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1951   //"-v 9,raw24(raw8),Power_On_Hours "
1952   //"-v 12,raw48,Power_Cycle_Count "
1953     "-v 165,raw48,Total_Write/Erase_Count "
1954     "-v 166,raw48,Min_W/E_Cycle "
1955     "-v 167,raw48,Min_Bad_Block/Die "
1956     "-v 168,raw48,Maximum_Erase_Cycle "
1957     "-v 169,raw48,Total_Bad_Block "
1958     "-v 170,raw48,Unknown_Marvell_Attr " // SDSSDH3 4T00
1959     "-v 171,raw48,Program_Fail_Count "
1960     "-v 172,raw48,Erase_Fail_Count "
1961     "-v 173,raw48,Avg_Write/Erase_Count "
1962     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1963   //"-v 184,raw48,End-to-End_Error "
1964   //"-v 187,raw48,Reported_Uncorrect "
1965   //"-v 188,raw48,Command_Timeout "
1966   //"-v 194,tempminmax,Temperature_Celsius "
1967     "-v 199,raw48,SATA_CRC_Error "
1968     "-v 201,raw48,Lifetime_Remaining% "
1969     "-v 212,raw48,SATA_PHY_Error "
1970     "-v 230,raw16,Perc_Write/Erase_Count "
1971     "-v 232,raw48,Perc_Avail_Resrvd_Space "
1972     "-v 233,raw48,Total_NAND_Writes_GiB "
1973     "-v 234,raw48,Perc_Write/Erase_Ct_BC "
1974     "-v 241,raw48,Total_Writes_GiB "
1975     "-v 242,raw48,Total_Reads_GiB "
1976     "-v 243,raw48,Unknown_Marvell_Attr "
1977     "-v 244,raw48,Thermal_Throttle "
1978     "-v 249,raw48,TLC_NAND_GB_Writes"
1979   },
1980   { "SanDisk based SSDs", // see also #463 for the vendor attribute description
1981     "SanDisk iSSD P4 [0-9]*GB|" // tested with SanDisk iSSD P4 16GB/SSD 9.14
1982     "SanDisk pSSD|" // tested with SandDisk pSSD/3 (62.7 GB, SanDisk Extreme USB3.0 SDCZ80-064G-J57, 0x0781:0x5580)
1983     "SanDisk SDSSDP[0-9]*G|" // tested with SanDisk SDSSDP064G/1.0.0, SDSSDP128G/2.0.0
1984     "SanDisk SDSSDRC032G|" // tested with SanDisk SanDisk SDSSDRC032G/3.1.0
1985     "SanDisk SSD i100 [0-9]*GB|" // tested with SanDisk SSD i100 8GB/11.56.04, 24GB/11.56.04
1986     "SanDisk SSD U100 ([0-9]*GB|SMG2)|" // tested with SanDisk SSD U100 8GB/10.56.00, 256GB/10.01.02, SMG2/10.56.04
1987     "SanDisk SSD U110 (8|16|24|32|64|128)GB|" // tested with SanDisk SSD U110 32GB/U221000
1988     "SanDisk SDSA6[GM]M-[0-9]*G-.*|" // tested with SanDisk SDSA6GM-016G-1006/U221006, SanDisk SDSA6MM-016G-1006/U221006
1989     "SanDisk SD7[SU]B[23]Q(064|128|256|512)G.*", // tested with SD7SB3Q064G1122/SD7UB3Q256G1122/SD7SB3Q128G/SD7UB2Q512G1122
1990     "", "",
1991   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
1992   //"-v 9,raw24(raw8),Power_On_Hours "
1993   //"-v 12,raw48,Power_Cycle_Count "
1994     "-v 165,raw48,Total_Write/Erase_Count "
1995     "-v 171,raw48,Program_Fail_Count "
1996     "-v 172,raw48,Erase_Fail_Count "
1997     "-v 173,raw48,Avg_Write/Erase_Count "
1998     "-v 174,raw48,Unexpect_Power_Loss_Ct "
1999   //"-v 187,raw48,Reported_Uncorrect "
2000     "-v 212,raw48,SATA_PHY_Error "
2001     "-v 230,raw48,Perc_Write/Erase_Count "
2002     "-v 232,raw48,Perc_Avail_Resrvd_Space "
2003     "-v 234,raw48,Perc_Write/Erase_Ct_BC "
2004   //"-v 241,raw48,Total_LBAs_Written "
2005   //"-v 242,raw48,Total_LBAs_Read "
2006     "-v 244,raw48,Thermal_Throttle "
2007   },
2008   // SDLF1DAR-480G-1HAW/ZR07RE41
2009   // SDLF1DAR-480G-1JA1/RP41ZH06
2010   { "Sandisk SATA Cloudspeed Max and GEN2 ESS SSDs",
2011     "SD[A-Z0-9]{2}[1-3][A-Z]{3}-?[0-9]{3}[GT]-?1[A-Z0-9]{3}",
2012     "","",
2013     "-v 13,raw48,Lifetime_UECC_Ct "
2014     "-v 32,raw48,Lifetime_Write_AmpFctr "
2015     "-v 33,raw48,Write_AmpFctr "
2016     "-v 170,raw48,Reserve_Erase_BlkCt "
2017     "-v 171,raw48,Program_Fail_Ct "
2018     "-v 172,raw48,Erase_Fail_Ct "
2019     "-v 173,raw48,Percent_Life_Used "
2020     "-v 174,raw48,Unexpect_Power_Loss "
2021     "-v 175,raw48,Lifetime_Die_Failure_Ct "
2022     "-v 177,raw48,Lifetime_Remaining% "
2023     "-v 178,raw48,SSD_LifeLeft(0.01%) "
2024     "-v 180,raw48,Undetected_Data_Err_Ct "
2025     "-v 183,raw48,LT_Link_Rate_DwnGrd_Ct "
2026     "-v 191,raw48,Clean_Shutdown_Ct "
2027     "-v 192,raw48,Unclean_Shutdown_Ct "
2028     "-v 196,raw48,Lifetime_Retried_Blk_Ct "
2029     "-v 204,raw48,Average_Block-Erase_Ct "
2030     "-v 205,raw48,Read_Retry_Enable_Ct "
2031     "-v 206,raw48,Successful_RaidRecov_Ct "
2032     "-v 207,raw48,Trimmed_Sector_Ct "
2033     "-v 211,raw48,Read_Disturb_ReallocEvt "
2034     "-v 233,raw48,Lifetime_Nand_Writes "
2035     "-v 235,raw48,Capacitor_Health "
2036     "-v 244,raw48,Therm_Throt_Activation "
2037     "-v 245,raw48,Drive_Life_Remaining% "
2038     "-v 253,raw48,SPI_Test_Remaining "
2039   },
2040   { "Sandisk SATA CS1K GEN1 ESS SSDs",
2041     "SD[A-Z0-9]{2}[NO][A-Z0-9]{3}-?[0-9]{3}[GT]-?1[A-Z0-9]{3}",
2042     "","",
2043     "-v 1,raw48,UECC_Ct "
2044     "-v 2,raw48,Internal_File_Check "
2045     "-v 5,raw16(raw16),Retried_Blk_Ct "
2046     "-v 32,raw48,Write_Ampflication "
2047     "-v 170,raw48,Reserve_Blk_Remaining "
2048     "-v 171,raw48,Program_Fail_Ct "
2049     "-v 172,raw48,Erase_Fail_Ct "
2050     "-v 173,raw48,Drive_Life_Used% "
2051     "-v 174,raw48,Unexpect_PwrLoss_Ct "
2052     "-v 175,raw48,PwrLoss_ProtectionFail "
2053     "-v 177,raw48,DriveLife_Remaining% "
2054     "-v 178,raw48,SSD_Life_Left "
2055     "-v 180,raw48,End_to_End_Err_Detect "
2056     "-v 190,raw48,Drive_Temp_Warning "
2057     "-v 195,raw48,Uncorrectable_Err_Ct "
2058     "-v 202,raw48,Exception_Mode_Status "
2059     "-v 233,raw48,Number_Of_Write_Ct "
2060     "-v 245,raw48,DriveLife_Used% "
2061   },
2062   { "Silicon Motion based SSDs",
2063     "ADATA_IMSS332-((008|016|032|064|128|256|512)G|001T)[AEMT]P?|" // tested with ADATA_IMSS332-128GTP/Q0810B
2064     "ADATA (SP550|SU(650(NS38)?|655|[89]00))|" // tested with ADATA SP550/O0803B5a, ADATA SU650/S0212B0,
2065       // ADATA SU650/V8X01c45, ADATA SU650/V8X21c64, ADATA SU650NS38/P191202a, ADATA SU655/V8X01c55,
2066       // ADATA SU800/Q0913A, ADATA SU800/R0427A, ADATA SU800/R0918B, ADATA SU900/Q0125A, ADATA SU900/Q0710B
2067     "CORSAIR FORCE LX SSD|" // tested with CORSAIR FORCE LX SSD/N0307A
2068     "CHN mSATAM3 (128|256|512)|" // Zheino M3, tested with CHN mSATAM3 128/Q1124A0
2069     "CIS 2S M305 (16|32|64|128|256)GB|" // Ceroz M305, tested with CIS 2S M305 64GB/P0316B
2070     "CT(120|250|500|1000)BX100SSD1|" // Crucial BX100, tested with CT250BX100SSD1/MU02,
2071       // CT500BX100SSD1/MU02, CT1000BX100SSD1/MU02
2072     "CT(240|480|960)BX200SSD1|" // Crucial BX200 Solid State Drive, tested with CT480BX200SSD1/MU02.6
2073     "DREVO X1 SSD|" // tested with DREVO X1 SSD/Q0111A
2074     "Drevo X1 pro (64|128|256)G|" // tested with Drevo X1 pro 64G/Q0303B
2075     "JAJS500M(120|240|480|960)C-1|" // J&A LEVEN JS500, tested with JAJS500M120C-1/P0614D
2076     "JAJS600M1TB|" // Intenso, tested with JAJS600M1TB/T0529A0
2077     "KingDian S100 (32|64)GB|" // SM2244LT, tested with KingDian S100 32GB/0311A
2078     "KingDian S(200|280|400) ((60|120|240|480)GB|1TB)|" // SM2256EN, tested with KingDian S200 60GB/R0724A0
2079       // KingDian S280 120GB/Q0526A, KingDian S280 1TB/S0509A0, KingDian S400 120GB/Q0607A
2080     "KingSpec KSD-[PS]A25\\.[1-9]-(016|032|064|128)(MS|SJ)|" // tested with KingSpec KSD-PA25.6-064MS/20140803
2081     "KINGSTON SKC600(256|512|1024|2048)G|" // SM2259, tested with KINGSTON SKC600256G/S4500105
2082     "LITEON LMH-(128|256|512)V2M-.*|" // tested with LITEON LMH-256V2M-11 MSATA 256GB/FM8110C
2083     "LITEON LCH-(128|256V|512)2S-.*|" // tested with LITEON LCH-256V2S-HP/2C02
2084     "MKNSSDRE(1TB|2TB|512GB|500GB|256GB|250GB)|" // tested with MKNSSDRE256GB/N1007C
2085     "MKNSSD(S2|TR)(120|2[45]0|480|500)GB(-LT)?|" // tested with MKNSSDS2500GB/T0818A0, MKNSSDTR500GB/O1126A
2086     "NFN025SA31T-.*|"// Neo Forza (?), from HP Laptop, tested with NFN025SA31T-6000000/S0628A0
2087     "OWC Envoy Pro|" // tested with OWC Envoy Pro/R0522A0 (0x1e91:0xa2a5)
2088     "Patriot P200 ((128|256|512)GB|[12]TB)|" // tested with Patriot P200 256GB/S1022A0
2089     "R3SL(120|240|480|960)G|" // AMD Radeon SSDs, tested with R3SL240G/P0422C
2090     "Ramsta SSD S800 (120|240|480)GB|" // SM2258G, tested with Ramsta SSD S800 480GB/RS81V0
2091     "SED2QII-LP SATA SSD ((64|128|256|512)GB|[12]TB)|" // ACPI SED2QII-LP, tested with
2092       // SED2QII-LP SATA SSD 64GB/S0410A
2093     "T60|" // KingSpec T60, tested with T60/20151120
2094     "TCSUNBOW [MX]3 (60|120|240)GB|" // TC-Sunbow M3/X3, tested with TCSUNBOW M3 240GB/R0327B0,
2095       // TCSUNBOW X3 120GB/R1211A0
2096     "TEAM( T253T|L5Lite3)D(120G|240G|480G|1T)|" // Team Group L5Lite 3D, tested with
2097       // TEAML5Lite3D240G/R0302A0, TEAM T253TD480G/Q0410A
2098     "TS((16|32|64|128|256|512)G|1T)(SSD|MSA)(230S?|370S?|420[IK]?)|" // Transcend SSD230/370/420
2099       // SATA/mSATA, TS6500, tested with TS128GMSA230S/02J0S86A, TS32GMSA370/20140402,
2100       // TS16GMSA370/20140516, TS64GSSD370/20140516, TS256GSSD370/N0815B, TS256GSSD370S/N1114H,
2101       // TS512GSSD370S/N1114H, TS32GSSD420I/N1114H, TS32GSSD420K/P1225CE
2102     "TS(16|32|64|128|512|256)GMTS4[03]0S?|" // TS256GMTS400, TS256GMTS430S/S0423A
2103     "TS(120|240)GMTS420S?|" // Transcend MTS420, tested with TS120GMTS420S/R0510A0
2104     "TS(128G|256G|512G|1T)SSD230S|" // TS128GSSD230S/P1025F8
2105     "TS(120|240|480|960)GSSD220S|" // TS480GSSD220S/P0520AA
2106     "TS(16G|32G|64G|128G|256G|512G|1T)MTS800S?|" // MTS800, tested with TS1TMTS800/O1225H1
2107     "TS(16|32|64)GMSA630|" // MSA630 mSATA SSD, tested with TS32GMSA630/N0113E1
2108     "TS(32|64|128)GPSD330|" // Transcend PSD SSD, tested with TS64GPSD330/20140121
2109     "TS(16|32|64|96|128|256)GSSD(630|360S)|" // Transcend 630/360S, tested with TS16GSSD630/N0113E1,
2110       // TS256GSSD360S/R0123A0
2111     "TS(128G|256G|512G|1T)ESD400K", // Transcend ESD400 Portable, tested with
2112       // TS256GESD400K/R0605AS (0x2174:0x2000)
2113     "", "",
2114   //"-v 1,raw48,Raw_Read_Error_Rate "
2115   //"-v 2,raw48,Throughput_Performance "
2116   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
2117   //"-v 9,raw24(raw8),Power_On_Hours "
2118   //"-v 12,raw48,Power_Cycle_Count "
2119     "-v 148,raw48,Total_SLC_Erase_Ct "
2120     "-v 149,raw48,Max_SLC_Erase_Ct "
2121     "-v 150,raw48,Min_SLC_Erase_Ct "
2122     "-v 151,raw48,Average_SLC_Erase_Ct "
2123     "-v 159,raw48,DRAM_1_Bit_Error_Count " // KINGSTON SKC600256G/S4500105
2124     "-v 160,raw48,Uncorrectable_Error_Cnt "
2125     "-v 161,raw48,Valid_Spare_Block_Cnt "
2126     "-v 163,raw48,Initial_Bad_Block_Count "
2127     "-v 164,raw48,Total_Erase_Count "
2128     "-v 165,raw48,Max_Erase_Count "
2129     "-v 166,raw48,Min_Erase_Count "
2130     "-v 167,raw48,Average_Erase_Count "
2131     "-v 168,raw48,Max_Erase_Count_of_Spec "
2132     "-v 169,raw48,Remaining_Lifetime_Perc "
2133   //"-v 175,raw48,Program_Fail_Count_Chip "
2134   //"-v 176,raw48,Erase_Fail_Count_Chip "
2135   //"-v 177,raw48,Wear_Leveling_Count "
2136     "-v 178,raw48,Runtime_Invalid_Blk_Cnt "
2137   //"-v 181,raw48,Program_Fail_Cnt_Total "
2138   //"-v 182,raw48,Erase_Fail_Count_Total "
2139   //"-v 187,raw48,Reported_Uncorrect "
2140   //"-v 192,raw48,Power-Off_Retract_Count "
2141   //"-v 194,tempminmax,Temperature_Celsius "
2142   //"-v 195,raw48,Hardware_ECC_Recovered "
2143   //"-v 196,raw16(raw16),Reallocated_Event_Count "
2144   //"-v 197,raw48,Current_Pending_Sector "
2145   //"-v 198,raw48,Offline_Uncorrectable "
2146   //"-v 199,raw48,UDMA_CRC_Error_Count "
2147     "-v 225,raw48,Host_Writes_32MiB " // FW 20140402
2148     "-v 231,raw48,SSD_Life_Left " // KINGSTON SKC600256G/S4500105
2149   //"-v 232,raw48,Available_Reservd_Space "
2150     "-v 241,raw48,Host_Writes_32MiB "
2151     "-v 242,raw48,Host_Reads_32MiB "
2152     "-v 245,raw48,TLC_Writes_32MiB " // FW N0815B, N1114H
2153     "-v 246,raw48,SLC_Writes_32MiB "
2154     "-v 247,raw48,Raid_Recoverty_Ct "
2155     "-v 248,raw48,Unkn_SiliconMotion_Attr " // ADATA SU900/Q0125A
2156     "-v 249,raw48,Unkn_SiliconMotion_Attr " // ADATA SU650/V8X01c45
2157   //"-v 250,raw48,Read_Error_Retry_Rate " // ADATA SU800/Q0913A
2158     "-v 251,raw48,Unkn_SiliconMotion_Attr" // ADATA SU800/Q0913A
2159   },
2160   { "Silicon Motion based OEM SSDs", // Like 'Silicon Motion based SSDs' but with FW detection
2161     "240GB|" // from Lenovo T430 Thinkpad, tested with 240GB/P0510E
2162     "Dogfish SSD (128|256|512)GB|" // tested with Dogfish SSD 128GB/S1211A0
2163     "INTENSO|" // tested with INTENSO/S1211A0 (Portable SSD 256GB premium edition)
2164     "Intenso SSD|" // tested with Intenso SSD/Q1107A0
2165     "Intenso  ?SSD Sata III|" // Sata III High, tested with Intenso  SSD Sata III/P0510E,
2166       // Intenso SSD Sata III/R0817B0
2167     "KingFast|" // KingFast F6M, tested with KingFast/P0725A
2168     "LDLC|" // tested with LDLC/KFS03005
2169     "SATA3 ((12[08]|240|256|480)G|[12]T)B SSD|" // TCSUNBOW X3, tested with SATA3 240GB SSD/S0618A0,
2170       // SATA3 1TB SSD/S1230A0,
2171       // KingDian S370, tested with SATA3 128GB SSD/T0311A0, SATA3 256GB SSD/S1127B0
2172       // KingDian S280, tested with SATA3 240GB SSD/T0519A0
2173     "SPCC M\\.2 SSD|" // Silicon Power 2280 M55, tested with SPCC M.2 SSD/Q0627A0
2174     "SuperMicro SSD", // Supermicro SSD-DM032-SMCMVN1, tested with SuperMicro SSD/SOB20R
2175     "KFS03005|P0510E|P0725A|Q(0627|1107)A0|R0817B0|S(0618|1211|1230)A0|S1127B0|SOB20R|T0(311|519)A0",
2176     "",
2177     "-v 148,raw48,Total_SLC_Erase_Ct "
2178     "-v 149,raw48,Max_SLC_Erase_Ct "
2179     "-v 150,raw48,Min_SLC_Erase_Ct "
2180     "-v 151,raw48,Average_SLC_Erase_Ct "
2181     "-v 159,raw48,Unkn_SiliconMotion_Attr "
2182     "-v 160,raw48,Uncorrectable_Error_Cnt "
2183     "-v 161,raw48,Valid_Spare_Block_Cnt "
2184     "-v 163,raw48,Initial_Bad_Block_Count "
2185     "-v 164,raw48,Total_Erase_Count "
2186     "-v 165,raw48,Max_Erase_Count "
2187     "-v 166,raw48,Min_Erase_Count "
2188     "-v 167,raw48,Average_Erase_Count "
2189     "-v 168,raw48,Max_Erase_Count_of_Spec "
2190     "-v 169,raw48,Remaining_Lifetime_Perc "
2191     "-v 178,raw48,Runtime_Invalid_Blk_Cnt "
2192     "-v 225,raw48,Host_Writes_32MiB "
2193     "-v 241,raw48,Host_Writes_32MiB "
2194     "-v 242,raw48,Host_Reads_32MiB "
2195     "-v 245,raw48,TLC_Writes_32MiB "
2196     "-v 246,raw48,SLC_Writes_32MiB "
2197     "-v 247,raw48,Raid_Recoverty_Ct "
2198     "-v 248,raw48,Unkn_SiliconMotion_Attr "
2199     "-v 251,raw48,Unkn_SiliconMotion_Attr"
2200   },
2201   { "SMART Modular Technologies mSATA XL+ SLC SSDs", // tested with SH9MST6D16GJSI01
2202     "SH9MST6D[0-9]*GJSI?[0-9]*", // based on http://www.smartm.com/salesLiterature/embedded/mSATA_overview.pdf
2203     "", "", // attributes info from http://www.mouser.com/ds/2/723/smartmodular_09302015_SH9MST6DxxxGJSxxx_rA[1]-770719.pdf
2204     "-v 1,raw48,Uncorrectable_ECC_Cnt "
2205   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
2206     "-v 9,raw48,Power_On_Hours " // override default raw24(raw8) format
2207   //"-v 12,raw48,Power_Cycle_Count "
2208     "-v 14,raw48,Device_Capacity_LBAs "
2209     "-v 15,raw48,User_Capacity_LBAs " // spec DecID is wrong, HexID is right
2210     "-v 16,raw48,Init_Spare_Blocks_Avail " // spec DecID is wrong, HexID is right
2211     "-v 17,raw48,Spare_Blocks_Remaining " // spec DecID is wrong, HexID is right
2212     "-v 100,raw48,Total_Erase_Count "
2213     "-v 168,raw48,SATA_PHY_Err_Ct "
2214     "-v 170,raw48,Initial_Bad_Block_Count "
2215     "-v 172,raw48,Erase_Fail_Count "
2216     "-v 173,raw48,Max_Erase_Count "
2217     "-v 174,raw48,Unexpect_Power_Loss_Ct "
2218     "-v 175,raw48,Average_Erase_Count "
2219   //"-v 181,raw48,Program_Fail_Cnt_Total "
2220   //"-v 187,raw48,Reported_Uncorrect "
2221   //"-v 194,tempminmax,Temperature_Celsius "
2222     "-v 197,raw48,Not_In_Use "
2223     "-v 198,raw48,Not_In_Use "
2224     "-v 199,raw48,SATA_CRC_Error_Count "
2225     "-v 202,raw48,Perc_Rated_Life_Used "
2226     "-v 231,raw48,Perc_Rated_Life_Remain "
2227     "-v 232,raw48,Read_Fail_Count "
2228     "-v 234,raw48,Flash_Reads_LBAs "
2229     "-v 235,raw48,Flash_Writes_LBAs "
2230   //"-v 241,raw48,Total_LBAs_Written "
2231   //"-v 242,raw48,Total_LBAs_Read "
2232     //  247-248 Missing in specification from April 2015
2233   },
2234   { "Smart Storage Systems Xcel-10 SSDs",  // based on http://www.smartm.com/files/salesLiterature/storage/xcel10.pdf
2235     "SMART A25FD-(32|64|128)GI32N", // tested with SMART A25FD-128GI32N/B9F23D4K
2236     "",
2237     "", // attributes info from http://www.adtron.com/pdf/SMART_Attributes_Xcel-10_810800014_RevB.pdf
2238     "-v 1,raw48,Not_Supported "
2239     "-v 2,raw48,Not_Supported "
2240   //"-v 9,raw24(raw8),Power_On_Hours "
2241   //"-v 12,raw48,Power_Cycle_Count "
2242     "-v 191,raw48,Not_Supported "
2243   //"-v 192,raw48,Power-Off_Retract_Count "
2244     "-v 197,raw48,ECC_Error_Count "
2245   //"-v 198,raw48,Offline_Uncorrectable "
2246   //"-v 199,raw48,UDMA_CRC_Error_Count "
2247     "-v 251,raw48,Min_Spares_Remain_Perc " // percentage of the total number of spare blocks available
2248     "-v 252,raw48,Added_Bad_Flash_Blk_Ct " // number of bad flash blocks
2249     "-v 254,raw48,Total_Erase_Blocks_Ct" // number of times the drive has erased any erase block
2250   },
2251   { "Smart Storage Systems XceedSecure2 SSDs",
2252     "(SMART|Adtron) ([AIS]25FBS|S35FCS).*",
2253     "", "",
2254     "-v 9,sec2hour,Power_On_Hours "
2255     "-v 194,hex64,Proprietary_194"
2256   },
2257   { "Smart Storage Systems XceedUltraX/Adtron A25FBX SSDs",
2258     "(SMART|Adtron) (A|I)25FBX.*",
2259     "", "",
2260     "-v 9,hex64,Proprietary_9 "
2261     "-v 194,hex48,Proprietary_194"
2262   },
2263   { "Smart Storage Systems Adtron A25FB 2xN SSDs",
2264     "(SMART|Adtron) A25FB.*2.N",
2265     "", "",
2266     "-v 110,hex64,Proprietary_HWC "
2267     "-v 111,hex64,Proprietary_MP "
2268     "-v 112,hex64,Proprietary_RtR "
2269     "-v 113,hex64,Proprietary_RR "
2270     "-v 120,hex64,Proprietary_HFAll "
2271     "-v 121,hex64,Proprietary_HF1st "
2272     "-v 122,hex64,Proprietary_HF2nd "
2273     "-v 123,hex64,Proprietary_HF3rd "
2274     "-v 125,hex64,Proprietary_SFAll "
2275     "-v 126,hex64,Proprietary_SF1st "
2276     "-v 127,hex64,Proprietary_SF2nd "
2277     "-v 128,hex64,Proprietary_SF3rd "
2278     "-v 194,raw24/raw32:zvzzzw,Fractional_Temperature"
2279   },
2280   { "Smart Storage Systems Adtron A25FB 3xN SSDs",
2281     "(SMART|Adtron) A25FB-.*3.N",
2282     "", "",
2283     "-v 9,sec2hour,Power_On_Hours "
2284     "-v 113,hex48,Proprietary_RR "
2285     "-v 130,raw48:54321,Minimum_Spares_All_Zs"
2286   //"-v 194,tempminmax,Temperature_Celsius"
2287   },
2288   { "SSSTC ER2 GD/CD Series SSDs", // Marvel DEAN 2.1
2289     "SSSTC ER2-[CG]D(240|480|960|1920)A?", // tested with SSSTC ER2-GD480/E4N2302l,
2290       // SSSTC ER2-CD1920A/E5MN401
2291     "","",
2292   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
2293   //"-v 9,raw24(raw8),Power_On_Hours "
2294   //"-v 12,raw48,Power_Cycle_Count "
2295     "-v 170,raw48,Available_Reservd_Space "
2296     "-v 171,raw48,Program_Fail_Count "
2297     "-v 172,raw48,Erase_Fail_Count "
2298     "-v 173,raw48,Average_PE_Count "
2299     "-v 174,raw48,Unexpect_Power_Loss_Ct "
2300     "-v 175,raw48,PwrLoss_ProtectionFail "
2301     "-v 183,raw48,SATA_Iface_Downshift "
2302   //"-v 184,raw48,End-to-End_Error "
2303   //"-v 187,raw48,Reported_Uncorrect "
2304   //"-v 194,tempminmax,Temperature_Celsius "
2305   //"-v 198,raw48,Offline_Uncorrectable "
2306   //"-v 199,raw48,UDMA_CRC_Error_Count "
2307     "-v 202,raw48,Percent_Lifetime_Remain "
2308   //"-v 210,raw48,Raid_Success_Recover_Ct " // ] E4N2302: Missing
2309   //"-v 234,raw48,Thermal_Throttle_Status " // ]
2310   //"-v 241,raw48,Total_LBAs_Written "
2311   //"-v 242,raw48,Total_LBAs_Read "
2312     "-v 243,raw48,NAND_Writes_GiB "
2313   },
2314   { "STEC Mach2 CompactFlash Cards", // tested with STEC M2P CF 1.0.0/K1385MS
2315     "STEC M2P CF 1.0.0",
2316     "", "",
2317     "-v 100,raw48,Erase_Program_Cycles "
2318     "-v 103,raw48,Remaining_Energy_Storg "
2319     "-v 170,raw48,Reserved_Block_Count "
2320     "-v 171,raw48,Program_Fail_Count "
2321     "-v 172,raw48,Erase_Fail_Count "
2322     "-v 173,raw48,Wear_Leveling_Count "
2323     "-v 174,raw48,Unexpect_Power_Loss_Ct "
2324     "-v 211,raw48,Unknown_Attribute " // ] Missing in specification
2325     "-v 212,raw48,Unknown_Attribute"  // ] from September 2012
2326   },
2327   { "Transcend CompactFlash Cards", // tested with TRANSCEND/20080820,
2328       // TS4GCF133/20100709, TS16GCF133/20100709, TS16GCF150/20110407
2329     "TRANSCEND|TS(4|8|16)GCF(133|150)",
2330     "", "",
2331     "-v 7,raw48,Unknown_Attribute "
2332     "-v 8,raw48,Unknown_Attribute"
2333   },
2334   { "Xmore Industrial SATA SSDs", // tested with M2CA032GXAIMS-003Z/XP01.1GB
2335     "(CFAST|M2[AC]A|MSATA|SSD)[0-9]{3}[GT]XA[CEI][MT][MST]-[0-9]{3}[TZ]",
2336     "", "",
2337   //"-v 1,raw48,Raw_Read_Error_Rate "
2338   //"-v 9,raw24(raw8),Power_On_Hours "
2339   //"-v 12,raw48,Power_Cycle_Count "
2340     "-v 168,raw48,SATA_Phy_Error_Count "
2341     "-v 169,raw48,Bad_Block_Rate "
2342     "-v 170,raw24/raw24:z54z10,Bad_Blk_Ct_Lat/Erl " // Later bad block/Early bad block
2343     "-v 173,raw16(avg16),MaxAvgErase_Ct "
2344     "-v 192,raw48,Unexpect_Power_Loss_Ct "
2345   //"-v 194,tempminmax,Temperature_Celsius " // optional
2346     "-v 218,raw48,SATA_CRC_Error_Count "
2347     "-v 231,raw48,Percent_Lifetime_Remain "
2348     "-v 241,raw48,Host_Writes_GiB"
2349   },
2350   { "Marvell SSD SD88SA024BA0 (SUN branded)",
2351     "MARVELL SD88SA024BA0 SUN24G 0902M0054V",
2352     "", "", ""
2353   },
2354   { "HP 1TB SATA disk GB1000EAFJL",
2355     "GB1000EAFJL",
2356     "", "", ""
2357   },
2358   { "HP 500GB SATA disk MM0500EANCR",
2359     "MM0500EANCR",
2360     "", "", ""
2361   },
2362   { "HP 250GB SATA disk VB0250EAVER",
2363     "VB0250EAVER",
2364     "", "", ""
2365   },
2366   { "IBM Deskstar 60GXP",  // ER60A46A firmware
2367     "(IBM-|Hitachi )?IC35L0[12346]0AVER07.*",
2368     "ER60A46A",
2369     "", ""
2370   },
2371   { "IBM Deskstar 60GXP",  // All other firmware
2372     "(IBM-|Hitachi )?IC35L0[12346]0AVER07.*",
2373     "",
2374     "IBM Deskstar 60GXP drives may need upgraded SMART firmware.\n"
2375     "Please see http://haque.net/dtla_update/",
2376     ""
2377   },
2378   { "IBM Deskstar 40GV & 75GXP (A5AA/A6AA firmware)",
2379     "(IBM-)?DTLA-30[57]0[123467][05].*",
2380     "T[WX][123468AG][OF]A[56]AA",
2381     "", ""
2382   },
2383   { "IBM Deskstar 40GV & 75GXP (all other firmware)",
2384     "(IBM-)?DTLA-30[57]0[123467][05].*",
2385     "",
2386     "IBM Deskstar 40GV and 75GXP drives may need upgraded SMART firmware.\n"
2387     "Please see http://haque.net/dtla_update/",
2388     ""
2389   },
2390   { "", // ExcelStor J240, J340, J360, J680, J880 and J8160
2391     "ExcelStor Technology J(24|34|36|68|88|816)0",
2392     "", "", ""
2393   },
2394   { "", // Fujitsu M1623TAU
2395     "FUJITSU M1623TAU",
2396     "",
2397     "",
2398     "-v 9,seconds"
2399   },
2400   { "Fujitsu MHG",
2401     "FUJITSU MHG2...ATU?.*",
2402     "",
2403     "",
2404     "-v 9,seconds"
2405   },
2406   { "Fujitsu MHH",
2407     "FUJITSU MHH2...ATU?.*",
2408     "",
2409     "",
2410     "-v 9,seconds"
2411   },
2412   { "Fujitsu MHJ",
2413     "FUJITSU MHJ2...ATU?.*",
2414     "",
2415     "",
2416     "-v 9,seconds"
2417   },
2418   { "Fujitsu MHK",
2419     "FUJITSU MHK2...ATU?.*",
2420     "",
2421     "",
2422     "-v 9,seconds"
2423   },
2424   { "",  // Fujitsu MHL2300AT
2425     "FUJITSU MHL2300AT",
2426     "",
2427     "This drive's firmware has a harmless Drive Identity Structure\n"
2428     "checksum error bug.",
2429     "-v 9,seconds"
2430   },
2431   { "",  // MHM2200AT, MHM2150AT, MHM2100AT, MHM2060AT
2432     "FUJITSU MHM2(20|15|10|06)0AT",
2433     "",
2434     "This drive's firmware has a harmless Drive Identity Structure\n"
2435     "checksum error bug.",
2436     "-v 9,seconds"
2437   },
2438   { "Fujitsu MHN",
2439     "FUJITSU MHN2...AT",
2440     "",
2441     "",
2442     "-v 9,seconds"
2443   },
2444   { "", // Fujitsu MHR2020AT
2445     "FUJITSU MHR2020AT",
2446     "",
2447     "",
2448     "-v 9,seconds"
2449   },
2450   { "", // Fujitsu MHR2040AT
2451     "FUJITSU MHR2040AT",
2452     "",    // Tested on 40BA
2453     "",
2454     "-v 9,seconds -v 192,emergencyretractcyclect "
2455     "-v 198,offlinescanuncsectorct -v 200,writeerrorcount"
2456   },
2457   { "Fujitsu MHS AT",
2458     "FUJITSU MHS20[6432]0AT(  .)?",
2459     "",
2460     "",
2461     "-v 9,seconds -v 192,emergencyretractcyclect "
2462     "-v 198,offlinescanuncsectorct -v 200,writeerrorcount "
2463     "-v 201,detectedtacount"
2464   },
2465   { "Fujitsu MHT", // tested with FUJITSU MHT2030AC/909B
2466     "FUJITSU MHT2...(AC|AH|AS|AT|BH)U?.*",
2467     "",
2468     "",
2469     "-v 9,seconds"
2470   },
2471   { "Fujitsu MHU",
2472     "FUJITSU MHU2...ATU?.*",
2473     "",
2474     "",
2475     "-v 9,seconds"
2476   },
2477   { "Fujitsu MHV",
2478     "FUJITSU MHV2...(AH|AS|AT|BH|BS|BT).*",
2479     "",
2480     "",
2481     "-v 9,seconds"
2482   },
2483   { "Fujitsu MPA..MPG",
2484     "FUJITSU MP[A-G]3...A[HTEV]U?.*",
2485     "",
2486     "",
2487     "-v 9,seconds"
2488   },
2489   { "Fujitsu MHY BH",
2490     "FUJITSU MHY2(04|06|08|10|12|16|20|25)0BH.*",
2491     "", "",
2492     "-v 240,raw48,Transfer_Error_Rate"
2493   },
2494   { "Fujitsu MHW AC", // tested with FUJITSU MHW2060AC/00900004
2495     "FUJITSU MHW20(40|60)AC",
2496     "", "", ""
2497   },
2498   { "Fujitsu MHW BH",
2499     "FUJITSU MHW2(04|06|08|10|12|16)0BH.*",
2500     "", "", ""
2501   },
2502   { "Fujitsu MHW BJ",
2503     "FUJITSU MHW2(08|12|16)0BJ.*",
2504     "", "", ""
2505   },
2506   { "Fujitsu MHZ BH",
2507     "FUJITSU MHZ2(04|08|12|16|20|25|32)0BH.*",
2508     "", "", ""
2509   },
2510   { "Fujitsu MHZ BJ",
2511     "FUJITSU MHZ2(08|12|16|20|25|32)0BJ.*",
2512     "",
2513     "",
2514     "-v 9,minutes"
2515   },
2516   { "Fujitsu MHZ BS",
2517     "FUJITSU MHZ2(12|25)0BS.*",
2518     "", "", ""
2519   },
2520   { "Fujitsu MHZ BK",
2521     "FUJITSU MHZ2(08|12|16|25)0BK.*",
2522     "", "", ""
2523   },
2524   { "Fujitsu MJA BH",
2525     "FUJITSU MJA2(08|12|16|25|32|40|50)0BH.*",
2526     "", "", ""
2527   },
2528   { "", // Samsung SV4012H (known firmware)
2529     "SAMSUNG SV4012H",
2530     "RM100-08",
2531     "",
2532     "-v 9,halfminutes -F samsung"
2533   },
2534   { "", // Samsung SV4012H (all other firmware)
2535     "SAMSUNG SV4012H",
2536     "",
2537     "May need -F samsung disabled; see manual for details.",
2538     "-v 9,halfminutes -F samsung"
2539   },
2540   { "", // Samsung SV0412H (known firmware)
2541     "SAMSUNG SV0412H",
2542     "SK100-01",
2543     "",
2544     "-v 9,halfminutes -v 194,10xCelsius -F samsung"
2545   },
2546   { "", // Samsung SV0412H (all other firmware)
2547     "SAMSUNG SV0412H",
2548     "",
2549     "May need -F samsung disabled; see manual for details.",
2550     "-v 9,halfminutes -v 194,10xCelsius -F samsung"
2551   },
2552   { "", // Samsung SV1204H (known firmware)
2553     "SAMSUNG SV1204H",
2554     "RK100-1[3-5]",
2555     "",
2556     "-v 9,halfminutes -v 194,10xCelsius -F samsung"
2557   },
2558   { "", // Samsung SV1204H (all other firmware)
2559     "SAMSUNG SV1204H",
2560     "",
2561     "May need -F samsung disabled; see manual for details.",
2562     "-v 9,halfminutes -v 194,10xCelsius -F samsung"
2563   },
2564   { "", // SAMSUNG SV0322A tested with FW JK200-35
2565     "SAMSUNG SV0322A",
2566     "", "", ""
2567   },
2568   { "SAMSUNG SpinPoint V80", // tested with SV1604N/TR100-23
2569     "SAMSUNG SV(0211|0401|0612|0802|1203|1604)N",
2570     "",
2571     "",
2572     "-v 9,halfminutes -F samsung2"
2573   },
2574   { "", // SAMSUNG SP40A2H with RR100-07 firmware
2575     "SAMSUNG SP40A2H",
2576     "RR100-07",
2577     "",
2578     "-v 9,halfminutes -F samsung"
2579   },
2580   { "", // SAMSUNG SP80A4H with RT100-06 firmware
2581     "SAMSUNG SP80A4H",
2582     "RT100-06",
2583     "",
2584     "-v 9,halfminutes -F samsung"
2585   },
2586   { "", // SAMSUNG SP8004H with QW100-61 firmware
2587     "SAMSUNG SP8004H",
2588     "QW100-61",
2589     "",
2590     "-v 9,halfminutes -F samsung"
2591   },
2592   { "SAMSUNG SpinPoint F1 DT", // tested with HD103UJ/1AA01113
2593     "SAMSUNG HD(083G|16[12]G|25[12]H|32[12]H|50[12]I|642J|75[23]L|10[23]U)J",
2594     "", "", ""
2595   },
2596   { "SAMSUNG SpinPoint F1 EG", // tested with HD103UI/1AA01113
2597     "SAMSUNG HD(252H|322H|502I|642J|753L|103U)I",
2598     "", "", ""
2599   },
2600   { "SAMSUNG SpinPoint F1 RE", // tested with HE103UJ/1AA01113
2601     "SAMSUNG HE(252H|322H|502I|642J|753L|103U)J",
2602     "", "", ""
2603   },
2604   { "SAMSUNG SpinPoint F2 EG", // tested with HD154UI/1AG01118
2605     "SAMSUNG HD(502H|10[23]S|15[34]U)I",
2606     "", "", ""
2607   },
2608   { "SAMSUNG SpinPoint F3", // tested with HD502HJ/1AJ100E4
2609     "SAMSUNG HD(502H|754J|103S)J",
2610     "", "", ""
2611   },
2612   { "Seagate Barracuda SpinPoint F3", // tested with ST1000DM005 HD103SJ/1AJ100E5
2613     "ST[0-9DM]* HD(502H|754J|103S)J",
2614     "", "", ""
2615   },
2616   { "SAMSUNG SpinPoint F3 EG", // tested with HD503HI/1AJ100E4, HD153WI/1AN10002
2617     "SAMSUNG HD(253G|(324|503)H|754J|105S|(153|203)W)I",
2618     "", "", ""
2619   },
2620   { "SAMSUNG SpinPoint F3 RE", // tested with HE103SJ/1AJ30001
2621     "SAMSUNG HE(502H|754J|103S)J",
2622     "", "", ""
2623   },
2624   { "Seagate Samsung Spinpoint F4", // tested with ST250DM001 HD256GJ/1AR10001
2625     "ST(250|320)DM001 HD(256G|322G|323H)J",
2626     "", "", ""
2627   },
2628   { "SAMSUNG SpinPoint F4 EG (AF)",// tested with HD204UI/1AQ10001(buggy|fixed)
2629     "SAMSUNG HD(155|204)UI",
2630     "", // 1AQ10001
2631     "Using smartmontools or hdparm with this\n"
2632     "drive may result in data loss due to a firmware bug.\n"
2633     "****** THIS DRIVE MAY OR MAY NOT BE AFFECTED! ******\n"
2634     "Buggy and fixed firmware report same version number!\n"
2635     "See the following web pages for details:\n"
2636     "http://knowledge.seagate.com/articles/en_US/FAQ/223571en\n"
2637     "https://www.smartmontools.org/wiki/SamsungF4EGBadBlocks",
2638     ""
2639   },
2640   { "Seagate Samsung SpinPoint F4 EG (AF)", // later sold as Barracuda Green,
2641       // tested with ST2000DL004 HD204UI/1AQ10001
2642     "ST2000DL004 HD204UI",
2643     "", "", ""
2644   },
2645   { "SAMSUNG SpinPoint S250", // tested with HD200HJ/KF100-06
2646     "SAMSUNG HD(162|200|250)HJ",
2647     "", "", ""
2648   },
2649   { "SAMSUNG SpinPoint T133", // tested with HD300LJ/ZT100-12, HD400LJ/ZZ100-14, HD401LJ/ZZ100-15
2650     "SAMSUNG HD(250KD|(30[01]|320|40[01])L[DJ])",
2651     "", "", ""
2652   },
2653   { "SAMSUNG SpinPoint T166", // tested with HD252KJ/CM100-11, HD501LJ/CR100-1[01]
2654     "SAMSUNG HD(080G|160H|252K|32[01]K|403L|50[01]L)J",
2655     "", "",
2656     "-v 197,increasing" // at least HD501LJ/CR100-11
2657   },
2658   { "SAMSUNG SpinPoint P120", // VF100-37 firmware, tested with SP2514N/VF100-37
2659     "SAMSUNG SP(16[01]3|2[05][01]4)[CN]",
2660     "VF100-37",
2661     "",
2662     "-F samsung3"
2663   },
2664   { "SAMSUNG SpinPoint P120", // other firmware, tested with SP2504C/VT100-33
2665     "SAMSUNG SP(16[01]3|2[05][01]4)[CN]",
2666     "",
2667     "May need -F samsung3 enabled; see manual for details.",
2668     ""
2669   },
2670   { "SAMSUNG SpinPoint P80 SD", // tested with HD160JJ/ZM100-33, SAMSUNG HD080HJ/P/ZH100-34
2671     "SAMSUNG HD(080H|120I|160J)J(/P)?",
2672     "", "", ""
2673   },
2674   { "SAMSUNG SpinPoint P80", // BH100-35 firmware, tested with SP0842N/BH100-35
2675     "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
2676     "BH100-35",
2677     "",
2678     "-F samsung3"
2679   },
2680   { "SAMSUNG SpinPoint P80", // firmware *-35 or later
2681     "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
2682     ".*-3[5-9]",
2683     "May need -F samsung3 enabled; see manual for details.",
2684     ""
2685   },
2686   { "SAMSUNG SpinPoint P80", // firmware *-25...34, tested with
2687       // SP0401N/TJ100-30, SP1614C/SW100-25 and -34
2688     "SAMSUNG SP(04[05]1|08[0124]2|12[0145]3|16[0145]4)[CN]",
2689     ".*-(2[5-9]|3[0-4])",
2690     "",
2691     "-v 9,halfminutes -v 198,increasing"
2692   },
2693   { "SAMSUNG SpinPoint P80", // firmware *-23...24, tested with
2694     // SP0802N/TK100-23,
2695     // SP1213N/TL100-23,
2696     // SP1604N/TM100-23 and -24
2697     "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
2698     ".*-2[34]",
2699     "",
2700     "-v 9,halfminutes -F samsung2"
2701   },
2702   { "SAMSUNG SpinPoint P80", // unknown firmware
2703     "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
2704     "",
2705     "May need -F samsung2 or -F samsung3 enabled; see manual for details.",
2706     ""
2707   },
2708   { "SAMSUNG SpinPoint M40/60/80", // tested with HM120IC/AN100-16, HM160JI/AD100-16
2709     "SAMSUNG HM(0[468]0H|120I|1[026]0J)[CI]",
2710     "",
2711     "",
2712     "-v 9,halfminutes"
2713   },
2714   { "SAMSUNG SpinPoint M5", // tested with HM160HI/HH100-12
2715     "SAMSUNG HM(((061|080)G|(121|160)H|250J)I|160HC)",
2716     "", "", ""
2717   },
2718   { "SAMSUNG SpinPoint M6", // tested with HM320JI/2SS00_01 M6
2719     "SAMSUNG HM(251J|320[HJ]|[45]00L)I",
2720     "", "", ""
2721   },
2722   { "SAMSUNG SpinPoint M7", // tested with HM500JI/2AC101C4
2723     "SAMSUNG HM(250H|320I|[45]00J)I",
2724     "", "", ""
2725   },
2726   { "SAMSUNG SpinPoint M7E (AF)", // tested with HM321HI/2AJ10001, HM641JI/2AJ10001
2727     "SAMSUNG HM(161G|(251|321)H|501I|641J)I",
2728     "", "", ""
2729   },
2730   { "Seagate Samsung SpinPoint M7E", // tested with ST640LM000 HM641JI/2AJ10001
2731     "ST(160|250|320|500|640)LM00[01] HM[0-9]*[GHIJ]I",
2732     "", "", ""
2733   },
2734   { "SAMSUNG SpinPoint M7U (USB)", // tested with HM252HX/2AC101C4
2735     "SAMSUNG HM(162H|252H|322I|502J)X",
2736     "", "", ""
2737   },
2738   { "SAMSUNG SpinPoint M8 (AF)", // tested with HN-M101MBB/2AR10001
2739     "SAMSUNG HN-M(250|320|500|640|750|101)MBB",
2740     "", "", ""
2741   },
2742   { "Seagate Samsung SpinPoint M8 (AF)", // tested with
2743       // ST750LM022 HN-M750MBB/2AR10001, ST320LM001 HN-M320MBB/2AR10002,
2744       // APPLE HDD ST500LM012/2BA30003
2745     "ST(250|320|500|640|750|1000)LM0[012][124] HN-M[0-9]*MBB|"
2746     "APPLE HDD ST500LM012",
2747     "", "", ""
2748   },
2749   { "SAMSUNG SpinPoint M8U (USB)", // tested with HN-M500XBB/2AR10001
2750     "SAMSUNG HN-M(320|500|750|101)XBB",
2751     "", "", ""
2752   },
2753   { "Seagate Samsung SpinPoint M8U (USB)", // tested with ST1000LM025 HN-M101ABB/2AR10001,
2754       // ST1000LM025 HN-M101ABB/2BA30003 (0x04e8:0x61b6)
2755     "ST(250|320|500|640|750|1000)LM0[012][3459] HN-M[0-9]*ABB",
2756     "", "", ""
2757   },
2758   { "Seagate Barracuda Pro Compute", // tested with ST1000LM049-2GH172/SDM1
2759     "ST(1000LM049|500LM034)-.*",
2760     "", "", ""
2761   },
2762   { "Seagate Samsung SpinPoint M9T", // tested with ST2000LM003 HN-M201RAD/2BC10003
2763       // (Seagate Expansion Portable)
2764     "ST(1500|2000)LM0(03|04|06|07|10) HN-M[0-9]*RAD",
2765     "", "", ""
2766   },
2767   { "Seagate Mobile HDD", // tested with ST1000LM035-1RK172/ACM1,
2768      // ST1000LM035-1RK172/ACM2, ST2000LM007-1R8174/SBK2
2769     "ST(2000LM0(07|09|10)|1000LM03[578])-.*",
2770     "", "", ""
2771   },
2772   // Flash accelerated, no SMART info in the specs
2773   // ST1000LX015-1U7172/SDM1
2774   { "Seagate FireCuda 2.5",
2775     "ST(500|1000|2000)LX0(01|15|25)-.*",
2776     "", "", "-v 240,msec24hour32 "
2777   },
2778   { "Seagate FireCuda 3.5", // ST2000DX002-2DV164/CC41
2779     "ST[12]000DX002-.*",
2780     "", "", "-v 240,msec24hour32 "
2781   },
2782   { "Seagate Samsung SpinPoint M9TU (USB)", // tested with ST1500LM008 HN-M151AAD/2BC10001
2783       // (0x04e8:0x61b5), ST2000LM005 HN-M201AAD2BC10001 (0x04e8:0x61b4)
2784     "ST(1500|2000)LM00[58] HN-M[0-9]*AAD",
2785     "", "", ""
2786   },
2787   { "SAMSUNG SpinPoint MP5", // tested with HM250HJ/2AK10001
2788     "SAMSUNG HM(250H|320H|500J|640J)J",
2789     "", "", ""
2790   },
2791   { "SAMSUNG SpinPoint MT2", // tested with HM100UI/2AM10001
2792     "SAMSUNG HM100UI",
2793     "", "", ""
2794   },
2795   { "SAMSUNG HM100UX (S2 Portable)", // tested with HM100UX/2AM10001
2796     "SAMSUNG HM100UX",
2797     "", "", ""
2798   },
2799   { "SAMSUNG SpinPoint M", // tested with MP0402H/UC100-11
2800     "SAMSUNG MP0(302|402|603|804)H",
2801     "",
2802     "",
2803     "-v 9,halfminutes"
2804   },
2805   { "SAMSUNG SpinPoint N3U-3 (USB)", // tested with
2806       // SAMSUNG HS25YJZ/3AU10-01 (0x18a5:0x0227, reports 4KiB LPS/LLS. ticket #159),
2807       // SAMSUNG HS20YJZ/3AU10-01 (0x04e8:0x2f06, reports 512B sectors, Debian Bug 964032)
2808     "SAMSUNG HS(122H|2[05]YJ)Z",
2809     "", "", ""
2810   },
2811   { "SK hynix SATA SSDs",
2812     "SK ?hynix SC(210|300|308|311|313).*|" // tested with
2813       // SK hynix SC210 mSATA 256GB/20002L00,
2814       // SKhynix SC300 HFS256G32MND-3210A/20131P00,
2815       // SK hynix SC308 SATA 128GB/30001P10,
2816       // SK hynix SC311 SATA 512GB/70000P10,
2817       // SK hynix SC313 HFS256G32TNF-N3A0A/70000P10
2818     "HFS(128|256|512)G3[29]MND-(2200|3[23]10)A|" // HFS128G32MND-2200A/20200L00,
2819       // HFS512G32MND-3210A/20100P00, HFS512G39MND-3310A/20002P00
2820     "HFS(120|250|500)G32TND-N1A2A|" // SL308, tested with HFS500G32TND-N1A2A/30000P10
2821     "HFS(128|256|512)G39MND-3510A|" // SC300, tested with HFS512G39MND-3510A/20400P00
2822     "HFS(128|256|512)G39TND-N210A", // SC308, tested with HFS128G39TND-N210A/30001P10
2823     "", "",
2824   //"-v 1,raw48,Raw_Read_Error_Rate "
2825     "-v 5,raw48,Retired_Block_Count "
2826   //"-v 9,raw24(raw8),Power_On_Hours "
2827   //"-v 12,raw48,Power_Cycle_Count "
2828     "-v 100,raw48,Total_Erase_Count "
2829     "-v 168,raw48,Min_Erase_Count "
2830     "-v 169,raw48,Max_Erase_Count "
2831     "-v 170,raw48,Unknown_SK_hynix_Attrib "
2832     "-v 171,raw48,Program_Fail_Count "
2833     "-v 172,raw48,Erase_Fail_Count "
2834     "-v 173,raw48,Wear_Leveling_Count "
2835     "-v 174,raw48,Unexpect_Power_Loss_Ct "
2836   //"-v 175,raw48,Program_Fail_Count_Chip "
2837     "-v 176,raw48,Unused_Rsvd_Blk_Cnt_Tot "
2838   //"-v 177,raw48,Wear_Leveling_Count "
2839   //"-v 178,raw48,Used_Rsvd_Blk_Cnt_Chip "
2840   //"-v 179,raw48,Used_Rsvd_Blk_Cnt_Tot "
2841     "-v 180,raw48,Erase_Fail_Count "
2842     "-v 181,raw48,Non4k_Aligned_Access "
2843     "-v 183,raw48,SATA_Downshift_Count "
2844   //"-v 184,raw48,End-to-End_Error "
2845   //"-v 187,raw48,Reported_Uncorrect "
2846   //"-v 188,raw48,Command_Timeout "
2847   //"-v 194,tempminmax,Temperature_Celsius "
2848   //"-v 195,raw48,Hardware_ECC_Recovered "
2849   //"-v 196,raw16(raw16),Reallocated_Event_Count "
2850   //"-v 198,raw48,Offline_Uncorrectable "
2851   //"-v 199,raw48,UDMA_CRC_Error_Count "
2852     "-v 201,raw48,Percent_Lifetime_Remain "
2853   //"-v 204,raw48,Soft_ECC_Correction "
2854     "-v 212,raw48,Phy_Error_Count "
2855     "-v 231,raw48,SSD_Life_Left "
2856     "-v 234,raw48,Unknown_SK_hynix_Attrib "
2857     "-v 241,raw48,Total_Writes_GiB "
2858     "-v 242,raw48,Total_Reads_GiB "
2859     "-v 243,raw48,Total_Media_Writes "
2860     "-v 250,raw48,Read_Retry_Count "
2861   },
2862   { "SK hynix SATA SSDs",
2863     "HFS(480|960|1T9|3T8)G3[2E]FEH-7[4A]10A", // tested with HFS480G32FEH-7410A/90037Q00
2864     "", "",
2865   //"-v 1,raw48,Raw_Read_Error_Rate "
2866     "-v 5,raw48,Retired_Block_Count "
2867   //"-v 9,raw24(raw8),Power_On_Hours "
2868     "-v 12,raw48,Device_Power_Cycle_Cnt "
2869     "-v 171,raw48,Program_Fail_Cnt "
2870     "-v 172,raw48,Erase_Fail_Cnt "
2871     "-v 174,raw48,Unexpected_Pwr_Loss_Cnt "
2872     "-v 175,raw48,Program_Fail_Cnt "
2873     "-v 176,raw48,Erase_Fail_Cnt "
2874     "-v 177,raw48,Endurance_Limit_Met "
2875     "-v 178,raw48,Used_Rsrvd_Blk_Cnt_Wrst "
2876     "-v 179,raw48,Used_Rsrvd_Blk_Cnt_Tot "
2877     "-v 180,raw48,E2E_Error_Det_Corr_Rate "
2878     "-v 181,raw48,Program_Fail_Cnt "
2879     "-v 182,raw48,Erase_Fail_Cnt "
2880     "-v 183,raw48,SATA_Downshift_Cnt "
2881   //"-v 184,raw48,End-to-End_Error "
2882   //"-v 187,raw48,Reported_Uncorrect "
2883   //"-v 188,raw48,Command_Timeout "
2884   //"-v 194,tempminmax,Temperature_Celsius "
2885     "-v 195,raw48,ECC_on_the_Fly_Rate "
2886   //"-v 199,raw48,UDMA_CRC_Error_Count "
2887     "-v 201,raw48,Uncorr_Soft_Read_Err_Rt "
2888     "-v 204,raw48,Soft_ECC_Correction_Rt "
2889     "-v 231,raw48,SSD_Life_Left "
2890     "-v 234,raw48,Lifetime_NAND_Prg_GiB "
2891     "-v 241,raw48,Lifetime_Writes_GiB "
2892     "-v 242,raw48,Lifetime_Reads_GiB "
2893     "-v 245,raw48,SSD_Life_Left "
2894     "-v 250,raw48,Read_Retry_Count "
2895   },
2896   { "Maxtor Fireball 541DX",
2897     "Maxtor 2B0(0[468]|1[05]|20)H1",
2898     "",
2899     "",
2900     "-v 9,minutes -v 194,unknown"
2901   },
2902   { "Maxtor Fireball 3",
2903     "Maxtor 2F0[234]0[JL]0",
2904     "",
2905     "",
2906     "-v 9,minutes"
2907   },
2908   { "Maxtor DiamondMax 1280 ATA",  // no self-test log, ATA2-Fast
2909     "Maxtor 8(1280A2|2160A4|2560A4|3840A6|4000A6|5120A8)",
2910     "",
2911     "",
2912     "-v 9,minutes"
2913   },
2914   { "Maxtor DiamondMax 2160 Ultra ATA",
2915     "Maxtor 8(2160D2|3228D3|3240D3|4320D4|6480D6|8400D8|8455D8)",
2916     "",
2917     "",
2918     "-v 9,minutes"
2919   },
2920   { "Maxtor DiamondMax 2880 Ultra ATA",
2921     "Maxtor 9(0510D4|0576D4|0648D5|0720D5|0840D6|0845D6|0864D6|1008D7|1080D8|1152D8)",
2922     "",
2923     "",
2924     "-v 9,minutes"
2925   },
2926   { "Maxtor DiamondMax 3400 Ultra ATA",
2927     "Maxtor 9(1(360|350|202)D8|1190D7|10[12]0D6|0840D5|06[48]0D4|0510D3|1(350|202)E8|1010E6|0840E5|0640E4)",
2928     "",
2929     "",
2930     "-v 9,minutes"
2931   },
2932   { "Maxtor DiamondMax D540X-4G",
2933     "Maxtor 4G(120J6|160J[68])",
2934     "",
2935     "",
2936     "-v 9,minutes -v 194,unknown"
2937   },
2938   { "Maxtor DiamondMax D540X-4K",
2939     "MAXTOR 4K(020H1|040H2|060H3|080H4)",
2940     "", "", ""
2941   },
2942   { "Maxtor DiamondMax Plus D740X",
2943     "MAXTOR 6L0(20[JL]1|40[JL]2|60[JL]3|80[JL]4)",
2944     "", "", ""
2945   },
2946   { "Maxtor DiamondMax Plus 5120 Ultra ATA 33",
2947     "Maxtor 9(0512D2|0680D3|0750D3|0913D4|1024D4|1360D6|1536D6|1792D7|2048D8)",
2948     "",
2949     "",
2950     "-v 9,minutes"
2951   },
2952   { "Maxtor DiamondMax Plus 6800 Ultra ATA 66",
2953     "Maxtor 9(2732U8|2390U7|204[09]U6|1707U5|1366U4|1024U3|0845U3|0683U2)",
2954     "",
2955     "",
2956     "-v 9,minutes"
2957   },
2958   { "Maxtor DiamondMax D540X-4D",
2959     "Maxtor 4D0(20H1|40H2|60H3|80H4)",
2960     "",
2961     "",
2962     "-v 9,minutes -v 194,unknown"
2963   },
2964   { "Maxtor DiamondMax 16",
2965     "Maxtor 4(R0[68]0[JL]0|R1[26]0L0|A160J0|R120L4)",
2966     "",
2967     "",
2968     "-v 9,minutes"
2969   },
2970   { "Maxtor DiamondMax 4320 Ultra ATA",
2971     "Maxtor (91728D8|91512D7|91303D6|91080D5|90845D4|90645D3|90648D[34]|90432D2)",
2972     "",
2973     "",
2974     "-v 9,minutes"
2975   },
2976   { "Maxtor DiamondMax 17 VL",
2977     "Maxtor 9(0431U1|0641U2|0871U2|1301U3|1741U4)",
2978     "",
2979     "",
2980     "-v 9,minutes"
2981   },
2982   { "Maxtor DiamondMax 20 VL",
2983     "Maxtor (94091U8|93071U6|92561U5|92041U4|91731U4|91531U3|91361U3|91021U2|90841U2|90651U2)",
2984     "",
2985     "",
2986     "-v 9,minutes"
2987   },
2988   { "Maxtor DiamondMax VL 30",  // U: ATA66, H: ATA100
2989     "Maxtor (33073U4|32049U3|31536U2|30768U1|33073H4|32305H3|31536H2|30768H1)",
2990     "",
2991     "",
2992     "-v 9,minutes"
2993   },
2994   { "Maxtor DiamondMax 36",
2995     "Maxtor (93652U8|92739U6|91826U4|91369U3|90913U2|90845U2|90435U1)",
2996     "",
2997     "",
2998     "-v 9,minutes"
2999   },
3000   { "Maxtor DiamondMax 40 ATA 66",
3001     "Maxtor 9(0684U2|1024U2|1362U3|1536U3|2049U4|2562U5|3073U6|4098U8)",
3002     "",
3003     "",
3004     "-v 9,minutes"
3005   },
3006   { "Maxtor DiamondMax Plus 40 (Ultra ATA 66 and Ultra ATA 100)",
3007     "Maxtor (54098[UH]8|53073[UH]6|52732[UH]6|52049[UH]4|51536[UH]3|51369[UH]3|51024[UH]2)",
3008     "",
3009     "",
3010     "-v 9,minutes"
3011   },
3012   { "Maxtor DiamondMax 40 VL Ultra ATA 100",
3013     "Maxtor 3(1024H1|1535H2|2049H2|3073H3|4098H4)( B)?",
3014     "",
3015     "",
3016     "-v 9,minutes"
3017   },
3018   { "Maxtor DiamondMax Plus 45 Ulta ATA 100",
3019     "Maxtor 5(4610H6|4098H6|3073H4|2049H3|1536H2|1369H2|1023H2)",
3020     "",
3021     "",
3022     "-v 9,minutes"
3023   },
3024   { "Maxtor DiamondMax 60 ATA 66",
3025     "Maxtor 9(1023U2|1536U2|2049U3|2305U3|3073U4|4610U6|6147U8)",
3026     "",
3027     "",
3028     "-v 9,minutes"
3029   },
3030   { "Maxtor DiamondMax 60 ATA 100",
3031     "Maxtor 9(1023H2|1536H2|2049H3|2305H3|3073H4|4098H6|4610H6|6147H8)",
3032     "",
3033     "",
3034     "-v 9,minutes"
3035   },
3036   { "Maxtor DiamondMax Plus 60",
3037     "Maxtor 5T0(60H6|40H4|30H3|20H2|10H1)",
3038     "",
3039     "",
3040     "-v 9,minutes"
3041   },
3042   { "Maxtor DiamondMax 80",
3043     "Maxtor (98196H8|96147H6)",
3044     "",
3045     "",
3046     "-v 9,minutes"
3047   },
3048   { "Maxtor DiamondMax 536DX",
3049     "Maxtor 4W(100H6|080H6|060H4|040H3|030H2)",
3050     "",
3051     "",
3052     "-v 9,minutes"
3053   },
3054   { "Maxtor DiamondMax Plus 8",
3055     "Maxtor 6(E0[234]|K04)0L0",
3056     "",
3057     "",
3058     "-v 9,minutes"
3059   },
3060   { "Maxtor DiamondMax 10 (ATA/133 and SATA/150)",
3061     "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",
3062     "",
3063     "",
3064     "-v 9,minutes"
3065   },
3066   { "Maxtor DiamondMax 10 (SATA/300)",
3067     "Maxtor 6V(080E|160E|200E|250F|300F|320F)0",
3068     "", "", ""
3069   },
3070   { "Maxtor DiamondMax Plus 9",
3071     "Maxtor 6Y((060|080|120|160)L0|(060|080|120|160|200|250)P0|(060|080|120|160|200|250)M0)",
3072     "",
3073     "",
3074     "-v 9,minutes"
3075   },
3076   { "Maxtor DiamondMax 11",
3077     "Maxtor 6H[45]00[FR]0",
3078     "", "", ""
3079   },
3080   { "Maxtor DiamondMax 17",
3081     "Maxtor 6G(080L|160[PE])0",
3082     "", "", ""
3083   },
3084   { "Seagate Maxtor DiamondMax 20",
3085     "MAXTOR STM3(40|80|160)[28]1[12]0?AS?",
3086     "", "", ""
3087   },
3088   { "Seagate Maxtor DiamondMax 21", // tested with MAXTOR STM3250310AS/3.AAF
3089     "MAXTOR STM3(80[28]15|160215|250310|(250|320)820|320620|500630)AS?",
3090     "", "", ""
3091   },
3092   { "Seagate Maxtor DiamondMax 22", // fixed firmware
3093     "(MAXTOR )?STM3(500320|750330|1000340)AS?",
3094     "MX1A", // http://knowledge.seagate.com/articles/en_US/FAQ/207969en
3095     "", ""
3096   },
3097   { "Seagate Maxtor DiamondMax 22", // fixed firmware
3098     "(MAXTOR )?STM3(160813|320614|640323|1000334)AS?",
3099     "MX1B", // http://knowledge.seagate.com/articles/en_US/FAQ/207975en
3100     "", ""
3101   },
3102   { "Seagate Maxtor DiamondMax 22", // buggy firmware
3103     "(MAXTOR )?STM3(500320|750330|1000340)AS?",
3104     "MX15",
3105     "There are known problems with these drives,\n"
3106     "AND THIS FIRMWARE VERSION IS AFFECTED,\n"
3107     "see the following Seagate web pages:\n"
3108     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
3109     "http://knowledge.seagate.com/articles/en_US/FAQ/207969en",
3110     ""
3111   },
3112   { "Seagate Maxtor DiamondMax 22", // unknown firmware
3113     "(MAXTOR )?STM3(160813|32061[34]|500320|640323|750330|10003(34|40))AS?",
3114     "",
3115     "There are known problems with these drives,\n"
3116     "see the following Seagate web pages:\n"
3117     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
3118     "http://knowledge.seagate.com/articles/en_US/FAQ/207969en\n"
3119     "http://knowledge.seagate.com/articles/en_US/FAQ/207975en",
3120     ""
3121   },
3122   { "Seagate Maxtor DiamondMax 23", // new firmware
3123     "STM3((160|250)31|(320|500)41|(750|1000)52)8AS?",
3124     "CC3[D-Z]",
3125     "", ""
3126   },
3127   { "Seagate Maxtor DiamondMax 23", // unknown firmware
3128     "STM3((160|250)31|(320|500)41|(750|1000)52)8AS?",
3129     "",
3130     "A firmware update for this drive may be available,\n"
3131     "see the following Seagate web pages:\n"
3132     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
3133     "http://knowledge.seagate.com/articles/en_US/FAQ/213911en",
3134     ""
3135   },
3136   { "Maxtor MaXLine Plus II",
3137     "Maxtor 7Y250[PM]0",
3138     "",
3139     "",
3140     "-v 9,minutes"
3141   },
3142   { "Maxtor MaXLine II",
3143     "Maxtor [45]A(25|30|32)0[JN]0",
3144     "",
3145     "",
3146     "-v 9,minutes"
3147   },
3148   { "Maxtor MaXLine III (ATA/133 and SATA/150)",
3149     "Maxtor 7L(25|30)0[SR]0",
3150     "",
3151     "",
3152     "-v 9,minutes"
3153   },
3154   { "Maxtor MaXLine III (SATA/300)",
3155     "Maxtor 7V(25|30)0F0",
3156     "", "", ""
3157   },
3158   { "Maxtor MaXLine Pro 500",  // There is also a 7H500R0 model, but I
3159     "Maxtor 7H500F0",               // haven't added it because I suspect
3160     "",                               // it might need vendoropts_9_minutes
3161     "", ""                            // and nobody has submitted a report yet
3162   },
3163   { "", // HITACHI_DK14FA-20B
3164     "HITACHI_DK14FA-20B",
3165     "",
3166     "",
3167     "-v 9,minutes -v 193,loadunload"
3168   },
3169   { "HITACHI Travelstar DK23XX/DK23XXB",
3170     "HITACHI_DK23..-..B?",
3171     "",
3172     "",
3173     "-v 9,minutes -v 193,loadunload"
3174   },
3175   { "Hitachi Endurastar J4K20/N4K20 (formerly DK23FA-20J)",
3176     "(HITACHI_DK23FA-20J|HTA422020F9AT[JN]0)",
3177     "",
3178     "",
3179     "-v 9,minutes -v 193,loadunload"
3180   },
3181   { "Hitachi Endurastar J4K30/N4K30",
3182     "HE[JN]4230[23]0F9AT00",
3183     "",
3184     "",
3185     "-v 9,minutes -v 193,loadunload"
3186   },
3187   { "Hitachi Travelstar C4K60",  // 1.8" slim drive
3188     "HTC4260[23]0G5CE00|HTC4260[56]0G8CE00",
3189     "",
3190     "",
3191     "-v 9,minutes -v 193,loadunload"
3192   },
3193   { "IBM Travelstar 4GT",
3194     "IBM-DTCA-2(324|409)0",
3195     "", "", ""
3196   },
3197   { "IBM Travelstar 6GN",
3198     "IBM-DBCA-20(324|486|648)0",
3199     "", "", ""
3200   },
3201   { "IBM Travelstar 25GS, 18GT, and 12GN",
3202     "IBM-DARA-2(25|18|15|12|09|06)000",
3203     "", "", ""
3204   },
3205   { "IBM Travelstar 14GS",
3206     "IBM-DCYA-214000",
3207     "", "", ""
3208   },
3209   { "IBM Travelstar 4LP",
3210     "IBM-DTNA-2(180|216)0",
3211     "", "", ""
3212   },
3213   { "IBM Travelstar 48GH, 30GN, and 15GN",
3214     "(IBM-|Hitachi )?IC25(T048ATDA05|N0(30|20|15|12|10|07|06|05)ATDA04)-.",
3215     "", "", ""
3216   },
3217   { "IBM Travelstar 32GH, 30GT, and 20GN",
3218     "IBM-DJSA-2(32|30|20|10|05)",
3219     "", "", ""
3220   },
3221   { "IBM Travelstar 4GN",
3222     "IBM-DKLA-2(216|324|432)0",
3223     "", "", ""
3224   },
3225   { "IBM/Hitachi Travelstar 60GH and 40GN",
3226     "(IBM-|Hitachi )?IC25(T060ATC[SX]05|N0[4321]0ATC[SX]04)-.",
3227     "", "", ""
3228   },
3229   { "IBM/Hitachi Travelstar 40GNX",
3230     "(IBM-|Hitachi )?IC25N0[42]0ATC[SX]05-.",
3231     "", "", ""
3232   },
3233   { "Hitachi Travelstar 80GN",
3234     "(Hitachi )?IC25N0[23468]0ATMR04-.",
3235     "", "", ""
3236   },
3237   { "Hitachi Travelstar 4K40",
3238     "(Hitachi )?HTS4240[234]0M9AT00",
3239     "", "", ""
3240   },
3241   { "Hitachi Travelstar 4K120",
3242     "(Hitachi )?(HTS4212(60|80|10|12)H9AT00|HTS421260G9AT00)",
3243     "", "", ""
3244   },
3245   { "Hitachi Travelstar 5K80",
3246     "(Hitachi )?HTS5480[8642]0M9AT00",
3247     "", "", ""
3248   },
3249   { "Hitachi Travelstar 5K100",
3250     "(Hitachi )?HTS5410[1864]0G9(AT|SA)00",
3251     "", "", ""
3252   },
3253   { "Hitachi Travelstar E5K100",
3254     "(Hitachi )?HTE541040G9(AT|SA)00",
3255     "", "", ""
3256   },
3257   { "Hitachi Travelstar 5K120",
3258     "(Hitachi )?HTS5412(60|80|10|12)H9(AT|SA)00",
3259     "", "", ""
3260   },
3261   { "Hitachi Travelstar 5K160",
3262     "(Hitachi |HITACHI )?HTS5416([468]0|1[26])J9(AT|SA)00",
3263     "", "", ""
3264   },
3265   { "Hitachi Travelstar E5K160",
3266     "(Hitachi )?HTE5416(12|16|60|80)J9(AT|SA)00",
3267     "", "", ""
3268   },
3269   { "Hitachi Travelstar 5K250",
3270     "(Hitachi |HITACHI )?HTS5425(80|12|16|20|25)K9(A3|SA)00",
3271     "", "", ""
3272   },
3273   { "Hitachi Travelstar 5K320", // tested with HITACHI HTS543232L9SA00/FB4ZC4EC,
3274     // Hitachi HTS543212L9SA02/FBBAC52F
3275     "(Hitachi |HITACHI )?HT(S|E)5432(80|12|16|25|32)L9(A3(00)?|SA0[012])",
3276     "", "", ""
3277   },
3278   { "Hitachi/HGST Travelstar Z5K320", // tested with Hitachi HTS543232A7A384/ES2OA70K
3279     "(Hitachi|HGST) HT[ES]5432(16|25|32)A7A38[145]",
3280     "", "", ""
3281   },
3282   { "Hitachi Travelstar 5K500.B", // tested with Hitachi HTS545050B9SA00/PB4OC60X,
3283       // Hitachi HTS545025B9SA02/PB2AC60W
3284     "(Hitachi )?HT[ES]5450(12|16|25|32|40|50)B9(A30[01]|SA0[02])",
3285     "", "", ""
3286   },
3287   { "Hitachi/HGST Travelstar Z5K500", // tested with HGST HTS545050A7E380/GG2OAC90,
3288       // Hitachi HTS545032A7E380/GGBOA7A0, HGST HTS545050A7E680/GR2OA230,
3289       // APPLE HDD HTS545050A7E362/GG2AB990
3290     "(Hitachi|HGST|APPLE HDD) HT[ES]5450(25|32|50)A7E(362|38[01]|680)",
3291     "", "", ""
3292   },
3293   { "Hitachi/HGST Travelstar 5K750", // tested with Hitachi HTS547575A9E384/JE4OA60A,
3294       // APPLE HDD HTS547550A9E384/JE3AD70F
3295     "(Hitachi|APPLE HDD) HT[ES]5475(50|64|75)A9E38[14]",
3296     "", "", ""
3297   },
3298   { "HGST Travelstar 5K1000", // tested with HGST HTS541010A9E680/JA0OA560,
3299       // HGST HTS541075A9E680/JA2OA560
3300     "HGST HT[ES]5410(64|75|10)A9E68[01]",
3301     "", "", ""
3302   },
3303   { "HGST Travelstar Z5K1000", // tested with HGST HTS541010A7E630/SE0OA4A0,
3304       // HGST HTS541010B7E610/01.01A01
3305     "HGST HTS5410(75|10)[AB]7E6(10|3[015])",
3306     "", "", ""
3307   },
3308   { "HGST Travelstar 5K1500", // tested with HGST HTS541515A9E630/KA0OA500
3309     "HGST HT[ES]541515A9E63[015]",
3310     "", "", ""
3311   },
3312   { "Hitachi Travelstar 7K60",
3313     "(Hitachi )?HTS726060M9AT00",
3314     "", "", ""
3315   },
3316   { "Hitachi Travelstar E7K60",
3317     "(Hitachi )?HTE7260[46]0M9AT00",
3318     "", "", ""
3319   },
3320   { "Hitachi Travelstar 7K100",
3321     "(Hitachi )?HTS7210[168]0G9(AT|SA)00",
3322     "", "", ""
3323   },
3324   { "Hitachi Travelstar E7K100",
3325     "(Hitachi )?HTE7210[168]0G9(AT|SA)00",
3326     "", "", ""
3327   },
3328   { "Hitachi Travelstar 7K200", // tested with HITACHI HTS722016K9SA00/DCDZC75A
3329     "(Hitachi |HITACHI )?HTS7220(80|10|12|16|20)K9(A3|SA)00",
3330     "", "", ""
3331   },
3332   { "Hitachi Travelstar 7K320", // tested with HITACHI HTS723216L9SA60/FC2ZC50B,
3333     // HTS723225L9A360/FCDOC30F, HTS723216L9A362/FC2OC39F
3334     "(Hitachi |HITACHI )?HT[ES]7232(80|12|16|25|32)L9(A300|A36[02]|SA6[01])",
3335     "", "", ""
3336   },
3337   { "Hitachi Travelstar Z7K320", // tested with HITACHI HTS723232A7A364/EC2ZB70B
3338     "(HITACHI )?HT[ES]7232(16|25|32)A7A36[145]",
3339     "", "", ""
3340   },
3341   { "Hitachi Travelstar 7K500", // tested with Hitachi HTS725050A9A360/PC4OC70D,
3342     // HITACHI HTS725032A9A364/PC3ZC70F
3343     "(Hitachi |HITACHI )?HT[ES]7250(12|16|25|32|50)A9A36[02-5]",
3344     "", "", ""
3345   },
3346   { "Hitachi/HGST Travelstar Z7K500", // tested with HITACHI HTS725050A7E630/GH2ZB390,
3347       // HGST HTS725050A7E630/GH2OA420, HGST HTS725050A7E630/GH2OA530
3348     "(HITACHI|HGST) HT[ES]7250(25|32|50)A7E63[015]",
3349     "", "", ""
3350   },
3351   { "Hitachi/HGST Travelstar 7K750", // tested with Hitachi HTS727550A9E364/JF3OA0E0,
3352       // Hitachi HTS727575A9E364/JF4OA0D0
3353     "(Hitachi|HGST) HT[ES]7275(50|64|75)A9E36[14]",
3354     "", "", ""
3355   },
3356   { "HGST Travelstar 7K1000", // tested with HGST HTS721010A9E630/JB0OA3B0
3357     // HGST HTS721075A9E630/JB2OA3J0
3358     "HGST HT[ES]7210(10|75)A9E63[01]",
3359     "", "", ""
3360   },
3361   { "IBM Deskstar 14GXP and 16GP",
3362     "IBM-DTTA-3(7101|7129|7144|5032|5043|5064|5084|5101|5129|5168)0",
3363     "", "", ""
3364   },
3365   { "IBM Deskstar 25GP and 22GXP",
3366     "IBM-DJNA-3(5(101|152|203|250)|7(091|135|180|220))0",
3367     "", "", ""
3368   },
3369   { "IBM Deskstar 37GP and 34GXP",
3370     "IBM-DPTA-3(5(375|300|225|150)|7(342|273|205|136))0",
3371     "", "", ""
3372   },
3373   { "IBM/Hitachi Deskstar 120GXP",
3374     "(IBM-)?IC35L((020|040|060|080|120)AVVA|0[24]0AVVN)07-[01]",
3375     "", "", ""
3376   },
3377   { "IBM/Hitachi Deskstar GXP-180",
3378     "(IBM-)?IC35L(030|060|090|120|180)AVV207-[01]",
3379     "", "", ""
3380   },
3381   { "Hitachi CinemaStar 5K320", // tested with Hitachi HCS5C3225SLA380/STBOA37H
3382     "Hitachi HCS5C32(25|32)SLA380",
3383     "", "", ""
3384   },
3385   { "Hitachi CinemaStar 5K1000", // Hitachi HCS5C1010CLA382/JC4OA3EA
3386     "Hitachi HCS5C10(10|75|50|32|25|16)CLA382",
3387     "", "", ""
3388   },
3389   { "Hitachi Deskstar 5K3000", // tested with HDS5C3030ALA630/MEAOA5C0,
3390       // Hitachi HDS5C3020BLE630/MZ4OAAB0 (OEM, Toshiba Canvio Desktop)
3391     "(Hitachi )?HDS5C30(15|20|30)(ALA|BLE)63[02].*",
3392     "", "", ""
3393   },
3394   { "Hitachi/HGST Deskstar 5K4000", // tested with HDS5C4040ALE630/MPAOA250
3395       // HGST HDS5C4040ALE630/MPAOA580
3396     "(Hitachi |HGST )?HDS5C40(30|40)ALE63[01].*",
3397     "", "", ""
3398   },
3399   { "Hitachi Deskstar 7K80",
3400     "(Hitachi )?HDS7280([48]0PLAT20|(40)?PLA320|80PLA380).*",
3401     "", "", ""
3402   },
3403   { "Hitachi Deskstar 7K160",
3404     "(Hitachi )?HDS7216(80|16)PLA[3T]80.*",
3405     "", "", ""
3406   },
3407   { "Hitachi Deskstar 7K250",
3408     "(Hitachi )?HDS7225((40|80|12|16)VLAT20|(12|16|25)VLAT80|(80|12|16|25)VLSA80)",
3409     "", "", ""
3410   },
3411   { "Hitachi Deskstar 7K250 (SUN branded)",
3412     "HITACHI HDS7225SBSUN250G.*",
3413     "", "", ""
3414   },
3415   { "Hitachi Deskstar T7K250",
3416     "(Hitachi )?HDT7225((25|20|16)DLA(T80|380))",
3417     "", "", ""
3418   },
3419   { "Hitachi Deskstar 7K400",
3420     "(Hitachi )?HDS724040KL(AT|SA)80",
3421     "", "", ""
3422   },
3423   { "Hitachi Deskstar 7K500",
3424     "(Hitachi )?HDS725050KLA(360|T80)",
3425     "", "", ""
3426   },
3427   { "Hitachi Deskstar P7K500",
3428     "(Hitachi )?HDP7250(16|25|32|40|50)GLA(36|38|T8)0",
3429     "", "", ""
3430   },
3431   { "Hitachi Deskstar T7K500",
3432     "(Hitachi )?HDT7250(25|32|40|50)VLA(360|380|T80)",
3433     "", "", ""
3434   },
3435   { "Hitachi Deskstar 7K1000",
3436     "(Hitachi )?HDS7210(50|75|10)KLA330",
3437     "", "", ""
3438   },
3439   { "Hitachi Deskstar 7K1000.B",
3440     "(Hitachi )?HDT7210((16|25)SLA380|(32|50|64|75|10)SLA360)",
3441     "", "", ""
3442   },
3443   { "Hitachi Deskstar 7K1000.C", // tested with Hitachi HDS721010CLA330/JP4OA3MA,
3444       // Hitachi HDS721025CLA682/JP1OA41A
3445     "(Hitachi )?HDS7210((16|25)CLA[36]82|(32|50)CLA[36]62|(64|75|10)CLA[36]3[02])",
3446     "", "", ""
3447   },
3448   { "Hitachi Deskstar 7K1000.D", // tested with HDS721010DLE630/MS2OA5Q0
3449     "Hitachi HDS7210(25|32|50|75|10)DLE630",
3450     "", "", ""
3451   },
3452   { "Hitachi Deskstar E7K1000", // tested with HDE721010SLA330/ST6OA31B
3453     "Hitachi HDE7210(50|75|10)SLA330",
3454     "", "", ""
3455   },
3456   { "Hitachi Deskstar 7K2000",
3457     "Hitachi HDS722020ALA330",
3458     "", "", ""
3459   },
3460   { "Hitachi Deskstar 7K3000", // tested with Hitachi HDS723030ALA640/MKAOA3B0,
3461       // Hitachi HDS723030BLE640/MX6OAAB0
3462     "Hitachi HDS7230((15|20)BLA642|30ALA640|30BLE640)",
3463     "", "", ""
3464   },
3465   { "Hitachi/HGST Deskstar 7K4000", // tested with Hitachi HDS724040ALE640/MJAOA250,
3466       // HGST HDS724040ALE640/MJAOA580
3467     "(Hitachi|HGST) HDS724040ALE640",
3468     "", "", ""
3469   },
3470   { "HGST Deskstar NAS", // tested with HGST HDN724040ALE640/MJAOA5E0,
3471       // HGST HDN726050ALE610/APGNT517, HGST HDN726060ALE610/APGNT517
3472       // HGST HDN726040ALE614/APGNW7JH, HGST HDN726060ALE614/K1HE594D
3473       // HGST HDN728080ALE604/A4GNW91X
3474     "HGST HDN72(40[34]|60[456]|808)0ALE6(04|1[04]|40)",
3475     "", "",
3476     "-v 22,raw48,Helium_Level" // HDN728080ALE604
3477   },
3478   { "Hitachi/HGST Ultrastar 5K3000", // tested with Hitachi HUA5C3030ALA640/MEAOA800
3479     "(Hitachi |HGST )?HUA5C30(20|30)ALA64[01]",
3480     "", "", ""
3481   },
3482   { "Hitachi Ultrastar A7K1000", // tested with
3483     // HUA721010KLA330      44X2459 42C0424IBM/GKAOAB4A,,
3484     // Hitachi HUA721075KLA330/GK8OA70M,
3485     // HITACHI HUA721075KLA330/GK8OA90A
3486     "(Hitachi |HITACHI )?HUA7210(50|75|10)KLA330.*",
3487     "", "", ""
3488   },
3489   { "Hitachi Ultrastar A7K2000", // tested with
3490     // HUA722010CLA330      43W7629 42C0401IBM
3491     "(Hitachi )?HUA7220(50|10|20)[AC]LA33[01].*",
3492     "", "", ""
3493   },
3494   { "Hitachi Ultrastar 7K3000", // tested with Hitachi HUA723030ALA640/MKAOA580,
3495       // Hitachi HUA723020ALA641/MK7OA840, HUA723020ALA640/MK7OAAA0
3496     "(Hitachi )?HUA7230(20|30)ALA64[01]",
3497     "", "", ""
3498   },
3499   { "Hitachi/HGST Ultrastar 7K4000", // tested with Hitachi HUS724040ALE640/MJAOA3B0,
3500       // HGST HUS724040ALE640/MJAOA580, HGST HUS724020ALA640/MF6OAA70,
3501       // HUS724030ALA640/MF8OAAZ0
3502     "(Hitachi |HGST )?HUS7240(20|30|40)AL[AE]64[01]",
3503     "", "", ""
3504   },
3505   { "Hitachi/HGST Ultrastar 7K2",
3506     "(Hitachi|HGST) HUS722T[12]TALA604",
3507     "", "",
3508     "-v 16,raw48,Gas_Gauge"
3509   },
3510   { "HGST Ultrastar 7K6000", // tested with HGST HUS726060ALE614/APGNW517
3511     "HGST HUS7260[2456]0AL[AEN]61[014]",
3512     "", "", ""
3513   },
3514   { "HGST Ultrastar HC310/320", // tested with HGST HUS726T6TALE6L4/VKGNW40H,
3515       // HGST HUS728T8TALE6L4/V8GNW460
3516     "HGST HUS72(6T[46]|8T8)TALE6L4",
3517     "", "", ""
3518   },
3519   { "HGST Ultrastar He6", // tested with HGST HUS726060ALA640/AHGNT1E2
3520     "HGST HUS726060ALA64[01]",
3521     "", "",
3522     "-v 22,raw48,Helium_Level"
3523   },
3524   { "HGST Ultrastar He8", // tested with HGST HUH728060ALE600/GR2OA230
3525     "HGST HUH7280(60|80)AL[EN]60[014]",
3526     "", "",
3527     "-v 22,raw48,Helium_Level"
3528   },
3529   { "HGST Ultrastar He10", // tested with HGST HUH7210100ALE600/0F27452
3530     "HGST HUH7210(08|10)AL[EN]60[014]",
3531     "", "",
3532     "-v 22,raw48,Helium_Level"
3533   },
3534   { "Western Digital Ultrastar He10/12", // WD white label, tested with
3535       // WDC WD80EMAZ-00WJTA0/83.H0A83 (Easystore 0x1058:0x25fb),
3536       // WDC WD80EZAZ-11TDBA0/83.H0A83, WDC WD100EMAZ-00WJTA0/83.H0A83,
3537       // WDC WD100EZAZ-11TDBA0/83.H0A83, WDC WD120EMAZ-11BLFA0/81.00A81
3538     "WDC WD(80|100|120)E[MZ]AZ-.*",
3539     "", "",
3540     "-v 22,raw48,Helium_Level"
3541   },
3542   { "HGST Ultrastar DC HC520 (He12)", // tested with HGST HUH721212ALE600/LEGNT3D0
3543     "HGST HUH721212AL[EN]60[014]",
3544     "", "",
3545     "-v 22,raw48,Helium_Level"
3546   },
3547   { "Western Digital Ultrastar DC HC530", // tested with WDC  WUH721414ALE6L4/LDGNW07G
3548     "WDC  ?WUH721414ALE6L4",
3549     "", "",
3550     "-v 22,raw48,Helium_Level"
3551   },
3552   { "Western Digital Ultrastar DC HC550", // tested with WDC  WUH721818ALE6L4/PCGNW110,
3553       // WUH721818ALE6L4/PCGAW232
3554     "(WDC  ?)?WUH72181[68]ALE6L[14]",
3555     "", "",
3556     "-v 22,raw48,Helium_Level"
3557   },
3558   { "HGST MegaScale 4000", // tested with HGST HMS5C4040ALE640/MPAOA580
3559     "HGST HMS5C4040[AB]LE64[01]", // B = DC 4000.B
3560     "", "", ""
3561   },
3562   { "Toshiba 2.5\" HDD (10-20 GB)",
3563     "TOSHIBA MK(101[67]GAP|15[67]GAP|20(1[678]GAP|(18|23)GAS))",
3564     "", "", ""
3565   },
3566   { "Toshiba 2.5\" HDD (30-60 GB)",
3567     "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)",
3568     "", "", ""
3569   },
3570   { "Toshiba 2.5\" HDD (80 GB and above)",
3571     "TOSHIBA MK(80(25GAS|26GAX|32GAX|32GSX)|10(31GAS|32GAX)|12(33GAS|34G[AS]X)|2035GSS)",
3572     "", "", ""
3573   },
3574   { "Toshiba 2.5\" HDD MK..37GSX", // tested with TOSHIBA MK1637GSX/DL032C
3575     "TOSHIBA MK(12|16)37GSX",
3576     "", "", ""
3577   },
3578   { "Toshiba 2.5\" HDD MK..46GSX", // tested with TOSHIBA MK1246GSX/LB213M
3579     "TOSHIBA MK(80|12|16|25)46GSX",
3580     "", "", ""
3581   },
3582   { "Toshiba 2.5\" HDD MK..50GACY", // tested with TOSHIBA MK8050GACY/TF105A
3583     "TOSHIBA MK8050GACY",
3584     "", "", ""
3585   },
3586   { "Toshiba 2.5\" HDD MK..34GSX", // tested with TOSHIBA MK8034GSX/AH301E
3587     "TOSHIBA MK(80|12|10)34GSX",
3588     "", "", ""
3589   },
3590   { "Toshiba 2.5\" HDD MK..32GSX", // tested with TOSHIBA MK1032GSX/AS021G
3591     "TOSHIBA MK(10|80|60|40)32GSX",
3592     "", "", ""
3593   },
3594   { "Toshiba 2.5\" HDD MK..51GSY", // tested with TOSHIBA MK1251GSY/LD101D
3595     "TOSHIBA MK(80|12|16|25)51GSY",
3596     "",
3597     "",
3598     "-v 9,minutes"
3599   },
3600   { "Toshiba 2.5\" HDD MK..52GSX", // tested with TOSHIBA MK3252GSX/LV010A
3601     "TOSHIBA MK(80|12|16|25|32)52GSX",
3602     "", "", ""
3603   },
3604   { "Toshiba 2.5\" HDD MK..55GSX", // tested with TOSHIBA MK5055GSX/FG001A, MK3255GSXF/FH115B
3605     "TOSHIBA MK(12|16|25|32|40|50)55GSXF?",
3606     "", "", ""
3607   },
3608   { "Toshiba 2.5\" HDD MK..56GSY", // tested with TOSHIBA MK2556GSYF/LJ001D
3609     "TOSHIBA MK(16|25|32|50)56GSYF?",
3610     "",
3611     "",
3612     "-v 9,minutes"
3613   },
3614   { "Toshiba 2.5\" HDD MK..59GSXP (AF)",
3615     "TOSHIBA MK(32|50|64|75)59GSXP?",
3616     "", "", ""
3617   },
3618   { "Toshiba 2.5\" HDD MK..59GSM (AF)",
3619     "TOSHIBA MK(75|10)59GSM",
3620     "", "", ""
3621   },
3622   { "Toshiba 2.5\" HDD MK..61GSY[N]", // tested with TOSHIBA MK5061GSY/MC102E, MK5061GSYN/MH000A,
3623       // TOSHIBA MK2561GSYN/MH000D
3624     "TOSHIBA MK(16|25|32|50|64)61GSYN?",
3625     "",
3626     "",
3627     "-v 9,minutes" // TOSHIBA MK2561GSYN/MH000D
3628   },
3629   { "Toshiba 2.5\" HDD MK..61GSYB", // tested with TOSHIBA MK5061GSYB/ME0A
3630     "TOSHIBA MK(16|25|32|50|64)61GSYB",
3631     "", "", ""
3632   },
3633   { "Toshiba 2.5\" HDD MK..65GSX", // tested with TOSHIBA MK5065GSX/GJ003A, MK3265GSXN/GH012H,
3634       // MK5065GSXF/GP006B, MK2565GSX H/GJ003A
3635     "TOSHIBA MK(16|25|32|50|64)65GSX[FN]?( H)?", // "... H" = USB ?
3636     "", "", ""
3637   },
3638   { "Toshiba 2.5\" HDD MK..75GSX", // tested with TOSHIBA MK7575GSX/GT001C
3639     "TOSHIBA MK(32|50|64|75)75GSX",
3640     "", "", ""
3641   },
3642   { "Toshiba 2.5\" HDD MK..76GSX/GS001A", // tested with TOSHIBA MK2576GSX/GS001A
3643     "TOSHIBA MK(16|25|32|50|64)76GSX",
3644     "GS001A",
3645     "", ""
3646   },
3647   { "Toshiba 2.5\" HDD MK..76GSX", // tested with TOSHIBA MK3276GSX/GS002D
3648     "TOSHIBA MK(16|25|32|50|64)76GSX",
3649     "",
3650     "",
3651     "-v 9,minutes"
3652   },
3653   { "Toshiba 2.5\" HDD MQ01ABB...", // tested with TOSHIBA MQ01ABB200/AY000U
3654     "TOSHIBA MQ01ABB(100|150|200)",
3655     "", "", ""
3656   },
3657   { "Toshiba 2.5\" HDD MQ01ABC...", // tested with TOSHIBA MQ01ABC150/AQ001U
3658     "TOSHIBA MQ01ABC(100|150|200)",
3659     "", "", ""
3660   },
3661   { "Toshiba 2.5\" HDD MQ01ABD...", // tested with TOSHIBA MQ01ABD100/AX001U,
3662       // TOSHIBA MQ01ABD100/AX1R4C, TOSHIBA MQ01ABD100V/AX001Q
3663     "TOSHIBA MQ01ABD(025|032|050|064|075|100)V?",
3664     "", "", ""
3665   },
3666   { "Toshiba 2.5\" HDD MQ01ABF...", // tested with TOSHIBA MQ01ABF050/AM001J
3667     "TOSHIBA MQ01ABF(050|075|100)",
3668     "", "", ""
3669   },
3670   { "Toshiba 2.5\" HDD MQ01UBB... (USB 3.0)", // tested with TOSHIBA MQ01UBB200/AY000U (0x0480:0xa100),
3671       // TOSHIBA MQ01UBB200/34MATMZ5T (0x05ac:0x8406)
3672     "TOSHIBA MQ01UBB200",
3673     "", "", ""
3674   },
3675   { "Toshiba 2.5\" HDD MQ01UBD... (USB 3.0)", // tested with TOSHIBA MQ01UBD050/AX001U (0x0480:0xa007),
3676       // TOSHIBA MQ01UBD100/AX001U (0x0480:0x0201, 0x0480:0xa200),
3677       // TOSHIBA MQ01UBD050/AX101U (0x0480:0xa202)
3678     "TOSHIBA MQ01UBD(050|075|100)",
3679     "", "", ""
3680   },
3681   { "Toshiba 2.5\" HDD MQ04UBF... (USB 3.0)", // tested with TOSHIBA MQ04UBF100/JU000U (0x0480:0xa202)
3682     "TOSHIBA MQ04UBF100",
3683     "", "", ""
3684   },
3685   { "Toshiba 2.5\" HDD MQ04UBD...", // tested with TOSHIBA MQ04UBD200/68U2T2VWT
3686     "TOSHIBA MQ04UBD200",
3687     "", "", ""
3688   },
3689   { "Toshiba 2.5\" HDD MQ03ABB...", // tested with TOSHIBA MQ03ABB300
3690     "TOSHIBA MQ03ABB[23]00",
3691     "", "", ""
3692   },
3693   { "Toshiba 2.5\" HDD MQ03UBB...", // tested with TOSHIBA MQ03UBB200/37I7T0NJT
3694     "TOSHIBA MQ03UBB(300|200|250)",
3695     "", "", ""
3696   },
3697   { "Toshiba 3.5\" HDD MK.002TSKB", // tested with TOSHIBA MK1002TSKB/MT1A
3698     "TOSHIBA MK(10|20)02TSKB",
3699     "", "", ""
3700   },
3701   { "Toshiba 3.5\" MG03ACAxxx(Y) Enterprise HDD", // tested with TOSHIBA MG03ACA100/FL1A
3702     "TOSHIBA MG03ACA[1234]00Y?",
3703     "", "", ""
3704   },
3705   { "Toshiba MG04ACA... Enterprise HDD", // tested with TOSHIBA MD04ACA500/FP1A,
3706       // TOSHIBA MG04ACA600A/FS2B, TOSHIBA MG04ACA400NY/FK5D (Dell)
3707     "TOSHIBA MG04ACA[23456]00([AEN].?)?",
3708     "", "", ""
3709   },
3710   { "Toshiba MG05ACA... Enterprise Capacity HDD", // tested with TOSHIBA MG05ACA800E/GX2A
3711     "TOSHIBA MG05ACA800[AE]",
3712     "", "", ""
3713   },
3714   { "Toshiba MG06ACA... Enterprise Capacity HDD", // tested with TOSHIBA MG06ACA800E/4303,
3715       // TOSHIBA MG06ACA10TE/0103
3716     "TOSHIBA MG06ACA([68]00|10T)[AE]Y?",
3717     "", "", ""
3718   },
3719   { "Toshiba MG07ACA... Enterprise Capacity HDD", // tested with TOSHIBA MG07ACA14TE/0101
3720     "TOSHIBA MG07ACA1[24]T[AE]Y?",
3721     "", "",
3722     "-v 23,raw48,Helium_Condition_Lower "
3723     "-v 24,raw48,Helium_Condition_Upper"
3724   },
3725   { "Toshiba MG08ACA... Enterprise Capacity HDD", // tested with TOSHIBA MG08ACA14TE/0102,
3726       // TOSHIBA MG08ACA16TE/0102
3727     "TOSHIBA MG08ACA1[46]T[AE]Y?",
3728     "", "",
3729     "-v 23,raw48,Helium_Condition_Lower "
3730     "-v 24,raw48,Helium_Condition_Upper"
3731   },
3732   { "Toshiba MG09ACA... Enterprise Capacity HDD", // tested with TOSHIBA MG09ACA18TE/0102
3733     "TOSHIBA MG09ACA1[68]T[AE]Y?",
3734     "", "",
3735     "-v 23,raw48,Helium_Condition_Lower "
3736     "-v 24,raw48,Helium_Condition_Upper "
3737     "-v 27,raw48,MAMR_Health_Monitor"
3738   },
3739   { "Toshiba 3.5\" DT01ABA... Desktop HDD", // tested with TOSHIBA DT01ABA300/MZ6OABB0
3740     "TOSHIBA DT01ABA(100|150|200|300)",
3741     "", "", ""
3742   },
3743   { "Toshiba 3.5\" DT01ACA... Desktop HDD", // tested with TOSHIBA DT01ACA100/MS2OA750,
3744       // TOSHIBA DT01ACA200/MX4OABB0, TOSHIBA DT01ACA300/MX6OABB0
3745     "TOSHIBA DT01ACA(025|032|050|075|100|150|200|300)",
3746     "", "", ""
3747   },
3748   { "Toshiba N300/MN NAS HDD", // tested with TOSHIBA HDWQ140/FJ1M, TOSHIBA HDWN160/FS1M,
3749       // TOSHIBA HDWN180/GX2M, TOSHIBA HDWG480/0601 (8TB), TOSHIBA HDWG11A/0603 (10TB),
3750       // TOSHIBA HDWG21C/0601 (12TB), TOSHIBA HDWG21E/0601 (14TB),
3751       // TOSHIBA MN07ACA12T/0601, TOSHIBA MN08ACA14T/0601
3752     "TOSHIBA HDW([GNQ]1[468]0|G(480|11A|21[CE]|31G))|" // 31G: 16TB
3753     "TOSHIBA MN0(4ACA400|6ACA([68]00|10T)|7ACA1[24]T|8ACA1[46]T)",
3754     "", "",
3755     "-v 23,raw48,Helium_Condition_Lower " // ] >= 12TB
3756     "-v 24,raw48,Helium_Condition_Upper"  // ]
3757   },
3758   { "Toshiba P300 (CMR)", // tested with TOSHIBA HDWD120/MX4OACF0
3759     "TOSHIBA HDWD1(05|10|20|30)",
3760     "", "", ""
3761   },
3762   { "Toshiba P300 (SMR)", // tested with TOSHIBA HDWD240/KQ000A
3763     "TOSHIBA HDWD2[246]0",
3764     "", "", ""
3765   },
3766   { "Toshiba X300", // tested with TOSHIBA HDWE160/FS2A, TOSHIBA HDWF180/GX0B
3767     "TOSHIBA HDW(E1[456]0|[FR]180|R(11A|21[CE]|31G))",  // 11A:10TB, 21C:12TB, 21E:14TB, 31G: 16TB
3768     "", "",
3769     "-v 23,raw48,Helium_Condition_Lower " // ] >= 12TB
3770     "-v 24,raw48,Helium_Condition_Upper"  // ]
3771   },
3772   { "Toshiba L200 (CMR)",
3773     "TOSHIBA HDW[JK]1(05|10)",
3774     "", "", ""
3775   },
3776   { "Toshiba L200 (SMR)", // tested with TOSHIBA HDWL110/JU000A. TOSHIBA HDWL120/JT000A
3777     "TOSHIBA HDWL1[12]0",
3778     "", "", ""
3779   },
3780   { "Toshiba 1.8\" HDD",
3781     "TOSHIBA MK[23468]00[4-9]GA[HL]",
3782     "", "", ""
3783   },
3784   { "Toshiba 1.8\" HDD MK..29GSG",
3785     "TOSHIBA MK(12|16|25)29GSG",
3786     "", "", ""
3787   },
3788   { "", // TOSHIBA MK6022GAX
3789     "TOSHIBA MK6022GAX",
3790     "", "", ""
3791   },
3792   { "Toshiba HK4R Series SSD", // TOSHIBA THNSN8960PCSE/8EET6101
3793     "TOSHIBA THNSN8(120P|240P|480P|960P|1Q92)CSE",
3794     "", "",
3795     "-v 167,raw48,SSD_Protect_Mode "
3796     "-v 168,raw48,SATA_PHY_Error_Count "
3797     "-v 169,raw48,Bad_Block_Count "
3798     "-v 173,raw48,Erase_Count "
3799   },
3800   { "Toshiba HG6 Series SSD", // TOSHIBA THNSNJ512GCST/JTRA0102
3801     // http://www.farnell.com/datasheets/1852757.pdf
3802     // TOSHIBA THNSFJ256GCSU/JULA1102
3803     // TOSHIBA THNSFJ256GDNU A/JYLA1102
3804     "TOSHIBA THNS[NF]J(060|128|256|512)G[BCAM8VD][SCN][TU].*",
3805     "", "",
3806     "-v 167,raw48,SSD_Protect_Mode "
3807     "-v 168,raw48,SATA_PHY_Error_Count "
3808     "-v 169,raw48,Bad_Block_Count "
3809     "-v 173,raw48,Erase_Count "
3810   },
3811   { "", // TOSHIBA MK6409MAV
3812     "TOSHIBA MK6409MAV",
3813     "", "", ""
3814   },
3815   { "Toshiba MKx019GAXB (SUN branded)",
3816     "TOS MK[34]019GAXB SUN[34]0G",
3817     "", "", ""
3818   },
3819   { "Seagate Momentus",
3820     "ST9(20|28|40|48)11A",
3821     "", "", ""
3822   },
3823   { "Seagate Momentus 42",
3824     "ST9(2014|3015|4019)A",
3825     "", "", ""
3826   },
3827   { "Seagate Momentus 4200.2", // tested with ST960812A/3.05
3828     "ST9(100822|808210|60812|50212|402113|30219)A",
3829     "", "", ""
3830   },
3831   { "Seagate Momentus 5400.2",
3832     "ST9(808211|6082[12]|408114|308110|120821|10082[34]|8823|6812|4813|3811)AS?",
3833     "", "", ""
3834   },
3835   { "Seagate Momentus 5400.3",
3836     "ST9(4081[45]|6081[35]|8081[15]|100828|120822|160821)AS?",
3837     "", "", ""
3838   },
3839   { "Seagate Momentus 5400.3 ED",
3840     "ST9(4081[45]|6081[35]|8081[15]|100828|120822|160821)AB",
3841     "", "", ""
3842   },
3843   { "Seagate Momentus 5400.4",
3844     "ST9(120817|(160|200|250)827)AS",
3845     "", "", ""
3846   },
3847   { "Seagate Momentus 5400.5",
3848     "ST9((80|120|160)310|(250|320)320)AS",
3849     "", "", ""
3850   },
3851   { "Seagate Momentus 5400.6",
3852     "ST9(80313|160(301|314)|(12|25)0315|250317|(320|500)325|500327|640320)ASG?",
3853     "", "",
3854     "-F xerrorlba" // ST9500325AS/0002SDM1 (ticket #1094)
3855   },
3856   { "Seagate Momentus 5400.7",
3857     "ST9(160316|(250|320)310|(500|640)320)AS",
3858     "", "", ""
3859   },
3860   { "Seagate Momentus 5400.7 (AF)", // tested with ST9640322AS/0001BSM2
3861       // (device reports 4KiB LPS with 1 sector offset)
3862     "ST9(320312|400321|640322|750423)AS",
3863     "", "", ""
3864   },
3865   { "Seagate Momentus 5400 PSD", // Hybrid drives
3866     "ST9(808212|(120|160)8220)AS",
3867     "", "", ""
3868   },
3869   { "Seagate Momentus 7200.1",
3870     "ST9(10021|80825|6023|4015)AS?",
3871     "", "", ""
3872   },
3873   { "Seagate Momentus 7200.2",
3874     "ST9(80813|100821|120823|160823|200420)ASG?",
3875     "", "", ""
3876   },
3877   { "Seagate Momentus 7200.3",
3878     "ST9((80|120|160)411|(250|320)421)ASG?",
3879     "", "", ""
3880   },
3881   { "Seagate Momentus 7200.4",
3882     "ST9(160412|250410|320423|500420)ASG?",
3883     "", "", ""
3884   },
3885   { "Seagate Momentus 7200 FDE.2",
3886     "ST9((160413|25041[12]|320426|50042[12])AS|(16041[489]|2504[16]4|32042[67]|500426)ASG)",
3887     "", "", ""
3888   },
3889   { "Seagate Momentus 7200.5", // tested with ST9750420AS/0001SDM5, ST9750420AS/0002SDM1
3890     "ST9(50042[34]|64042[012]|75042[02])ASG?",
3891     "", "", ""
3892   },
3893   { "Seagate Momentus XT", // fixed firmware
3894     "ST9(2505610|3205620|5005620)AS",
3895     "SD2[68]", // http://knowledge.seagate.com/articles/en_US/FAQ/215451en
3896     "", ""
3897   },
3898   { "Seagate Momentus XT", // buggy firmware, tested with ST92505610AS/SD24
3899     "ST9(2505610|3205620|5005620)AS",
3900     "SD2[45]",
3901     "These drives may corrupt large files,\n"
3902     "AND THIS FIRMWARE VERSION IS AFFECTED,\n"
3903     "see the following web pages for details:\n"
3904     "http://knowledge.seagate.com/articles/en_US/FAQ/215451en\n"
3905     "https://superuser.com/questions/313447/seagate-momentus-xt-corrupting-files-linux-and-mac",
3906     ""
3907   },
3908   { "Seagate Momentus XT", // unknown firmware
3909     "ST9(2505610|3205620|5005620)AS",
3910     "",
3911     "These drives may corrupt large files,\n"
3912     "see the following web pages for details:\n"
3913     "http://knowledge.seagate.com/articles/en_US/FAQ/215451en\n"
3914     "https://superuser.com/questions/313447/seagate-momentus-xt-corrupting-files-linux-and-mac",
3915     ""
3916   },
3917   { "Seagate Momentus XT (AF)", // tested with ST750LX003-1AC154/SM12
3918     "ST750LX003-.*",
3919     "", "", ""
3920   },
3921   { "Seagate Momentus Thin", // tested with ST320LT007-9ZV142/0004LVM1
3922     "ST(160|250|320)LT0(07|09|11|14)-.*",
3923     "", "", ""
3924   },
3925   { "Seagate Laptop HDD", // tested with ST500LT012-9WS142/0001SDM1,
3926       // ST500LM021-1KJ152/0002LIM1, ST4000LM016-1N2170/0003
3927     "ST((25|32|50)0LT0(12|15|25)|(32|50)0LM0(10|21)|[34]000LM016)-.*",
3928     "", "", ""
3929   },
3930   { "Seagate Laptop SSHD", // tested with ST500LM000-1EJ162/SM11
3931     "ST(500|1000)LM0(00|14)-.*",
3932     "", "", ""
3933   },
3934   { "Seagate Medalist 1010, 1720, 1721, 2120, 3230 and 4340",  // ATA2, with -t permissive
3935     "ST3(1010|1720|1721|2120|3230|4340)A",
3936     "", "", ""
3937   },
3938   { "Seagate Medalist 2110, 3221, 4321, 6531, and 8641",
3939     "ST3(2110|3221|4321|6531|8641)A",
3940     "", "", ""
3941   },
3942   { "Seagate U4",
3943     "ST3(2112|4311|6421|8421)A",
3944     "", "", ""
3945   },
3946   { "Seagate U5",
3947     "ST3(40823|30621|20413|15311|10211)A",
3948     "", "", ""
3949   },
3950   { "Seagate U6",
3951     "ST3(8002|6002|4081|3061|2041)0A",
3952     "", "", ""
3953   },
3954   { "Seagate U7",
3955     "ST3(30012|40012|60012|80022|120020)A",
3956     "", "", ""
3957   },
3958   { "Seagate U8",
3959     "ST3(4313|6811|8410|4313|13021|17221)A",
3960     "", "", ""
3961   },
3962   { "Seagate U9", // tested with ST3160022ACE/9.51
3963     "ST3(80012|120025|160022)A(CE)?",
3964     "", "", ""
3965   },
3966   { "Seagate U10",
3967     "ST3(20423|15323|10212)A",
3968     "", "", ""
3969   },
3970   { "Seagate UX",
3971     "ST3(10014A(CE)?|20014A)",
3972     "", "", ""
3973   },
3974   { "Seagate Barracuda ATA",
3975     "ST3(2804|2724|2043|1362|1022|681)0A",
3976     "", "", ""
3977   },
3978   { "Seagate Barracuda ATA II",
3979     "ST3(3063|2042|1532|1021)0A",
3980     "", "", ""
3981   },
3982   { "Seagate Barracuda ATA III",
3983     "ST3(40824|30620|20414|15310|10215)A",
3984     "", "", ""
3985   },
3986   { "Seagate Barracuda ATA IV",
3987     "ST3(20011|30011|40016|60021|80021)A",
3988     "", "", ""
3989   },
3990   { "Seagate Barracuda ATA V",
3991     "ST3(12002(3A|4A|9A|3AS)|800(23A|15A|23AS)|60(015A|210A)|40017A)",
3992     "", "", ""
3993   },
3994   { "Seagate Barracuda 5400.1",
3995     "ST340015A",
3996     "", "", ""
3997   },
3998   { "Seagate Barracuda 7200.7 and 7200.7 Plus", // tested with "ST380819AS          39M3701 39M0171 IBM"/3.03
3999     "ST3(200021A|200822AS?|16002[13]AS?|12002[26]AS?|1[26]082[78]AS|8001[13]AS?|8081[79]AS|60014A|40111AS|40014AS?)( .* IBM)?",
4000     "", "", ""
4001   },
4002   { "Seagate Barracuda 7200.8",
4003     "ST3(400[68]32|300[68]31|250[68]23|200826)AS?",
4004     "", "", ""
4005   },
4006   { "Seagate Barracuda 7200.9",
4007     "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?.*",
4008     "", "", ""
4009   },
4010   { "Seagate Barracuda 7200.10", // tested with GB0160EAFJE/HPG0
4011     "ST3((80|160)[28]15|200820|250[34]10|(250|300|320|400)[68]20|360320|500[68]30|750[68]40)AS?|"
4012     "GB0160EAFJE", // HP OEM
4013     "", "", ""
4014   },
4015   { "Seagate Barracuda 7200.11", // unaffected firmware
4016     "ST3(160813|320[68]13|500[368]20|640[36]23|640[35]30|750[36]30|1000(333|[36]40)|1500341)AS?",
4017     "CC.?.?", // http://knowledge.seagate.com/articles/en_US/FAQ/207957en
4018     "", ""
4019   },
4020   { "Seagate Barracuda 7200.11", // fixed firmware
4021     "ST3(500[368]20|750[36]30|1000340)AS?",
4022     "SD1A", // http://knowledge.seagate.com/articles/en_US/FAQ/207951en
4023     "", ""
4024   },
4025   { "Seagate Barracuda 7200.11", // fixed firmware
4026     "ST3(160813|320[68]13|640[36]23|1000333|1500341)AS?",
4027     "SD[12]B", // http://knowledge.seagate.com/articles/en_US/FAQ/207957en
4028     "", ""
4029   },
4030   { "Seagate Barracuda 7200.11", // buggy or fixed firmware
4031     "ST3(500[368]20|640[35]30|750[36]30|1000340)AS?",
4032     "(AD14|SD1[5-9]|SD81)",
4033     "There are known problems with these drives,\n"
4034     "THIS DRIVE MAY OR MAY NOT BE AFFECTED,\n"
4035     "see the following web pages for details:\n"
4036     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
4037     "http://knowledge.seagate.com/articles/en_US/FAQ/207951en\n"
4038     "https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=632758",
4039     ""
4040   },
4041   { "Seagate Barracuda 7200.11", // unknown firmware
4042     "ST3(160813|320[68]13|500[368]20|640[36]23|640[35]30|750[36]30|1000(333|[36]40)|1500341)AS?",
4043     "",
4044     "There are known problems with these drives,\n"
4045     "see the following Seagate web pages:\n"
4046     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
4047     "http://knowledge.seagate.com/articles/en_US/FAQ/207951en\n"
4048     "http://knowledge.seagate.com/articles/en_US/FAQ/207957en",
4049     ""
4050   },
4051   { "Seagate Barracuda 7200.12", // new firmware
4052     "ST3(160318|250318|320418|50041[08]|750528|1000528)AS",
4053     "CC4[9A-Z]",
4054     "", ""
4055   },
4056   { "Seagate Barracuda 7200.12", // unknown firmware
4057     "ST3(160318|250318|320418|50041[08]|750528|1000528)AS",
4058     "",
4059     "A firmware update for this drive may be available,\n"
4060     "see the following Seagate web pages:\n"
4061     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
4062     "http://knowledge.seagate.com/articles/en_US/FAQ/213891en",
4063     ""
4064   },
4065   { "Seagate Barracuda 7200.12", // tested with ST3250312AS/JC45, ST31000524AS/JC45,
4066       // ST3500413AS/JC4B, ST3750525AS/JC4B
4067       // ST3160316AS/JC45
4068       // Possible options: ST31000524AS, ST3500413AS, ST3250312AS ,
4069       // ST3750525AS, ST3320413AS, ST3160316AS
4070     "ST3(160318|25031[128]|320418|50041[038]|750(518|52[358])|100052[348]|320413|160316)AS",
4071     "", "", ""
4072   },
4073   { "Seagate Barracuda XT", // tested with ST32000641AS/CC13,
4074       // ST4000DX000-1C5160/CC42
4075     "ST(3(2000641|3000651)AS|4000DX000-.*)",
4076     "", "", ""
4077   },
4078   { "Seagate Barracuda 7200.14 (AF)", // new firmware, tested with
4079       // ST3000DM001-9YN166/CC4H, ST3000DM001-9YN166/CC9E
4080     "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.",
4081     "CC(4[H-Z]|[5-9A-Z]..*)", // >= "CC4H"
4082     "",
4083     "-v 188,raw16 -v 240,msec24hour32" // tested with ST3000DM001-9YN166/CC4H
4084   },
4085   { "Seagate Barracuda 7200.14 (AF)", // old firmware, tested with
4086       // ST1000DM003-9YN162/CC46
4087     "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.",
4088     "CC4[679CG]",
4089     "A firmware update for this drive is available,\n"
4090     "see the following Seagate web pages:\n"
4091     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
4092     "http://knowledge.seagate.com/articles/en_US/FAQ/223651en",
4093     "-v 188,raw16 -v 240,msec24hour32"
4094   },
4095   { "Seagate Barracuda 7200.14 (AF)", // unknown firmware
4096     "ST(1000|1500|2000|2500|3000)DM00[1-3]-9YN16.",
4097     "",
4098     "A firmware update for this drive may be available,\n"
4099     "see the following Seagate web pages:\n"
4100     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
4101     "http://knowledge.seagate.com/articles/en_US/FAQ/223651en",
4102     "-v 188,raw16 -v 240,msec24hour32"
4103   },
4104   { "Seagate Barracuda 7200.14 (AF)", // different part number, tested with
4105       // ST1000DM003-1CH162/CC47, ST1000DM003-1CH162/CC49, ST2000DM001-1CH164/CC24,
4106       // ST1000DM000-9TS15E/CC92, APPLE HDD ST3000DM001/AP15 (no attr 240)
4107     "ST(1000|1500|2000|2500|3000)DM00[0-3]-.*|"
4108     "APPLE HDD ST3000DM001",
4109     "", "",
4110     "-v 188,raw16 -v 240,msec24hour32"
4111   },
4112   { "Seagate Barracuda 7200.14 (AF)", // < 1TB, tested with ST250DM000-1BC141
4113     "ST(250|320|500|750)DM00[0-3]-.*",
4114     "", "",
4115     "-v 188,raw16 -v 240,msec24hour32"
4116   },
4117   { "Seagate BarraCuda 3.5 (CMR)", // tested with ST1000DM010-2EP102/CC43,
4118       // ST3000DM008-2DM166/CC26, ST4000DM006-2G5107/DN02, ST10000DM0004-1ZC101/DN01,
4119       // ST12000DM0007-2GR116/DN01
4120     "ST(500DM009|1000DM010|2000DM00[67]|3000DM00[89]|4000DM006|6000DM004|"
4121        "8000DM005|10000DM0004|12000DM0007)-.*",
4122     "", "",
4123     "-v 200,raw48,Pressure_Limit "
4124     "-v 188,raw16 -v 240,msec24hour32"
4125   },
4126   { "Seagate BarraCuda 3.5 (SMR)", // tested with ST2000DM008-2FR102/0001,
4127       // ST4000DM004-2CV104/0001 (TRIM: no), ST4000DM005-2DP166/0001, ST8000DM004-2CX188/0001
4128     "ST(2000DM00[589]|3000DM007|4000DM00[45]|6000DM003|8000DM004)-.*",
4129     "", "",
4130     "-v 9,msec24hour32 " // ST4000DM004-2CV104/0001
4131     "-v 200,raw48,Pressure_Limit "
4132     "-v 188,raw16 -v 240,msec24hour32"
4133   },
4134   { "Seagate Desktop HDD.15", // tested with ST4000DM000-1CD168/CC43, ST5000DM000-1FK178/CC44,
4135       // ST6000DM001-1XY17Z/CC48
4136     "ST[4568]000DM00[012]-.*",
4137     "", "",
4138     "-v 188,raw16 -v 240,msec24hour32"
4139   },
4140   { "Seagate Desktop SSHD", // tested with ST2000DX001-1CM164/CC43
4141     "ST[124]000DX001-.*",
4142     "", "",
4143     "-v 188,raw16 -v 240,msec24hour32"
4144   },
4145   { "Seagate Barracuda LP", // new firmware
4146     "ST3(500412|1000520|1500541|2000542)AS",
4147     "CC3[5-9A-Z]",
4148     "",
4149     "" // -F xerrorlba ?
4150   },
4151   { "Seagate Barracuda LP", // unknown firmware
4152     "ST3(500412|1000520|1500541|2000542)AS",
4153     "",
4154     "A firmware update for this drive may be available,\n"
4155     "see the following Seagate web pages:\n"
4156     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
4157     "http://knowledge.seagate.com/articles/en_US/FAQ/213915en",
4158     "-F xerrorlba" // tested with ST31000520AS/CC32
4159   },
4160   { "Seagate Barracuda Green (AF)", // new firmware
4161     "ST((10|15|20)00DL00[123])-.*",
4162     "CC(3[2-9A-Z]|[4-9A-Z]..*)", // >= "CC32"
4163     "", ""
4164   },
4165   { "Seagate Barracuda Green (AF)", // unknown firmware
4166     "ST((10|15|20)00DL00[123])-.*",
4167     "",
4168     "A firmware update for this drive may be available,\n"
4169     "see the following Seagate web pages:\n"
4170     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
4171     "http://knowledge.seagate.com/articles/en_US/FAQ/218171en",
4172     ""
4173   },
4174   { "Seagate Barracuda ES",
4175     "ST3(250[68]2|32062|40062|50063|75064)0NS",
4176     "", "", ""
4177   },
4178   // ST5000LM000, ST4000LM024, ST3000LM024, ST2000LM015, ST1000LM048, ST500LM030
4179   { "Seagate Barracuda 2.5 5400", // ST2000LM015-2E8174/SDM1, ST4000LM024-2AN17V/0001
4180     "ST(5000LM000|[34]000LM024|2000LM015|1000LM048|500LM030)-.*",
4181     "",
4182     "",
4183     "-v 183,raw48,SATA_Downshift_Count "
4184   },
4185   { "Seagate Barracuda ES.2", // fixed firmware
4186     "ST3(25031|50032|75033|100034)0NS",
4187     "SN[01]6|"         // http://knowledge.seagate.com/articles/en_US/FAQ/207963en
4188     "MA(0[^7]|[^0].)", // http://dellfirmware.seagate.com/dell_firmware/DellFirmwareRequest.jsp
4189     "",                //        ^^^^^^^^^^^^ down (no DNS A record)
4190     "-F xerrorlba" // tested with ST31000340NS/SN06
4191   },
4192   { "Seagate Barracuda ES.2", // buggy firmware (Dell)
4193     "ST3(25031|50032|75033|100034)0NS",
4194     "MA07",
4195     "There are known problems with these drives,\n"
4196     "AND THIS FIRMWARE VERSION IS AFFECTED,\n"
4197     "contact Dell support for a firmware update.",
4198     ""
4199   },
4200   { "Seagate Barracuda ES.2", // unknown firmware
4201     "ST3(25031|50032|75033|100034)0NS",
4202     "",
4203     "There are known problems with these drives,\n"
4204     "see the following Seagate web pages:\n"
4205     "http://knowledge.seagate.com/articles/en_US/FAQ/207931en\n"
4206     "http://knowledge.seagate.com/articles/en_US/FAQ/207963en",
4207     ""
4208   },
4209   { "Seagate Constellation (SATA)", // tested with ST9500530NS/SN03
4210     "ST9(160511|500530)NS",
4211     "", "", ""
4212   },
4213   { "Seagate Constellation ES (SATA)", // tested with ST31000524NS/SN11,
4214       // MB0500EAMZD/HPG1
4215     "ST3(50051|100052|200064)4NS|"
4216     "MB0500EAMZD", // HP OEM
4217     "", "", ""
4218   },
4219   { "Seagate Constellation ES (SATA 6Gb/s)", // tested with ST1000NM0011/SN02,
4220       // MB1000GCEEK/HPG1
4221     "ST(5|10|20)00NM0011|"
4222     "MB1000GCEEK", // HP OEM
4223     "", "", ""
4224   },
4225   { "Seagate Constellation ES.2 (SATA 6Gb/s)", // tested with ST32000645NS/0004, ST33000650NS,
4226       // MB3000EBKAB/HPG6
4227     "ST3(2000645|300065[012])NS|"
4228     "MB3000EBKAB", // HP OEM
4229     "", "", ""
4230   },
4231   { "Seagate Constellation ES.3", // tested with ST1000NM0033-9ZM173/0001,
4232       // ST4000NM0033-9ZM170/SN03, MB1000GCWCV/HPGC, MB4000GCWDC/HPGE
4233     "ST[1234]000NM00[35]3-.*|"
4234     "MB[14]000GCW(CV|DC)", // HP OEM
4235     "", "", ""
4236   },
4237   { "Seagate Constellation CS", // tested with ST3000NC000/CE02, ST3000NC002-1DY166/CN02
4238     "ST(1000|2000|3000)NC00[0-3](-.*)?",
4239     "", "", ""
4240   },
4241   { "Seagate Constellation.2 (SATA)", // 2.5", tested with ST91000640NS/SN02, MM1000GBKAL/HPGB
4242     "ST9(25061|50062|100064)[012]NS|" // *SS = SAS
4243     "MM1000GBKAL", // HP OEM
4244     "", "", ""
4245   },
4246   // ST6000NM0004, ST6000NM0024, ST6000NM0044, ST6000NM0084, ST5000NM0024,
4247   // ST5000NM0044, ST4000NM0024, ST4000NM0044, ST2000NM0024, ST2000NM0044
4248   // ST4000NM0035, ST3000NM0005, ST2000NM0055, ST1000NM0055, ST4000NM0045,
4249   // ST3000NM0015, ST2000NM0065, ST1000NM0065, ST4000NM0105, ST3000NM0055
4250   { "Seagate Enterprise Capacity 3.5 HDD", // tested with ST6000NM0024-1HT17Z/SN02,
4251       // ST10000NM0016-1TT101/SNB0
4252       // ST4000NM0085-1YY107/ZC11SXPH
4253       // ST8000NM0045-1RL112/NN02
4254       // ST6000NM0004-1FT17Z/NN01
4255       // ST4000NM0035-1V4107/TNC3
4256       // ST1000NM0055-1V410C/TN02
4257       // ST8000NM0055-1RM112/SN04
4258       // ST10000NM0156-2AA111/SS05
4259     "ST([1234568]|10)000NM0[01][0-68][456]-.*", // *[069]4 = 4Kn
4260     "", "",
4261     "-v 200,raw48,Pressure_Limit "
4262     "-v 188,raw16 -v 240,msec24hour32"
4263   },
4264   { "Seagate Enterprise Capacity 3.5 HDD", // V5.1, ms in attribute 9
4265     "ST[12]000NM0008-.*", // tested with ST1000NM0008-2F2100/SN01
4266     "", "",
4267     "-v 9,msec24hour32 -v 188,raw16 -v 240,msec24hour32"
4268   },
4269   { "Seagate Exos 5E8", // tested with ST8000AS0003-2HH188/0003
4270     "ST8000AS0003-.*",
4271     "", "",
4272     "-v 9,msec24hour32 -v 240,msec24hour32"
4273   },
4274   // ST1000NM000A, ST1000NM002A, ST2000NM000A, ST2000NM001A, ST2000NM002A,
4275   // ST3000NM000A, ST3000NM004A, ST4000NM000A, ST4000NM001A, ST4000NM002A,
4276   // ST4000NM006A, ST4000NM010A, ST4000NM012A, ST4000NM013A, ST6000NM002A,
4277   // ST6000NM021A, ST6000NM022A, ST6000NM025A, ST6000NM026A, ST8000NM000A,
4278   // ST8000NM002A, ST8000NM004A, ST8000NM008A, ST8000NM009A, ST8000NM016A
4279   { "Seagate Exos 7E8", // tested with ST6000NM021A-2R7101/SN02, ST8000NM000A-2KE101/SN02
4280     "ST[123468]000NM0(0[01234689]|1[0236]|2[1256])A-.*",
4281     "", "",
4282     "-v 18,raw48,Head_Health "
4283     "-v 240,msec24hour32"
4284   },
4285   { "Seagate Exos X12", // tested with ST12000NM0007-2A1101/SN02
4286     "ST12000NM00[01]7-.*", // *17 = SED
4287     "", "",
4288     "-v 200,raw48,Pressure_Limit "
4289     "-v 240,msec24hour32"
4290   },
4291   { "Seagate Exos X14", // tested with ST12000NM0008-2H3101/SN02,
4292       // ST12000NM0538-2K2101/CMA2 (OEM?)
4293     "ST(14000NM04[24]8|14000NM0(01|25)8|12000NM0(00|24|53)8|10000NM0(47|56)8)-.*",
4294     "", "",
4295     "-v 18,raw48,Head_Health "
4296     "-v 200,raw48,Pressure_Limit "
4297     "-v 240,msec24hour32"
4298   },
4299   { "Seagate Exos X16", // tested with ST10000NM001G-2MW103/SN02
4300       // ST14000NM001G-2KJ103/SN02, ST16000NM001G-2KK103/SN02, ST16000NM001G-2KK103/SN03
4301     "ST1[0246]000NM00[13]G-.*",
4302     "", "",
4303     "-v 18,raw48,Head_Health "
4304     "-v 200,raw48,Pressure_Limit "
4305     "-v 240,msec24hour32"
4306   },
4307   // new models: ST8000VN0002, ST6000VN0021, ST4000VN000
4308   //             ST8000VN0012, ST6000VN0031, ST4000VN003
4309   // tested with ST8000VN0002-1Z8112/ZA13YGNF
4310   { "Seagate NAS HDD", // tested with ST2000VN000-1H3164/SC42, ST3000VN000-1H4167/SC43
4311     "ST([234]000VN000|[468]000VN00(02|21|12|31|3))-.*",
4312     "", "", ""
4313   },
4314   // ST8000NE0001, ST8000NE0011, ST6000VN0001, ST6000VN0011, ST5000VN0001,
4315   // ST5000VN0011, ST4000VN0001, ST4000VN0011, ST3000VN0001, ST3000VN0011,
4316   // ST2000VN0001, ST2000VN0011
4317   // tested with ST8000NE0001-1WN112/PNA2
4318   { "Seagate Enterprise NAS HDD",
4319     "ST(8000NE|[65432]000VN)00[01]1-.*",
4320     "", "", ""
4321   },
4322   { "Seagate IronWolf", // tested with ST3000VN007-2E4166/SC60, ST4000VN008-2DR166/SC60,
4323       // ST6000VN001-2BB186/SC60, ST6000VN0033-2EE110/SC60, ST6000VN0041-2EL11C/SC61,
4324       // ST8000VN0022-2EL112/SC61, ST10000VN0004-1ZD101/SC60,
4325       // ST12000VN0007-2GS116/SC60, ST12000VN0008-2JH101/SC60
4326     "ST(1|2|3|4|6|8|10|12)000VN00(0?[2478]|1|22|33|41)-.*",
4327     "", "",
4328     "-v 18,raw48,Head_Health "
4329     "-v 200,raw48,Pressure_Limit "
4330     "-v 240,msec24hour32"
4331   },
4332   { "Seagate IronWolf Pro", // tested with ST4000NE0025-2EW107/EN02,
4333       // ST8000NE0004-1ZF11G/EN01, ST8000NE0021-2EN112/EN02, ST16000NE000-2RW103/EN02
4334     "ST([24]000NE0025|4000NE001|6000NE0023|8000NE00(04|08|21)|(10|12|14)000NE000[478]|16000NE000)-.*",
4335     "", "",
4336     "-v 18,raw48,Head_Health " // ST16000NE000
4337     "-v 200,raw48,Pressure_Limit "
4338     "-v 240,msec24hour32"
4339   },
4340   { "Seagate Archive HDD (SMR)", // tested with ST8000AS0002-1NA17Z/AR13
4341     "ST[568]000AS00[01][12]-.*",
4342     "", "", ""
4343   },
4344   { "Seagate Pipeline HD 5900.1",
4345     "ST3(160310|320[34]10|500(321|422))CS",
4346     "", "", ""
4347   },
4348   { "Seagate Pipeline HD 5900.2", // tested with ST31000322CS/SC13
4349     "ST3(160316|250[34]12|320(311|413)|500(312|414)|1000(322|424))CS",
4350     "", "", ""
4351   },
4352   { "Seagate Video 3.5 HDD", // tested with ST4000VM000-1F3168/SC23, SC25
4353     "ST(10|15|20|30|40)00VM00[023]-.*",
4354     "", "", ""
4355   },
4356   { "Seagate Medalist 17240, 13030, 10231, 8420, and 4310",
4357     "ST3(17240|13030|10231|8420|4310)A",
4358     "", "", ""
4359   },
4360   { "Seagate Medalist 17242, 13032, 10232, 8422, and 4312",
4361     "ST3(1724|1303|1023|842|431)2A",
4362     "", "", ""
4363   },
4364   { "Seagate NL35",
4365     "ST3(250623|250823|400632|400832|250824|250624|400633|400833|500641|500841)NS",
4366     "", "", ""
4367   },
4368   { "Seagate SV35.2",
4369     "ST3(160815|250820|320620|500630|750640)[AS]V",
4370     "", "", ""
4371   },
4372   { "Seagate SV35.3", // tested with ST3500320SV/SV16
4373     "ST3(500320|750330|1000340)SV",
4374     "", "", ""
4375   },
4376   { "Seagate SV35.5", // tested with ST31000525SV/CV12
4377     "ST3(250311|500410|1000525)SV",
4378     "", "", ""
4379   },
4380   // ST6000VX0001,ST6000VX0011,ST5000VX0001,ST5000VX0011,ST4000VX000
4381   // ST4000VX002, ST3000VX002, ST2000VX003, ST1000VX001, ST1000VX002
4382   // ST3000VX000, ST3000VX004, ST2000VX000, ST2000VX004, ST1000VX000
4383   { "Seagate Surveillance", // tested with ST1000VX001-1HH162/CV11, ST2000VX000-9YW164/CV12,
4384       // ST4000VX000-1F4168/CV14, ST2000VX003-1HH164/CV12
4385     "ST([1-5]000VX00[01234]1?|31000526SV|3500411SV)(-.*)?",
4386     "", "", ""
4387   },
4388   { "Seagate Skyhawk", // tested with ST3000VX010-2H916L/CV11, ST6000VX0023-2EF110/SC60
4389     "ST(1000VX005|2000VX008|3000VX0(09|10)|4000VX007|6000VX00(1|23)|8000VX00(4|22))-.*",
4390     "", "",
4391     "-v 9,msec24hour32 " // CV* Firmware only?
4392     "-v 240,msec24hour32"
4393   },
4394   { "Seagate DB35", // tested with ST3250823ACE/3.03, ST3300831SCE/3.03
4395     "ST3(200826|250823|300831|400832)[AS]CE",
4396     "", "", ""
4397   },
4398   { "Seagate DB35.2", // tested with ST3160212SCE/3.ACB
4399     "ST3(802110|120213|160212|200827|250824|300822|400833|500841)[AS]CE",
4400     "", "", ""
4401   },
4402   { "Seagate DB35.3",
4403     "ST3(750640SCE|((80|160)215|(250|320|400)820|500830|750840)[AS]CE)",
4404     "", "", ""
4405   },
4406   { "Seagate LD25.2", // tested with ST940210AS/3.ALC
4407     "ST9(40|80)210AS?",
4408     "", "", ""
4409   },
4410   { "Seagate ST1.2 CompactFlash", // tested with ST68022CF/3.01
4411     "ST6[468]022CF",
4412     "", "", ""
4413   },
4414   { "Seagate Nytro XF1230 SATA SSD", // tested with XF1230-1A0480/ST200354
4415     "XF1230-1A(0240|0480|0960|1920)",
4416     "", "",
4417     "-v 174,raw48,Unexpect_Power_Loss_Ct "
4418     "-v 180,raw48,End_to_End_Err_Detect "
4419     "-v 183,raw48,SATA_Downshift_Count "
4420     "-v 189,raw48,SSD_Health_Flags "
4421     "-v 190,raw48,SATA_Error_Ct "
4422     "-v 201,raw48,Read_Error_Rate "
4423     "-v 231,raw48,SSD_Life_Left_Perc "
4424     "-v 234,raw48,Lifetime_Nand_Gb "
4425     "-v 241,raw48,Total_Writes_GiB "
4426     "-v 242,raw48,Total_Reads_GiB "
4427     "-v 245,raw48,Read_Error_Rate "
4428   },
4429   { "Seagate IronWolf 110 SATA SSD", //Written to Seagate documentation
4430     "ZA(240|480|960|1920|3840)NM10001",
4431     "", "",
4432   //"-v 1,raw48,Raw_Read_Error_Rate "
4433   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
4434   //"-v 9,raw24(raw8),Power_On_Hours "
4435   //"-v 12,raw48,Power_Cycle_Count "
4436     "-v 100,raw48,Flash_GB_Erased "
4437     "-v 102,raw48,Lifetime_PS4_Entry_Ct "
4438     "-v 103,raw48,Lifetime_PS3_Exit_Ct "
4439     "-v 170,raw48,Grown_Bad_Block_Ct "
4440     "-v 171,raw48,Program_Fail_Count "
4441     "-v 172,raw48,Erase_Fail_Count "
4442     "-v 173,raw48,Avg_Program/Erase_Ct "
4443     "-v 174,raw48,Unexpected_Pwr_Loss_Ct "
4444     "-v 177,raw16,Wear_Range_Delta "
4445     "-v 183,hex56,SATA_Downshift_Count "
4446     "-v 187,raw48,Uncorrectable_ECC_Ct "
4447   //"-v 194,tempminmax,Temperature_Celsius "
4448     "-v 195,raw16(raw16),RAISE_ECC_Cor_Ct "
4449     "-v 198,raw48,Uncor_Read_Error_Ct "
4450   //"-v 199,raw48,UDMA_CRC_Error_Count "
4451     "-v 230,raw56,Drv_Life_Protect_Status "
4452     "-v 231,hex56,SSD_Life_Left "
4453   //"-v 232,raw48,Available_Reservd_Space "
4454     "-v 233,raw48,Lifetime_Wts_To_Flsh_GB "
4455     "-v 241,raw48,Lifetime_Wts_Frm_Hst_GB "
4456     "-v 242,raw48,Lifetime_Rds_Frm_Hst_GB "
4457     "-v 243,hex56,Free_Space "
4458   },
4459   { "Seagate IronWolf Pro 125 SSDs", // IronWolf_Pro_125_SSD_Product_Manual_100866982_A.pdf
4460     "Seagate IronWolfPro ZA(240|480|960|1920|3840)NX10001-.*", // tested with
4461       // Seagate IronWolfPro ZA3840NX10001-2ZH104/SU4SC01B
4462     "", "",
4463   //"-v 1,raw48,Raw_Read_Error_Rate "
4464   //"-v 9,raw24(raw8),Power_On_Hours "
4465   //"-v 12,raw48,Power_Cycle_Count "
4466     "-v 16,raw48,Spare_Blocks_Available "
4467     "-v 17,raw48,Spare_Blocks_Remaining "
4468     "-v 168,raw48,SATA_PHY_Error_Count "
4469     "-v 170,raw16,Early/Later_Bad_Blck_Ct "
4470     "-v 173,raw16,Max/Avg/Min_Erase_Ct "
4471     "-v 174,raw48,Unexpect_Power_Loss_Ct "
4472     "-v 177,raw16,Wear_Range_Delta "
4473   //"-v 192,raw48,Power-Off_Retract_Count "
4474   //"-v 194,tempminmax,Temperature_Celsius "
4475     "-v 218,raw48,SATA_CRC_Error_Count "
4476     "-v 231,raw48,SSD_Life_Left "
4477     "-v 232,hex48,Read_Failure_Blk_Ct "
4478     "-v 233,raw48,Flash_Writes_GiB "
4479     "-v 234,raw48,NAND_Reads_Sectors "
4480     "-v 235,raw48,Flash_Writes_Sectors "
4481     "-v 241,raw48,Host_Writes_GiB "
4482     "-v 242,raw48,Host_Reads_GiB "
4483     "-v 246,hex64,Write_Protect_Detail " // prevents interpretation of bogus threshold 255 (ticket #1396)
4484     "-v 247,raw48,Health_Check_Timer "
4485   },
4486   { "Seagate Nytro SATA SSD", //Written to Seagate documentation
4487     // tested with XA960LE10063, XA960LE10063
4488     "XA(240|480|960|1920|3840)[LM]E10(00|02|04|06|08|10)3",
4489     "", "",
4490   //"-v 1,raw48,Raw_Read_Error_Rate "
4491   //"-v 5,raw16(raw16),Reallocated_Sector_Ct "
4492   //"-v 9,raw24(raw8),Power_On_Hours "
4493   //"-v 12,raw48,Power_Cycle_Count "
4494     "-v 100,raw48,Flash_GB_Erased "
4495     "-v 102,raw48,Lifetime_PS4_Entry_Ct "
4496     "-v 103,raw48,Lifetime_PS3_Exit_Ct "
4497     "-v 170,raw48,Grown_Bad_Block_Ct "
4498     "-v 171,raw48,Program_Fail_Count "
4499     "-v 172,raw48,Erase_Fail_Count "
4500     "-v 173,raw48,Avg_Program/Erase_Ct "
4501     "-v 174,raw48,Unexpected_Pwr_Loss_Ct "
4502     "-v 177,raw16,Wear_Range_Delta "
4503     "-v 183,hex56,SATA_Downshift_Count "
4504     "-v 187,raw48,Uncorrectable_ECC_Ct "
4505   //"-v 194,tempminmax,Temperature_Celsius "
4506     "-v 195,raw16(raw16),RAISE_ECC_Cor_Ct "
4507     "-v 198,raw48,Uncor_Read_Error_Ct "
4508   //"-v 199,raw48,UDMA_CRC_Error_Count "
4509     "-v 230,raw56,Drv_Life_Protect_Status "
4510     "-v 231,hex56,SSD_Life_Left "
4511   //"-v 232,raw48,Available_Reservd_Space "
4512     "-v 233,raw48,Lifetime_Wts_To_Flsh_GB "
4513     "-v 241,raw48,Lifetime_Wts_Frm_Hst_GB "
4514     "-v 242,raw48,Lifetime_Rds_Frm_Hst_GB "
4515     "-v 243,hex56,Free_Space "
4516   },
4517   { "WD Blue / Red / Green SSDs", // tested with WDC WDS250G1B0A-00H9H0/X41000WD,
4518       // WDC WDS250G1B0A-00H9H0/X41100WD, WDC WDS100T1B0A-00H9H0,
4519       // WDC WDS120G2G0A-00JH30/UE360000, WDC WDS240G2G0A-00JH30/UF300000,
4520       // WDC WDS500G2B0A-00SM50/X61130WD, WDC WDS200T2B0A-00SM50/X61130WD,
4521       // WDC WDS200T2B0A/X61190WD, WDC WDS120G1G0A-00SS50/Z3311000
4522       // WDC  WDS500G2B0A-00SM50/401000WD,
4523       // WDC WDBNCE2500PNC/X61130WD, WDC WDBNCE0010PNC-WRSN/X41110WD,
4524       // WDC  WDS200T1R0A-68A4W0/411000WR
4525     "WDC WDBNCE(250|500|00[124])0PNC(-.*)?|" // Blue 3D
4526     "WDC  ?WDS((120|240|250|480|500)G|[12]00T)(1B|2B|1G|2G|1R)0[AB](-.*)?",
4527       // *B* = Blue, *G* = Green, *2B* = Blue 3D NAND, *1R* = Red SA500
4528     "", "",
4529   //"-v 5,raw16(raw16),Reallocated_Sector_Ct " // Reassigned Block Count
4530   //"-v 9,raw24(raw8),Power_On_Hours "
4531   //"-v 12,raw48,Power_Cycle_Count "
4532     "-v 165,raw48,Block_Erase_Count "
4533     "-v 166,raw48,Minimum_PE_Cycles_TLC "
4534     "-v 167,raw48,Max_Bad_Blocks_per_Die "
4535     "-v 168,raw48,Maximum_PE_Cycles_TLC "
4536     "-v 169,raw48,Total_Bad_Blocks "
4537     "-v 170,raw48,Grown_Bad_Blocks "
4538     "-v 171,raw48,Program_Fail_Count "
4539     "-v 172,raw48,Erase_Fail_Count "
4540     "-v 173,raw48,Average_PE_Cycles_TLC "
4541     "-v 174,raw48,Unexpected_Power_Loss "
4542   //"-v 184,raw48,End-to-End_Error " // Detection/Correction Count
4543   //"-v 187,raw48,Reported_Uncorrect " // Uncorrectable Errors
4544   //"-v 188,raw48,Command_Timeout "
4545   //"-v 194,tempminmax,Temperature_Celsius "
4546   //"-v 199,raw48,UDMA_CRC_Error_Count " // SATA CRC Errors
4547     "-v 230,hex48,Media_Wearout_Indicator " // Maybe hex16
4548   //"-v 232,raw48,Available_Reservd_Space"
4549     "-v 233,raw48,NAND_GB_Written_TLC "
4550     "-v 234,raw48,NAND_GB_Written_SLC "
4551     "-v 241,raw48,Host_Writes_GiB "
4552     "-v 242,raw48,Host_Reads_GiB "
4553     "-v 244,raw48,Temp_Throttle_Status "
4554   },
4555   { "Western Digital Protege",
4556   /* Western Digital drives with this comment all appear to use Attribute 9 in
4557    * a  non-standard manner.  These entries may need to be updated when it
4558    * is understood exactly how Attribute 9 should be interpreted.
4559    * UPDATE: this is probably explained by the WD firmware bug described in the
4560    * smartmontools FAQ */
4561     "WDC WD([2468]00E|1[26]00A)B-.*",
4562     "", "", ""
4563   },
4564   { "Western Digital Caviar",
4565   /* Western Digital drives with this comment all appear to use Attribute 9 in
4566    * a  non-standard manner.  These entries may need to be updated when it
4567    * is understood exactly how Attribute 9 should be interpreted.
4568    * UPDATE: this is probably explained by the WD firmware bug described in the
4569    * smartmontools FAQ */
4570     "WDC WD(2|3|4|6|8|10|12|16|18|20|25)00BB-.*",
4571     "", "", ""
4572   },
4573   { "Western Digital Caviar WDxxxAB",
4574   /* Western Digital drives with this comment all appear to use Attribute 9 in
4575    * a  non-standard manner.  These entries may need to be updated when it
4576    * is understood exactly how Attribute 9 should be interpreted.
4577    * UPDATE: this is probably explained by the WD firmware bug described in the
4578    * smartmontools FAQ */
4579     "WDC WD(3|4|6|8|25)00AB-.*",
4580     "", "", ""
4581   },
4582   { "Western Digital Caviar WDxxxAA",
4583   /* Western Digital drives with this comment all appear to use Attribute 9 in
4584    * a  non-standard manner.  These entries may need to be updated when it
4585    * is understood exactly how Attribute 9 should be interpreted.
4586    * UPDATE: this is probably explained by the WD firmware bug described in the
4587    * smartmontools FAQ */
4588     "WDC WD...?AA(-.*)?",
4589     "", "", ""
4590   },
4591   { "Western Digital Caviar WDxxxBA",
4592   /* Western Digital drives with this comment all appear to use Attribute 9 in
4593    * a  non-standard manner.  These entries may need to be updated when it
4594    * is understood exactly how Attribute 9 should be interpreted.
4595    * UPDATE: this is probably explained by the WD firmware bug described in the
4596    * smartmontools FAQ */
4597     "WDC WD...BA",
4598     "", "", ""
4599   },
4600   { "Western Digital Caviar AC", // add only 5400rpm/7200rpm (ata33 and faster)
4601     "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]?.*",
4602     "", "", ""
4603   },
4604   { "Western Digital Caviar SE",
4605   /* Western Digital drives with this comment all appear to use Attribute 9 in
4606    * a  non-standard manner.  These entries may need to be updated when it
4607    * is understood exactly how Attribute 9 should be interpreted.
4608    * UPDATE: this is probably explained by the WD firmware bug described in the
4609    * smartmontools FAQ
4610    * UPDATE 2: this does not apply to more recent models, at least WD3200AAJB */
4611     "WDC WD(4|6|8|10|12|16|18|20|25|30|32|40|50)00(JB|PB)-.*",
4612     "", "", ""
4613   },
4614   { "Western Digital Caviar Blue EIDE",  // WD Caviar SE EIDE
4615     /* not completely accurate: at least also WD800JB, WD(4|8|20|25)00BB sold as Caviar Blue */
4616     "WDC WD(16|25|32|40|50)00AAJB-.*",
4617     "", "", ""
4618   },
4619   { "Western Digital Caviar Blue EIDE",  // WD Caviar SE16 EIDE
4620     "WDC WD(25|32|40|50)00AAKB-.*",
4621     "", "", ""
4622   },
4623   { "Western Digital RE EIDE",
4624     "WDC WD(12|16|25|32)00SB-.*",
4625     "", "", ""
4626   },
4627   { "Western Digital Caviar Serial ATA",
4628     "WDC WD(4|8|20|32)00BD-.*",
4629     "", "", ""
4630   },
4631   { "Western Digital Caviar SE Serial ATA", // tested with WDC WD3000JD-98KLB0/08.05J08
4632     "WDC WD(4|8|12|16|20|25|30|32|40)00(JD|KD|PD)-.*",
4633     "", "", ""
4634   },
4635   { "Western Digital Caviar SE Serial ATA",
4636     "WDC WD(8|12|16|20|25|30|32|40|50)00JS-.*",
4637     "", "", ""
4638   },
4639   { "Western Digital Caviar SE16 Serial ATA",
4640     "WDC WD(16|20|25|32|40|50|75)00KS-.*",
4641     "", "", ""
4642   },
4643   { "Western Digital Caviar Blue Serial ATA",  // WD Caviar SE Serial ATA
4644     /* not completely accurate: at least also WD800BD, (4|8)00JD sold as Caviar Blue */
4645     "WDC WD((8|12|16|25|32)00AABS|(8|12|16|25|32|40|50)00AAJS)-.*",
4646     "", "", ""
4647   },
4648   { "Western Digital Caviar Blue (SATA)",  // WD Caviar SE16 Serial ATA
4649       // tested with WD1602ABKS-18N8A0/DELL/02.03B04
4650     "WDC WD((16|20|25|32|40|50|64|75)00AAKS|1602ABKS|10EALS)-.*",
4651     "", "", ""
4652   },
4653   { "Western Digital Blue", // tested with WDC WD5000AZLX-00K4KA0/80.00A80,
4654       // WDC WD10EZEX-00RKKA0/80.00A80, WDC WD10EZEX-75M2NA0/01.01A01, WDC WD40EZRZ-00WN9B0/80.00A80,
4655       // APPLE HDD WDC WD10EALX-408EA0/07.01D03
4656     "(APPLE HDD )?WDC WD((25|32|50)00AAKX|5000AZ(LX|RZ)|7500A(AL|ZE)X|10E(AL|ZE)X|[1-6]0EZRZ)-.*",
4657     "", "", ""
4658   },
4659   { "Western Digital Blue (SMR)", // tested with WDC WD40EZAZ-00SF3B0/80.00A80 (TRIM: zeroed)
4660     "WDC WD(20|40|60)EZAZ-.*",
4661     "", "", ""
4662   },
4663   { "Western Digital RE Serial ATA",
4664     "WDC WD(12|16|25|32)00(SD|YD|YS)-.*",
4665     "", "", ""
4666   },
4667   { "Western Digital RE2 Serial ATA",
4668     "WDC WD((40|50|75)00(YR|YS|AYYS)|(16|32|40|50)0[01]ABYS)-.*",
4669     "", "", ""
4670   },
4671   { "Western Digital RE2-GP",
4672     "WDC WD(5000AB|7500AY|1000FY)PS-.*",
4673     "", "", ""
4674   },
4675   { "Western Digital RE3 Serial ATA", // tested with WDC WD7502ABYS-02A6B0/03.00C06,
4676       // WD1002FBYS-12/03.M0300
4677     "(WDC )?WD((25|32|50|75)02A|(75|10)02F)BYS-.*",
4678     "", "", ""
4679   },
4680   { "Western Digital RE4", // tested with WDC WD2003FYYS-18W0B0/01.01D02,
4681       // WDC WD1003FBYZ-010FB0/01.01V03
4682       // WDC WD5003ABYZ-011FA0/01.01S03
4683     "WDC WD((25|50)03ABY[XZ]|1003FBY[XZ]|(15|20)03FYYS)-.*",
4684     "", "", ""
4685   },
4686   { "Western Digital RE4-GP", // tested with WDC WD2002FYPS-02W3B0/04.01G01,
4687       // WD2003FYPS-27W9B0/01.01D02
4688     "(WDC )?WD200[23]FYPS-.*",
4689     "", "", ""
4690   },
4691   { "Western Digital Re", // tested with WDC WD1004FBYZ-01YCBB0/RR02,
4692       // WDC WD2000FYYZ-01UL1B0/01.01K01, WDC WD2000FYYZ-01UL1B1/01.01K02,
4693       // WDC WD4000FYYZ-01UL1B2/01.01K03, WD2000FYYX/00.0D1K2,
4694       // WDC WD1004FBYZ-01YCBB1/RR04
4695       // WD4000FYYZ, WD4000FDYZ, WD3000FYYZ, WD3000FDYZ, WD2000FYYZ, WD2000FDYZ
4696       // WD2004FBYZ, WD1004FBYZ
4697     "WDC WD((1004|2004)FBYZ|([234]000)FDYZ|[234]000FYYZ|2000FYYX)-.*",
4698     "", "",
4699     "-v 16,raw48,Total_LBAs_Read" // WDC WD1004FBYZ-01YCBB1/RR04
4700   },
4701   { "Western Digital Se", // tested with WDC WD2000F9YZ-09N20L0/01.01A01
4702     // WD6001F9YZ, WD5001F9YZ, WD4000F9YZ, WD3000F9YZ, WD2000F9YZ, WD1002F9YZ
4703     "WDC WD(1002|2000|3000|4000|5001|6001)F9YZ-.*",
4704     "", "", ""
4705   },
4706   { "Western Digital Caviar Green", // tested with WDC WD7500AADS-00M2B0/01.00A01,
4707       // WDC WD10EADX/77.04D77
4708     "WDC WD((50|64|75)00AA[CV]S|(50|64|75)00AADS|10EA[CV]S|(10|15|20)EAD[SX])-.*",
4709     "",
4710     "",
4711     "-F xerrorlba" // tested with WDC WD7500AADS-00M2B0/01.00A01
4712   },
4713   { "Western Digital Caviar Green (AF)",
4714     "WDC WD(((64|75|80)00AA|(10|15|20)EA|(25|30)EZ)R|20EAC)S-.*",
4715     "", "", ""
4716   },
4717   { "Western Digital Green", // tested with
4718       // WDC WD10EZRX-00A8LB0/01.01A01, WDC WD20EZRX-00DC0B0/80.00A80,
4719       // WDC WD30EZRX-00MMMB0/80.00A80, WDC WD40EZRX-00SPEB0/80.00A80,
4720       // WDC WD60EZRX-00MVLB1/80.00A80, WDC WD5000AZRX-00A8LB0/01.01A01
4721     "WDC WD(5000AZ|7500AA|(10|15|20)EA|(10|20|25|30|40|50|60)EZ)RX-.*",
4722     "", "", ""
4723   },
4724   { "Western Digital Caviar Black", // tested with WDC WD7501AAES/06.01D06
4725     "WDC WD((500|640)1AAL|7501AA[EL]|1001FA[EL]|2001FAS)S-.*|"
4726     "WDC WD(2002|7502|1502|5003|1002|5002)(FAE|AAE|AZE|AAL)X-.*", // could be
4727     // WD2002FAEX, WD7502AAEX, WD1502FAEX, WD5003AZEX, WD1002FAEX, WD5002AALX
4728     "", "", ""
4729   },
4730   { "Western Digital Black", // tested with
4731       // WDC WD1003FZEX-00MK2A0/01.01A01, WDC WD3001FAEX-00MJRA0/01.01L01,
4732       // WDC WD3003FZEX-00Z4SA0/01.01A01, WDC WD4001FAEX-00MJRA0/01.01L01
4733       // WDC WD4003FZEX-00Z4SA0/01.01A01, WDC WD5003AZEX-00RKKA0/80.00A80,
4734       // WDC WD4004FZWX-00GBGB0/81.H0A81
4735     "WDC WD(6001|2003|5001|1003|4003|4004|5003|3003|3001)(FZW|FZE|AZE)X-.*|" // could be
4736     // new series  WD6001FZWX WD2003FZEX WD5001FZWX WD1003FZEX
4737     //             WD4003FZEX WD5003AZEX WD3003FZEX WD4004FZWX
4738     "WDC WD(4001|3001|2002|1002|5003|7500|5000|3200|2500|1600)(FAE|AZE)X-.*",
4739     // old series: WD4001FAEX WD3001FAEX WD2002FAEX WD1002FAEX  WD5003AZEX
4740     "", "", ""
4741   },
4742   { "Western Digital Black (SMR)", // ticket #1313
4743     "WDC WD10SPSX-.*",
4744     "", "", ""
4745   },
4746   { "Western Digital AV ATA", // tested with WDC WD3200AVJB-63J5A0/01.03E01
4747     "WDC WD(8|16|25|32|50)00AV[BJ]B-.*",
4748     "", "", ""
4749   },
4750   { "Western Digital AV SATA",
4751     "WDC WD(16|25|32)00AVJS-.*",
4752     "", "", ""
4753   },
4754   { "Western Digital AV-GP",
4755     "WDC WD((16|25|32|50|64|75)00AV[CDV]S|(10|15|20)EV[CDV]S)-.*",
4756     "", "", ""
4757   },
4758   { "Western Digital AV-GP (AF)", // tested with WDC WD10EURS-630AB1/80.00A80,
4759       // WDC WD10EUCX-63YZ1Y0/51.0AB52, WDC WD20EURX-64HYZY0/80.00A80
4760     "WDC WD(5000AUDX|7500AURS|10EUCX|(10|15|20|25|30)EUR[SX])-.*",
4761     "", "", ""
4762   },
4763   { "Western Digital AV", // tested with DC WD10JUCT-63CYNY0/01.01A01
4764     "WDC WD((16|25|32|50)00BU[CD]|5000LUC|10JUC)T-.*",
4765     "", "", ""
4766   },
4767   { "Western Digital Raptor",
4768     "WDC WD((360|740|800)GD|(360|740|800|1500)ADF[DS])-.*",
4769     "", "", ""
4770   },
4771   { "Western Digital Raptor X",
4772     "WDC WD1500AHFD-.*",
4773     "", "", ""
4774   },
4775   { "Western Digital VelociRaptor", // tested with WDC WD1500HLHX-01JJPV0/04.05G04
4776     "WDC WD(((800H|(1500|3000)[BH]|1600H|3000G)LFS)|((1500|3000|4500|6000)[BH]LHX))-.*",
4777     "", "", ""
4778   },
4779   { "Western Digital VelociRaptor (AF)", // tested with WDC WD1000DHTZ-04N21V0/04.06A00
4780     "WDC WD(2500H|5000B|5000H|1000D)HTZ-.*",
4781     "", "", ""
4782   },
4783   { "Western Digital Scorpio EIDE",
4784     "WDC WD(4|6|8|10|12|16)00(UE|VE)-.*",
4785     "", "", ""
4786   },
4787   { "Western Digital Scorpio Blue EIDE", // tested with WDC WD3200BEVE-00A0HT0/11.01A11
4788     "WDC WD(4|6|8|10|12|16|25|32)00BEVE-.*",
4789     "", "", ""
4790   },
4791   { "Western Digital Scorpio Serial ATA",
4792     "WDC WD(4|6|8|10|12|16|25)00BEAS-.*",
4793     "", "", ""
4794   },
4795   { "Western Digital Scorpio Blue Serial ATA", // tested with WDC WD3200BEVS-08VAT2/14.01A14
4796     "WDC WD((4|6|8|10|12|16|25|32)00BEVS|(8|12|16|25|32|40|50|64)00BEVT|7500KEVT|10TEVT)-.*",
4797     "", "", ""
4798   },
4799   { "Western Digital Scorpio Blue Serial ATA (AF)", // tested with
4800       // WDC WD10JPVT-00A1YT0/01.01A01
4801     "WDC WD((16|25|32|50|64|75)00BPVT|10[JT]PVT)-.*",
4802     "", "", ""
4803   },
4804   { "Western Digital Scorpio Black", // tested with WDC WD5000BEKT-00KA9T0/01.01A01
4805     "WDC WD(8|12|16|25|32|50)00B[EJ]KT-.*",
4806     "", "", ""
4807   },
4808   { "Western Digital Scorpio Black (AF)",
4809     "WDC WD(50|75)00BPKT-.*",
4810     "", "", ""
4811   },
4812   { "Western Digital Red", // tested with WDC WD10EFRX-68JCSN0/01.01A01,
4813       // WDC WD10JFCX-68N6GN0/01.01A01, WDC WD30EFRX-68EUZN0/82.00A82,
4814       // WDC WD40EFRX-68WT0N0/80.00A80, WDC WD60EFRX-68MYMN1/82.00A82,
4815       // WDC WD80EFAX-68LHPN0/83.H0A83, WDC WD80EFZX-68UW8N0/83.H0A83,
4816       // WDC WD80EZZX-11CSGA0/83.H0A03 (My Book 0x1058:0x25ee),
4817       // WDC WD100EFAX-68LHPN0/83.H0A83,
4818       // WDC WD120EMFZ-11A6JA0/81.00A81 (Easystore 0x1058:0x25fb)
4819     "WDC WD(7500BFCX|10JFCX|[1-6]0EFRX|[68]0E[FZ]ZX|(8|10)0EFAX|120EMFZ)-.*",
4820     "", "",
4821     "-v 22,raw48,Helium_Level" // WD80EFAX, WD80EFZX, WD100EFAX, WD120EMFZ
4822   },
4823   { "Western Digital Red (SMR)", // ticket #1313, tested with WDC WD60EFAX-68SHWN0/82.00A82
4824     "WDC WD[2346]0EFAX-.*",
4825     "", "", ""
4826   },
4827   { "Western Digital Red Pro", // tested with WDC WD2001FFSX-68JNUN0/81.00A81,
4828       // WDC WD6002FFWX-68TZ4N0/83.H0A83, WDC WD101KFBX-68R56N0/83.H0A03
4829     "WDC WD([2-68]00[123]FF[BSW]|101KFB)X-.*",
4830     "", "",
4831     "-v 22,raw48,Helium_Level" // WD101KFBX
4832   },
4833   { "Western Digital Purple", // tested with WDC WD40PURX-64GVNY0/80.00A80,
4834       // WDC WD40PURZ-85TTDY0/80.00A80
4835       // WDC WD80PUZX-64NEAY0/80.H0A80
4836     "WDC WD[1234568]0PU[RZ][XZ]-.*",
4837     "", "", ""
4838   },
4839   { "Western Digital Gold", // tested with WDC WD1005FBYZ-01YCBB2/RR07,
4840       // WDC WD2005FBYZ-01YCBB2/RR07, WDC WD4002FYYZ-01B7CB0/01.01M02,
4841       // WDC WD4003FRYZ-01F0DB0/01.01H01, WDC WD6003FRYZ-01F0DB0/01.01H01,
4842       // WDC WD8003FRYZ-01JPDB1/01.01H02, WDC WD8004FRYZ-01VAEB0/01.01H01,
4843       // WDC WD102KRYZ-01A5AB0/01.01H01, WDC WD121KRYZ-01W0RB0/01.01H01
4844     "WDC WD([12]005FB|4002FY|4003FR|600[23]FR|800[234]FR|(1[02]1|102)KR)YZ-.*",
4845     "", "",
4846     "-v 22,raw48,Helium_Level" // WD121KRYZ
4847   },
4848   { "Western Digital Blue Mobile", // tested with WDC WD5000LPVX-08V0TT2/03.01A03,
4849       // WDC WD10JPVX-75JC3T0/0301A03,  WDC WD10JPVX-22JC3T0/01.01A01,
4850       // WDC WD20NPVZ-00WFZT0/01.01A01
4851     "WDC WD(3200LPCX|5000[BL]P[CV]X|7500BPVX|10JP[VZ]X|(15|20)NPVZ)-.*",
4852     "", "", ""
4853   },
4854   { "Western Digital Blue Mobile (SMR)", // ticket #1313, tested with
4855       // WDC WD10SPZX-22Z10T0/01.01A01, WDC WD10SPZX-21Z10T0/02.01A02,
4856       // WDC WD20SPZX-22CRAT0/01.01A01, WDC WD20SPZX-22UA7T0/01.01A01
4857     "WDC WD[12]0SPZX-.*",
4858     "", "", ""
4859   },
4860   { "Western Digital Green Mobile", // tested with WDC WD20NPVX-00EA4T0/01.01A01
4861     "WDC WD(15|20)NPV[TX]-.*",
4862     "", "", ""
4863   },
4864   { "Western Digital Black Mobile", // tested with WDC WD7500BPKX-22HPJT0/01.01A01,
4865       // WDC WD10JPLX-00MBPT0/01.01H01
4866     "WDC WD((16|25|32)00BEK[TX]|(25|32|50|75)00(BPK|LPL)X|10JPLX)-.*",
4867     "", "", ""
4868   },
4869   { "Western Digital Elements / My Passport (USB)", // tested with WDC WD5000BMVW-11AMCS0/01.01A01
4870     "WDC WD(25|32|40|50)00BMV[UVW]-.*",  // *W-* = USB 3.0
4871     "", "", ""
4872   },
4873   { "Western Digital Elements / My Passport (USB, AF)", // tested with
4874       // WDC WD5000KMVV-11TK7S1/01.01A01,
4875       // WDC WD5000LMVW-11CKRS0/01.01A01 (0x1058:0x07ae),
4876       // WDC WD5000LMVW-11VEDS0/01.01A01 (0x1058:0x0816),
4877       // WDC WD7500BMVW-11AJGS2/01.01A01,
4878       // WDC WD10JMVW-11AJGS2/01.01A01 (0x1058:0x10b8),
4879       // WDC WD10JMVW-11AJGS4/01.01A01 (0x1058:0x25a0/25a2),
4880       // WDC WD10JMVW-11S5XS1/01.01A01,
4881       // WDC WD10SMZW-11Y0TS0/01.01A01,
4882       // WDC WD10TMVW-11ZSMS5/01.01A01,
4883       // WDC WD20NMVW-11AV3S2/01.01A01 (0x1058:0x0822),
4884       // WDC WD20NMVW-11AV3S3/01.01A01 (0x1058:0x0837),
4885       // WDC WD20NMVW-11EDZS6/01.01A01 (0x1058-0x259f),
4886       // WDC WD20NMVW-11EDZS7/01.01A01 (0x1058:0x259d/25a1),
4887       // WDC WD20NMVW-11W68S0/01.01A01,
4888       // WDC WD20NMVW-59AV3S3/01.01A01 (0x1058:0x107d),
4889       // WDC WD30NMVW-11C3NS4/01.01A01,
4890       // WDC WD40NMZW-11GX6S1/01.01A01 (0x1058:0x2599/25e2/25fa)
4891       // WDC WD50NDZW-11MR8S1/02.01A02
4892     "WDC WD((5000[LK]|7500[BK]|10[JST]|[234]0N)M|50ND)[VZ][VW]-.*", // *W-* = USB 3.0
4893     "", "", ""
4894   },
4895   { "Quantum Bigfoot", // tested with TS10.0A/A21.0G00, TS12.7A/A21.0F00
4896     "QUANTUM BIGFOOT TS(10\\.0|12\\.7)A",
4897     "", "", ""
4898   },
4899   { "Quantum Fireball lct15",
4900     "QUANTUM FIREBALLlct15 ([123]0|22)",
4901     "", "", ""
4902   },
4903   { "Quantum Fireball lct20",
4904     "QUANTUM FIREBALLlct20 [1234]0",
4905     "", "", ""
4906   },
4907   { "Quantum Fireball CX",
4908     "QUANTUM FIREBALL CX10.2A",
4909     "", "", ""
4910   },
4911   { "Quantum Fireball CR",
4912     "QUANTUM FIREBALL CR(4.3|6.4|8.4|13.0)A",
4913     "", "", ""
4914   },
4915   { "Quantum Fireball EX", // tested with QUANTUM FIREBALL EX10.2A/A0A.0D00
4916     "QUANTUM FIREBALL EX(3\\.2|6\\.4|10\\.2)A",
4917     "", "", ""
4918   },
4919   { "Quantum Fireball ST",
4920     "QUANTUM FIREBALL ST(3.2|4.3|4300)A",
4921     "", "", ""
4922   },
4923   { "Quantum Fireball SE",
4924     "QUANTUM FIREBALL SE4.3A",
4925     "", "", ""
4926   },
4927   { "Quantum Fireball Plus LM",
4928     "QUANTUM FIREBALLP LM(10.2|15|20.[45]|30)",
4929     "", "", ""
4930   },
4931   { "Quantum Fireball Plus AS",
4932     "QUANTUM FIREBALLP AS(10.2|20.5|30.0|40.0|60.0)",
4933     "", "", ""
4934   },
4935   { "Quantum Fireball Plus KX",
4936     "QUANTUM FIREBALLP KX27.3",
4937     "", "", ""
4938   },
4939   { "Quantum Fireball Plus KA",
4940     "QUANTUM FIREBALLP KA(9|10).1",
4941     "", "", ""
4942   },
4943 
4944   ////////////////////////////////////////////////////
4945   // USB ID entries
4946   ////////////////////////////////////////////////////
4947 
4948   // 0x0080 (JMicron/Toshiba ?)
4949   { "USB: ; JMicron JMS578",
4950     "0x0080:0x0578",
4951     "", // 0x0104
4952     "",
4953     "-d sat"
4954   },
4955   { "USB: ; ",
4956     "0x0080:0xa001",
4957     "", // ORICO 2588US3: 0x0101, 0x0203
4958     "",
4959     "-d sat"
4960   },
4961   // 0x0350 (?)
4962   { "USB: ViPowER USB3.0 Storage; ",
4963     "0x0350:0x0038",
4964     "", // 0x1905
4965     "",
4966     "-d sat,12" // ATA output registers missing
4967   },
4968   // Hewlett-Packard
4969   { "USB: HP Desktop HD BD07; ", // 2TB
4970     "0x03f0:0xbd07",
4971     "",
4972     "",
4973     "-d sat"
4974   },
4975   // ALi
4976   { "USB: ; ALi M5621", // USB->PATA
4977     "0x0402:0x5621",
4978     "",
4979     "",
4980     "" // unsupported
4981   },
4982   // VIA
4983   { "USB: Connectland BE-USB2-35BP-LCM; VIA VT6204",
4984     "0x040d:0x6204",
4985     "",
4986     "",
4987     "" // unsupported
4988   },
4989   // Buffalo / Melco
4990   { "USB: Buffalo JustStore Portable HD-PVU2; ",
4991     "0x0411:0x0181",
4992     "",
4993     "",
4994     "-d sat"
4995   },
4996   { "USB: Buffalo Drivestation Duo; ",
4997     "0x0411:0x01ce",
4998     "",
4999     "",
5000     "-d sat"
5001   },
5002   { "USB: Buffalo DriveStation HD-LBU2 ; Medialogic MLDU11",
5003     "0x0411:0x01ea",
5004     "",
5005     "",
5006     "-d sat"
5007   },
5008   { "USB: Buffalo; ",
5009     "0x0411:0x0(1[df]9|1e7|240|251|27e)", // 0x01d9: HD-PCTU2 (0x0108), 0x01e7: HD-PNTU3,
5010       // 0x01f9: HD-PZU3 (0x0100), 0x0240: HD-PCFU3, 0x0251: HD-PNFU3, 0x027e: HD-LC3
5011     "",
5012     "",
5013     "-d sat"
5014   },
5015   // LG Electronics
5016   { "USB: LG Mini HXD5; JMicron",
5017     "0x043e:0x70f1",
5018     "", // 0x0100
5019     "",
5020     "-d usbjmicron"
5021   },
5022   // Hitachi (?)
5023   { "USB: ; Renesas uPD720231A", // USB2/3->SATA
5024     // 0x0229: Pi-102 Raspberry Pi USB to mSATA Converter Board
5025     // 0x022a: DeLock 62652 converter SATA 6GB/s > USB 3.0
5026     "0x045b:0x022[9a]",
5027     "",
5028     "",
5029     "-d sat"
5030   },
5031   // Philips
5032   { "USB: Philips; ", // SDE3273FC/97 2.5" SATA HDD enclosure
5033     "0x0471:0x2021",
5034     "", // 0x0103
5035     "",
5036     "-d sat"
5037   },
5038   // Toshiba
5039   { "USB: Toshiba Canvio 500GB; SunPlus",
5040     "0x0480:0xa004",
5041     "",
5042     "",
5043     "-d usbsunplus"
5044   },
5045   { "USB: Toshiba; ",
5046     "0x0480:0x....",
5047     "",
5048     "",
5049     "-d sat"
5050   },
5051   // Cypress
5052   { "USB: ; Cypress CY7C68300A (AT2)",
5053     "0x04b4:0x6830",
5054     "0x0001",
5055     "",
5056     "" // unsupported
5057   },
5058   { "USB: ; Cypress CY7C68300B/C (AT2LP)",
5059     "0x04b4:0x6830",
5060     "0x0240",
5061     "",
5062     "-d usbcypress"
5063   },
5064   // Fujitsu
5065   { "USB: Fujitsu/Zalman ZM-VE300; ", // USB 3.0
5066     "0x04c5:0x2028",
5067     "", // 0x0001
5068     "",
5069     "-d sat"
5070   },
5071   { "USB: ; Fujitsu", // DeLock 42475, USB 3.0
5072     "0x04c5:0x201d",
5073     "", // 0x0001
5074     "",
5075     "-d sat"
5076   },
5077   // Myson Century
5078   { "USB: ; Myson Century CS8818",
5079     "0x04cf:0x8818",
5080     "", // 0xb007
5081     "",
5082     "" // unsupported
5083   },
5084   // Samsung
5085   { "USB: Samsung S2 Portable; JMicron",
5086     "0x04e8:0x1f0[568a]", // 0x1f0a: SAMSUNG HN-M101XBB
5087     "",
5088     "",
5089     "-d usbjmicron" // 0x1f0a: works also with "-d sat"
5090   },
5091   { "USB: Samsung S1; JMicron",
5092     "0x04e8:0x2f0[36]", // 0x2f03: S1 Portable, 0x2f06: S1 Mini (SAMSUNG HS20YJZ/3AU10-01)
5093     "",
5094     "",
5095     "-d usbjmicron"
5096   },
5097   { "USB: Samsung Story Station; ",
5098     "0x04e8:0x5f0[56]",
5099     "",
5100     "",
5101     "-d sat"
5102   },
5103   { "USB: Samsung G2 Portable; JMicron",
5104     "0x04e8:0x6032",
5105     "0x0000",
5106     "",
5107     "-d usbjmicron" // ticket #132
5108   },
5109   { "USB: Samsung G2 Portable; ",
5110     "0x04e8:0x6032",
5111     "0x...[1-9]", // >= 0x0001
5112     "",
5113     "-d sat"
5114   },
5115   { "USB: Samsung Story Station 3.0; ",
5116     "0x04e8:0x6052",
5117     "",
5118     "",
5119     "-d sat"
5120   },
5121   { "USB: Samsung Story Station 3.0; ",
5122     "0x04e8:0x6054",
5123     "",
5124     "",
5125     "-d sat"
5126   },
5127   { "USB: Samsung M2 Portable 3.0; ",
5128     "0x04e8:0x60c5",
5129     "",
5130     "",
5131     "-d sat"
5132   },
5133   { "USB: Samsung D3 Station; ",
5134     "0x04e8:0x612[45]", // 3TB, 4TB
5135     "", // 0x200, 0x202
5136     "",
5137     "-d sat"
5138   },
5139   { "USB: Samsung M3 Portable USB 3.0; ", // 1.5/2TB: SpinPoint M9TU
5140     "0x04e8:0x61b[3456]", // 500MB, 2TB, 1.5TB, 1TB
5141     "", // 0x0e00
5142     "",
5143     "-d sat"
5144   },
5145   { "USB: Samsung S3 Portable; ",
5146     "0x04e8:0x61c8", // ST1000LM025 HN-M101ABB
5147     "", // 0x1301
5148     "",
5149     "-d sat"
5150   },
5151   { "USB: Samsung Portable SSD T5; ",
5152     "0x04e8:0x61f5",
5153     "", // 0x0100
5154     "",
5155     "-d sat"
5156   },
5157   { "USB: Samsung; ",
5158     "0x04e8:0x8003", // USB3 Adapter from SSD EVO 850 Starter Kit
5159     "", // 0x0100
5160     "",
5161     "-d sat"
5162   },
5163   { "USB: Sony HD-E1; ",
5164     "0x054c:0x05bf", //  Sony HD-E1B - 1TB USB3.0
5165     "", // 0x6610
5166     "",
5167     "-d sat"
5168   },
5169   // Sunplus
5170   { "USB: ; SunPlus",
5171     "0x04fc:0x0c05",
5172     "",
5173     "",
5174     "-d usbsunplus"
5175   },
5176   { "USB: ; SunPlus SPDIF215",
5177     "0x04fc:0x0c15",
5178     "", // 0xf615
5179     "",
5180     "-d usbsunplus"
5181   },
5182   { "USB: ; SunPlus SPDIF225", // USB+SATA->SATA
5183     "0x04fc:0x0c25",
5184     "", // 0x0103
5185     "",
5186     "-d usbsunplus"
5187   },
5188   // Iomega
5189   { "USB: Iomega Prestige Desktop USB 3.0; ",
5190     "0x059b:0x0070",
5191     "", // 0x0004
5192     "",
5193     "-d sat" // ATA output registers missing
5194   },
5195   { "USB: Iomega LPHD080-0; ",
5196     "0x059b:0x0272",
5197     "",
5198     "",
5199     "-d usbcypress"
5200   },
5201   { "USB: Iomega MDHD500-U; JMicron",
5202     "0x059b:0x0274",
5203     "", // 0x0000
5204     "",
5205     "-d usbjmicron,0"
5206   },
5207   { "USB: Iomega MDHD500-U; ",
5208     "0x059b:0x0275",
5209     "", // 0x0001
5210     "",
5211     "" // unsupported
5212   },
5213   { "USB: Iomega; JMicron",
5214     "0x059b:0x027[78]",  // 0x0277: MDHD-UE, 0x0278: LDHD-UPS
5215     "", // 0x0000
5216     "",
5217     "-d usbjmicron"
5218   },
5219   { "USB: Iomega LDHD-UP; Sunplus",
5220     "0x059b:0x0370",
5221     "",
5222     "",
5223     "-d usbsunplus"
5224   },
5225   { "USB: Iomega; JMicron",
5226     "0x059b:0x0(47[05]|57[15])", // 0x0470: LPHD-UP, 0x0475: GDHDU2 (0x0100),
5227       // 0x0575: LDHD-UP
5228     "",
5229     "",
5230     "-d usbjmicron"
5231   },
5232   { "USB: Iomega; JMicron",
5233     "0x059b:0x047a",
5234     "", // 0x0100
5235     "",
5236     "-d sat" // works also with "-d usbjmicron"
5237   },
5238   // LaCie
5239   { "USB: LaCie hard disk (FA Porsche design);",
5240     "0x059f:0x0651",
5241     "",
5242     "",
5243     "" // unsupported
5244   },
5245   { "USB: LaCie d2 Quadra; Oxford OXUF934SSA-LQAG ", // USB+IEEE1394+eSATA->SATA
5246     "0x059f:0x0828",
5247     "",
5248     "",
5249     "-d sat"
5250   },
5251   { "USB: LaCie hard disk; JMicron",
5252     "0x059f:0x0951",
5253     "",
5254     "",
5255     "-d usbjmicron"
5256   },
5257   { "USB: LaCie Rugged Triple Interface; ",
5258     "0x059f:0x100c",
5259     "", // 0x0001
5260     "",
5261     "-d sat"
5262   },
5263   { "USB: LaCie Desktop Hard Drive;",
5264     "0x059f:0x1010",
5265     "",
5266     "",
5267     "-d usbsunplus"
5268   },
5269   { "USB: LaCie Desktop Hard Drive; ",
5270     "0x059f:0x101[68]", // 0x1016: SAMSUNG HD103UJ
5271     "", // 0x0001
5272     "",
5273     "-d sat"
5274   },
5275   { "USB: LaCie Desktop Hard Drive; JMicron",
5276     "0x059f:0x1019",
5277     "",
5278     "",
5279     "-d usbjmicron"
5280   },
5281   { "USB: LaCie Rugged Hard Drive; JMicron",
5282     "0x059f:0x101d",
5283     "", // 0x0001
5284     "",
5285     "-d usbjmicron,x"
5286   },
5287   { "USB: LaCie Little Disk USB2; JMicron",
5288     "0x059f:0x1021",
5289     "",
5290     "",
5291     "-d usbjmicron"
5292   },
5293   { "USB: LaCie hard disk; ",
5294     "0x059f:0x1029",
5295     "", // 0x0100
5296     "",
5297     "-d sat"
5298   },
5299   { "USB: Lacie rikiki; JMicron",
5300     "0x059f:0x102a",
5301     "",
5302     "",
5303     "-d usbjmicron,x"
5304   },
5305   { "USB: LaCie D2 USB3; LucidPort USB300 ",
5306     "0x059f:0x103d",
5307     "",
5308     "",
5309     "-d sat"
5310   },
5311   { "USB: LaCie rikiki USB 3.0; ",
5312     "0x059f:0x10(49|57)",
5313     "",
5314     "",
5315     "-d sat"
5316   },
5317   { "USB: LaCie minimus USB 3.0; ",
5318     "0x059f:0x104a",
5319     "",
5320     "",
5321     "-d sat"
5322   },
5323   { "USB: LaCie Rugged Mini USB 3.0; ",
5324     "0x059f:0x1051",
5325     "", // 0x0000
5326     "",
5327     "-d sat"
5328   },
5329   { "USB: LaCie P9230 (LAC302002); ",
5330     "0x059f:0x1053",
5331     "", // 0x0000
5332     "",
5333     "-d sat"
5334   },
5335   { "USB: LaCie Rugged Mini HDD; ",
5336     "0x059f:0x106b",
5337     "",
5338     "",
5339     "-d sat"
5340   },
5341   { "USB: LaCie; ", // 0x1070: ASMedia 1053 ?
5342     "0x059f:0x10(6f|7[05]|b8)", // 0x0x10b8: d2 PROFESSIONAL
5343     "", // 6f/70/b8=0x0001, 75=0x0000
5344     "",
5345     "-d sat"
5346   },
5347   // In-System Design
5348   { "USB: ; In-System/Cypress ISD-300A1",
5349     "0x05ab:0x0060",
5350     "", // 0x1101
5351     "",
5352     "-d usbcypress"
5353   },
5354   // Apple
5355   { "USB: Apple; ",
5356     "0x05ac:0x8406", // TOSHIBA MQ01UBB200
5357     "",
5358     "",
5359     "-d sat"
5360   },
5361   // Genesys Logic
5362   { "USB: ; Genesys Logic GL881E",
5363     "0x05e3:0x0702",
5364     "",
5365     "",
5366     "" // unsupported
5367   },
5368   { "USB: ; Genesys Logic", // TODO: requires '-T permissive'
5369     "0x05e3:0x0718",
5370     "", // 0x0041
5371     "",
5372     "-d sat"
5373   },
5374   { "USB: ; Genesys Logic GL3310",
5375     "0x05e3:0x0731", // Chieftec USB 3.0 2.5" case
5376     "",
5377     "",
5378     "-d sat"
5379   },
5380   { "USB: ; Genesys Logic",
5381     "0x05e3:0x0735",
5382     "", // 0x1003
5383     "",
5384     "-d sat"
5385   },
5386   // Micron
5387   { "USB: Micron USB SSD; ",
5388     "0x0634:0x0655",
5389     "",
5390     "",
5391     "" // unsupported
5392   },
5393   // Prolific
5394   { "USB: ; Prolific PL2507", // USB->PATA
5395     "0x067b:0x2507",
5396     "",
5397     "",
5398     "-d usbjmicron,0" // Port number is required
5399   },
5400   { "USB: ; Prolific PL2571/2771/2773/2775", // USB->SATA, USB3->SATA,
5401     "0x067b:0x(2571|277[135])",              // USB3+eSATA->SATA, USB3->2xSATA
5402     "",
5403     "",
5404     "-d usbprolific"
5405   },
5406   { "USB: ; Prolific PL3507", // USB+IEEE1394->PATA
5407     "0x067b:0x3507",
5408     "", // 0x0001
5409     "",
5410     "-d usbjmicron,p"
5411   },
5412   // Imation
5413   { "USB: Imation ; ", // Imation Odyssey external USB dock
5414     "0x0718:0x1000",
5415     "", // 0x5104
5416     "",
5417     "-d sat"
5418   },
5419   // SanDisk
5420   { "USB: SanDisk SDCZ80 Flash Drive; Fujitsu", // ATA ID: SanDisk pSSD
5421     "0x0781:0x558[08]",
5422     "",
5423     "",
5424     "-d sat"
5425   },
5426   // Freecom
5427   { "USB: ; Innostor IS631", // No Name USB3->SATA Enclosure
5428     "0x07ab:0x0621",
5429     "",
5430     "",
5431     "-d sat"
5432   },
5433   { "USB: Freecom; ",
5434     "0x07ab:0xfc17",
5435     "", // 0x0100
5436     "",
5437     "-d sat"
5438   },
5439   { "USB: Freecom Quattro 3.0; ", // USB3.0+IEEE1394+eSATA->SATA
5440     "0x07ab:0xfc77",
5441     "",
5442     "",
5443     "-d sat"
5444   },
5445   { "USB: Freecom Mobile Drive XXS; JMicron",
5446     "0x07ab:0xfc88",
5447     "", // 0x0101
5448     "",
5449     "-d usbjmicron,x"
5450   },
5451   { "USB: Freecom Hard Drive XS; Sunplus",
5452     "0x07ab:0xfc8e",
5453     "", // 0x010f
5454     "",
5455     "-d usbsunplus"
5456   },
5457   { "USB: Freecom; ", // Intel labeled
5458     "0x07ab:0xfc8f",
5459     "", // 0x0000
5460     "",
5461     "-d sat"
5462   },
5463   { "USB: Freecom Classic HD 120GB; ",
5464     "0x07ab:0xfccd",
5465     "",
5466     "",
5467     "" // unsupported
5468   },
5469   { "USB: Freecom HD; JMicron", // 500GB
5470     "0x07ab:0xfcd[6a]",
5471     "",
5472     "",
5473     "-d usbjmicron"
5474   },
5475   // Fast Point Technologies (?)
5476   { "USB: ; ",
5477     "0x0850:0x00(03|31)",
5478     "", // 0x0100
5479     "",
5480     "-d sat"
5481   },
5482   // 0x0860 (?)
5483   { "USB: ; ",
5484     "0x0860:0x0001",
5485     "", // 0x0100
5486     "",
5487     "-d sat"
5488   },
5489   // Oxford Semiconductor, Ltd
5490   { "USB: ; Oxford",
5491     "0x0928:0x0000",
5492     "",
5493     "",
5494     "" // unsupported
5495   },
5496   { "USB: ; Oxford OXU921DS",
5497     "0x0928:0x0002",
5498     "",
5499     "",
5500     "" // unsupported
5501   },
5502   { "USB: ; Oxford", // Zalman ZM-VE200
5503     "0x0928:0x0010",
5504     "", // 0x0304
5505     "",
5506     "-d sat"
5507   },
5508   // Toshiba
5509   { "USB: Toshiba PX1270E-1G16; Sunplus",
5510     "0x0930:0x0b03",
5511     "",
5512     "",
5513     "-d usbsunplus"
5514   },
5515   { "USB: Toshiba PX1396E-3T01; Sunplus", // similar to Dura Micro 501
5516     "0x0930:0x0b09",
5517     "",
5518     "",
5519     "-d usbsunplus"
5520   },
5521   { "USB: Toshiba Stor.E Steel; Sunplus",
5522     "0x0930:0x0b11",
5523     "",
5524     "",
5525     "-d usbsunplus"
5526   },
5527   { "USB: Toshiba Stor.E; ",
5528     "0x0930:0x0b1[9ab]",
5529     "", // 0x0001
5530     "",
5531     "-d sat"
5532   },
5533   { "USB: Toshiba; Sunplus",
5534     "0x0930:0xa002",
5535     "", // 0x0103
5536     "",
5537     "-d usbsunplus"
5538   },
5539   // Lumberg, Inc.
5540   { "USB: Toshiba Stor.E; Sunplus",
5541     "0x0939:0x0b1[56]",
5542     "",
5543     "",
5544     "-d usbsunplus"
5545   },
5546   { "USB: Toshiba Stor.E D10; Initio INIC-1610PL",
5547     "0x0939:0x0b13",
5548     "",
5549     "",
5550     "-d sat,12"
5551   },
5552   // Apricorn
5553   { "USB: Apricorn SATA Wire; ",
5554     "0x0984:0x0(040|301)", // 0x0040: Apricorn SATA Wire
5555     "", // 0x0301 (0x0201): Corsair SSD & HDD Cloning Kit
5556     "",
5557     "-d sat"
5558   },
5559   // Neodio Technologies
5560   { "USB: Neodio; Initio INIC-1810PL",
5561     "0x0aec:0x3050",
5562     "", // 0x0100
5563     "",
5564     "-d sat"
5565   },
5566   // Seagate
5567   { "USB: Seagate External Drive; Cypress",
5568     "0x0bc2:0x0503",
5569     "", // 0x0240
5570     "",
5571     "-d usbcypress"
5572   },
5573   { "USB: Seagate FreeAgent; ",
5574     "0x0bc2:0x(3008|50(31|a1))",
5575     "",
5576     "",
5577     "-d sat,12" // 0x50a1: "-d sat" does not work (ticket #151)
5578   },
5579   { "USB: Seagate; ",
5580     "0x0bc2:0x....",
5581     "",
5582     "",
5583     "-d sat"
5584   },
5585   // Realtek
5586   { "USB: ; Realtek RTL9210", // USB->PCIe (NVMe)
5587     "0x0bda:0x9210",
5588     "", // 0x2100
5589     "",
5590     "-d sntrealtek"
5591   },
5592   { "USB: ; Realtek RTL9211", // USB->PCIe (NVMe) or SATA
5593     "0x(0bda|2eb9):0x9211", // 0x0bda: guessed, 0x2eb9: Sabrent EC-WPTF
5594     ".*", // fall through to next entry and report ambiguous result
5595     "",
5596     "-d sntrealtek" // NVMe or ...
5597   },
5598   { "USB: ; Realtek RTL9211",
5599     "0x(0bda|2eb9):0x9211",
5600     "",
5601     "",
5602     "" // ... SATA (unsupported)
5603   },
5604   // Addonics
5605   { "USB: Addonics HDMU3; ", // (ticket #609)
5606     "0x0bf6:0x1001",
5607     "", // 0x0100
5608     "",
5609     ""
5610   },
5611   // Dura Micro
5612   { "USB: Dura Micro; Cypress",
5613     "0x0c0b:0xb001",
5614     "", // 0x1110
5615     "",
5616     "-d usbcypress"
5617   },
5618   { "USB: Dura Micro; Initio",
5619     "0x0c0b:0xb136",
5620     "", // 0x0108
5621     "",
5622     "-d sat"
5623   },
5624   { "USB: Dura Micro 509; Sunplus",
5625     "0x0c0b:0xb159",
5626     "", // 0x0103
5627     "",
5628     "-d usbsunplus"
5629   },
5630   // Maxtor
5631   { "USB: Maxtor OneTouch 200GB; ",
5632     "0x0d49:0x7010",
5633     "",
5634     "",
5635     "" // unsupported
5636   },
5637   { "USB: Maxtor OneTouch; ",
5638     "0x0d49:0x7300",
5639     "", // 0x0121
5640     "",
5641     "-d sat"
5642   },
5643   { "USB: Maxtor OneTouch 4; ",
5644     "0x0d49:0x7310",
5645     "", // 0x0125
5646     "",
5647     "-d sat"
5648   },
5649   { "USB: Maxtor OneTouch 4 Mini; ",
5650     "0x0d49:0x7350",
5651     "", // 0x0125
5652     "",
5653     "-d sat"
5654   },
5655   { "USB: Maxtor BlackArmor Portable; ",
5656     "0x0d49:0x7550",
5657     "",
5658     "",
5659     "-d sat"
5660   },
5661   { "USB: Maxtor Basics Desktop; ",
5662     "0x0d49:0x7410",
5663     "", // 0x0122
5664     "",
5665     "-d sat"
5666   },
5667   { "USB: Maxtor Basics Portable; ",
5668     "0x0d49:0x7450",
5669     "", // 0x0122
5670     "",
5671     "-d sat"
5672   },
5673   // Jess-Link International
5674   { "USB: ; Cypress", // Medion HDDrive2Go
5675     "0x0dbf:0x9001",
5676     "", // 0x0240
5677     "",
5678     "-d usbcypress"
5679   },
5680   // Oyen Digital
5681   { "USB: Oyen Digital MiniPro USB 3.0; ",
5682     "0x0dc4:0x020a",
5683     "",
5684     "",
5685     "-d sat"
5686   },
5687   // Cowon Systems, Inc.
5688   { "USB: Cowon iAudio X5; ",
5689     "0x0e21:0x0510",
5690     "",
5691     "",
5692     "-d usbcypress"
5693   },
5694   // iRiver
5695   { "USB: iRiver iHP-120/140 MP3 Player; Cypress",
5696     "0x1006:0x3002",
5697     "", // 0x0100
5698     "",
5699     "-d usbcypress"
5700   },
5701   // Western Digital
5702   { "USB: WD My Passport (IDE); Cypress",
5703     "0x1058:0x0701",
5704     "", // 0x0240
5705     "",
5706     "-d usbcypress"
5707   },
5708   { "USB: Western Digital; ",
5709     "0x1058:0x....",
5710     "",
5711     "",
5712     "-d sat"
5713   },
5714   // Atech Flash Technology
5715   { "USB: ; Atech", // Enclosure from Kingston SSDNow notebook upgrade kit
5716     "0x11b0:0x6298",
5717     "", // 0x0108
5718     "",
5719     "-d sat"
5720   },
5721   // Brain Actuated Technologies
5722   { "USB: ; Atech", // ICY BOX 2x Raid enclosure IB-RD2253-U31
5723     "0x1234:0x5678",
5724     "", // 0x0100
5725     "",
5726     "-d sat"
5727   },
5728   // ADATA
5729   { "USB: ADATA; ",
5730     "0x125f:0xa(11|13|15|21|31|35|37|75|83)a", // 0xa11a: Classic CH11 1TB, 0xa13a: NH13 1TB,
5731     "", // 0xa15a: HD710 1TB, 0xa21a: HV610 (0x4504), 0xa31a: HV620 2TB (0x0100),
5732     "", // 0xa35a: HD650 2TB (0x6503), 0xa37a: Silverstone MS10 M.2 (0x3103), 0xa75a: HD710P 4TB,
5733         // 0xa83a: HD330 (0x0100)
5734     "-d sat"
5735   },
5736   { "USB: ADATA; Cypress",
5737     "0x125f:0xa9[34]a", // 0xa93a: SH93 (0x0150)
5738     "",
5739     "",
5740     "-d usbcypress"
5741   },
5742   // Initio
5743   { "USB: ; Initio",
5744     "0x13fd:0x(054|1(04|15))0", // 0x0540: Initio 316000
5745     "", // 0x1040 (0x0106): USB->SATA+PATA, Chieftec CEB-25I
5746     "", // 0x1150: Initio 6Y120L0, CoolerMaster XCraft RX-3HU
5747     "" // unsupported
5748   },
5749   { "USB: ; Initio",
5750     "0x13fd:0x16[45]0",
5751     "", // 0x1640: 0x0864, 0x1650: 0x0436
5752     "",
5753     "-d sat,12" // some SMART commands fail, see ticket #295
5754   },
5755   { "USB: ; Initio",
5756     "0x13fd:0x....",
5757     "",
5758     "",
5759     "-d sat"
5760   },
5761   // Super Top
5762   { "USB: Super Top generic enclosure; ",
5763     "0x14cd:0x6116",
5764     "", // 0x0150, older report suggests -d usbcypress
5765     "", // 0x0160 also reported as unsupported
5766     "-d sat"
5767   },
5768   // JMicron
5769   { "USB: ; JMicron JMS539", // USB2/3->SATA (old firmware)
5770     "0x152d:0x0539",
5771     "0x0100",      // 1.00, various devices support -d usbjmicron
5772     "",            // 1.00, SSI SI-1359RUS3 supports -d sat,
5773     ""             //       -d usbjmicron may disconnect drive (ticket #552)
5774   },
5775   { "USB: ; JMicron JMS539", // USB2/3->SATA (new firmware)
5776     "0x152d:0x0539",
5777     "0x020[56]|"   //  2.05, ZTC USB 3.0 enclosure (ticket #338)
5778     "0x28(01|03|12)", // 28.01, DATOptic U3eSATA (USB3.0 bridge with port multiplier)
5779     "",               // 28.03, Mediasonic ProBox HF2-SU3S2 Rev 2 (port multiplier, ticket #504)
5780     "-d sat"          // 28.12, Mediasonic ProBox H82-SU3S2 (port multiplier)
5781   },
5782   { "USB: ; JMicron ", // USB->SATA->4xSATA (port multiplier)
5783     "0x152d:0x0551",   // JMS539? (old firmware may use 0x152d:0x0539, ticket #552)
5784     "", // 0x0100
5785     "",
5786     "-d usbjmicron,x"
5787   },
5788   { "USB: ; JMicron",
5789     "0x152d:0x0561",
5790     "", // 0x0003, ODROID CloudShell 2
5791     "",
5792     "-d sat"
5793   },
5794   { "USB: ; JMicron JM562", // USB2/3+eSATA->2xSATA, USB2/3->3xSATA (RAID0/1)
5795     "0x152d:0x0562",
5796     "", // 0x0106, Fantec QB-X2US3R (ticket #966)
5797     "", // only ATA IDENTIFY works, SMART commands don't work
5798     "-d sat"
5799   },
5800   { "USB: ; JMicron", // USB2/3->2xSATA
5801     "0x152d:0x0565",
5802     "", // 0x9114, Akasa DuoDock X (ticket #607)
5803     "",
5804     "-d sat"
5805   },
5806   { "USB: ; JMicron JMS567", // USB2/3->SATA
5807     "0x152d:0x0567",
5808     "", // 0x0114
5809     "", // 0x0205, 2.05, Mediasonic ProBox HF2-SU3S2 Rev 3 (port multiplier, ticket #504)
5810     "-d sat"
5811   },
5812   { "USB: ; JMicron JMS578", // USB->SATA
5813     "0x152d:0x0578",
5814     "", // 0x0100
5815     "",
5816     "-d sat"
5817   },
5818   { "USB: ; JMicron",
5819     "0x152d:0x0579", // Intenso External
5820     "", // 0x0100
5821     "",
5822     "-d sat"
5823   },
5824   { "USB: ; JMicron JMS583", // USB->PCIe (NVMe)
5825     "0x152d:0x0583",
5826     "",
5827     "",
5828     "-d sntjmicron"
5829   },
5830   { "USB: OCZ THROTTLE OCZESATATHR8G; JMicron JMF601",
5831     "0x152d:0x0602",
5832     "",
5833     "",
5834     "" // unsupported
5835   },
5836   { "USB: ; JMicron",
5837     "0x152d:0x1337",
5838     "", // 0x0508, Digitus DA-71106
5839     "",
5840     "-d sat"
5841   },
5842   { "USB: ; JMicron JMS561", // USB2/3->2xSATA
5843     "0x152d:0x[19]561", // 0x1561(0x0106), Sabrent USB 3.0 Dual Bay SATA Dock
5844     "",  // 0x9561(0x0105), Orico 6629US3-C USB 3.0 Dual Bay SATA Dock
5845     "",
5846     "-d sat"
5847   },
5848   { "USB: ; JMicron JMS576", // USB3.1->SATA
5849     "0x152d:0x[01]576",
5850     "", // 0x0204, ICY BOX IB-223U3a-B
5851     "",
5852     "-d sat"
5853   },
5854   { "USB: ; JMicron JM20329", // USB->SATA
5855     "0x152d:0x2329",
5856     "", // 0x0100
5857     "",
5858     "-d usbjmicron"
5859   },
5860   { "USB: ; JMicron JM20336", // USB+SATA->SATA, USB->2xSATA
5861     "0x152d:0x2336",
5862     "", // 0x0100
5863     "",
5864     "-d usbjmicron,x"
5865   },
5866   { "USB: Generic JMicron adapter; JMicron",
5867     "0x152d:0x2337",
5868     "",
5869     "",
5870     "-d usbjmicron"
5871   },
5872   { "USB: ; JMicron JM20337/8", // USB->SATA+PATA, USB+SATA->PATA
5873     "0x152d:0x2338",
5874     "", // 0x0100
5875     "",
5876     "-d usbjmicron"
5877   },
5878   { "USB: ; JMicron JM20339", // USB->SATA
5879     "0x152d:0x2339",
5880     "", // 0x0100
5881     "",
5882     "-d usbjmicron,x"
5883   },
5884   { "USB: ; JMicron", // USB+SATA->SATA
5885     "0x152d:0x2351",  // e.g. Verbatim Portable Hard Drive 500Gb
5886     "", // 0x0100
5887     "",
5888     "-d sat"
5889   },
5890   { "USB: ; JMicron", // USB->SATA
5891     "0x152d:0x2352",
5892     "", // 0x0100
5893     "",
5894     "-d usbjmicron,x"
5895   },
5896   { "USB: ; JMicron", // USB->SATA
5897     "0x152d:0x2509",
5898     "", // 0x0100
5899     "",
5900     "-d usbjmicron,x"
5901   },
5902   { "USB: ; JMicron JMS566", // USB3->SATA
5903     "0x152d:0x2566", // e.g. Chieftec CEB-7035S
5904     "", // 0x0114
5905     "",
5906     "-d usbjmicron,x"
5907   },
5908   { "USB: ; JMicron JMS567", // USB3->SATA
5909     "0x152d:0x2567",
5910     "", // 0x0117, Chieftec CEB-7053S
5911     "",
5912     "-d sat"
5913   },
5914   { "USB: ; JMicron",
5915     "0x152d:0x2590",
5916     "", // 0x0x8105 (ticket #550)
5917     "",
5918     "-d sat"
5919   },
5920   { "USB: ; JMicron JMS567", // USB2/3->SATA
5921     "0x152d:0x3562",
5922     "", // 0x0310, StarTech S358BU33ERM (port multiplier, ticket #508)
5923     "",
5924     "-d sat"
5925   },
5926   { "USB: ; JMicron", // USB3->SATA
5927     "0x152d:0x3569",
5928     "", // 0x0203
5929     "",
5930     "-d sat"
5931   },
5932   { "USB: ; JMicron",
5933     "0x152d:0x578e",
5934     "", // 0x1402, Intenso Memory Center
5935     "",
5936     "-d sat"
5937   },
5938   { "USB: ; JMicron JMS561", // USB3->2xSATA
5939     "0x152d:0x[8a]561",
5940     "", // 0x8561: 0x0107
5941     "",
5942     "-d sat"
5943   },
5944   // PNY
5945   { "USB: ; PNY",
5946     "0x154b:0x5678",
5947     "", // 0x5408
5948     "",
5949     "-d sat"
5950   },
5951   // ASMedia
5952   { "USB: ; ASMedia ASM2362", // USB->PCIe (NVMe)
5953     "0x174c:0x2362",
5954     "",
5955     "",
5956     "-d sntasmedia"
5957   },
5958   { "USB: ; ASMedia",
5959     "0x174c:0x....",
5960     "",
5961     "",
5962     "-d sat"
5963   },
5964   // LucidPort
5965   { "USB: ; LucidPORT USB300", // RaidSonic ICY BOX IB-110StU3-B, Sharkoon SATA QuickPort H3
5966     "0x1759:0x500[02]", // 0x5000: USB 2.0, 0x5002: USB 3.0
5967     "",
5968     "",
5969     "-d sat"
5970   },
5971   { "USB: ; LucidPort", // Fuj:tech SATA-USB3 dock
5972     "0x1759:0x5100",
5973     "", // 0x2580
5974     "",
5975     "-d sat"
5976   },
5977   // Verbatim
5978   { "USB: Verbatim Portable Hard Drive; Sunplus",
5979     "0x18a5:0x0214",
5980     "", // 0x0112
5981     "",
5982     "-d usbsunplus"
5983   },
5984   { "USB: Verbatim FW/USB160; Oxford OXUF934SSA-LQAG", // USB+IEEE1394->SATA
5985     "0x18a5:0x0215",
5986     "", // 0x0001
5987     "",
5988     "-d sat"
5989   },
5990   { "USB: Verbatim External Hard Drive 47519; Sunplus", // USB->SATA
5991     "0x18a5:0x0216",
5992     "",
5993     "",
5994     "-d usbsunplus"
5995   },
5996   { "USB: Verbatim Pocket Hard Drive; JMicron", // SAMSUNG HS25YJZ/3AU10-01
5997     "0x18a5:0x0227",
5998     "",
5999     "",
6000     "-d usbjmicron" // "-d usbjmicron,x" does not work
6001   },
6002   { "USB: Verbatim External Hard Drive; JMicron", // 2TB
6003     "0x18a5:0x022a",
6004     "",
6005     "",
6006     "-d usbjmicron"
6007   },
6008   { "USB: Verbatim Store'n'Go; JMicron", // USB->SATA
6009     "0x18a5:0x022b",
6010     "", // 0x0100
6011     "",
6012     "-d usbjmicron"
6013   },
6014   { "USB: Verbatim Pocket Hard Drive; ", // 1TB USB 3.0
6015     "0x18a5:0x0237",
6016     "",
6017     "",
6018     "-d sat,12"
6019   },
6020   { "USB: Verbatim External Hard Drive; ", // USB 3.0
6021     "0x18a5:0x040[08]", // 0=3TB, 8=1TB
6022     "",
6023     "",
6024     "-d sat"
6025   },
6026   // Silicon Image
6027   { "USB: Vantec NST-400MX-SR; Silicon Image 5744",
6028     "0x1a4a:0x1670",
6029     "",
6030     "",
6031     "" // unsupported
6032   },
6033   // Corsair
6034   { "USB: Voyager GTX; ",
6035     "0x1b1c:0x1a0e",
6036     "",
6037     "",
6038     "-d sat"
6039   },
6040   // SunplusIT
6041   { "USB: ; SunplusIT",
6042     "0x1bcf:0x0c31",
6043     "",
6044     "",
6045     "-d usbsunplus"
6046   },
6047   // TrekStor
6048   { "USB: TrekStor DataStation; ", // DataStation maxi light (USB 3.0)
6049     "0x1e68:0x0050",
6050     "", // 0x0100
6051     "",
6052     "-d sat"
6053   },
6054   // 0x1e91 (?)
6055   { "USB: OWC Envoy Pro; ",
6056     "0x1e91:0xa2a5",
6057     "", // 0x0100
6058     "",
6059     "-d sat"
6060   },
6061   { "USB: OWC Mercury Elite Pro Quad; ",
6062     "0x1e91:0xa4a7",
6063     "", // 0x0100
6064     "",
6065     "-d sat"
6066   },
6067   // Innostor
6068   { "USB: ; Innostor IS611", // USB3->SATA+PATA
6069     "0x1f75:0x0611", // SMART access via PATA does not work
6070     "",
6071     "",
6072     "-d sat"
6073   },
6074   { "USB: ; Innostor IS621", // USB3->SATA
6075     "0x1f75:0x0621", // Dynex 2.5" USB 3.0 Exclosure DX-HD302513
6076     "",
6077     "",
6078     "-d sat"
6079   },
6080   { "USB: ; Innostor IS888", // USB3->SATA
6081     "0x1f75:0x0888",
6082     "", // 0x0034, Sharkoon SATA QuickDeck Pro USB 3.0 (unsupported)
6083     "", // 0x0036, works with -d sat (ticket #827)
6084     "-d sat"
6085   },
6086   // VIA Labs
6087   { "USB: ; VIA VL701", // USB2/3->SATA
6088     "0x2109:0x0701", // Intenso 2,5" 1TB USB3
6089     "", // 0x0107
6090     "",
6091     "-d sat" // ATA output registers missing
6092   },
6093   { "USB: ; VIA VL711", // USB2/3->SATA
6094     "0x2109:0x0711",
6095     "", // 0x0114, Mediasonic ProBox K32-SU3 (ticket #594)
6096     "", // 0x0507, Intenso 2,5" Memory Case 2TB USB3
6097     "-d sat"
6098   },
6099   { "USB: ; VIA VL715/6", // USB2/3->SATA, USB-C->SATA
6100     "0x2109:0x071[56]",
6101     "", // 0x0336/0x0000
6102     "",
6103     "-d sat"
6104   },
6105   // Transcend (?)
6106   { "USB: Transcend ESD400; ",
6107     "0x2174:0x2000", // TS256GESD400K
6108     "", // 0x1000
6109     "",
6110     "-d sat"
6111   },
6112   // 0x2537 (?)
6113   { "USB: ; ", // USB 3.0
6114     "0x2537:0x106[68]", // 0x1066: Orico 2599US3, 0x1068: Fantec ER-35U3
6115     "", // 0x0100
6116     "",
6117     "-d sat"
6118   },
6119   // 0x2eb9 (?): See Realtek (0x0bda) above
6120   // AKiTiO (?)
6121   { "USB: AkiTio NT2 U3.1C; ",
6122     "0x2ce5:0x0014",
6123     "", // 0x0100
6124     "",
6125     "-d sat"
6126   },
6127   // Power Quotient International
6128   { "USB: PQI H560; ",
6129     "0x3538:0x0902",
6130     "", // 0x0000
6131     "",
6132     "-d sat"
6133   },
6134   // Power Quotient International
6135   { "USB: PQI bridge; ",
6136     "0x3538:0x0064",
6137     "",
6138     "",
6139     "-d usbsunplus"
6140   },
6141   // Sharkoon
6142   { "USB: Sharkoon QuickPort XT USB 3.0; ",
6143     "0x357d:0x7788",
6144     "",
6145     "",
6146     "-d sat"
6147   },
6148   // Hitachi/SimpleTech
6149   { "USB: Hitachi Touro Desk; JMicron", // 3TB
6150     "0x4971:0x1011",
6151     "",
6152     "",
6153     "-d usbjmicron"
6154   },
6155   { "USB: Hitachi Touro; ",
6156     "0x4971:0x101[45]", // 14=1TB, 15=2TB
6157     "", // 0x0000
6158     "",
6159     "-d sat" // ATA output registers missing
6160   },
6161   { "USB: Hitachi Touro Mobile; ", // 1TB
6162     "0x4971:0x102[034]",
6163     "", // 0x0100
6164     "",
6165     "-d sat"
6166   },
6167   { "USB: SimpleTech;", // USB 3.0 HDD BOX Agestar,  Rock External HDD 3,5" UASP
6168     "0x4971:0x8017",
6169     "",
6170     "",
6171     "-d sat"
6172   },
6173   { "USB: Hitachi/SimpleTech; JMicron", // 1TB
6174     "0x4971:0xce17",
6175     "",
6176     "",
6177     "-d usbjmicron,x"
6178   },
6179   // OnSpec
6180   { "USB: ; OnSpec", // USB->PATA
6181     "0x55aa:0x2b00",
6182     "", // 0x0100
6183     "",
6184     "" // unsupported
6185   },
6186   // 0x6795 (?)
6187   { "USB: Sharkoon 2-Bay RAID Box; ", // USB 3.0
6188     "0x6795:0x2756",
6189     "", // 0x0100
6190     "",
6191     "-d sat"
6192   },
6193   // Transcend
6194   { "USB: ; ",
6195     "0x8564:0x7000",
6196     "", // 0x8000
6197     "",
6198     "-d sat"
6199   },
6200   // JMicron II
6201   { "USB: ; JMicron JMS566",
6202     "0xa152:0xb566",
6203     "", // 0x0223
6204     "",
6205     "-d sat"
6206   },
6207   // 0xabcd (?)
6208   { "USB: ; ",
6209     "0xabcd:0x610[34]", // 0x6103: LogiLink AU0028A V1.0 USB 3.0 to IDE & SATA Adapter
6210       // 0x6104: LogiLink PCCloneEX Lite
6211     "",
6212     "",
6213     "-d sat"
6214   },
6215 /*
6216 }; // builtin_knowndrives[]
6217  */
6218