Add the SMART command to the ATA instruction set.

When the disk has an error, it will now print SMART
instead of 'Unknown CMD'.

PR:		kern/93368
Submitted by:	Garry Belka <garry at NetworkPhysics dot COM>
Approved by:	sos
This commit is contained in:
Remko Lodder 2007-01-27 21:15:59 +00:00
parent 191c2cea1c
commit 7fd6875fc5
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=166287
2 changed files with 2 additions and 0 deletions

View File

@ -704,6 +704,7 @@ ata_cmd2str(struct ata_request *request)
case 0xa0: return ("PACKET_CMD"); case 0xa0: return ("PACKET_CMD");
case 0xa1: return ("ATAPI_IDENTIFY"); case 0xa1: return ("ATAPI_IDENTIFY");
case 0xa2: return ("SERVICE"); case 0xa2: return ("SERVICE");
case 0xb0: return ("SMART");
case 0xc0: return ("CFA ERASE"); case 0xc0: return ("CFA ERASE");
case 0xc4: return ("READ_MUL"); case 0xc4: return ("READ_MUL");
case 0xc5: return ("WRITE_MUL"); case 0xc5: return ("WRITE_MUL");

View File

@ -243,6 +243,7 @@ struct ata_params {
#define ATA_PACKET_CMD 0xa0 /* packet command */ #define ATA_PACKET_CMD 0xa0 /* packet command */
#define ATA_ATAPI_IDENTIFY 0xa1 /* get ATAPI params*/ #define ATA_ATAPI_IDENTIFY 0xa1 /* get ATAPI params*/
#define ATA_SERVICE 0xa2 /* service command */ #define ATA_SERVICE 0xa2 /* service command */
#define ATA_SMART_CMD 0xb0 /* SMART command */
#define ATA_CFA_ERASE 0xc0 /* CFA erase */ #define ATA_CFA_ERASE 0xc0 /* CFA erase */
#define ATA_READ_MUL 0xc4 /* read multi */ #define ATA_READ_MUL 0xc4 /* read multi */
#define ATA_WRITE_MUL 0xc5 /* write multi */ #define ATA_WRITE_MUL 0xc5 /* write multi */