diff --git a/sm5/CHANGELOG b/sm5/CHANGELOG
index e09971cee0c6b488c4debfb84995cfb295c9f84a..01264a239112bbd48eb381581d5d83e14b910c28 100644
--- a/sm5/CHANGELOG
+++ b/sm5/CHANGELOG
@@ -1,6 +1,6 @@
 CHANGELOG for smartmontools
 
-$Id: CHANGELOG,v 1.401 2004/04/18 15:02:49 chrfranke Exp $
+$Id: CHANGELOG,v 1.402 2004/04/18 22:54:49 pjwilliams Exp $
 
 The most recent version of this file is:
 http://cvs.sourceforge.net/viewcvs.py/smartmontools/sm5/CHANGELOG?sortby=date&view=markup
@@ -27,6 +27,10 @@ NOTES FOR FUTURE RELEASES: see TODO file.
 
 <ADDITIONS TO THE CHANGE LOG SHOULD BE ADDED JUST BELOW HERE, PLEASE>
 
+  [PW] Added ExcelStor J240, Hitachi Travelstar 80GN family, Fujitsu
+       MHTxxxxAT family, and IBM Deskstar 25GP and 22GXP families to
+       knowndrives table.
+
   [CF] Cygwin smartd: Added workaround for missing SIGQUIT via keyboard:
        To exit smartd in debug mode, type CONTROL-C twice.
 
diff --git a/sm5/knowndrives.c b/sm5/knowndrives.c
index c5c7c976d81e41a67bf9089fe353da5f40a54ae5..3ff0148f8b5e7000b2ff60390e7098bb8ef6bd44 100644
--- a/sm5/knowndrives.c
+++ b/sm5/knowndrives.c
@@ -26,7 +26,7 @@
 #include "utility.h" // includes <regex.h>
 #include "config.h"
 
-const char *knowndrives_c_cvsid="$Id: knowndrives.c,v 1.102 2004/04/16 13:48:45 ballen4705 Exp $"
+const char *knowndrives_c_cvsid="$Id: knowndrives.c,v 1.103 2004/04/18 22:54:50 pjwilliams Exp $"
 ATACMDS_H_CVSID ATAPRINT_H_CVSID CONFIG_H_CVSID EXTERN_H_CVSID INT64_H_CVSID KNOWNDRIVES_H_CVSID UTILITY_H_CVSID;
 
 #define MODEL_STRING_LENGTH                         40
@@ -159,6 +159,11 @@ const drivesettings knowndrives[] = {
       "Please see http://www.geocities.com/dtla_update/",
     NULL, NULL, NULL
   },
+  { // ExcelStor J240
+    "^ExcelStor Technology J240$",
+    ".*",
+    NULL, NULL, NULL, NULL
+  },
   { // Fujitsu MPD and MPE series
     "^FUJITSU MP[DE]....A[HTE]$",
     ".*",
@@ -209,6 +214,13 @@ const drivesettings knowndrives[] = {
     vendoropts_9_seconds,
     NULL, NULL
   },
+  { // Fujitsu MHTxxxxAT family
+    "^FUJITSU MHT20[23468]0AT$",
+    ".*",
+    NULL,
+    vendoropts_9_seconds,
+    NULL, NULL
+  },
   { // Samsung SV4012H (known firmware)
     "^SAMSUNG SV4012H$",
     "^RM100-08$",
@@ -434,6 +446,11 @@ const drivesettings knowndrives[] = {
     ".*",
     NULL, NULL, NULL, NULL 
   },
+  { // IBM Deskstar 25GP and 22GXP family
+    "^IBM-DJNA-3(5(101|152|203|250)|7(091|135|180|220))0$",
+    ".*",
+    NULL, NULL, NULL, NULL 
+  },
   { // IBM Travelstar 25GS, 18GT, and 12GN family
     "^IBM-DARA-2(25|18|15|12|09|06)000$",
     ".*",
@@ -449,6 +466,11 @@ const drivesettings knowndrives[] = {
     ".*",
     NULL, NULL, NULL, NULL 
   },
+  { // Hitachi Travelstar 80GN family
+    "^IC25N0[248]0ATMR04$",
+    ".*",
+    NULL, NULL, NULL, NULL
+  },
   { // IBM/Hitachi Deskstar 120GXP family
     "^IC35L((020|040|060|080|120)AVVA|0[24]0AVVN)07-[01]$",
     ".*",
diff --git a/sm5/knowndrives.cpp b/sm5/knowndrives.cpp
index 3f56dd0bb55c86d3fe060b33a5e7973802166b30..3698ab089c656408cef957b42e0bb2e71c2f96f7 100644
--- a/sm5/knowndrives.cpp
+++ b/sm5/knowndrives.cpp
@@ -26,7 +26,7 @@
 #include "utility.h" // includes <regex.h>
 #include "config.h"
 
-const char *knowndrives_c_cvsid="$Id: knowndrives.cpp,v 1.102 2004/04/16 13:48:45 ballen4705 Exp $"
+const char *knowndrives_c_cvsid="$Id: knowndrives.cpp,v 1.103 2004/04/18 22:54:50 pjwilliams Exp $"
 ATACMDS_H_CVSID ATAPRINT_H_CVSID CONFIG_H_CVSID EXTERN_H_CVSID INT64_H_CVSID KNOWNDRIVES_H_CVSID UTILITY_H_CVSID;
 
 #define MODEL_STRING_LENGTH                         40
@@ -159,6 +159,11 @@ const drivesettings knowndrives[] = {
       "Please see http://www.geocities.com/dtla_update/",
     NULL, NULL, NULL
   },
+  { // ExcelStor J240
+    "^ExcelStor Technology J240$",
+    ".*",
+    NULL, NULL, NULL, NULL
+  },
   { // Fujitsu MPD and MPE series
     "^FUJITSU MP[DE]....A[HTE]$",
     ".*",
@@ -209,6 +214,13 @@ const drivesettings knowndrives[] = {
     vendoropts_9_seconds,
     NULL, NULL
   },
+  { // Fujitsu MHTxxxxAT family
+    "^FUJITSU MHT20[23468]0AT$",
+    ".*",
+    NULL,
+    vendoropts_9_seconds,
+    NULL, NULL
+  },
   { // Samsung SV4012H (known firmware)
     "^SAMSUNG SV4012H$",
     "^RM100-08$",
@@ -434,6 +446,11 @@ const drivesettings knowndrives[] = {
     ".*",
     NULL, NULL, NULL, NULL 
   },
+  { // IBM Deskstar 25GP and 22GXP family
+    "^IBM-DJNA-3(5(101|152|203|250)|7(091|135|180|220))0$",
+    ".*",
+    NULL, NULL, NULL, NULL 
+  },
   { // IBM Travelstar 25GS, 18GT, and 12GN family
     "^IBM-DARA-2(25|18|15|12|09|06)000$",
     ".*",
@@ -449,6 +466,11 @@ const drivesettings knowndrives[] = {
     ".*",
     NULL, NULL, NULL, NULL 
   },
+  { // Hitachi Travelstar 80GN family
+    "^IC25N0[248]0ATMR04$",
+    ".*",
+    NULL, NULL, NULL, NULL
+  },
   { // IBM/Hitachi Deskstar 120GXP family
     "^IC35L((020|040|060|080|120)AVVA|0[24]0AVVN)07-[01]$",
     ".*",