From 5aeb34ee844524518c57d57421bc8700395a2ae5 Mon Sep 17 00:00:00 2001
From: chrfranke <chrfranke@4ea69e1a-61f1-4043-bf83-b5c94c648137>
Date: Mon, 16 Feb 2009 19:57:32 +0000
Subject: [PATCH] knowndrives.cpp updates: Add more entries for Samsung P80,
 remove old unspecific entries.

git-svn-id: https://smartmontools.svn.sourceforge.net/svnroot/smartmontools/trunk@2737 4ea69e1a-61f1-4043-bf83-b5c94c648137
---
 sm5/CHANGELOG       |  6 +++++-
 sm5/knowndrives.cpp | 23 +++++++++++++++++------
 2 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/sm5/CHANGELOG b/sm5/CHANGELOG
index 2a89f82ea..434eb8654 100644
--- a/sm5/CHANGELOG
+++ b/sm5/CHANGELOG
@@ -1,6 +1,6 @@
 CHANGELOG for smartmontools
 
-$Id: CHANGELOG,v 1.772 2009/02/11 21:36:00 chrfranke Exp $
+$Id: CHANGELOG,v 1.773 2009/02/16 19:57:32 chrfranke Exp $
 
 The most recent version of this file is:
 http://smartmontools.cvs.sourceforge.net/smartmontools/sm5/CHANGELOG?view=markup
@@ -41,6 +41,10 @@ NOTES FOR FUTURE RELEASES: see TODO file.
 
 <DEVELOPERS: ADDITIONS TO THE CHANGE LOG GO JUST BELOW HERE, PLEASE>
 
+  [CF] knowndrives.cpp updates: Add more entries for Samsung P80 disks
+       with old and unknown firmware. Remove old entries which would
+       match any new Samsung model reusing old firmware version number.
+
   [CF] Windows: Add a workaround for missing multi-sector support
        for ATA READ LOG EXT command.
 
diff --git a/sm5/knowndrives.cpp b/sm5/knowndrives.cpp
index b4dee6d2b..50d864915 100644
--- a/sm5/knowndrives.cpp
+++ b/sm5/knowndrives.cpp
@@ -35,7 +35,7 @@
 
 #include <stdexcept>
 
-const char *knowndrives_c_cvsid="$Id: knowndrives.cpp,v 1.197 2009/02/11 22:13:59 chrfranke Exp $"
+const char *knowndrives_c_cvsid="$Id: knowndrives.cpp,v 1.198 2009/02/16 19:57:32 chrfranke Exp $"
 ATACMDS_H_CVSID CONFIG_H_CVSID EXTERN_H_CVSID INT64_H_CVSID KNOWNDRIVES_H_CVSID UTILITY_H_CVSID;
 
 #define MODEL_STRING_LENGTH                         40
@@ -316,15 +316,25 @@ static const drive_settings builtin_knowndrives[] = {
     "",
     "-v 9,halfminutes"
   },
-  { "", // Any other Samsung disk with *-23 *-24 firmware
-    // SAMSUNG SP1213N (TL100-23 firmware)
-    // SAMSUNG SP0802N (TK100-23 firmware)
-    // Samsung SP1604N, tested with FW TM100-23 and TM100-24
-    "SAMSUNG .*",
+  { "SAMSUNG SpinPoint P80 series", // firmware *-23...24, tested with
+    // SP0802N/TK100-23,
+    // SP1213N/TL100-23,
+    // SP1604N/TM100-23 and -24
+    "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
     ".*-2[34]",
     "",
     "-v 9,halfminutes -F samsung2"
   },
+  { "SAMSUNG SpinPoint P80 series", // unknown firmware
+    "SAMSUNG SP(0451|08[0124]2|12[0145]3|16[0145]4)[CN]",
+    "",
+    "May need -F samsung2 or -F samsung3 enabled; see manual for details.",
+    ""
+  },
+#if 0
+  // TODO: Make the entries below more specific.
+  // These entries produce misleading results, because newer
+  // Samsung disks reuse the version numbers *-NN.
   { "", // All Samsung drives with '.*-25' firmware
     "SAMSUNG.*",
     ".*-25",
@@ -343,6 +353,7 @@ static const drive_settings builtin_knowndrives[] = {
     "May need -F samsung or -F samsung2 enabled; see manual for details.",
     ""
   },
+#endif
   { "Maxtor Fireball 541DX family",
     "Maxtor 2B0(0[468]|1[05]|20)H1",
     "",
-- 
GitLab