diff options
author | Damien Le Moal <dlemoal@kernel.org> | 2023-05-11 03:13:50 +0200 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2023-05-22 17:05:20 -0400 |
commit | df60f9c64576d6d05b59ec5c34addcd61ef1efb0 (patch) | |
tree | 6f024e6cd8ea07169e39a68ade6c953842389271 /CREDITS | |
parent | 673b2fe6ff1da29d9e70bd484903964772dcae3d (diff) | |
download | linux-df60f9c64576d6d05b59ec5c34addcd61ef1efb0.tar.gz linux-df60f9c64576d6d05b59ec5c34addcd61ef1efb0.tar.bz2 linux-df60f9c64576d6d05b59ec5c34addcd61ef1efb0.zip |
scsi: ata: libata: Add ATA feature control sub-page translation
Add support for the ATA feature control sub-page of the control mode page
to enable/disable the command duration limits feature using the cdl_ctrl
field of the ATA feature control sub-page.
Both mode sense and mode select translation are supported. For mode sense,
the ata device flag ATA_DFLAG_CDL_ENABLED is used to cache the status of
the command duration limits feature. Enabling this feature is done using a
SET FEATURES command with a cdl action set to 1 when the page cdl_ctrl
field value is 0x2 (T2A and T2B pages supported). If this field is 0, CDL
is disabled using the SET FEATURES command with a cdl action set to 0.
Since a device CDL and NCQ priority features should not be used
simultaneously, ata_mselect_control_ata_feature() returns an error when
attempting to enable CDL with the device priority feature enabled.
Conversely, the function ata_ncq_prio_enable_store() used to enable the use
of the device NCQ priority feature through sysfs is modified to return an
error if the device CDL feature is enabled.
Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Co-developed-by: Niklas Cassel <niklas.cassel@wdc.com>
Signed-off-by: Niklas Cassel <niklas.cassel@wdc.com>
Link: https://lore.kernel.org/r/20230511011356.227789-18-nks@flawful.org
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'CREDITS')
0 files changed, 0 insertions, 0 deletions