libata: Implement ZBC OUT translation

ZAC drives implement a 'ZAC Management Out' command template,
which maps onto the ZBC OUT command.

Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
Hannes Reinecke
2016-04-25 12:45:53 +02:00
committed by Tejun Heo
parent 28a3fc2295
commit 27708a9579
5 changed files with 92 additions and 0 deletions

View File

@@ -303,6 +303,7 @@ enum {
ATA_CMD_REQ_SENSE_DATA = 0x0B,
ATA_CMD_SANITIZE_DEVICE = 0xB4,
ATA_CMD_ZAC_MGMT_IN = 0x4A,
ATA_CMD_ZAC_MGMT_OUT = 0x9F,
/* marked obsolete in the ATA/ATAPI-7 spec */
ATA_CMD_RESTORE = 0x10,
@@ -323,6 +324,12 @@ enum {
/* Subcmds for ATA_CMD_ZAC_MGMT_IN */
ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES = 0x00,
/* Subcmds for ATA_CMD_ZAC_MGMT_OUT */
ATA_SUBCMD_ZAC_MGMT_OUT_CLOSE_ZONE = 0x01,
ATA_SUBCMD_ZAC_MGMT_OUT_FINISH_ZONE = 0x02,
ATA_SUBCMD_ZAC_MGMT_OUT_OPEN_ZONE = 0x03,
ATA_SUBCMD_ZAC_MGMT_OUT_RESET_WRITE_POINTER = 0x04,
/* READ_LOG_EXT pages */
ATA_LOG_DIRECTORY = 0x0,
ATA_LOG_SATA_NCQ = 0x10,