Introduce the function scsi_cdl_check() to detect if a device supports command duration limits (CDL). Support for the READ 16, WRITE 16, READ 32 and WRITE 32 commands are checked using the function scsi_report_opcode() to probe the rwcdlp and cdlp bits as they indicate the mode page defining the command duration limits descriptors that apply to the command being tested. If any of these commands support CDL, the field cdl_supported of struct scsi_device is set to 1 to indicate that the device supports CDL. Support for CDL for a device is advertizes through sysfs using the new cdl_supported device attribute. This attribute value is 1 for a device supporting CDL and 0 otherwise. 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-9-nks@flawful.org Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
107 lines
3.7 KiB
Plaintext
107 lines
3.7 KiB
Plaintext
What: /sys/block/*/device/sw_activity
|
|
Date: Jun, 2008
|
|
KernelVersion: v2.6.27
|
|
Contact: linux-ide@vger.kernel.org
|
|
Description:
|
|
(RW) Used by drivers which support software controlled activity
|
|
LEDs.
|
|
|
|
It has the following valid values:
|
|
|
|
== ========================================================
|
|
0 OFF - the LED is not activated on activity
|
|
1 BLINK_ON - the LED blinks on every 10ms when activity is
|
|
detected.
|
|
2 BLINK_OFF - the LED is on when idle, and blinks off
|
|
every 10ms when activity is detected.
|
|
== ========================================================
|
|
|
|
Note that the user must turn sw_activity OFF it they wish to
|
|
control the activity LED via the em_message file.
|
|
|
|
|
|
What: /sys/block/*/device/unload_heads
|
|
Date: Sep, 2008
|
|
KernelVersion: v2.6.28
|
|
Contact: linux-ide@vger.kernel.org
|
|
Description:
|
|
(RW) Hard disk shock protection
|
|
|
|
Writing an integer value to this file will take the heads of the
|
|
respective drive off the platter and block all I/O operations
|
|
for the specified number of milliseconds.
|
|
|
|
- If the device does not support the unload heads feature,
|
|
access is denied with -EOPNOTSUPP.
|
|
- The maximal value accepted for a timeout is 30000
|
|
milliseconds.
|
|
- A previously set timeout can be cancelled and disk can resume
|
|
normal operation immediately by specifying a timeout of 0.
|
|
- Some hard drives only comply with an earlier version of the
|
|
ATA standard, but support the unload feature nonetheless.
|
|
There is no safe way Linux can detect these devices, so this
|
|
is not enabled by default. If it is known that your device
|
|
does support the unload feature, then you can tell the kernel
|
|
to enable it by writing -1. It can be disabled again by
|
|
writing -2.
|
|
- Values below -2 are rejected with -EINVAL
|
|
|
|
For more information, see
|
|
Documentation/admin-guide/laptops/disk-shock-protection.rst
|
|
|
|
|
|
What: /sys/block/*/device/ncq_prio_enable
|
|
Date: Oct, 2016
|
|
KernelVersion: v4.10
|
|
Contact: linux-ide@vger.kernel.org
|
|
Description:
|
|
(RW) Write to the file to turn on or off the SATA NCQ (native
|
|
command queueing) priority support. By default this feature is
|
|
turned off. If the device does not support the SATA NCQ
|
|
priority feature, writing "1" to this file results in an error
|
|
(see ncq_prio_supported).
|
|
|
|
|
|
What: /sys/block/*/device/sas_ncq_prio_enable
|
|
Date: Oct, 2016
|
|
KernelVersion: v4.10
|
|
Contact: linux-ide@vger.kernel.org
|
|
Description:
|
|
(RW) This is the equivalent of the ncq_prio_enable attribute
|
|
file for SATA devices connected to a SAS host-bus-adapter
|
|
(HBA) implementing support for the SATA NCQ priority feature.
|
|
This file does not exist if the HBA driver does not implement
|
|
support for the SATA NCQ priority feature, regardless of the
|
|
device support for this feature (see sas_ncq_prio_supported).
|
|
|
|
|
|
What: /sys/block/*/device/ncq_prio_supported
|
|
Date: Aug, 2021
|
|
KernelVersion: v5.15
|
|
Contact: linux-ide@vger.kernel.org
|
|
Description:
|
|
(RO) Indicates if the device supports the SATA NCQ (native
|
|
command queueing) priority feature.
|
|
|
|
|
|
What: /sys/block/*/device/sas_ncq_prio_supported
|
|
Date: Aug, 2021
|
|
KernelVersion: v5.15
|
|
Contact: linux-ide@vger.kernel.org
|
|
Description:
|
|
(RO) This is the equivalent of the ncq_prio_supported attribute
|
|
file for SATA devices connected to a SAS host-bus-adapter
|
|
(HBA) implementing support for the SATA NCQ priority feature.
|
|
This file does not exist if the HBA driver does not implement
|
|
support for the SATA NCQ priority feature, regardless of the
|
|
device support for this feature.
|
|
|
|
|
|
What: /sys/block/*/device/cdl_supported
|
|
Date: May, 2023
|
|
KernelVersion: v6.5
|
|
Contact: linux-scsi@vger.kernel.org
|
|
Description:
|
|
(RO) Indicates if the device supports the command duration
|
|
limits feature found in some ATA and SCSI devices.
|