2018-03-20 16:07:38 +03:00
What: /sys/bus/*/drivers/ufshcd/*/auto_hibern8
Date: March 2018
Contact: linux-scsi@vger.kernel.org
Description:
This file contains the auto-hibernate idle timer setting of a
UFS host controller. A value of '0' means auto-hibernate is not
enabled. Otherwise the value is the number of microseconds of
idle time before the UFS host controller will autonomously put
the link into hibernate state. That will save power at the
expense of increased latency. Note that the hardware supports
10-bit values with a power-of-ten multiplier which allows a
maximum value of 102300000. Refer to the UFS Host Controller
Interface specification for more details.
2018-02-15 15:14:02 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_type
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/device_type
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the device type. This is one of the UFS
device descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_class
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/device_class
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the device class. This is one of the UFS
device descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_sub_class
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/device_sub_class
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the UFS storage subclass. This is one of
the UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/protocol
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/protocol
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the protocol supported by an UFS device.
This is one of the UFS device descriptor parameters.
The full information about the descriptor could be found
at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_luns
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/number_of_luns
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows number of logical units. This is one of
the UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_wluns
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/number_of_wluns
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows number of well known logical units.
This is one of the UFS device descriptor parameters.
The full information about the descriptor could be found
at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/boot_enable
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/boot_enable
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows value that indicates whether the device is
enabled for boot. This is one of the UFS device descriptor
parameters. The full information about the descriptor could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/descriptor_access_enable
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/descriptor_access_enable
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows value that indicates whether the device
descriptor could be read after partial initialization phase
of the boot sequence. This is one of the UFS device descriptor
parameters. The full information about the descriptor could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/initial_power_mode
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/initial_power_mode
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows value that defines the power mode after
device initialization or hardware reset. This is one of
the UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/high_priority_lun
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/high_priority_lun
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the high priority lun. This is one of
the UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/secure_removal_type
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/secure_removal_type
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the secure removal type. This is one of
the UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/support_security_lun
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/support_security_lun
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether the security lun is supported.
This is one of the UFS device descriptor parameters.
The full information about the descriptor could be found
at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/bkops_termination_latency
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/bkops_termination_latency
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the background operations termination
latency. This is one of the UFS device descriptor parameters.
The full information about the descriptor could be found
at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/initial_active_icc_level
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/initial_active_icc_level
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the initial active ICC level. This is one
of the UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/specification_version
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/specification_version
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the specification version. This is one
of the UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/manufacturing_date
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/manufacturing_date
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the manufacturing date in BCD format.
This is one of the UFS device descriptor parameters.
The full information about the descriptor could be found
at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/manufacturer_id
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/manufacturer_id
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
docs: typo fixes in Documentation/ABI/
Fix the following typos in the Documentation/ABI/ directory:
- In file obsolete/sysfs-cpuidle, change "obselete" for "obsolete".
- In file removed/sysfs-kernel-uids, change "propotional" for "proportional".
- In directory stable/, fix the following words: "associtated" for "associated",
"hexidecimal" for "hexadecimal", "vlue" for "value", "csed" for "caused" and
"wrtie" for "write". This updates a total of five files.
- In directory testing/, fix the following words: "subystem" for "subsystem",
"isochrnous" for "isochronous", "Desctiptors" for "Descriptors", "picutre" for
"picture", "capture" for "capture", "occured" for "ocurred", "connnected" for
"connected","agressively" for "aggressively","manufacturee" for "manufacturer"
and "transaction" for "transaction", "malformatted" for "incorrectly formated"
,"internel" for "internal", "writtento" for "written to", "specificed" for
"specified", "beyound" for "beyond", "Symetric" for "Symmetric". This updates
a total of eleven files.
Signed-off-by: Carlos Bilbao <bilbao@vt.edu>
Reviewed-by: Randy Dunlap <rdunlap@infradead.org>
Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/5710038.lOV4Wx5bFT@iron-maiden
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-05-13 16:31:10 +03:00
Description: This file shows the manufacturer ID. This is one of the
2018-02-15 15:14:02 +03:00
UFS device descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/rtt_capability
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/rtt_capability
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum number of outstanding RTTs
supported by the device. This is one of the UFS device
descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/rtc_update
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/rtc_update
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the frequency and method of the realtime
clock update. This is one of the UFS device descriptor
parameters. The full information about the descriptor
could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/ufs_features
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/ufs_features
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows which features are supported by the device.
This is one of the UFS device descriptor parameters.
The full information about the descriptor could be
found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/ffu_timeout
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/ffu_timeout
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the FFU timeout. This is one of the
UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/queue_depth
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/queue_depth
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the device queue depth. This is one of the
UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_version
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/device_version
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the device version. This is one of the
UFS device descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_secure_wpa
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/number_of_secure_wpa
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows number of secure write protect areas
supported by the device. This is one of the UFS device
descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/psa_max_data_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/psa_max_data_size
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum amount of data that may be
written during the pre-soldering phase of the PSA flow.
This is one of the UFS device descriptor parameters.
The full information about the descriptor could be found
at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/psa_state_timeout
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/psa_state_timeout
2018-02-15 15:14:02 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the command maximum timeout for a change
in PSA state. This is one of the UFS device descriptor
parameters. The full information about the descriptor could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:02 +03:00
The file is read only.
2018-02-15 15:14:03 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/unipro_version
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/interconnect_descriptor/unipro_version
2018-02-15 15:14:03 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the MIPI UniPro version number in BCD format.
This is one of the UFS interconnect descriptor parameters.
The full information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:03 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/mphy_version
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/interconnect_descriptor/mphy_version
2018-02-15 15:14:03 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the MIPI M-PHY version number in BCD format.
This is one of the UFS interconnect descriptor parameters.
The full information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:03 +03:00
The file is read only.
2018-02-15 15:14:04 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/raw_device_capacity
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/raw_device_capacity
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the total memory quantity available to
the user to configure the device logical units. This is one
of the UFS geometry descriptor parameters. The full
information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_number_of_luns
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/max_number_of_luns
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum number of logical units
supported by the UFS device. This is one of the UFS
geometry descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/segment_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/segment_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the segment size. This is one of the UFS
geometry descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/allocation_unit_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/allocation_unit_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the allocation unit size. This is one of
the UFS geometry descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/min_addressable_block_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/min_addressable_block_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the minimum addressable block size. This
is one of the UFS geometry descriptor parameters. The full
information about the descriptor could be found at UFS
specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/optimal_read_block_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/optimal_read_block_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the optimal read block size. This is one
of the UFS geometry descriptor parameters. The full
information about the descriptor could be found at UFS
specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/optimal_write_block_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/optimal_write_block_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the optimal write block size. This is one
of the UFS geometry descriptor parameters. The full
information about the descriptor could be found at UFS
specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_in_buffer_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/max_in_buffer_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum data-in buffer size. This
is one of the UFS geometry descriptor parameters. The full
information about the descriptor could be found at UFS
specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_out_buffer_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/max_out_buffer_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum data-out buffer size. This
is one of the UFS geometry descriptor parameters. The full
information about the descriptor could be found at UFS
specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/rpmb_rw_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/rpmb_rw_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum number of RPMB frames allowed
in Security Protocol In/Out. This is one of the UFS geometry
descriptor parameters. The full information about the
descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/dyn_capacity_resource_policy
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/dyn_capacity_resource_policy
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the dynamic capacity resource policy. This
is one of the UFS geometry descriptor parameters. The full
information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/data_ordering
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/data_ordering
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows support for out-of-order data transfer.
This is one of the UFS geometry descriptor parameters.
The full information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_number_of_contexts
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/max_number_of_contexts
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows maximum available number of contexts which
are supported by the device. This is one of the UFS geometry
descriptor parameters. The full information about the
descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/sys_data_tag_unit_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/sys_data_tag_unit_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows system data tag unit size. This is one of
the UFS geometry descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/sys_data_tag_resource_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/sys_data_tag_resource_size
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows maximum storage area size allocated by
the device to handle system data by the tagging mechanism.
This is one of the UFS geometry descriptor parameters.
The full information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/secure_removal_types
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/secure_removal_types
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows supported secure removal types. This is
one of the UFS geometry descriptor parameters. The full
information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/memory_types
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/memory_types
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows supported memory types. This is one of
the UFS geometry descriptor parameters. The full
information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/*_memory_max_alloc_units
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/*_memory_max_alloc_units
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum number of allocation units for
different memory types (system code, non persistent,
enhanced type 1-4). This is one of the UFS geometry
descriptor parameters. The full information about the
descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/*_memory_capacity_adjustment_factor
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/*_memory_capacity_adjustment_factor
2018-02-15 15:14:04 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the memory capacity adjustment factor for
different memory types (system code, non persistent,
enhanced type 1-4). This is one of the UFS geometry
descriptor parameters. The full information about the
descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:04 +03:00
The file is read only.
2018-02-15 15:14:05 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/health_descriptor/eol_info
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/health_descriptor/eol_info
2018-02-15 15:14:05 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows preend of life information. This is one
of the UFS health descriptor parameters. The full
information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:05 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/health_descriptor/life_time_estimation_a
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/health_descriptor/life_time_estimation_a
2018-02-15 15:14:05 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows indication of the device life time
(method a). This is one of the UFS health descriptor
parameters. The full information about the descriptor
could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:05 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/health_descriptor/life_time_estimation_b
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/health_descriptor/life_time_estimation_b
2018-02-15 15:14:05 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows indication of the device life time
(method b). This is one of the UFS health descriptor
parameters. The full information about the descriptor
could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:05 +03:00
The file is read only.
2018-02-15 15:14:06 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/power_descriptor/active_icc_levels_vcc*
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/power_descriptor/active_icc_levels_vcc*
2018-02-15 15:14:06 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows maximum VCC, VCCQ and VCCQ2 value for
active ICC levels from 0 to 15. This is one of the UFS
power descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:06 +03:00
The file is read only.
2018-02-15 15:14:07 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/manufacturer_name
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/string_descriptors/manufacturer_name
2018-02-15 15:14:07 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
docs: typo fixes in Documentation/ABI/
Fix the following typos in the Documentation/ABI/ directory:
- In file obsolete/sysfs-cpuidle, change "obselete" for "obsolete".
- In file removed/sysfs-kernel-uids, change "propotional" for "proportional".
- In directory stable/, fix the following words: "associtated" for "associated",
"hexidecimal" for "hexadecimal", "vlue" for "value", "csed" for "caused" and
"wrtie" for "write". This updates a total of five files.
- In directory testing/, fix the following words: "subystem" for "subsystem",
"isochrnous" for "isochronous", "Desctiptors" for "Descriptors", "picutre" for
"picture", "capture" for "capture", "occured" for "ocurred", "connnected" for
"connected","agressively" for "aggressively","manufacturee" for "manufacturer"
and "transaction" for "transaction", "malformatted" for "incorrectly formated"
,"internel" for "internal", "writtento" for "written to", "specificed" for
"specified", "beyound" for "beyond", "Symetric" for "Symmetric". This updates
a total of eleven files.
Signed-off-by: Carlos Bilbao <bilbao@vt.edu>
Reviewed-by: Randy Dunlap <rdunlap@infradead.org>
Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/5710038.lOV4Wx5bFT@iron-maiden
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2021-05-13 16:31:10 +03:00
Description: This file contains a device manufacturer name string.
2018-02-15 15:14:07 +03:00
The full information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:07 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/product_name
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/string_descriptors/product_name
2018-02-15 15:14:07 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file contains a product name string. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:07 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/oem_id
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/string_descriptors/oem_id
2018-02-15 15:14:07 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file contains a OEM ID string. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:07 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/serial_number
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/string_descriptors/serial_number
2018-02-15 15:14:07 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file contains a device serial number string. The full
information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:07 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/product_revision
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/string_descriptors/product_revision
2018-02-15 15:14:07 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file contains a product revision string. The full
information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:07 +03:00
The file is read only.
2018-02-15 15:14:09 +03:00
What: /sys/class/scsi_device/*/device/unit_descriptor/boot_lun_id
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows boot LUN information. This is one of
the UFS unit descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/lun_write_protect
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows LUN write protection status. This is one of
the UFS unit descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/lun_queue_depth
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows LUN queue depth. This is one of the UFS
unit descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/psa_sensitive
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows PSA sensitivity. This is one of the UFS
unit descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/lun_memory_type
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows LUN memory type. This is one of the UFS
unit descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/data_reliability
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file defines the device behavior when a power failure
occurs during a write operation. This is one of the UFS
unit descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/logical_block_size
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the size of addressable logical blocks
(calculated as an exponent with base 2). This is one of
the UFS unit descriptor parameters. The full information about
the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/logical_block_count
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows total number of addressable logical blocks.
This is one of the UFS unit descriptor parameters. The full
information about the descriptor could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/erase_block_size
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the erase block size. This is one of
the UFS unit descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/provisioning_type
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the thin provisioning type. This is one of
the UFS unit descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/physical_memory_resourse_count
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the total physical memory resources. This is
one of the UFS unit descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/context_capabilities
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the context capabilities. This is one of
the UFS unit descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/large_unit_granularity
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the granularity of the LUN. This is one of
the UFS unit descriptor parameters. The full information
about the descriptor could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:09 +03:00
The file is read only.
2018-02-15 15:14:10 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/flags/device_init
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/device_init
2018-02-15 15:14:10 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the device init status. The full information
about the flag could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:10 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/permanent_wpe
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/permanent_wpe
2018-02-15 15:14:10 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether permanent write protection is enabled.
The full information about the flag could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:10 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/power_on_wpe
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/power_on_wpe
2018-02-15 15:14:10 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether write protection is enabled on all
logical units configured as power on write protected. The
full information about the flag could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:10 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/bkops_enable
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/bkops_enable
2018-02-15 15:14:10 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether the device background operations are
enabled. The full information about the flag could be
found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:10 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/life_span_mode_enable
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/life_span_mode_enable
2018-02-15 15:14:10 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether the device life span mode is enabled.
The full information about the flag could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:10 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/phy_resource_removal
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/phy_resource_removal
2018-02-15 15:14:10 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether physical resource removal is enable.
The full information about the flag could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:10 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/busy_rtc
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/busy_rtc
2018-02-15 15:14:10 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether the device is executing internal
operation related to real time clock. The full information
about the flag could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:10 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/disable_fw_update
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/disable_fw_update
2018-02-15 15:14:10 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether the device FW update is permanently
disabled. The full information about the flag could be found
at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:10 +03:00
The file is read only.
2018-02-15 15:14:11 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/attributes/boot_lun_enabled
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/boot_lun_enabled
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the boot lun enabled UFS device attribute.
The full information about the attribute could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/current_power_mode
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/current_power_mode
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the current power mode UFS device attribute.
The full information about the attribute could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/active_icc_level
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/active_icc_level
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the active icc level UFS device attribute.
The full information about the attribute could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/ooo_data_enabled
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/ooo_data_enabled
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the out of order data transfer enabled UFS
device attribute. The full information about the attribute
could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/bkops_status
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/bkops_status
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the background operations status UFS device
attribute. The full information about the attribute could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/purge_status
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/purge_status
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the purge operation status UFS device
attribute. The full information about the attribute could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_data_in_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/max_data_in_size
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum data size in a DATA IN
UPIU. The full information about the attribute could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_data_out_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/max_data_out_size
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the maximum number of bytes that can be
requested with a READY TO TRANSFER UPIU. The full information
about the attribute could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/reference_clock_frequency
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/reference_clock_frequency
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the reference clock frequency UFS device
attribute. The full information about the attribute could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/configuration_descriptor_lock
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/configuration_descriptor_lock
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows whether the configuration descriptor is locked.
The full information about the attribute could be found at
UFS specifications 2.1. The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_number_of_rtt
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/max_number_of_rtt
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the maximum current number of
outstanding RTTs in device that is allowed. The full
information about the attribute could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/exception_event_control
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/exception_event_control
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the exception event control UFS device
attribute. The full information about the attribute could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/exception_event_status
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/exception_event_status
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the exception event status UFS device
attribute. The full information about the attribute could
be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/ffu_status
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/ffu_status
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file provides the ffu status UFS device attribute.
The full information about the attribute could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/psa_state
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/psa_state
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file show the PSA feature status. The full information
about the attribute could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/psa_data_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/psa_data_size
2018-02-15 15:14:11 +03:00
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Description: This file shows the amount of data that the host plans to
load to all logical units in pre-soldering state.
The full information about the attribute could be found at
UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/dyn_cap_needed
Date: February 2018
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
2021-10-06 18:48:03 +03:00
Description: This file shows the amount of physical memory needed
2018-02-15 15:14:11 +03:00
to be removed from the physical memory resources pool of
the particular logical unit. The full information about
the attribute could be found at UFS specifications 2.1.
2020-10-30 10:40:50 +03:00
2018-02-15 15:14:11 +03:00
The file is read only.
2018-03-01 13:48:06 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/rpm_lvl
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/rpm_lvl
2018-03-01 13:48:06 +03:00
Date: September 2014
Contact: Subhash Jadavani <subhashj@codeaurora.org>
Description: This entry could be used to set or show the UFS device
runtime power management level. The current driver
2021-01-04 18:50:26 +03:00
implementation supports 7 levels with next target states:
2020-10-30 10:40:50 +03:00
== ====================================================
2021-01-04 18:50:26 +03:00
0 UFS device will stay active, UIC link will
2020-10-30 10:40:50 +03:00
stay active
2021-01-04 18:50:26 +03:00
1 UFS device will stay active, UIC link will
2020-10-30 10:40:50 +03:00
hibernate
2021-01-04 18:50:26 +03:00
2 UFS device will be moved to sleep, UIC link will
2020-10-30 10:40:50 +03:00
stay active
2021-01-04 18:50:26 +03:00
3 UFS device will be moved to sleep, UIC link will
2020-10-30 10:40:50 +03:00
hibernate
2021-01-04 18:50:26 +03:00
4 UFS device will be powered off, UIC link will
2020-10-30 10:40:50 +03:00
hibernate
2021-01-04 18:50:26 +03:00
5 UFS device will be powered off, UIC link will
2020-10-30 10:40:50 +03:00
be powered off
2021-01-04 18:50:26 +03:00
6 UFS device will be moved to deep sleep, UIC link
2021-01-11 13:22:12 +03:00
will be powered off. Note, deep sleep might not be
supported in which case this value will not be
accepted
2020-10-30 10:40:50 +03:00
== ====================================================
2018-03-01 13:48:06 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/rpm_target_dev_state
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/rpm_target_dev_state
2018-03-01 13:48:06 +03:00
Date: February 2018
Contact: Subhash Jadavani <subhashj@codeaurora.org>
Description: This entry shows the target power mode of an UFS device
for the chosen runtime power management level.
2020-10-30 10:40:50 +03:00
2018-03-01 13:48:06 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/rpm_target_link_state
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/rpm_target_link_state
2018-03-01 13:48:06 +03:00
Date: February 2018
Contact: Subhash Jadavani <subhashj@codeaurora.org>
Description: This entry shows the target state of an UFS UIC link
for the chosen runtime power management level.
2020-10-30 10:40:50 +03:00
2018-03-01 13:48:06 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/spm_lvl
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/spm_lvl
2018-03-01 13:48:06 +03:00
Date: September 2014
Contact: Subhash Jadavani <subhashj@codeaurora.org>
Description: This entry could be used to set or show the UFS device
system power management level. The current driver
2021-01-04 18:50:26 +03:00
implementation supports 7 levels with next target states:
2020-10-30 10:40:50 +03:00
== ====================================================
2021-01-04 18:50:26 +03:00
0 UFS device will stay active, UIC link will
2020-10-30 10:40:50 +03:00
stay active
2021-01-04 18:50:26 +03:00
1 UFS device will stay active, UIC link will
2020-10-30 10:40:50 +03:00
hibernate
2021-01-04 18:50:26 +03:00
2 UFS device will be moved to sleep, UIC link will
2020-10-30 10:40:50 +03:00
stay active
2021-01-04 18:50:26 +03:00
3 UFS device will be moved to sleep, UIC link will
2020-10-30 10:40:50 +03:00
hibernate
2021-01-04 18:50:26 +03:00
4 UFS device will be powered off, UIC link will
2020-10-30 10:40:50 +03:00
hibernate
2021-01-04 18:50:26 +03:00
5 UFS device will be powered off, UIC link will
2020-10-30 10:40:50 +03:00
be powered off
2021-01-04 18:50:26 +03:00
6 UFS device will be moved to deep sleep, UIC link
2021-01-11 13:22:12 +03:00
will be powered off. Note, deep sleep might not be
supported in which case this value will not be
accepted
2020-10-30 10:40:50 +03:00
== ====================================================
2018-03-01 13:48:06 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/spm_target_dev_state
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/spm_target_dev_state
2018-03-01 13:48:06 +03:00
Date: February 2018
Contact: Subhash Jadavani <subhashj@codeaurora.org>
Description: This entry shows the target power mode of an UFS device
for the chosen system power management level.
2020-10-30 10:40:50 +03:00
2018-03-01 13:48:06 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/spm_target_link_state
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/spm_target_link_state
2018-03-01 13:48:06 +03:00
Date: February 2018
Contact: Subhash Jadavani <subhashj@codeaurora.org>
Description: This entry shows the target state of an UFS UIC link
for the chosen system power management level.
2020-10-30 10:40:50 +03:00
2018-03-01 13:48:06 +03:00
The file is read only.
2020-06-09 20:17:46 +03:00
2021-04-22 05:28:39 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/monitor/monitor_enable
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/monitor_enable
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the status of performance monitor enablement
and it can be used to start/stop the monitor. When the monitor
is stopped, the performance data collected is also cleared.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/monitor_chunk_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/monitor_chunk_size
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file tells the monitor to focus on requests transferring
data of specific chunk size (in Bytes). 0 means any chunk size.
It can only be changed when monitor is disabled.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_total_sectors
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/read_total_sectors
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows how many sectors (in 512 Bytes) have been
sent from device to host after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_total_busy
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/read_total_busy
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows how long (in micro seconds) has been spent
sending data from device to host after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_nr_requests
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/read_nr_requests
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows how many read requests have been sent after
monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_max
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/read_req_latency_max
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the maximum latency (in micro seconds) of
read requests after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_min
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/read_req_latency_min
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the minimum latency (in micro seconds) of
read requests after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_avg
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/read_req_latency_avg
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the average latency (in micro seconds) of
read requests after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_sum
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/read_req_latency_sum
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the total latency (in micro seconds) of
read requests sent after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_total_sectors
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/write_total_sectors
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows how many sectors (in 512 Bytes) have been sent
from host to device after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_total_busy
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/write_total_busy
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows how long (in micro seconds) has been spent
sending data from host to device after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_nr_requests
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/write_nr_requests
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows how many write requests have been sent after
monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_max
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/write_req_latency_max
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the maximum latency (in micro seconds) of write
requests after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_min
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/write_req_latency_min
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the minimum latency (in micro seconds) of write
requests after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_avg
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/write_req_latency_avg
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the average latency (in micro seconds) of write
requests after monitor gets started.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_sum
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/monitor/write_req_latency_sum
2021-04-22 05:28:39 +03:00
Date: January 2021
Contact: Can Guo <cang@codeaurora.org>
Description: This file shows the total latency (in micro seconds) of write
requests after monitor gets started.
The file is read only.
2020-06-09 20:17:46 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_presv_us_en
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/wb_presv_us_en
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows if preserve user-space was configured
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_shared_alloc_units
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/wb_shared_alloc_units
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the shared allocated units of WB buffer
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_type
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/wb_type
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the configured WB type.
0x1 for shared buffer mode. 0x0 for dedicated buffer mode.
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_buff_cap_adj
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_buff_cap_adj
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the total user-space decrease in shared
buffer mode.
The value of this parameter is 3 for TLC NAND when SLC mode
is used as WriteBooster Buffer. 2 for MLC NAND.
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_alloc_units
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_max_alloc_units
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the Maximum total WriteBooster Buffer size
which is supported by the entire device.
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_wb_luns
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_max_wb_luns
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the maximum number of luns that can support
WriteBooster.
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_red_type
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_sup_red_type
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: The supportability of user space reduction mode
and preserve user space mode.
00h: WriteBooster Buffer can be configured only in
user space reduction type.
01h: WriteBooster Buffer can be configured only in
preserve user space type.
02h: Device can be configured in either user space
reduction type or preserve user space type.
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_wb_type
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_sup_wb_type
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: The supportability of WriteBooster Buffer type.
2020-10-30 10:40:50 +03:00
=== ==========================================================
00h LU based WriteBooster Buffer configuration
01h Single shared WriteBooster Buffer configuration
02h Supporting both LU based WriteBooster.
Buffer and Single shared WriteBooster Buffer configuration
=== ==========================================================
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_enable
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/wb_enable
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the status of WriteBooster.
2020-10-30 10:40:50 +03:00
== ============================
0 WriteBooster is not enabled.
1 WriteBooster is enabled
== ============================
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_en
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/wb_flush_en
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows if flush is enabled.
2020-10-30 10:40:50 +03:00
== =================================
0 Flush operation is not performed.
1 Flush operation is performed.
== =================================
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_during_h8
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/wb_flush_during_h8
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: Flush WriteBooster Buffer during hibernate state.
2020-10-30 10:40:50 +03:00
== =================================================
0 Device is not allowed to flush the
WriteBooster Buffer during link hibernate state.
1 Device is allowed to flush the
WriteBooster Buffer during link hibernate state.
== =================================================
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_avail_buf
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/wb_avail_buf
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the amount of unused WriteBooster buffer
available.
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_cur_buf
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/wb_cur_buf
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the amount of unused current buffer.
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_flush_status
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/wb_flush_status
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the flush operation status.
2020-10-30 10:40:50 +03:00
=== ======================================
00h idle
01h Flush operation in progress
02h Flush operation stopped prematurely.
03h Flush operation completed successfully
04h Flush operation general failure
=== ======================================
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_life_time_est
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/wb_life_time_est
2020-06-09 20:17:46 +03:00
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows an indication of the WriteBooster Buffer
lifetime based on the amount of performed program/erase cycles
2020-10-30 10:40:50 +03:00
=== =============================================
01h 0% - 10% WriteBooster Buffer life time used
2020-06-09 20:17:46 +03:00
...
2020-10-30 10:40:50 +03:00
0Ah 90% - 100% WriteBooster Buffer life time used
=== =============================================
2020-06-09 20:17:46 +03:00
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/wb_buf_alloc_units
Date: June 2020
Contact: Asutosh Das <asutoshd@codeaurora.org>
Description: This entry shows the configured size of WriteBooster buffer.
0400h corresponds to 4GB.
2020-10-30 10:40:50 +03:00
2020-06-09 20:17:46 +03:00
The file is read only.
2021-01-19 19:38:43 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/wb_on
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/wb_on
2021-01-19 19:38:43 +03:00
Date: January 2021
Contact: Bean Huo <beanhuo@micron.com>
Description: This node is used to set or display whether UFS WriteBooster is
enabled. Echo 0 to this file to disable UFS WriteBooster or 1 to
enable it. The WriteBooster is enabled after power-on/reset,
however, it will be disabled/enable while CLK scaling down/up
(if the platform supports UFSHCD_CAP_CLK_SCALING). For a
platform that doesn't support UFSHCD_CAP_CLK_SCALING, we can
disable/enable WriteBooster through this sysfs node.
scsi: ufs: ufshpb: Introduce Host Performance Buffer feature
Implement Host Performance Buffer (HPB) initialization and add function
calls to UFS core driver.
NAND flash-based storage devices, including UFS, have mechanisms to
translate logical addresses of I/O requests to the corresponding physical
addresses of the flash storage. In UFS, logical-to-physical-address (L2P)
map data, which is required to identify the physical address for the
requested I/Os, can only be partially stored in SRAM from NAND flash. Due
to this partial loading, accessing the flash address area, where the L2P
information for that address is not loaded in the SRAM, can result in
serious performance degradation.
The basic concept of HPB is to cache L2P mapping entries in host system
memory so that both physical block address (PBA) and logical block address
(LBA) can be delivered in HPB read command. The HPB read command allows to
read data faster than a regular read command in UFS since it provides the
physical address (HPB Entry) of the desired logical block in addition to
its logical address. The UFS device can access the physical block in NAND
directly without searching and uploading L2P mapping table. This improves
read performance because the NAND read operation for uploading L2P mapping
table is removed.
In HPB initialization, the host checks if the UFS device supports HPB
feature and retrieves related device capabilities. Then, HPB parameters are
configured in the device.
Total start-up time of popular applications was measured and the difference
observed between HPB being enabled and disabled. Popular applications are
12 game apps and 24 non-game apps. Each test cycle consists of running 36
applications in sequence. We repeated the cycle for observing performance
improvement by L2P mapping cache hit in HPB.
The following is the test environment:
- kernel version: 4.4.0
- RAM: 8GB
- UFS 2.1 (64GB)
Results:
+-------+----------+----------+-------+
| cycle | baseline | with HPB | diff |
+-------+----------+----------+-------+
| 1 | 272.4 | 264.9 | -7.5 |
| 2 | 250.4 | 248.2 | -2.2 |
| 3 | 226.2 | 215.6 | -10.6 |
| 4 | 230.6 | 214.8 | -15.8 |
| 5 | 232.0 | 218.1 | -13.9 |
| 6 | 231.9 | 212.6 | -19.3 |
+-------+----------+----------+-------+
We also measured HPB performance using iozone:
$ iozone -r 4k -+n -i2 -ecI -t 16 -l 16 -u 16 -s $IO_RANGE/16 -F \
mnt/tmp_1 mnt/tmp_2 mnt/tmp_3 mnt/tmp_4 mnt/tmp_5 mnt/tmp_6 mnt/tmp_7 \
mnt/tmp_8 mnt/tmp_9 mnt/tmp_10 mnt/tmp_11 mnt/tmp_12 mnt/tmp_13 \
mnt/tmp_14 mnt/tmp_15 mnt/tmp_16
Results:
+----------+--------+---------+
| IO range | HPB on | HPB off |
+----------+--------+---------+
| 1 GB | 294.8 | 300.87 |
| 4 GB | 293.51 | 179.35 |
| 8 GB | 294.85 | 162.52 |
| 16 GB | 293.45 | 156.26 |
| 32 GB | 277.4 | 153.25 |
+----------+--------+---------+
Link: https://lore.kernel.org/r/20210712085830epcms2p8c1288b7f7a81b044158a18232617b572@epcms2p8
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Bean Huo <beanhuo@micron.com>
Tested-by: Can Guo <cang@codeaurora.org>
Tested-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Can Guo <cang@codeaurora.org>
Reviewed-by: Bean Huo <beanhuo@micron.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Daejun Park <daejun7.park@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-07-12 11:58:30 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_version
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/hpb_version
scsi: ufs: ufshpb: Introduce Host Performance Buffer feature
Implement Host Performance Buffer (HPB) initialization and add function
calls to UFS core driver.
NAND flash-based storage devices, including UFS, have mechanisms to
translate logical addresses of I/O requests to the corresponding physical
addresses of the flash storage. In UFS, logical-to-physical-address (L2P)
map data, which is required to identify the physical address for the
requested I/Os, can only be partially stored in SRAM from NAND flash. Due
to this partial loading, accessing the flash address area, where the L2P
information for that address is not loaded in the SRAM, can result in
serious performance degradation.
The basic concept of HPB is to cache L2P mapping entries in host system
memory so that both physical block address (PBA) and logical block address
(LBA) can be delivered in HPB read command. The HPB read command allows to
read data faster than a regular read command in UFS since it provides the
physical address (HPB Entry) of the desired logical block in addition to
its logical address. The UFS device can access the physical block in NAND
directly without searching and uploading L2P mapping table. This improves
read performance because the NAND read operation for uploading L2P mapping
table is removed.
In HPB initialization, the host checks if the UFS device supports HPB
feature and retrieves related device capabilities. Then, HPB parameters are
configured in the device.
Total start-up time of popular applications was measured and the difference
observed between HPB being enabled and disabled. Popular applications are
12 game apps and 24 non-game apps. Each test cycle consists of running 36
applications in sequence. We repeated the cycle for observing performance
improvement by L2P mapping cache hit in HPB.
The following is the test environment:
- kernel version: 4.4.0
- RAM: 8GB
- UFS 2.1 (64GB)
Results:
+-------+----------+----------+-------+
| cycle | baseline | with HPB | diff |
+-------+----------+----------+-------+
| 1 | 272.4 | 264.9 | -7.5 |
| 2 | 250.4 | 248.2 | -2.2 |
| 3 | 226.2 | 215.6 | -10.6 |
| 4 | 230.6 | 214.8 | -15.8 |
| 5 | 232.0 | 218.1 | -13.9 |
| 6 | 231.9 | 212.6 | -19.3 |
+-------+----------+----------+-------+
We also measured HPB performance using iozone:
$ iozone -r 4k -+n -i2 -ecI -t 16 -l 16 -u 16 -s $IO_RANGE/16 -F \
mnt/tmp_1 mnt/tmp_2 mnt/tmp_3 mnt/tmp_4 mnt/tmp_5 mnt/tmp_6 mnt/tmp_7 \
mnt/tmp_8 mnt/tmp_9 mnt/tmp_10 mnt/tmp_11 mnt/tmp_12 mnt/tmp_13 \
mnt/tmp_14 mnt/tmp_15 mnt/tmp_16
Results:
+----------+--------+---------+
| IO range | HPB on | HPB off |
+----------+--------+---------+
| 1 GB | 294.8 | 300.87 |
| 4 GB | 293.51 | 179.35 |
| 8 GB | 294.85 | 162.52 |
| 16 GB | 293.45 | 156.26 |
| 32 GB | 277.4 | 153.25 |
+----------+--------+---------+
Link: https://lore.kernel.org/r/20210712085830epcms2p8c1288b7f7a81b044158a18232617b572@epcms2p8
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Bean Huo <beanhuo@micron.com>
Tested-by: Can Guo <cang@codeaurora.org>
Tested-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Can Guo <cang@codeaurora.org>
Reviewed-by: Bean Huo <beanhuo@micron.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Daejun Park <daejun7.park@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-07-12 11:58:30 +03:00
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the HPB specification version.
The full information about the descriptor can be found in the UFS
HPB (Host Performance Booster) Extension specifications.
Example: version 1.2.3 = 0123h
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_control
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/device_descriptor/hpb_control
scsi: ufs: ufshpb: Introduce Host Performance Buffer feature
Implement Host Performance Buffer (HPB) initialization and add function
calls to UFS core driver.
NAND flash-based storage devices, including UFS, have mechanisms to
translate logical addresses of I/O requests to the corresponding physical
addresses of the flash storage. In UFS, logical-to-physical-address (L2P)
map data, which is required to identify the physical address for the
requested I/Os, can only be partially stored in SRAM from NAND flash. Due
to this partial loading, accessing the flash address area, where the L2P
information for that address is not loaded in the SRAM, can result in
serious performance degradation.
The basic concept of HPB is to cache L2P mapping entries in host system
memory so that both physical block address (PBA) and logical block address
(LBA) can be delivered in HPB read command. The HPB read command allows to
read data faster than a regular read command in UFS since it provides the
physical address (HPB Entry) of the desired logical block in addition to
its logical address. The UFS device can access the physical block in NAND
directly without searching and uploading L2P mapping table. This improves
read performance because the NAND read operation for uploading L2P mapping
table is removed.
In HPB initialization, the host checks if the UFS device supports HPB
feature and retrieves related device capabilities. Then, HPB parameters are
configured in the device.
Total start-up time of popular applications was measured and the difference
observed between HPB being enabled and disabled. Popular applications are
12 game apps and 24 non-game apps. Each test cycle consists of running 36
applications in sequence. We repeated the cycle for observing performance
improvement by L2P mapping cache hit in HPB.
The following is the test environment:
- kernel version: 4.4.0
- RAM: 8GB
- UFS 2.1 (64GB)
Results:
+-------+----------+----------+-------+
| cycle | baseline | with HPB | diff |
+-------+----------+----------+-------+
| 1 | 272.4 | 264.9 | -7.5 |
| 2 | 250.4 | 248.2 | -2.2 |
| 3 | 226.2 | 215.6 | -10.6 |
| 4 | 230.6 | 214.8 | -15.8 |
| 5 | 232.0 | 218.1 | -13.9 |
| 6 | 231.9 | 212.6 | -19.3 |
+-------+----------+----------+-------+
We also measured HPB performance using iozone:
$ iozone -r 4k -+n -i2 -ecI -t 16 -l 16 -u 16 -s $IO_RANGE/16 -F \
mnt/tmp_1 mnt/tmp_2 mnt/tmp_3 mnt/tmp_4 mnt/tmp_5 mnt/tmp_6 mnt/tmp_7 \
mnt/tmp_8 mnt/tmp_9 mnt/tmp_10 mnt/tmp_11 mnt/tmp_12 mnt/tmp_13 \
mnt/tmp_14 mnt/tmp_15 mnt/tmp_16
Results:
+----------+--------+---------+
| IO range | HPB on | HPB off |
+----------+--------+---------+
| 1 GB | 294.8 | 300.87 |
| 4 GB | 293.51 | 179.35 |
| 8 GB | 294.85 | 162.52 |
| 16 GB | 293.45 | 156.26 |
| 32 GB | 277.4 | 153.25 |
+----------+--------+---------+
Link: https://lore.kernel.org/r/20210712085830epcms2p8c1288b7f7a81b044158a18232617b572@epcms2p8
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Bean Huo <beanhuo@micron.com>
Tested-by: Can Guo <cang@codeaurora.org>
Tested-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Can Guo <cang@codeaurora.org>
Reviewed-by: Bean Huo <beanhuo@micron.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Daejun Park <daejun7.park@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-07-12 11:58:30 +03:00
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows an indication of the HPB control mode.
00h: Host control mode
01h: Device control mode
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_region_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_region_size
scsi: ufs: ufshpb: Introduce Host Performance Buffer feature
Implement Host Performance Buffer (HPB) initialization and add function
calls to UFS core driver.
NAND flash-based storage devices, including UFS, have mechanisms to
translate logical addresses of I/O requests to the corresponding physical
addresses of the flash storage. In UFS, logical-to-physical-address (L2P)
map data, which is required to identify the physical address for the
requested I/Os, can only be partially stored in SRAM from NAND flash. Due
to this partial loading, accessing the flash address area, where the L2P
information for that address is not loaded in the SRAM, can result in
serious performance degradation.
The basic concept of HPB is to cache L2P mapping entries in host system
memory so that both physical block address (PBA) and logical block address
(LBA) can be delivered in HPB read command. The HPB read command allows to
read data faster than a regular read command in UFS since it provides the
physical address (HPB Entry) of the desired logical block in addition to
its logical address. The UFS device can access the physical block in NAND
directly without searching and uploading L2P mapping table. This improves
read performance because the NAND read operation for uploading L2P mapping
table is removed.
In HPB initialization, the host checks if the UFS device supports HPB
feature and retrieves related device capabilities. Then, HPB parameters are
configured in the device.
Total start-up time of popular applications was measured and the difference
observed between HPB being enabled and disabled. Popular applications are
12 game apps and 24 non-game apps. Each test cycle consists of running 36
applications in sequence. We repeated the cycle for observing performance
improvement by L2P mapping cache hit in HPB.
The following is the test environment:
- kernel version: 4.4.0
- RAM: 8GB
- UFS 2.1 (64GB)
Results:
+-------+----------+----------+-------+
| cycle | baseline | with HPB | diff |
+-------+----------+----------+-------+
| 1 | 272.4 | 264.9 | -7.5 |
| 2 | 250.4 | 248.2 | -2.2 |
| 3 | 226.2 | 215.6 | -10.6 |
| 4 | 230.6 | 214.8 | -15.8 |
| 5 | 232.0 | 218.1 | -13.9 |
| 6 | 231.9 | 212.6 | -19.3 |
+-------+----------+----------+-------+
We also measured HPB performance using iozone:
$ iozone -r 4k -+n -i2 -ecI -t 16 -l 16 -u 16 -s $IO_RANGE/16 -F \
mnt/tmp_1 mnt/tmp_2 mnt/tmp_3 mnt/tmp_4 mnt/tmp_5 mnt/tmp_6 mnt/tmp_7 \
mnt/tmp_8 mnt/tmp_9 mnt/tmp_10 mnt/tmp_11 mnt/tmp_12 mnt/tmp_13 \
mnt/tmp_14 mnt/tmp_15 mnt/tmp_16
Results:
+----------+--------+---------+
| IO range | HPB on | HPB off |
+----------+--------+---------+
| 1 GB | 294.8 | 300.87 |
| 4 GB | 293.51 | 179.35 |
| 8 GB | 294.85 | 162.52 |
| 16 GB | 293.45 | 156.26 |
| 32 GB | 277.4 | 153.25 |
+----------+--------+---------+
Link: https://lore.kernel.org/r/20210712085830epcms2p8c1288b7f7a81b044158a18232617b572@epcms2p8
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Bean Huo <beanhuo@micron.com>
Tested-by: Can Guo <cang@codeaurora.org>
Tested-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Can Guo <cang@codeaurora.org>
Reviewed-by: Bean Huo <beanhuo@micron.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Daejun Park <daejun7.park@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-07-12 11:58:30 +03:00
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the bHPBRegionSize which can be calculated
as in the following (in bytes):
HPB Region size = 512B * 2^bHPBRegionSize
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_number_lu
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_number_lu
scsi: ufs: ufshpb: Introduce Host Performance Buffer feature
Implement Host Performance Buffer (HPB) initialization and add function
calls to UFS core driver.
NAND flash-based storage devices, including UFS, have mechanisms to
translate logical addresses of I/O requests to the corresponding physical
addresses of the flash storage. In UFS, logical-to-physical-address (L2P)
map data, which is required to identify the physical address for the
requested I/Os, can only be partially stored in SRAM from NAND flash. Due
to this partial loading, accessing the flash address area, where the L2P
information for that address is not loaded in the SRAM, can result in
serious performance degradation.
The basic concept of HPB is to cache L2P mapping entries in host system
memory so that both physical block address (PBA) and logical block address
(LBA) can be delivered in HPB read command. The HPB read command allows to
read data faster than a regular read command in UFS since it provides the
physical address (HPB Entry) of the desired logical block in addition to
its logical address. The UFS device can access the physical block in NAND
directly without searching and uploading L2P mapping table. This improves
read performance because the NAND read operation for uploading L2P mapping
table is removed.
In HPB initialization, the host checks if the UFS device supports HPB
feature and retrieves related device capabilities. Then, HPB parameters are
configured in the device.
Total start-up time of popular applications was measured and the difference
observed between HPB being enabled and disabled. Popular applications are
12 game apps and 24 non-game apps. Each test cycle consists of running 36
applications in sequence. We repeated the cycle for observing performance
improvement by L2P mapping cache hit in HPB.
The following is the test environment:
- kernel version: 4.4.0
- RAM: 8GB
- UFS 2.1 (64GB)
Results:
+-------+----------+----------+-------+
| cycle | baseline | with HPB | diff |
+-------+----------+----------+-------+
| 1 | 272.4 | 264.9 | -7.5 |
| 2 | 250.4 | 248.2 | -2.2 |
| 3 | 226.2 | 215.6 | -10.6 |
| 4 | 230.6 | 214.8 | -15.8 |
| 5 | 232.0 | 218.1 | -13.9 |
| 6 | 231.9 | 212.6 | -19.3 |
+-------+----------+----------+-------+
We also measured HPB performance using iozone:
$ iozone -r 4k -+n -i2 -ecI -t 16 -l 16 -u 16 -s $IO_RANGE/16 -F \
mnt/tmp_1 mnt/tmp_2 mnt/tmp_3 mnt/tmp_4 mnt/tmp_5 mnt/tmp_6 mnt/tmp_7 \
mnt/tmp_8 mnt/tmp_9 mnt/tmp_10 mnt/tmp_11 mnt/tmp_12 mnt/tmp_13 \
mnt/tmp_14 mnt/tmp_15 mnt/tmp_16
Results:
+----------+--------+---------+
| IO range | HPB on | HPB off |
+----------+--------+---------+
| 1 GB | 294.8 | 300.87 |
| 4 GB | 293.51 | 179.35 |
| 8 GB | 294.85 | 162.52 |
| 16 GB | 293.45 | 156.26 |
| 32 GB | 277.4 | 153.25 |
+----------+--------+---------+
Link: https://lore.kernel.org/r/20210712085830epcms2p8c1288b7f7a81b044158a18232617b572@epcms2p8
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Bean Huo <beanhuo@micron.com>
Tested-by: Can Guo <cang@codeaurora.org>
Tested-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Can Guo <cang@codeaurora.org>
Reviewed-by: Bean Huo <beanhuo@micron.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Daejun Park <daejun7.park@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-07-12 11:58:30 +03:00
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the maximum number of HPB LU supported by
the device.
00h: HPB is not supported by the device.
01h ~ 20h: Maximum number of HPB LU supported by the device
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_subregion_size
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_subregion_size
scsi: ufs: ufshpb: Introduce Host Performance Buffer feature
Implement Host Performance Buffer (HPB) initialization and add function
calls to UFS core driver.
NAND flash-based storage devices, including UFS, have mechanisms to
translate logical addresses of I/O requests to the corresponding physical
addresses of the flash storage. In UFS, logical-to-physical-address (L2P)
map data, which is required to identify the physical address for the
requested I/Os, can only be partially stored in SRAM from NAND flash. Due
to this partial loading, accessing the flash address area, where the L2P
information for that address is not loaded in the SRAM, can result in
serious performance degradation.
The basic concept of HPB is to cache L2P mapping entries in host system
memory so that both physical block address (PBA) and logical block address
(LBA) can be delivered in HPB read command. The HPB read command allows to
read data faster than a regular read command in UFS since it provides the
physical address (HPB Entry) of the desired logical block in addition to
its logical address. The UFS device can access the physical block in NAND
directly without searching and uploading L2P mapping table. This improves
read performance because the NAND read operation for uploading L2P mapping
table is removed.
In HPB initialization, the host checks if the UFS device supports HPB
feature and retrieves related device capabilities. Then, HPB parameters are
configured in the device.
Total start-up time of popular applications was measured and the difference
observed between HPB being enabled and disabled. Popular applications are
12 game apps and 24 non-game apps. Each test cycle consists of running 36
applications in sequence. We repeated the cycle for observing performance
improvement by L2P mapping cache hit in HPB.
The following is the test environment:
- kernel version: 4.4.0
- RAM: 8GB
- UFS 2.1 (64GB)
Results:
+-------+----------+----------+-------+
| cycle | baseline | with HPB | diff |
+-------+----------+----------+-------+
| 1 | 272.4 | 264.9 | -7.5 |
| 2 | 250.4 | 248.2 | -2.2 |
| 3 | 226.2 | 215.6 | -10.6 |
| 4 | 230.6 | 214.8 | -15.8 |
| 5 | 232.0 | 218.1 | -13.9 |
| 6 | 231.9 | 212.6 | -19.3 |
+-------+----------+----------+-------+
We also measured HPB performance using iozone:
$ iozone -r 4k -+n -i2 -ecI -t 16 -l 16 -u 16 -s $IO_RANGE/16 -F \
mnt/tmp_1 mnt/tmp_2 mnt/tmp_3 mnt/tmp_4 mnt/tmp_5 mnt/tmp_6 mnt/tmp_7 \
mnt/tmp_8 mnt/tmp_9 mnt/tmp_10 mnt/tmp_11 mnt/tmp_12 mnt/tmp_13 \
mnt/tmp_14 mnt/tmp_15 mnt/tmp_16
Results:
+----------+--------+---------+
| IO range | HPB on | HPB off |
+----------+--------+---------+
| 1 GB | 294.8 | 300.87 |
| 4 GB | 293.51 | 179.35 |
| 8 GB | 294.85 | 162.52 |
| 16 GB | 293.45 | 156.26 |
| 32 GB | 277.4 | 153.25 |
+----------+--------+---------+
Link: https://lore.kernel.org/r/20210712085830epcms2p8c1288b7f7a81b044158a18232617b572@epcms2p8
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Bean Huo <beanhuo@micron.com>
Tested-by: Can Guo <cang@codeaurora.org>
Tested-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Can Guo <cang@codeaurora.org>
Reviewed-by: Bean Huo <beanhuo@micron.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Daejun Park <daejun7.park@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-07-12 11:58:30 +03:00
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the bHPBSubRegionSize, which can be
calculated as in the following (in bytes) and shall be a multiple of
logical block size:
HPB Sub-Region size = 512B x 2^bHPBSubRegionSize
bHPBSubRegionSize shall not exceed bHPBRegionSize.
The file is read only.
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_max_active_regions
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_max_active_regions
scsi: ufs: ufshpb: Introduce Host Performance Buffer feature
Implement Host Performance Buffer (HPB) initialization and add function
calls to UFS core driver.
NAND flash-based storage devices, including UFS, have mechanisms to
translate logical addresses of I/O requests to the corresponding physical
addresses of the flash storage. In UFS, logical-to-physical-address (L2P)
map data, which is required to identify the physical address for the
requested I/Os, can only be partially stored in SRAM from NAND flash. Due
to this partial loading, accessing the flash address area, where the L2P
information for that address is not loaded in the SRAM, can result in
serious performance degradation.
The basic concept of HPB is to cache L2P mapping entries in host system
memory so that both physical block address (PBA) and logical block address
(LBA) can be delivered in HPB read command. The HPB read command allows to
read data faster than a regular read command in UFS since it provides the
physical address (HPB Entry) of the desired logical block in addition to
its logical address. The UFS device can access the physical block in NAND
directly without searching and uploading L2P mapping table. This improves
read performance because the NAND read operation for uploading L2P mapping
table is removed.
In HPB initialization, the host checks if the UFS device supports HPB
feature and retrieves related device capabilities. Then, HPB parameters are
configured in the device.
Total start-up time of popular applications was measured and the difference
observed between HPB being enabled and disabled. Popular applications are
12 game apps and 24 non-game apps. Each test cycle consists of running 36
applications in sequence. We repeated the cycle for observing performance
improvement by L2P mapping cache hit in HPB.
The following is the test environment:
- kernel version: 4.4.0
- RAM: 8GB
- UFS 2.1 (64GB)
Results:
+-------+----------+----------+-------+
| cycle | baseline | with HPB | diff |
+-------+----------+----------+-------+
| 1 | 272.4 | 264.9 | -7.5 |
| 2 | 250.4 | 248.2 | -2.2 |
| 3 | 226.2 | 215.6 | -10.6 |
| 4 | 230.6 | 214.8 | -15.8 |
| 5 | 232.0 | 218.1 | -13.9 |
| 6 | 231.9 | 212.6 | -19.3 |
+-------+----------+----------+-------+
We also measured HPB performance using iozone:
$ iozone -r 4k -+n -i2 -ecI -t 16 -l 16 -u 16 -s $IO_RANGE/16 -F \
mnt/tmp_1 mnt/tmp_2 mnt/tmp_3 mnt/tmp_4 mnt/tmp_5 mnt/tmp_6 mnt/tmp_7 \
mnt/tmp_8 mnt/tmp_9 mnt/tmp_10 mnt/tmp_11 mnt/tmp_12 mnt/tmp_13 \
mnt/tmp_14 mnt/tmp_15 mnt/tmp_16
Results:
+----------+--------+---------+
| IO range | HPB on | HPB off |
+----------+--------+---------+
| 1 GB | 294.8 | 300.87 |
| 4 GB | 293.51 | 179.35 |
| 8 GB | 294.85 | 162.52 |
| 16 GB | 293.45 | 156.26 |
| 32 GB | 277.4 | 153.25 |
+----------+--------+---------+
Link: https://lore.kernel.org/r/20210712085830epcms2p8c1288b7f7a81b044158a18232617b572@epcms2p8
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Bean Huo <beanhuo@micron.com>
Tested-by: Can Guo <cang@codeaurora.org>
Tested-by: Stanley Chu <stanley.chu@mediatek.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Can Guo <cang@codeaurora.org>
Reviewed-by: Bean Huo <beanhuo@micron.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Acked-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Daejun Park <daejun7.park@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-07-12 11:58:30 +03:00
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the maximum number of active HPB regions that
is supported by the device.
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_lu_max_active_regions
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the maximum number of HPB regions assigned to
the HPB logical unit.
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_pinned_region_start_offset
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the start offset of HPB pinned region.
The file is read only.
What: /sys/class/scsi_device/*/device/unit_descriptor/hpb_number_pinned_regions
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the number of HPB pinned regions assigned to
the HPB logical unit.
The file is read only.
What: /sys/class/scsi_device/*/device/hpb_stats/hit_cnt
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the number of reads that changed to HPB read.
The file is read only.
What: /sys/class/scsi_device/*/device/hpb_stats/miss_cnt
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the number of reads that cannot be changed to
HPB read.
The file is read only.
What: /sys/class/scsi_device/*/device/hpb_stats/rb_noti_cnt
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the number of response UPIUs that has
recommendations for activating sub-regions and/or inactivating region.
The file is read only.
What: /sys/class/scsi_device/*/device/hpb_stats/rb_active_cnt
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the number of active sub-regions recommended by
response UPIUs.
The file is read only.
What: /sys/class/scsi_device/*/device/hpb_stats/rb_inactive_cnt
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the number of inactive regions recommended by
response UPIUs.
The file is read only.
What: /sys/class/scsi_device/*/device/hpb_stats/map_req_cnt
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the number of read buffer commands for
activating sub-regions recommended by response UPIUs.
The file is read only.
2021-07-12 12:00:25 +03:00
What: /sys/class/scsi_device/*/device/hpb_params/requeue_timeout_ms
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the requeue timeout threshold for write buffer
command in ms. The value can be changed by writing an integer to
this entry.
What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_data_size_hpb_single_cmd
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/attributes/max_data_size_hpb_single_cmd
2021-07-12 12:00:25 +03:00
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the maximum HPB data size for using a single HPB
command.
=== ========
00h 4KB
01h 8KB
02h 12KB
...
FFh 1024KB
=== ========
The file is read only.
2021-07-12 12:50:39 +03:00
What: /sys/bus/platform/drivers/ufshcd/*/flags/hpb_enable
2021-09-27 16:59:49 +03:00
What: /sys/bus/platform/devices/*.ufs/flags/hpb_enable
2021-07-12 12:00:25 +03:00
Date: June 2021
Contact: Daejun Park <daejun7.park@samsung.com>
Description: This entry shows the status of HPB.
== ============================
0 HPB is not enabled.
1 HPB is enabled
== ============================
The file is read only.
2021-07-12 12:50:39 +03:00
What: /sys/class/scsi_device/*/device/hpb_param_sysfs/activation_thld
Date: February 2021
Contact: Avri Altman <avri.altman@wdc.com>
Description: In host control mode, reads are the major source of activation
trials. Once this threshold hs met, the region is added to the
"to-be-activated" list. Since we reset the read counter upon
write, this include sending a rb command updating the region
ppn as well.
What: /sys/class/scsi_device/*/device/hpb_param_sysfs/normalization_factor
Date: February 2021
Contact: Avri Altman <avri.altman@wdc.com>
Description: In host control mode, we think of the regions as "buckets".
Those buckets are being filled with reads, and emptied on write.
We use entries_per_srgn - the amount of blocks in a subregion as
our bucket size. This applies because HPB1.0 only handles
single-block reads. Once the bucket size is crossed, we trigger
a normalization work - not only to avoid overflow, but mainly
because we want to keep those counters normalized, as we are
using those reads as a comparative score, to make various decisions.
The normalization is dividing (shift right) the read counter by
the normalization_factor. If during consecutive normalizations
an active region has exhausted its reads - inactivate it.
What: /sys/class/scsi_device/*/device/hpb_param_sysfs/eviction_thld_enter
Date: February 2021
Contact: Avri Altman <avri.altman@wdc.com>
Description: Region deactivation is often due to the fact that eviction took
place: A region becomes active at the expense of another. This is
happening when the max-active-regions limit has been crossed.
In host mode, eviction is considered an extreme measure. We
want to verify that the entering region has enough reads, and
the exiting region has much fewer reads. eviction_thld_enter is
the min reads that a region must have in order to be considered
a candidate for evicting another region.
What: /sys/class/scsi_device/*/device/hpb_param_sysfs/eviction_thld_exit
Date: February 2021
Contact: Avri Altman <avri.altman@wdc.com>
Description: Same as above for the exiting region. A region is considered to
be a candidate for eviction only if it has fewer reads than
eviction_thld_exit.
What: /sys/class/scsi_device/*/device/hpb_param_sysfs/read_timeout_ms
Date: February 2021
Contact: Avri Altman <avri.altman@wdc.com>
Description: In order not to hang on to "cold" regions, we inactivate
a region that has no READ access for a predefined amount of
time - read_timeout_ms. If read_timeout_ms has expired, and the
region is dirty, it is less likely that we can make any use of
HPB reading it so we inactivate it. Still, deactivation has
its overhead, and we may still benefit from HPB reading this
region if it is clean - see read_timeout_expiries.
What: /sys/class/scsi_device/*/device/hpb_param_sysfs/read_timeout_expiries
Date: February 2021
Contact: Avri Altman <avri.altman@wdc.com>
Description: If the region read timeout has expired, but the region is clean,
just re-wind its timer for another spin. Do that as long as it
is clean and did not exhaust its read_timeout_expiries threshold.
What: /sys/class/scsi_device/*/device/hpb_param_sysfs/timeout_polling_interval_ms
Date: February 2021
Contact: Avri Altman <avri.altman@wdc.com>
Description: The frequency with which the delayed worker that checks the
read_timeouts is awakened.
What: /sys/class/scsi_device/*/device/hpb_param_sysfs/inflight_map_req
Date: February 2021
Contact: Avri Altman <avri.altman@wdc.com>
Description: In host control mode the host is the originator of map requests.
To avoid flooding the device with map requests, use a simple throttling
mechanism that limits the number of inflight map requests.