Commit Graph

104 Commits

Author SHA1 Message Date
wiz
3969855bdf New sentence, new line. 2019-05-31 16:38:27 +00:00
mlelstv
8ba9fb4d1c Mention SATL support. 2019-05-31 05:47:22 +00:00
mlelstv
c2d06938d9 Add support for ATA command pass-through to SCSI devices. 2019-05-30 21:32:08 +00:00
mrg
51102cfc35 - smart vendor support now does try to guess the vendor,
adjust the BUGS to suit
- claim some copyright
2019-03-03 04:51:57 +00:00
mrg
37b18b6d27 add a samsung specific SMART table with:
235 - POR Recovery Count
	243 - SATA Downshift Count
	244 - Thermal Throttle Status
	245 - Timed Workload Media Wear
	251 - NAND Writes

all 5 turn up on newer samsung SSDs, though 3 of them all
read 65535 for me across muliplte devices.
2019-03-03 04:48:19 +00:00
mrg
7aa75b6a2f add some intel specific smart values, and be more specific for
a bunch of micron/crucial values.
2019-03-01 02:33:43 +00:00
wiz
122244022d Remove trailing whitespace. 2018-12-05 14:45:59 +00:00
mrg
3d07a0370e "smart status" already obtains the ata parameters to check if smart
is actually supported, so we can attempt to guess a vendor smart
table from the model name.  add basic support for all the micron /
crucial disk names i could find, and add a couple more micron
specific values.

XXX: probably should add regex support for matching, and probably
     should be more restrictive with the current matches.
2018-12-05 06:49:54 +00:00
wiz
233a76a940 Use more appropriate macros. Make a sentence easier to read. 2018-11-03 10:51:14 +00:00
mrg
ca08a0c2e1 extend "smart status" command to "smart status [vendor]", and supply a
"Micron" (for Micron/Crucial) list with their documented values.

this allows the vendor-specific data to be used.

there appears to be no simple way to automatically determine the right
vendor to use -- identify data seems to be the only obvious way and
that data can be and is changed by OEMs.  (eg, a disk may be listed as
being "dell", but dell don't make disks.)  as such, no attempt is made
to automatically determine if a vendor list should be used.
2018-10-31 20:00:56 +00:00
mrg
e6efae7434 add SMART 249: Total Raw NAND Writes (1GiB units), sourced from
intel spec sheets.
2016-10-04 21:37:46 +00:00
mrg
a3ddb94352 update the micron smart codes for 247/248 to match data i found in
micron's "TN-FD-33: M510DC SSD SMART Implementation Introduction"
document.

these two values can be used to calculate the write amplication
factor:

   WAF = ( A247 + A248 ) / A247
2016-05-10 08:08:59 +00:00
mrg
710e06c668 add smart IDs 210, 246, 247 and 248 (Micron):
+       { 210,          "Successful RAIN Recovery Count", NULL },
+       { 246,          "Total Host Sector Writes", NULL },
+       { 247,          "Contact Factory (Micron)", NULL },
+       { 248,          "Contact Factory (Micron)", NULL },

(eek i hope 247 and 248 don't move.)
2015-09-21 06:05:00 +00:00
mrg
d6a1b6b395 add a whole bunch of S.M.A.R.T. status i found around various sources.
now nothing on my new SSD is unknown, except #249.
2014-10-15 06:54:04 +00:00
wiz
d860f590d4 Fix typo ("then" instead of "than") 2013-12-09 09:35:16 +00:00
drochner
958a129dbd -recognize CF cards by the magic value in inquiry data
-kill CFG_ATAPI_MASK, didn't see anything in the specs supporting
 that it exists
2013-10-30 15:37:49 +00:00
soren
2d96a254f8 TRIM showed up sometime between ATA-7 and ATA-8. 2013-08-06 19:13:13 +00:00
soren
35985c7122 Don't use \t to align text columns.
Add a few attribute descriptions.
2013-08-03 18:35:31 +00:00
jakllsch
8c9dbb49b1 Decode 6Gbps signaling SATA capability in IDENTIFY DEVICE data. 2013-02-08 03:58:36 +00:00
riastradh
50ce00ea5e Add some ATA SECURITY commands to atactl(8). 2013-01-09 21:58:23 +00:00
drochner
5724e77fda Implement experimental support to pass notifications that a file
was deleted from the filesystem to the disk driver, commonly
known as "discard" or "trim".
fs/driver support is in ffs and ata wd for now.
This is what was posted here:
http://mail-index.netbsd.org/tech-kern/2012/02/28/msg012813.html
with minor cleanup, and the global switch replaced by a mount option.
2012-10-19 17:09:06 +00:00
jakllsch
b052e03160 Constify structure pointed to by getataparams() return value. 2011-10-31 15:26:11 +00:00
jakllsch
bfe1863ea2 Remove write-only variable. 2011-10-31 14:50:10 +00:00
jakllsch
58fe39198a Wrap or shorten lines longer than 80 columns. 2011-10-31 14:44:07 +00:00
jakllsch
34ce9c94ba use C99 fixed-width integer types 2011-10-24 19:15:42 +00:00
jakllsch
fbc01b29da constify 2011-10-24 19:13:03 +00:00
jakllsch
44a52e4ad8 change lines containing only whitespace to empty lines,
remove trailing whitespace
2011-10-24 15:56:17 +00:00
joerg
1a61ef5ea6 staticfy. Use __dead. 2011-08-27 16:12:54 +00:00
nisimura
ba19dd6c6f fix mislabelled S.M.A.R.T. lifetime temperature record reading. 2011-01-19 07:55:12 +00:00
nisimura
819cda4abe fix a mysterious indent lossage roaming around for last couple of years. 2011-01-14 06:02:57 +00:00
mrg
a597c96c7d add SMART code 187: "Reported uncorrect". from smartmontools. 2010-03-13 19:49:50 +00:00
jakllsch
ce12229e40 Add display of Long Physical Sector and Long Logical Sectors feature set
information to atactl identify output.

Also:
- remove caddr_t cast
- warn about invalid IDENTIFY data checksum (when possible)
- humanize capacity in power-of-10 format
- remove semi-pointless ATAPI check
- slightly rework command queue depth output to be less conversational
2010-01-25 01:24:11 +00:00
jakllsch
7a9caa1f87 Improve "identify" output slightly:
- Capitialize "Name" in World Wide Name.
 - Print the World Wide Name if it exists.
 - Use LBA48 maximum address when available for "total sectors" output.
 - So that geometry will display on more drives, don't be as strict when
   checking for non-ATAPI devices.  (This seemed to be an issue on at least
   one instance of a Caviar SE16 drive.)
 - Check more carefully for valid/relevant queue depth before printing it.
 - Increment the queue depth by one for display.

While here, wrap some long lines that I should have had wrapped before they
were commited in rev. 1.46.
2009-06-08 23:26:13 +00:00
mlelstv
3479599edd make space for a trailing \0 in model,revision and serial buffers. 2009-06-06 09:18:55 +00:00
lukem
c1237301b3 fix sign-compare issues 2009-03-16 12:52:07 +00:00
dholland
992b45040f Add two missing SMART attributes; PR 37967 from Henry Bent. Also add a
third I found while digging around, and fix one whose name was typoed.
2008-08-25 00:45:56 +00:00
dholland
8bc7b72389 Fix this to not need -Wno-pointer-sign. Make it pass -Wsign-compare too,
while I'm at it.
2008-07-24 05:21:12 +00:00
gmcgarry
8d54263568 Add HAVE_PCC tests for -Wno-pointer-sign. 2008-07-21 11:38:44 +00:00
martin
11a6dbe728 Convert TNF licenses to new 2 clause variant 2008-04-30 13:10:46 +00:00
martin
ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
perry
4d096031f0 replace instances of __attribute__((__packed__)) with __packed 2007-12-15 16:03:29 +00:00
christos
eb90df6853 From Marco Trillo (marcotrillo at gmail dot com):
Add Advanced power management in atactl(8)
2007-11-18 17:48:21 +00:00
xtraeme
51f434b0bb Fix typo in SATA features: Perservation -> Preservation. 2007-11-04 02:34:27 +00:00
bouyer
bd627359dd Improved SATA support, from Jonathan A. Kollasch in PR bin/36772:
* use full 5-bit command queue depth that SATA supports
* decode SATA bits
2007-08-21 16:53:18 +00:00
christos
7e3b870a41 add missing initializers 2006-10-16 00:45:19 +00:00
xtraeme
91254d0d23 It's WDCC_SECURITY_FREEZE not WCDD_SECURITY_FREEZE.
Noticed by Sergey Svishchev.
2006-09-24 08:33:30 +00:00
xtraeme
e2e3ea2b19 Do not print "SMART not supported" when SMART was disabled, this
fixes PR bin/18666.
2006-09-23 15:24:24 +00:00
mrg
aadd7d4847 sprinkle some -fno-strict-aliasing and -Wno-pointer-sign with GCC4. 2006-05-11 23:16:28 +00:00
wiz
5d1e8b2745 Fix some typos. 2006-02-25 02:28:55 +00:00
dbj
5a25538485 fix byteswap of log revision structure check, improve error printout 2005-11-29 08:47:22 +00:00