Merge remote-tracking branch 'torvalds/master' into perf/core
To pick up some tools/perf/ patches that went via tip/perf/core, such as: tools/perf: Add mem_hops field in perf_mem_data_src structure Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
2
.mailmap
2
.mailmap
@@ -100,6 +100,7 @@ Douglas Gilbert <dougg@torque.net>
|
||||
Ed L. Cashin <ecashin@coraid.com>
|
||||
Erik Kaneda <erik.kaneda@intel.com> <erik.schmauss@intel.com>
|
||||
Evgeniy Polyakov <johnpol@2ka.mipt.ru>
|
||||
Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> <ezequiel@collabora.com>
|
||||
Felipe W Damasio <felipewd@terra.com.br>
|
||||
Felix Kuhling <fxkuehl@gmx.de>
|
||||
Felix Moeller <felix@derklecks.de>
|
||||
@@ -278,6 +279,7 @@ Nicolas Pitre <nico@fluxnic.net> <nicolas.pitre@linaro.org>
|
||||
Nicolas Pitre <nico@fluxnic.net> <nico@linaro.org>
|
||||
Nicolas Saenz Julienne <nsaenz@kernel.org> <nsaenzjulienne@suse.de>
|
||||
Nicolas Saenz Julienne <nsaenz@kernel.org> <nsaenzjulienne@suse.com>
|
||||
Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
|
||||
Oleksij Rempel <linux@rempel-privat.de> <bug-track@fisher-privat.net>
|
||||
Oleksij Rempel <linux@rempel-privat.de> <external.Oleksij.Rempel@de.bosch.com>
|
||||
Oleksij Rempel <linux@rempel-privat.de> <fixed-term.Oleksij.Rempel@de.bosch.com>
|
||||
|
||||
11
Documentation/ABI/obsolete/o2cb
Normal file
11
Documentation/ABI/obsolete/o2cb
Normal file
@@ -0,0 +1,11 @@
|
||||
What: /sys/o2cb
|
||||
Date: Dec 2005
|
||||
KernelVersion: 2.6.16
|
||||
Contact: ocfs2-devel@oss.oracle.com
|
||||
Description: Ocfs2-tools looks at 'interface-revision' for versioning
|
||||
information. Each logmask/ file controls a set of debug prints
|
||||
and can be written into with the strings "allow", "deny", or
|
||||
"off". Reading the file returns the current state.
|
||||
Was renamed to /sys/fs/u2cb/
|
||||
Users: ocfs2-tools. It's sufficient to mail proposed changes to
|
||||
ocfs2-devel@oss.oracle.com.
|
||||
@@ -6,6 +6,7 @@ Description:
|
||||
|
||||
Since Kernel 5.11, multiple buffers are supported.
|
||||
so, it is better to use, instead:
|
||||
|
||||
/sys/bus/iio/devices/iio:deviceX/bufferY/length
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/buffer/enable
|
||||
@@ -17,6 +18,7 @@ Description:
|
||||
|
||||
Since Kernel 5.11, multiple buffers are supported.
|
||||
so, it is better to use, instead:
|
||||
|
||||
/sys/bus/iio/devices/iio:deviceX/bufferY/enable
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/scan_elements
|
||||
@@ -165,6 +167,7 @@ Description:
|
||||
|
||||
Since Kernel 5.11, multiple buffers are supported.
|
||||
so, it is better to use, instead:
|
||||
|
||||
/sys/bus/iio/devices/iio:deviceX/bufferY/watermark
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/buffer/data_available
|
||||
@@ -179,4 +182,5 @@ Description:
|
||||
|
||||
Since Kernel 5.11, multiple buffers are supported.
|
||||
so, it is better to use, instead:
|
||||
|
||||
/sys/bus/iio/devices/iio:deviceX/bufferY/data_available
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/fs/o2cb/ (was /sys/o2cb)
|
||||
What: /sys/fs/o2cb/
|
||||
Date: Dec 2005
|
||||
KernelVersion: 2.6.16
|
||||
Contact: ocfs2-devel@oss.oracle.com
|
||||
|
||||
@@ -232,10 +232,10 @@ Description: The RoCE type of the associated GID resides at index <gid-index>.
|
||||
or "RoCE v2" for RoCE v2 based GIDs.
|
||||
|
||||
|
||||
What: /sys/class/infiniband_mad/umadN/ibdev
|
||||
What: /sys/class/infiniband_mad/umadN/port
|
||||
What: /sys/class/infiniband_mad/issmN/ibdev
|
||||
What: /sys/class/infiniband_mad/issmN/port
|
||||
What: /sys/class/infiniband_mad/umad<N>/ibdev
|
||||
What: /sys/class/infiniband_mad/umad<N>/port
|
||||
What: /sys/class/infiniband_mad/issm<N>/ibdev
|
||||
What: /sys/class/infiniband_mad/issm<N>/port
|
||||
Date: Apr, 2005
|
||||
KernelVersion: v2.6.12
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
@@ -261,8 +261,8 @@ Description:
|
||||
userspace ABI compatibility of umad & issm devices.
|
||||
|
||||
|
||||
What: /sys/class/infiniband_verbs/uverbsN/ibdev
|
||||
What: /sys/class/infiniband_verbs/uverbsN/abi_version
|
||||
What: /sys/class/infiniband_verbs/uverbs<N>/ibdev
|
||||
What: /sys/class/infiniband_verbs/uverbs<N>/abi_version
|
||||
Date: Sept, 2005
|
||||
KernelVersion: v2.6.14
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
@@ -471,7 +471,7 @@ Description:
|
||||
=============== ======================================================
|
||||
|
||||
|
||||
What: /sys/class/infiniband/qibX/ports/N/sl2vl/[0-15]
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/sl2vl/[0-15]
|
||||
Date: May, 2010
|
||||
KernelVersion: v2.6.35
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
@@ -480,8 +480,8 @@ Description:
|
||||
the Service Level (SL). Listing the SL files returns the Virtual
|
||||
Lane (VL) as programmed by the SL.
|
||||
|
||||
What: /sys/class/infiniband/qibX/ports/N/CCMgtA/cc_settings_bin
|
||||
What: /sys/class/infiniband/qibX/ports/N/CCMgtA/cc_table_bin
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/CCMgtA/cc_settings_bin
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/CCMgtA/cc_table_bin
|
||||
Date: May, 2010
|
||||
KernelVersion: v2.6.35
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
@@ -499,11 +499,11 @@ Description:
|
||||
delay.
|
||||
=============== ================================================
|
||||
|
||||
What: /sys/class/infiniband/qibX/ports/N/linkstate/loopback
|
||||
What: /sys/class/infiniband/qibX/ports/N/linkstate/led_override
|
||||
What: /sys/class/infiniband/qibX/ports/N/linkstate/hrtbt_enable
|
||||
What: /sys/class/infiniband/qibX/ports/N/linkstate/status
|
||||
What: /sys/class/infiniband/qibX/ports/N/linkstate/status_str
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/linkstate/loopback
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/linkstate/led_override
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/linkstate/hrtbt_enable
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/linkstate/status
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/linkstate/status_str
|
||||
Date: May, 2010
|
||||
KernelVersion: v2.6.35
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
@@ -523,16 +523,16 @@ Description:
|
||||
"Fatal_Hardware_Error".
|
||||
=============== ===============================================
|
||||
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/rc_resends
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/seq_naks
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/rdma_seq
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/rnr_naks
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/other_naks
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/rc_timeouts
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/look_pkts
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/pkt_drops
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/dma_wait
|
||||
What: /sys/class/infiniband/qibX/ports/N/diag_counters/unaligned
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/rc_resends
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/seq_naks
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/rdma_seq
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/rnr_naks
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/other_naks
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/rc_timeouts
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/look_pkts
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/pkt_drops
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/dma_wait
|
||||
What: /sys/class/infiniband/qibX/ports/<N>/diag_counters/unaligned
|
||||
Date: May, 2010
|
||||
KernelVersion: v2.6.35
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
@@ -650,9 +650,9 @@ Description:
|
||||
=============== =============================================
|
||||
|
||||
|
||||
What: /sys/class/infiniband/hfi1_X/ports/N/CCMgtA/cc_settings_bin
|
||||
What: /sys/class/infiniband/hfi1_X/ports/N/CCMgtA/cc_table_bin
|
||||
What: /sys/class/infiniband/hfi1_X/ports/N/CCMgtA/cc_prescan
|
||||
What: /sys/class/infiniband/hfi1_X/ports/<N>/CCMgtA/cc_settings_bin
|
||||
What: /sys/class/infiniband/hfi1_X/ports/<N>/CCMgtA/cc_table_bin
|
||||
What: /sys/class/infiniband/hfi1_X/ports/<N>/CCMgtA/cc_prescan
|
||||
Date: May, 2016
|
||||
KernelVersion: v4.6
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
@@ -675,9 +675,9 @@ Description:
|
||||
disable.
|
||||
=============== ================================================
|
||||
|
||||
What: /sys/class/infiniband/hfi1_X/ports/N/sc2vl/[0-31]
|
||||
What: /sys/class/infiniband/hfi1_X/ports/N/sl2sc/[0-31]
|
||||
What: /sys/class/infiniband/hfi1_X/ports/N/vl2mtu/[0-15]
|
||||
What: /sys/class/infiniband/hfi1_X/ports/<N>/sc2vl/[0-31]
|
||||
What: /sys/class/infiniband/hfi1_X/ports/<N>/sl2sc/[0-31]
|
||||
What: /sys/class/infiniband/hfi1_X/ports/<N>/vl2mtu/[0-15]
|
||||
Date: May, 2016
|
||||
KernelVersion: v4.6
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
@@ -691,8 +691,8 @@ Description:
|
||||
=============== ===================================================
|
||||
|
||||
|
||||
What: /sys/class/infiniband/hfi1_X/sdma_N/cpu_list
|
||||
What: /sys/class/infiniband/hfi1_X/sdma_N/vl
|
||||
What: /sys/class/infiniband/hfi1_X/sdma_<N>/cpu_list
|
||||
What: /sys/class/infiniband/hfi1_X/sdma_<N>/vl
|
||||
Date: Sept, 2016
|
||||
KernelVersion: v4.8
|
||||
Contact: linux-rdma@vger.kernel.org
|
||||
|
||||
@@ -195,7 +195,7 @@ Description: The "tpm_version_major" property shows the TCG spec major version
|
||||
|
||||
2
|
||||
|
||||
What: /sys/class/tpm/tpmX/pcr-H/N
|
||||
What: /sys/class/tpm/tpmX/pcr-<H>/<N>
|
||||
Date: March 2021
|
||||
KernelVersion: 5.12
|
||||
Contact: linux-integrity@vger.kernel.org
|
||||
|
||||
@@ -23,3 +23,10 @@ Contact: Device Tree mailing list <devicetree@vger.kernel.org>
|
||||
Description:
|
||||
If CONFIG_OF is enabled, then this file is present. When
|
||||
read, it returns full name of the device node.
|
||||
|
||||
What: /sys/devices/*/dev
|
||||
Date: Jun 2006
|
||||
Contact: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
Description:
|
||||
Major and minor numbers of the character device corresponding
|
||||
to the device (in <major>:<minor> format).
|
||||
|
||||
@@ -42,6 +42,12 @@ Description: the CPU core ID of cpuX. Typically it is the hardware platform's
|
||||
architecture and platform dependent.
|
||||
Values: integer
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/topology/cluster_id
|
||||
Description: the cluster ID of cpuX. Typically it is the hardware platform's
|
||||
identifier (rather than the kernel's). The actual value is
|
||||
architecture and platform dependent.
|
||||
Values: integer
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/topology/book_id
|
||||
Description: the book ID of cpuX. Typically it is the hardware platform's
|
||||
identifier (rather than the kernel's). The actual value is
|
||||
@@ -85,6 +91,15 @@ Description: human-readable list of CPUs within the same die.
|
||||
The format is like 0-3, 8-11, 14,17.
|
||||
Values: decimal list.
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/topology/cluster_cpus
|
||||
Description: internal kernel map of CPUs within the same cluster.
|
||||
Values: hexadecimal bitmask.
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/topology/cluster_cpus_list
|
||||
Description: human-readable list of CPUs within the same cluster.
|
||||
The format is like 0-3, 8-11, 14,17.
|
||||
Values: decimal list.
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/topology/book_siblings
|
||||
Description: internal kernel map of cpuX's hardware threads within the same
|
||||
book_id. it's only used on s390.
|
||||
|
||||
@@ -223,3 +223,247 @@ Description: These files show with which CPLD part numbers and minor
|
||||
system.
|
||||
|
||||
The files are read only.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/bios_active_image
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/bios_auth_fail
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/bios_upgrade_fail
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: The files represent BIOS statuses:
|
||||
|
||||
bios_active_image: location of current active BIOS image:
|
||||
0: Top, 1: Bottom.
|
||||
The reported value should correspond to value expected by OS
|
||||
in case of BIOS safe mode is 0. This bit is related to Intel
|
||||
top-swap feature of DualBios on the same flash.
|
||||
|
||||
bios_auth_fail: BIOS upgrade is failed because provided BIOS
|
||||
image is not signed correctly.
|
||||
|
||||
bios_upgrade_fail: BIOS upgrade is failed by some other
|
||||
reason not because authentication. For example due to
|
||||
physical SPI flash problem.
|
||||
|
||||
The files are read only.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc1_enable
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc2_enable
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc3_enable
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc4_enable
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc5_enable
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc6_enable
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc7_enable
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc8_enable
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files allow line cards enable state control.
|
||||
Expected behavior:
|
||||
When lc{n}_enable is written 1, related line card is released
|
||||
from the reset state, when 0 - is hold in reset state.
|
||||
|
||||
The files are read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc1_pwr
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc2_pwr
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc3_pwr
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc4_pwr
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc5_pwr
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc6_pwr
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc7_pwr
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc8_pwr
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files switching line cards power on and off.
|
||||
Expected behavior:
|
||||
When lc{n}_pwr is written 1, related line card is powered
|
||||
on, when written 0 - powered off.
|
||||
|
||||
The files are read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc1_rst_mask
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc2_rst_mask
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc3_rst_mask
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc4_rst_mask
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc5_rst_mask
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc6_rst_mask
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc7_rst_mask
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/lc8_rst_mask
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files clear line card reset bit enforced by ASIC, when it
|
||||
sets it due to some abnormal ASIC behavior.
|
||||
Expected behavior:
|
||||
When lc{n}_rst_mask is written 1, related line card reset bit
|
||||
is cleared, when written 0 - no effect.
|
||||
|
||||
The files are write only.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/os_started
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: This file, when written 1, indicates to programmable devices
|
||||
that OS is taking control over it.
|
||||
|
||||
The file is read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/pm_mgmt_en
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: This file assigns power management control ownership.
|
||||
When power management control is provided by hardware, hardware
|
||||
will automatically power off one or more line previously
|
||||
powered line cards in case system power budget is getting
|
||||
insufficient. It could be in case when some of power units lost
|
||||
power good state.
|
||||
When pm_mgmt_en is written 1, power management control by
|
||||
software is enabled, 0 - power management control by hardware.
|
||||
Note that for any setting of pm_mgmt_en attribute hardware will
|
||||
not allow to power on any new line card in case system power
|
||||
budget is insufficient.
|
||||
Same in case software will try to power on several line cards
|
||||
at once - hardware will power line cards while system has
|
||||
enough power budget.
|
||||
Default is 0.
|
||||
|
||||
The file is read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/psu3_on
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/psu4_on
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files switching power supply units on and off.
|
||||
Expected behavior:
|
||||
When psu3_on or psu4_on is written 1, related unit will be
|
||||
disconnected from the power source, when written 0 - connected.
|
||||
|
||||
The files are write only.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/mlxreg-io/hwmon/hwmon*/shutdown_unlock
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: This file allows to unlock ASIC after thermal shutdown event.
|
||||
When system thermal shutdown is enforced by ASIC, ASIC is
|
||||
getting locked and after system boot it will not be available.
|
||||
Software can decide to unlock it by setting this attribute to
|
||||
1 and then perform system power cycle by setting pwr_cycle
|
||||
attribute to 1 (power cycle of main power domain).
|
||||
Before setting shutdown_unlock to 1 it is recommended to
|
||||
validate that system reboot cause is reset_asic_thermal or
|
||||
reset_thermal_spc_or_pciesw.
|
||||
In case shutdown_unlock is not set 1, the only way to release
|
||||
ASIC from locking - is full system power cycle through the
|
||||
external power distribution unit.
|
||||
Default is 1.
|
||||
|
||||
The file is read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/cpld1_pn
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/cpld1_version
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/cpld1_version_min
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files show with which CPLD major and minor versions
|
||||
and part number has been burned CPLD device on line card.
|
||||
|
||||
The files are read only.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/fpga1_pn
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/fpga1_version
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/fpga1_version_min
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files show with which FPGA major and minor versions
|
||||
and part number has been burned FPGA device on line card.
|
||||
|
||||
The files are read only.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/vpd_wp
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: This file allow to overwrite line card VPD hardware write
|
||||
protection mode. When attribute is set 1 - write protection is
|
||||
disabled, when 0 - enabled.
|
||||
Default is 0.
|
||||
If the system is in locked-down mode writing this file will not
|
||||
be allowed.
|
||||
The purpose if this file is to allow line card VPD burning
|
||||
during production flow.
|
||||
|
||||
The file is read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/reset_aux_pwr_or_ref
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/reset_dc_dc_pwr_fail
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/reset_fpga_not_done
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/reset_from_chassis
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/reset_line_card
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/reset_pwr_off_from_chassis
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files show the line reset cause, as following: power
|
||||
auxiliary outage or power refresh, DC-to-DC power failure, FPGA reset
|
||||
failed, line card reset failed, power off from chassis.
|
||||
Value 1 in file means this is reset cause, 0 - otherwise. Only one of
|
||||
the above causes could be 1 at the same time, representing only last
|
||||
reset cause.
|
||||
|
||||
The files are read only.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/cpld_upgrade_en
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/fpga_upgrade_en
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files allow CPLD and FPGA burning. Value 1 in file means burning
|
||||
is enabled, 0 - otherwise.
|
||||
If the system is in locked-down mode writing these files will
|
||||
not be allowed.
|
||||
The purpose of these files to allow line card CPLD and FPGA
|
||||
upgrade through the JTAG daisy-chain.
|
||||
|
||||
The files are read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/qsfp_pwr_en
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/pwr_en
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files allow to power on/off all QSFP ports and whole line card.
|
||||
The attributes are set 1 for power on, 0 - for power off.
|
||||
|
||||
The files are read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/agb_spi_burn_en
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/fpga_spi_burn_en
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files allow gearboxes and FPGA SPI flash burning.
|
||||
The attributes are set 1 to enable burning, 0 - to disable.
|
||||
If the system is in locked-down mode writing these files will
|
||||
not be allowed.
|
||||
The purpose of these files to allow line card Gearboxes and FPGA
|
||||
burning during production flow.
|
||||
|
||||
The file is read/write.
|
||||
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/max_power
|
||||
What: /sys/devices/platform/mlxplat/i2c_mlxcpld.*/i2c-*/i2c-*/i2c-*/*-0032/mlxreg-io.*/hwmon/hwmon*/config
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Vadim Pasternak <vadimp@nvidia.com>
|
||||
Description: These files provide the maximum powered required for line card
|
||||
feeding and line card configuration Id.
|
||||
|
||||
The files are read only.
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
What: /sys/module
|
||||
Description:
|
||||
The /sys/module tree consists of the following structure:
|
||||
|
||||
/sys/module/MODULENAME
|
||||
What: /sys/module/<MODULENAME>
|
||||
Description:
|
||||
The name of the module that is in the kernel. This
|
||||
module name will always show up if the module is loaded as a
|
||||
dynamic module. If it is built directly into the kernel, it
|
||||
@@ -12,7 +11,8 @@ Description:
|
||||
Note: The conditions of creation in the built-in case are not
|
||||
by design and may be removed in the future.
|
||||
|
||||
/sys/module/MODULENAME/parameters
|
||||
What: /sys/module/<MODULENAME>/parameters
|
||||
Description:
|
||||
This directory contains individual files that are each
|
||||
individual parameters of the module that are able to be
|
||||
changed at runtime. See the individual module
|
||||
@@ -25,10 +25,23 @@ Description:
|
||||
individual driver documentation for details as to the
|
||||
stability of the different parameters.
|
||||
|
||||
/sys/module/MODULENAME/refcnt
|
||||
What: /sys/module/<MODULENAME>/refcnt
|
||||
Description:
|
||||
If the module is able to be unloaded from the kernel, this file
|
||||
will contain the current reference count of the module.
|
||||
|
||||
Note: If the module is built into the kernel, or if the
|
||||
CONFIG_MODULE_UNLOAD kernel configuration value is not enabled,
|
||||
this file will not be present.
|
||||
|
||||
What: /sys/module/<MODULENAME>/srcversion
|
||||
Date: Jun 2005
|
||||
Description:
|
||||
If the module source has MODULE_VERSION, this file will contain
|
||||
the checksum of the the source code.
|
||||
|
||||
What: /sys/module/<MODULENAME>/version
|
||||
Date: Jun 2005
|
||||
Description:
|
||||
If the module source has MODULE_VERSION, this file will contain
|
||||
the version of the source code.
|
||||
|
||||
@@ -4,23 +4,29 @@ KernelVersion: 4.14
|
||||
Description:
|
||||
The attributes:
|
||||
|
||||
========== ===================================
|
||||
===================== =======================================
|
||||
c_chmask capture channel mask
|
||||
c_srate capture sampling rate
|
||||
c_ssize capture sample size (bytes)
|
||||
c_mute_present capture mute control enable
|
||||
c_volume_present capture volume control enable
|
||||
c_volume_min capture volume control min value (in 1/256 dB)
|
||||
c_volume_max capture volume control max value (in 1/256 dB)
|
||||
c_volume_res capture volume control resolution (in 1/256 dB)
|
||||
c_volume_min capture volume control min value
|
||||
(in 1/256 dB)
|
||||
c_volume_max capture volume control max value
|
||||
(in 1/256 dB)
|
||||
c_volume_res capture volume control resolution
|
||||
(in 1/256 dB)
|
||||
p_chmask playback channel mask
|
||||
p_srate playback sampling rate
|
||||
p_ssize playback sample size (bytes)
|
||||
p_mute_present playback mute control enable
|
||||
p_volume_present playback volume control enable
|
||||
p_volume_min playback volume control min value (in 1/256 dB)
|
||||
p_volume_max playback volume control max value (in 1/256 dB)
|
||||
p_volume_res playback volume control resolution (in 1/256 dB)
|
||||
p_volume_min playback volume control min value
|
||||
(in 1/256 dB)
|
||||
p_volume_max playback volume control max value
|
||||
(in 1/256 dB)
|
||||
p_volume_res playback volume control resolution
|
||||
(in 1/256 dB)
|
||||
req_number the number of pre-allocated request
|
||||
for both capture and playback
|
||||
========== ===================================
|
||||
===================== =======================================
|
||||
|
||||
@@ -4,23 +4,30 @@ KernelVersion: 3.18
|
||||
Description:
|
||||
The attributes:
|
||||
|
||||
========= ============================
|
||||
===================== =======================================
|
||||
c_chmask capture channel mask
|
||||
c_srate capture sampling rate
|
||||
c_ssize capture sample size (bytes)
|
||||
c_sync capture synchronization type (async/adaptive)
|
||||
c_sync capture synchronization type
|
||||
(async/adaptive)
|
||||
c_mute_present capture mute control enable
|
||||
c_volume_present capture volume control enable
|
||||
c_volume_min capture volume control min value (in 1/256 dB)
|
||||
c_volume_max capture volume control max value (in 1/256 dB)
|
||||
c_volume_res capture volume control resolution (in 1/256 dB)
|
||||
c_volume_min capture volume control min value
|
||||
(in 1/256 dB)
|
||||
c_volume_max capture volume control max value
|
||||
(in 1/256 dB)
|
||||
c_volume_res capture volume control resolution
|
||||
(in 1/256 dB)
|
||||
fb_max maximum extra bandwidth in async mode
|
||||
p_chmask playback channel mask
|
||||
p_srate playback sampling rate
|
||||
p_ssize playback sample size (bytes)
|
||||
p_mute_present playback mute control enable
|
||||
p_volume_present playback volume control enable
|
||||
p_volume_min playback volume control min value (in 1/256 dB)
|
||||
p_volume_max playback volume control max value (in 1/256 dB)
|
||||
p_volume_res playback volume control resolution (in 1/256 dB)
|
||||
========= ============================
|
||||
p_volume_min playback volume control min value
|
||||
(in 1/256 dB)
|
||||
p_volume_max playback volume control max value
|
||||
(in 1/256 dB)
|
||||
p_volume_res playback volume control resolution
|
||||
(in 1/256 dB)
|
||||
===================== =======================================
|
||||
|
||||
@@ -226,6 +226,12 @@ Description: Gets the state dump occurring on a CS timeout or failure.
|
||||
Writing an integer X discards X state dumps, so that the
|
||||
next read would return X+1-st newest state dump.
|
||||
|
||||
What: /sys/kernel/debug/habanalabs/hl<n>/timeout_locked
|
||||
Date: Sep 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: obitton@habana.ai
|
||||
Description: Sets the command submission timeout value in seconds.
|
||||
|
||||
What: /sys/kernel/debug/habanalabs/hl<n>/stop_on_err
|
||||
Date: Mar 2020
|
||||
KernelVersion: 5.6
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
What: security/evm
|
||||
What: /sys/kernel/security/evm
|
||||
What: /sys/kernel/security/*/evm
|
||||
Date: March 2011
|
||||
Contact: Mimi Zohar <zohar@us.ibm.com>
|
||||
Description:
|
||||
@@ -93,7 +94,7 @@ Description:
|
||||
core/ima-setup) have support for loading keys at boot
|
||||
time.
|
||||
|
||||
What: security/integrity/evm/evm_xattrs
|
||||
What: /sys/kernel/security/*/evm/evm_xattrs
|
||||
Date: April 2018
|
||||
Contact: Matthew Garrett <mjg59@google.com>
|
||||
Description:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
What: security/ima/policy
|
||||
What: /sys/kernel/security/*/ima/policy
|
||||
Date: May 2008
|
||||
Contact: Mimi Zohar <zohar@us.ibm.com>
|
||||
Description:
|
||||
@@ -22,8 +22,9 @@ Description:
|
||||
action: measure | dont_measure | appraise | dont_appraise |
|
||||
audit | hash | dont_hash
|
||||
condition:= base | lsm [option]
|
||||
base: [[func=] [mask=] [fsmagic=] [fsuuid=] [uid=]
|
||||
[euid=] [fowner=] [fsname=]]
|
||||
base: [[func=] [mask=] [fsmagic=] [fsuuid=] [fsname=]
|
||||
[uid=] [euid=] [gid=] [egid=]
|
||||
[fowner=] [fgroup=]]
|
||||
lsm: [[subj_user=] [subj_role=] [subj_type=]
|
||||
[obj_user=] [obj_role=] [obj_type=]]
|
||||
option: [[appraise_type=]] [template=] [permit_directio]
|
||||
@@ -40,7 +41,10 @@ Description:
|
||||
fsuuid:= file system UUID (e.g 8bcbe394-4f13-4144-be8e-5aa9ea2ce2f6)
|
||||
uid:= decimal value
|
||||
euid:= decimal value
|
||||
gid:= decimal value
|
||||
egid:= decimal value
|
||||
fowner:= decimal value
|
||||
fgroup:= decimal value
|
||||
lsm: are LSM specific
|
||||
option:
|
||||
appraise_type:= [imasig] [imasig|modsig]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
What: /sys/fs/pstore/... (or /dev/pstore/...)
|
||||
What: /sys/fs/pstore/...
|
||||
What: /dev/pstore/...
|
||||
Date: March 2011
|
||||
KernelVersion: 2.6.39
|
||||
Contact: tony.luck@intel.com
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/class/ata_...
|
||||
What: /sys/class/ata_*
|
||||
Description:
|
||||
Provide a place in sysfs for storing the ATA topology of the
|
||||
system. This allows retrieving various information about ATA
|
||||
|
||||
@@ -28,6 +28,22 @@ Description:
|
||||
For more details refer Documentation/admin-guide/iostats.rst
|
||||
|
||||
|
||||
What: /sys/block/<disk>/inflight
|
||||
Date: October 2009
|
||||
Contact: Jens Axboe <axboe@kernel.dk>, Nikanth Karthikesan <knikanth@suse.de>
|
||||
Description:
|
||||
Reports the number of I/O requests currently in progress
|
||||
(pending / in flight) in a device driver. This can be less
|
||||
than the number of requests queued in the block device queue.
|
||||
The report contains 2 fields: one for read requests
|
||||
and one for write requests.
|
||||
The value type is unsigned int.
|
||||
Cf. Documentation/block/stat.rst which contains a single value for
|
||||
requests in flight.
|
||||
This is related to nr_requests in Documentation/block/queue-sysfs.rst
|
||||
and for SCSI device also its queue_depth.
|
||||
|
||||
|
||||
What: /sys/block/<disk>/diskseq
|
||||
Date: February 2021
|
||||
Contact: Matteo Croce <mcroce@microsoft.com>
|
||||
|
||||
@@ -203,6 +203,27 @@ Description:
|
||||
both edges:
|
||||
Any state transition.
|
||||
|
||||
What: /sys/bus/counter/devices/counterX/countY/ceiling_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/floor_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/count_mode_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/direction_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/enable_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/error_noise_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/prescaler_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/preset_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/preset_enable_component_id
|
||||
What: /sys/bus/counter/devices/counterX/countY/signalZ_action_component_id
|
||||
What: /sys/bus/counter/devices/counterX/signalY/cable_fault_component_id
|
||||
What: /sys/bus/counter/devices/counterX/signalY/cable_fault_enable_component_id
|
||||
What: /sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler_component_id
|
||||
What: /sys/bus/counter/devices/counterX/signalY/index_polarity_component_id
|
||||
What: /sys/bus/counter/devices/counterX/signalY/synchronous_mode_component_id
|
||||
KernelVersion: 5.16
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Read-only attribute that indicates the component ID of the
|
||||
respective extension or Synapse.
|
||||
|
||||
What: /sys/bus/counter/devices/counterX/countY/spike_filter_ns
|
||||
KernelVersion: 5.14
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
@@ -212,6 +233,14 @@ Description:
|
||||
shorter or equal to configured value are ignored. Value 0 means
|
||||
filter is disabled.
|
||||
|
||||
What: /sys/bus/counter/devices/counterX/events_queue_size
|
||||
KernelVersion: 5.16
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Size of the Counter events queue in number of struct
|
||||
counter_event data structures. The number of elements will be
|
||||
rounded-up to a power of 2.
|
||||
|
||||
What: /sys/bus/counter/devices/counterX/name
|
||||
KernelVersion: 5.2
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
@@ -286,7 +315,14 @@ What: /sys/bus/counter/devices/counterX/signalY/signal
|
||||
KernelVersion: 5.2
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Signal data of Signal Y represented as a string.
|
||||
Signal level state of Signal Y. The following signal level
|
||||
states are available:
|
||||
|
||||
low:
|
||||
Low level state.
|
||||
|
||||
high:
|
||||
High level state.
|
||||
|
||||
What: /sys/bus/counter/devices/counterX/signalY/synchronous_mode
|
||||
KernelVersion: 5.2
|
||||
|
||||
10
Documentation/ABI/testing/sysfs-bus-fsi-devices-sbefifo
Normal file
10
Documentation/ABI/testing/sysfs-bus-fsi-devices-sbefifo
Normal file
@@ -0,0 +1,10 @@
|
||||
What: /sys/bus/fsi/devices/XX.XX.00:06/sbefifoX/timeout
|
||||
KernelVersion: 5.15
|
||||
Contact: eajames@linux.ibm.com
|
||||
Description:
|
||||
Indicates whether or not this SBE device has experienced a
|
||||
timeout; i.e. the SBE did not respond within the time allotted
|
||||
by the driver. A value of 1 indicates that a timeout has
|
||||
ocurred and no transfers have completed since the timeout. A
|
||||
value of 0 indicates that no timeout has ocurred, or if one
|
||||
has, more recent transfers have completed successful.
|
||||
@@ -429,6 +429,7 @@ What: /sys/bus/iio/devices/iio:deviceX/in_angl_scale
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_intensity_x_scale
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_intensity_y_scale
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_intensity_z_scale
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_concentration_co2_scale
|
||||
KernelVersion: 2.6.35
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
@@ -1957,3 +1958,44 @@ Description:
|
||||
Specify the percent for light sensor relative to the channel
|
||||
absolute value that a data field should change before an event
|
||||
is generated. Units are a percentage of the prior reading.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/calibration_auto_enable
|
||||
Date: June 2020
|
||||
KernelVersion: 5.8
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Some sensors have the ability to apply auto calibration at
|
||||
runtime. For example, it may be necessary to compensate for
|
||||
contaminant build-up in a measurement chamber or optical
|
||||
element deterioration that would otherwise lead to sensor drift.
|
||||
|
||||
Writing 1 or 0 to this attribute will respectively activate or
|
||||
deactivate this auto calibration function.
|
||||
|
||||
Upon reading, the current status is returned.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/calibration_forced_value
|
||||
Date: June 2020
|
||||
KernelVersion: 5.8
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Some sensors have the ability to apply a manual calibration using
|
||||
a known measurement value, perhaps obtained from an external
|
||||
reference device.
|
||||
|
||||
Writing a value to this function will force such a calibration
|
||||
change. For the scd30 the value should be from the range
|
||||
[400 1 2000].
|
||||
|
||||
Note for the scd30 that a valid value may only be obtained once
|
||||
it is has been written. Until then any read back of this value
|
||||
should be ignored. As for the scd4x an error will be returned
|
||||
immediately if the manual calibration has failed.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/calibration_forced_value_available
|
||||
KernelVersion: 5.15
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Available range for the forced calibration value, expressed as:
|
||||
|
||||
- a range specified as "[min step max]"
|
||||
|
||||
38
Documentation/ABI/testing/sysfs-bus-iio-chemical-sunrise-co2
Normal file
38
Documentation/ABI/testing/sysfs-bus-iio-chemical-sunrise-co2
Normal file
@@ -0,0 +1,38 @@
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_concentration_co2_calibration_factory
|
||||
Date: August 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Jacopo Mondi <jacopo@jmondi.org>
|
||||
Description:
|
||||
Writing '1' triggers a 'Factory' calibration cycle.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_concentration_co2_calibration_background
|
||||
Date: August 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Jacopo Mondi <jacopo@jmondi.org>
|
||||
Description:
|
||||
Writing '1' triggers a 'Background' calibration cycle.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/error_status_available
|
||||
Date: August 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Jacopo Mondi <jacopo@jmondi.org>
|
||||
Description:
|
||||
Reading returns the list of possible chip error status.
|
||||
Available options are:
|
||||
- 'error_fatal': Analog front-end initialization error
|
||||
- 'error_i2c': Read/write to non-existing register
|
||||
- 'error_algorithm': Corrupted parameters
|
||||
- 'error_calibration': Calibration has failed
|
||||
- 'error_self_diagnostic': Internal interface failure
|
||||
- 'error_out_of_range': Measured concentration out of scale
|
||||
- 'error_memory': Error during memory operations
|
||||
- 'error_no_measurement': Cleared at first measurement
|
||||
- 'error_low_voltage': Sensor regulated voltage too low
|
||||
- 'error_measurement_timeout': Unable to complete measurement
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/error_status
|
||||
Date: August 2021
|
||||
KernelVersion: 5.16
|
||||
Contact: Jacopo Mondi <jacopo@jmondi.org>
|
||||
Description:
|
||||
Reading returns the current chip error status.
|
||||
@@ -1,34 +0,0 @@
|
||||
What: /sys/bus/iio/devices/iio:deviceX/calibration_auto_enable
|
||||
Date: June 2020
|
||||
KernelVersion: 5.8
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Contaminants build-up in the measurement chamber or optical
|
||||
elements deterioration leads to sensor drift.
|
||||
|
||||
One can compensate for sensor drift by using automatic self
|
||||
calibration procedure (asc).
|
||||
|
||||
Writing 1 or 0 to this attribute will respectively activate or
|
||||
deactivate asc.
|
||||
|
||||
Upon reading current asc status is returned.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/calibration_forced_value
|
||||
Date: June 2020
|
||||
KernelVersion: 5.8
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Contaminants build-up in the measurement chamber or optical
|
||||
elements deterioration leads to sensor drift.
|
||||
|
||||
One can compensate for sensor drift by using forced
|
||||
recalibration (frc). This is useful in case there's known
|
||||
co2 reference available nearby the sensor.
|
||||
|
||||
Picking value from the range [400 1 2000] and writing it to the
|
||||
sensor will set frc.
|
||||
|
||||
Upon reading current frc value is returned. Note that after
|
||||
power cycling default value (i.e 400) is returned even though
|
||||
internally sensor had recalibrated itself.
|
||||
20
Documentation/ABI/testing/sysfs-bus-iio-temperature-max31865
Normal file
20
Documentation/ABI/testing/sysfs-bus-iio-temperature-max31865
Normal file
@@ -0,0 +1,20 @@
|
||||
What: /sys/bus/iio/devices/iio:deviceX/fault_ovuv
|
||||
KernelVersion: 5.11
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Overvoltage or Undervoltage Input fault. The internal circuitry
|
||||
is protected from excessive voltages applied to the thermocouple
|
||||
cables at FORCE+, FORCE2, RTDIN+ & RTDIN-. This circuitry turn
|
||||
off when the input voltage is negative or greater than VDD.
|
||||
|
||||
Reading returns '1' if input voltage is negative or greater
|
||||
than VDD, otherwise '0'.
|
||||
|
||||
What: /sys/bus/iio/devices/iio:deviceX/in_filter_notch_center_frequency
|
||||
KernelVersion: 5.11
|
||||
Contact: linux-iio@vger.kernel.org
|
||||
Description:
|
||||
Notch frequency in Hz for a noise rejection filter. Used i.e for
|
||||
line noise rejection.
|
||||
|
||||
Valid notch filter values are 50 Hz and 60 Hz.
|
||||
@@ -1,4 +1,5 @@
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/
|
||||
What: /sys/class/mdio_bus/.../statistics/
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
@@ -7,6 +8,7 @@ Description:
|
||||
MDIO bus address statistics.
|
||||
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/transfers
|
||||
What: /sys/class/mdio_bus/.../transfers
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
@@ -14,6 +16,7 @@ Description:
|
||||
Total number of transfers for this MDIO bus.
|
||||
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/errors
|
||||
What: /sys/class/mdio_bus/.../statistics/errors
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
@@ -21,6 +24,7 @@ Description:
|
||||
Total number of transfer errors for this MDIO bus.
|
||||
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/writes
|
||||
What: /sys/class/mdio_bus/.../statistics/writes
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
@@ -28,6 +32,7 @@ Description:
|
||||
Total number of write transactions for this MDIO bus.
|
||||
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/reads
|
||||
What: /sys/class/mdio_bus/.../statistics/reads
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
@@ -35,6 +40,7 @@ Description:
|
||||
Total number of read transactions for this MDIO bus.
|
||||
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/transfers_<addr>
|
||||
What: /sys/class/mdio_bus/.../statistics/transfers_<addr>
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
@@ -42,6 +48,7 @@ Description:
|
||||
Total number of transfers for this MDIO bus address.
|
||||
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/errors_<addr>
|
||||
What: /sys/class/mdio_bus/.../statistics/errors_<addr>
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
@@ -49,6 +56,7 @@ Description:
|
||||
Total number of transfer errors for this MDIO bus address.
|
||||
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/writes_<addr>
|
||||
What: /sys/class/mdio_bus/.../statistics/writes_<addr>
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
@@ -56,6 +64,7 @@ Description:
|
||||
Total number of write transactions for this MDIO bus address.
|
||||
|
||||
What: /sys/bus/mdio_bus/devices/.../statistics/reads_<addr>
|
||||
What: /sys/class/mdio_bus/.../statistics/reads_<addr>
|
||||
Date: January 2020
|
||||
KernelVersion: 5.6
|
||||
Contact: netdev@vger.kernel.org
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
What: /sys/bus/pci/drivers/.../bind
|
||||
What: /sys/devices/pciX/.../bind
|
||||
Date: December 2003
|
||||
Contact: linux-pci@vger.kernel.org
|
||||
Description:
|
||||
@@ -14,6 +15,7 @@ Description:
|
||||
(Note: kernels before 2.6.28 may require echo -n).
|
||||
|
||||
What: /sys/bus/pci/drivers/.../unbind
|
||||
What: /sys/devices/pciX/.../unbind
|
||||
Date: December 2003
|
||||
Contact: linux-pci@vger.kernel.org
|
||||
Description:
|
||||
@@ -29,6 +31,7 @@ Description:
|
||||
(Note: kernels before 2.6.28 may require echo -n).
|
||||
|
||||
What: /sys/bus/pci/drivers/.../new_id
|
||||
What: /sys/devices/pciX/.../new_id
|
||||
Date: December 2003
|
||||
Contact: linux-pci@vger.kernel.org
|
||||
Description:
|
||||
@@ -47,6 +50,7 @@ Description:
|
||||
# echo "8086 10f5" > /sys/bus/pci/drivers/foo/new_id
|
||||
|
||||
What: /sys/bus/pci/drivers/.../remove_id
|
||||
What: /sys/devices/pciX/.../remove_id
|
||||
Date: February 2009
|
||||
Contact: Chris Wright <chrisw@sous-sol.org>
|
||||
Description:
|
||||
@@ -160,7 +164,7 @@ Description:
|
||||
If the underlying VPD has a writable section then the
|
||||
corresponding section of this file will be writable.
|
||||
|
||||
What: /sys/bus/pci/devices/.../virtfnN
|
||||
What: /sys/bus/pci/devices/.../virtfn<N>
|
||||
Date: March 2009
|
||||
Contact: Yu Zhao <yu.zhao@intel.com>
|
||||
Description:
|
||||
@@ -187,6 +191,24 @@ Description:
|
||||
The symbolic link points to the PCI device sysfs entry of the
|
||||
Physical Function this device associates with.
|
||||
|
||||
What: /sys/bus/pci/devices/.../modalias
|
||||
Date: May 2005
|
||||
Contact: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
Description:
|
||||
This attribute indicates the PCI ID of the device object.
|
||||
|
||||
That is in the format:
|
||||
pci:vXXXXXXXXdXXXXXXXXsvXXXXXXXXsdXXXXXXXXbcXXscXXiXX,
|
||||
where:
|
||||
|
||||
- vXXXXXXXX contains the vendor ID;
|
||||
- dXXXXXXXX contains the device ID;
|
||||
- svXXXXXXXX contains the sub-vendor ID;
|
||||
- sdXXXXXXXX contains the subsystem device ID;
|
||||
- bcXX contains the device class;
|
||||
- scXX contains the device subclass;
|
||||
- iXX contains the device class programming interface.
|
||||
|
||||
What: /sys/bus/pci/slots/.../module
|
||||
Date: June 2009
|
||||
Contact: linux-pci@vger.kernel.org
|
||||
|
||||
@@ -42,3 +42,15 @@ Date: August 2021
|
||||
Contact: Barry Song <song.bao.hua@hisilicon.com>
|
||||
Description:
|
||||
This attribute will show "msi" if <N> is a valid msi irq
|
||||
|
||||
What: /sys/bus/platform/devices/.../modalias
|
||||
Description:
|
||||
Same as MODALIAS in the uevent at device creation.
|
||||
|
||||
A platform device that it is exposed via devicetree uses:
|
||||
|
||||
- of:N`of node name`T`type`
|
||||
|
||||
Other platform devices use, instead:
|
||||
|
||||
- platform:`driver name`
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
What: /sys/bus/platform/devices/occ-hwmon.X/ffdc
|
||||
KernelVersion: 5.15
|
||||
Contact: eajames@linux.ibm.com
|
||||
Description:
|
||||
Contains the First Failure Data Capture from the SBEFIFO
|
||||
hardware, if there is any from a previous transfer. Otherwise,
|
||||
the file is empty. The data is cleared when it's been
|
||||
completely read by a user. As the name suggests, only the data
|
||||
from the first error is saved, until it's cleared upon read. The OCC hwmon driver, running on
|
||||
a Baseboard Management Controller (BMC), communicates with
|
||||
POWER9 and up processors over the Self-Boot Engine (SBE) FIFO.
|
||||
In many error conditions, the SBEFIFO will return error data
|
||||
indicating the type of error and system state, etc.
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>
|
||||
Description:
|
||||
For each RapidIO device, the RapidIO subsystem creates files in
|
||||
an individual subdirectory with the following name format of
|
||||
@@ -29,7 +29,7 @@ Description:
|
||||
Attributes Common for All RapidIO Devices
|
||||
-----------------------------------------
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/did
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/did
|
||||
Date: Nov, 2005
|
||||
KernelVersion: v2.6.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -37,7 +37,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
Description:
|
||||
(RO) returns the device identifier
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/vid
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/vid
|
||||
Date: Nov, 2005
|
||||
KernelVersion: v2.6.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -45,7 +45,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
Description:
|
||||
(RO) returns the device vendor identifier
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/device_rev
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/device_rev
|
||||
Date: Nov, 2005
|
||||
KernelVersion: v2.6.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -53,7 +53,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
Description:
|
||||
(RO) returns the device revision level
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/asm_did
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/asm_did
|
||||
Date: Nov, 2005
|
||||
KernelVersion: v2.6.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -61,7 +61,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
Description:
|
||||
(RO) returns identifier for the assembly containing the device
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/asm_rev
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/asm_rev
|
||||
Date: Nov, 2005
|
||||
KernelVersion: v2.6.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -70,7 +70,7 @@ Description:
|
||||
(RO) returns revision level of the assembly containing the
|
||||
device
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/asm_vid
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/asm_vid
|
||||
Date: Nov, 2005
|
||||
KernelVersion: v2.6.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -79,7 +79,7 @@ Description:
|
||||
(RO) returns vendor identifier of the assembly containing the
|
||||
device
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/destid
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/destid
|
||||
Date: Mar, 2011
|
||||
KernelVersion: v2.6.3
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -88,7 +88,7 @@ Description:
|
||||
(RO) returns device destination ID assigned by the enumeration
|
||||
routine
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/lprev
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/lprev
|
||||
Date: Mar, 2011
|
||||
KernelVersion: v2.6.39
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -97,7 +97,7 @@ Description:
|
||||
(RO) returns name of previous device (switch) on the path to the
|
||||
device that that owns this attribute
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/modalias
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/modalias
|
||||
Date: Jul, 2013
|
||||
KernelVersion: v3.11
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -105,7 +105,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
Description:
|
||||
(RO) returns the device modalias
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:d:iiii/config
|
||||
What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/config
|
||||
Date: Nov, 2005
|
||||
KernelVersion: v2.6.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -128,7 +128,7 @@ device-specific sysfs attributes by specifying a callback function that may be
|
||||
set by the switch initialization routine during enumeration or discovery
|
||||
process.
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:s:iiii/routes
|
||||
What: /sys/bus/rapidio/devices/<nn>:<s>:<iiii>/routes
|
||||
Date: Nov, 2005
|
||||
KernelVersion: v2.6.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -138,7 +138,7 @@ Description:
|
||||
This attribute reports only valid routing table entries, one
|
||||
line for each entry.
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:s:iiii/destid
|
||||
What: /sys/bus/rapidio/devices/<nn>:<s>:<iiii>/destid
|
||||
Date: Mar, 2011
|
||||
KernelVersion: v2.6.3
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -147,7 +147,7 @@ Description:
|
||||
(RO) device destination ID of the associated device that defines
|
||||
a route to the switch
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:s:iiii/hopcount
|
||||
What: /sys/bus/rapidio/devices/<nn>:<s>:<iiii>/hopcount
|
||||
Date: Mar, 2011
|
||||
KernelVersion: v2.6.39
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -155,7 +155,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
Description:
|
||||
(RO) number of hops on the path to the switch
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:s:iiii/lnext
|
||||
What: /sys/bus/rapidio/devices/<nn>:<s>:<iiii>/lnext
|
||||
Date: Mar, 2011
|
||||
KernelVersion: v2.6.39
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -172,7 +172,7 @@ Device-specific Switch Attributes
|
||||
|
||||
IDT_GEN2-
|
||||
|
||||
What: /sys/bus/rapidio/devices/nn:s:iiii/errlog
|
||||
What: /sys/bus/rapidio/devices/<nn>:<s>:<iiii>/errlog
|
||||
Date: Oct, 2010
|
||||
KernelVersion: v2.6.37
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
What: /sys/bus/soundwire/devices/sdw-master-N/revision
|
||||
/sys/bus/soundwire/devices/sdw-master-N/clk_stop_modes
|
||||
/sys/bus/soundwire/devices/sdw-master-N/clk_freq
|
||||
/sys/bus/soundwire/devices/sdw-master-N/clk_gears
|
||||
/sys/bus/soundwire/devices/sdw-master-N/default_col
|
||||
/sys/bus/soundwire/devices/sdw-master-N/default_frame_rate
|
||||
/sys/bus/soundwire/devices/sdw-master-N/default_row
|
||||
/sys/bus/soundwire/devices/sdw-master-N/dynamic_shape
|
||||
/sys/bus/soundwire/devices/sdw-master-N/err_threshold
|
||||
/sys/bus/soundwire/devices/sdw-master-N/max_clk_freq
|
||||
What: /sys/bus/soundwire/devices/sdw-master-<N>/revision
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/clk_stop_modes
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/clk_freq
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/clk_gears
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/default_col
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/default_frame_rate
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/default_row
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/dynamic_shape
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/err_threshold
|
||||
/sys/bus/soundwire/devices/sdw-master-<N>/max_clk_freq
|
||||
|
||||
Date: April 2020
|
||||
|
||||
|
||||
@@ -64,37 +64,37 @@ Description: SoundWire Slave Data Port-0 DisCo properties.
|
||||
Data port 0 are used by the bus to configure the Data Port 0.
|
||||
|
||||
|
||||
What: /sys/bus/soundwire/devices/sdw:.../dpN_src/max_word
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/min_word
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/words
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/type
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/max_grouping
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/simple_ch_prep_sm
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/ch_prep_timeout
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/imp_def_interrupts
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/min_ch
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/max_ch
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/channels
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/ch_combinations
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/max_async_buffer
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/block_pack_mode
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_src/port_encoding
|
||||
What: /sys/bus/soundwire/devices/sdw:.../dp<N>_src/max_word
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/min_word
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/words
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/type
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/max_grouping
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/simple_ch_prep_sm
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/ch_prep_timeout
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/imp_def_interrupts
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/min_ch
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/max_ch
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/channels
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/ch_combinations
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/max_async_buffer
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/block_pack_mode
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/port_encoding
|
||||
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/max_word
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/min_word
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/words
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/type
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/max_grouping
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/simple_ch_prep_sm
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/ch_prep_timeout
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/imp_def_interrupts
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/min_ch
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/max_ch
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/channels
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/ch_combinations
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/max_async_buffer
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/block_pack_mode
|
||||
/sys/bus/soundwire/devices/sdw:.../dpN_sink/port_encoding
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/max_word
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/min_word
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/words
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/type
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/max_grouping
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/simple_ch_prep_sm
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/ch_prep_timeout
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/imp_def_interrupts
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/min_ch
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/max_ch
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/channels
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/ch_combinations
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/max_async_buffer
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/block_pack_mode
|
||||
/sys/bus/soundwire/devices/sdw:.../dp<N>_sink/port_encoding
|
||||
|
||||
Date: May 2020
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/bus/usb/devices/INTERFACE/authorized
|
||||
What: /sys/bus/usb/devices/<INTERFACE>/authorized
|
||||
Date: August 2015
|
||||
Description:
|
||||
This allows to authorize (1) or deauthorize (0)
|
||||
@@ -166,14 +166,14 @@ Description:
|
||||
The file will be present for all speeds of USB devices, and will
|
||||
always read "no" for USB 1.1 and USB 2.0 devices.
|
||||
|
||||
What: /sys/bus/usb/devices/.../(hub interface)/portX
|
||||
What: /sys/bus/usb/devices/.../<hub_interface>/port<X>
|
||||
Date: August 2012
|
||||
Contact: Lan Tianyu <tianyu.lan@intel.com>
|
||||
Description:
|
||||
The /sys/bus/usb/devices/.../(hub interface)/portX
|
||||
The /sys/bus/usb/devices/.../<hub_interface>/port<X>
|
||||
is usb port device's sysfs directory.
|
||||
|
||||
What: /sys/bus/usb/devices/.../(hub interface)/portX/connect_type
|
||||
What: /sys/bus/usb/devices/.../<hub_interface>/port<X>/connect_type
|
||||
Date: January 2013
|
||||
Contact: Lan Tianyu <tianyu.lan@intel.com>
|
||||
Description:
|
||||
@@ -182,7 +182,7 @@ Description:
|
||||
The file will read "hotplug", "hardwired" and "not used" if the
|
||||
information is available, and "unknown" otherwise.
|
||||
|
||||
What: /sys/bus/usb/devices/.../(hub interface)/portX/location
|
||||
What: /sys/bus/usb/devices/.../<hub_interface>/port<X>/location
|
||||
Date: October 2018
|
||||
Contact: Bjørn Mork <bjorn@mork.no>
|
||||
Description:
|
||||
@@ -192,7 +192,7 @@ Description:
|
||||
raw location value as a hex integer.
|
||||
|
||||
|
||||
What: /sys/bus/usb/devices/.../(hub interface)/portX/quirks
|
||||
What: /sys/bus/usb/devices/.../<hub_interface>/port<X>/quirks
|
||||
Date: May 2018
|
||||
Contact: Nicolas Boichat <drinkcat@chromium.org>
|
||||
Description:
|
||||
@@ -216,7 +216,7 @@ Description:
|
||||
used to help make enumeration work better on some high speed
|
||||
devices.
|
||||
|
||||
What: /sys/bus/usb/devices/.../(hub interface)/portX/over_current_count
|
||||
What: /sys/bus/usb/devices/.../<hub_interface>/port<X>/over_current_count
|
||||
Date: February 2018
|
||||
Contact: Richard Leitner <richard.leitner@skidata.com>
|
||||
Description:
|
||||
@@ -230,10 +230,10 @@ Description:
|
||||
Any time this value changes the corresponding hub device will send a
|
||||
udev event with the following attributes::
|
||||
|
||||
OVER_CURRENT_PORT=/sys/bus/usb/devices/.../(hub interface)/portX
|
||||
OVER_CURRENT_PORT=/sys/bus/usb/devices/.../<hub_interface>/port<X>
|
||||
OVER_CURRENT_COUNT=[current value of this sysfs attribute]
|
||||
|
||||
What: /sys/bus/usb/devices/.../(hub interface)/portX/usb3_lpm_permit
|
||||
What: /sys/bus/usb/devices/.../<hub_interface>/port<X>/usb3_lpm_permit
|
||||
Date: November 2015
|
||||
Contact: Lu Baolu <baolu.lu@linux.intel.com>
|
||||
Description:
|
||||
@@ -288,3 +288,277 @@ Description:
|
||||
USB 3.2 adds Dual-lane support, 2 rx and 2 tx -lanes over Type-C.
|
||||
Inter-Chip SSIC devices support asymmetric lanes up to 4 lanes per
|
||||
direction. Devices before USB 3.2 are single lane (tx_lanes = 1)
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bAlternateSetting
|
||||
Description:
|
||||
The current interface alternate setting number, in decimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bcdDevice
|
||||
Description:
|
||||
The device's release number, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bConfigurationValue
|
||||
Description:
|
||||
While a USB device typically have just one configuration
|
||||
setting, some devices support multiple configurations.
|
||||
|
||||
This value shows the current configuration, in decimal.
|
||||
|
||||
Changing its value will change the device's configuration
|
||||
to another setting.
|
||||
|
||||
The number of configurations supported by a device is at:
|
||||
|
||||
/sys/bus/usb/devices/usbX/bNumConfigurations
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bDeviceClass
|
||||
Description:
|
||||
Class code of the device, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bDeviceProtocol
|
||||
Description:
|
||||
Protocol code of the device, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bDeviceSubClass
|
||||
Description:
|
||||
Subclass code of the device, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bInterfaceClass
|
||||
Description:
|
||||
Class code of the interface, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bInterfaceNumber
|
||||
Description:
|
||||
Interface number, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bInterfaceProtocol
|
||||
Description:
|
||||
Protocol code of the interface, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bInterfaceSubClass
|
||||
Description:
|
||||
Subclass code of the interface, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bmAttributes
|
||||
Description:
|
||||
Attributes of the current configuration, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bMaxPacketSize0
|
||||
Description:
|
||||
Maximum endpoint 0 packet size, in decimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bMaxPower
|
||||
Description:
|
||||
Maximum power consumption of the active configuration of
|
||||
the device, in miliamperes.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bNumConfigurations
|
||||
Description:
|
||||
Number of the possible configurations of the device, in
|
||||
decimal. The current configuration is controlled via:
|
||||
|
||||
/sys/bus/usb/devices/usbX/bConfigurationValue
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bNumEndpoints
|
||||
Description:
|
||||
Number of endpoints used on this interface, in hexadecimal.
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/bNumInterfaces
|
||||
Description:
|
||||
Number of interfaces on this device, in decimal.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/busnum
|
||||
Description:
|
||||
Number of the bus.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/configuration
|
||||
Description:
|
||||
Contents of the string descriptor associated with the
|
||||
current configuration. It may include the firmware version
|
||||
of a device and/or its serial number.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/descriptors
|
||||
Description:
|
||||
Contains the interface descriptors, in binary.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/idProduct
|
||||
Description:
|
||||
Product ID, in hexadecimal.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/idVendor
|
||||
Description:
|
||||
Vendor ID, in hexadecimal.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/devspec
|
||||
Description:
|
||||
Displays the Device Tree Open Firmware node of the interface.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/avoid_reset_quirk
|
||||
Description:
|
||||
Most devices have this set to zero.
|
||||
|
||||
If the value is 1, enable a USB quirk that prevents this
|
||||
device to use reset.
|
||||
|
||||
(read/write)
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/devnum
|
||||
Description:
|
||||
USB interface device number, in decimal.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/devpath
|
||||
Description:
|
||||
String containing the USB interface device path.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/manufacturer
|
||||
Description:
|
||||
Vendor specific string containing the name of the
|
||||
manufacturer of the device.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/maxchild
|
||||
Description:
|
||||
Number of ports of an USB hub
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/persist
|
||||
Description:
|
||||
Keeps the device even if it gets disconnected.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/product
|
||||
Description:
|
||||
Vendor specific string containing the name of the
|
||||
device's product.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/speed
|
||||
Description:
|
||||
Shows the device's max speed, according to the USB version,
|
||||
in Mbps.
|
||||
Can be:
|
||||
|
||||
======= ====================
|
||||
Unknown speed unknown
|
||||
1.5 Low speed
|
||||
15 Full speed
|
||||
480 High Speed
|
||||
5000 Super Speed
|
||||
10000 Super Speed+
|
||||
20000 Super Speed+ Gen 2x2
|
||||
======= ====================
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/supports_autosuspend
|
||||
Description:
|
||||
Returns 1 if the device doesn't support autosuspend.
|
||||
Otherwise, returns 0.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/urbnum
|
||||
Description:
|
||||
Number of URBs submitted for the whole device.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/version
|
||||
Description:
|
||||
String containing the USB device version, as encoded
|
||||
at the BCD descriptor.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/power/autosuspend
|
||||
Description:
|
||||
Time in milliseconds for the device to autosuspend. If the
|
||||
value is negative, then autosuspend is prevented.
|
||||
|
||||
(read/write)
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/power/active_duration
|
||||
Description:
|
||||
The total time the device has not been suspended.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/power/connected_duration
|
||||
Description:
|
||||
The total time (in msec) that the device has been connected.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/power/level
|
||||
Description:
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/ep_<N>/bEndpointAddress
|
||||
Description:
|
||||
The address of the endpoint described by this descriptor,
|
||||
in hexadecimal. The endpoint direction on this bitmapped field
|
||||
is also shown at:
|
||||
|
||||
/sys/bus/usb/devices/usbX/ep_<N>/direction
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/ep_<N>/bInterval
|
||||
Description:
|
||||
The interval of the endpoint as described on its descriptor,
|
||||
in hexadecimal. The actual interval depends on the version
|
||||
of the USB. Also shown in time units at
|
||||
/sys/bus/usb/devices/usbX/ep_<N>/interval.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/ep_<N>/bLength
|
||||
Description:
|
||||
Number of bytes of the endpoint descriptor, in hexadecimal.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/ep_<N>/bmAttributes
|
||||
Description:
|
||||
Attributes which apply to the endpoint as described on its
|
||||
descriptor, in hexadecimal. The endpoint type on this
|
||||
bitmapped field is also shown at:
|
||||
|
||||
/sys/bus/usb/devices/usbX/ep_<N>/type
|
||||
|
||||
See USB specs for its meaning.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/ep_<N>/direction
|
||||
Description:
|
||||
Direction of the endpoint. Can be:
|
||||
|
||||
- both (on control endpoints)
|
||||
- in
|
||||
- out
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/ep_<N>/interval
|
||||
Description:
|
||||
Interval for polling endpoint for data transfers, in
|
||||
milisseconds or microseconds.
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/ep_<N>/type
|
||||
Description:
|
||||
Descriptor type. Can be:
|
||||
|
||||
- Control
|
||||
- Isoc
|
||||
- Bulk
|
||||
- Interrupt
|
||||
- unknown
|
||||
|
||||
What: /sys/bus/usb/devices/usbX/ep_<N>/wMaxPacketSize
|
||||
Description:
|
||||
Maximum packet size this endpoint is capable of
|
||||
sending or receiving, in hexadecimal.
|
||||
|
||||
@@ -23,14 +23,17 @@ default
|
||||
The default backing dev, used for non-block device backed
|
||||
filesystems which do not provide their own BDI.
|
||||
|
||||
Files under /sys/class/bdi/<bdi>/
|
||||
|
||||
read_ahead_kb (read-write)
|
||||
|
||||
What: /sys/class/bdi/<bdi>/read_ahead_kb
|
||||
Date: January 2008
|
||||
Contact: Peter Zijlstra <a.p.zijlstra@chello.nl>
|
||||
Description:
|
||||
Size of the read-ahead window in kilobytes
|
||||
|
||||
min_ratio (read-write)
|
||||
|
||||
(read-write)
|
||||
What: /sys/class/bdi/<bdi>/min_ratio
|
||||
Date: January 2008
|
||||
Contact: Peter Zijlstra <a.p.zijlstra@chello.nl>
|
||||
Description:
|
||||
Under normal circumstances each device is given a part of the
|
||||
total write-back cache that relates to its current average
|
||||
writeout speed in relation to the other devices.
|
||||
@@ -39,8 +42,12 @@ min_ratio (read-write)
|
||||
percentage of the write-back cache to a particular device.
|
||||
For example, this is useful for providing a minimum QoS.
|
||||
|
||||
max_ratio (read-write)
|
||||
(read-write)
|
||||
|
||||
What: /sys/class/bdi/<bdi>/max_ratio
|
||||
Date: January 2008
|
||||
Contact: Peter Zijlstra <a.p.zijlstra@chello.nl>
|
||||
Description:
|
||||
Allows limiting a particular device to use not more than the
|
||||
given percentage of the write-back cache. This is useful in
|
||||
situations where we want to avoid one device taking all or
|
||||
@@ -48,7 +55,12 @@ max_ratio (read-write)
|
||||
mount that is prone to get stuck, or a FUSE mount which cannot
|
||||
be trusted to play fair.
|
||||
|
||||
stable_pages_required (read-only)
|
||||
|
||||
(read-write)
|
||||
What: /sys/class/bdi/<bdi>/stable_pages_required
|
||||
Date: January 2008
|
||||
Contact: Peter Zijlstra <a.p.zijlstra@chello.nl>
|
||||
Description:
|
||||
If set, the backing device requires that all pages comprising a write
|
||||
request must not be changed until writeout is complete.
|
||||
|
||||
(read-only)
|
||||
|
||||
@@ -166,10 +166,11 @@ Description: read only
|
||||
Decimal value of the Per Process MMIO space length.
|
||||
Users: https://github.com/ibm-capi/libcxl
|
||||
|
||||
What: /sys/class/cxl/<afu>m/pp_mmio_off (not in a guest)
|
||||
What: /sys/class/cxl/<afu>m/pp_mmio_off
|
||||
Date: September 2014
|
||||
Contact: linuxppc-dev@lists.ozlabs.org
|
||||
Description: read only
|
||||
(not in a guest)
|
||||
Decimal value of the Per Process MMIO space offset.
|
||||
Users: https://github.com/ibm-capi/libcxl
|
||||
|
||||
@@ -190,28 +191,31 @@ Description: read only
|
||||
Identifies the revision level of the PSL.
|
||||
Users: https://github.com/ibm-capi/libcxl
|
||||
|
||||
What: /sys/class/cxl/<card>/base_image (not in a guest)
|
||||
What: /sys/class/cxl/<card>/base_image
|
||||
Date: September 2014
|
||||
Contact: linuxppc-dev@lists.ozlabs.org
|
||||
Description: read only
|
||||
(not in a guest)
|
||||
Identifies the revision level of the base image for devices
|
||||
that support loadable PSLs. For FPGAs this field identifies
|
||||
the image contained in the on-adapter flash which is loaded
|
||||
during the initial program load.
|
||||
Users: https://github.com/ibm-capi/libcxl
|
||||
|
||||
What: /sys/class/cxl/<card>/image_loaded (not in a guest)
|
||||
What: /sys/class/cxl/<card>/image_loaded
|
||||
Date: September 2014
|
||||
Contact: linuxppc-dev@lists.ozlabs.org
|
||||
Description: read only
|
||||
(not in a guest)
|
||||
Will return "user" or "factory" depending on the image loaded
|
||||
onto the card.
|
||||
Users: https://github.com/ibm-capi/libcxl
|
||||
|
||||
What: /sys/class/cxl/<card>/load_image_on_perst (not in a guest)
|
||||
What: /sys/class/cxl/<card>/load_image_on_perst
|
||||
Date: December 2014
|
||||
Contact: linuxppc-dev@lists.ozlabs.org
|
||||
Description: read/write
|
||||
(not in a guest)
|
||||
Valid entries are "none", "user", and "factory".
|
||||
"none" means PERST will not cause image to be loaded to the
|
||||
card. A power cycle is required to load the image.
|
||||
@@ -235,10 +239,11 @@ Description: write only
|
||||
contexts on the card AFUs.
|
||||
Users: https://github.com/ibm-capi/libcxl
|
||||
|
||||
What: /sys/class/cxl/<card>/perst_reloads_same_image (not in a guest)
|
||||
What: /sys/class/cxl/<card>/perst_reloads_same_image
|
||||
Date: July 2015
|
||||
Contact: linuxppc-dev@lists.ozlabs.org
|
||||
Description: read/write
|
||||
(not in a guest)
|
||||
Trust that when an image is reloaded via PERST, it will not
|
||||
have changed.
|
||||
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
What: /sys/class/devfreq-event/event(x)/
|
||||
What: /sys/class/devfreq-event/event<x>/
|
||||
Date: January 2017
|
||||
Contact: Chanwoo Choi <cw00.choi@samsung.com>
|
||||
Description:
|
||||
Provide a place in sysfs for the devfreq-event objects.
|
||||
This allows accessing various devfreq-event specific variables.
|
||||
The name of devfreq-event object denoted as 'event(x)' which
|
||||
The name of devfreq-event object denoted as 'event<x>' which
|
||||
includes the unique number of 'x' for each devfreq-event object.
|
||||
|
||||
What: /sys/class/devfreq-event/event(x)/name
|
||||
What: /sys/class/devfreq-event/event<x>/name
|
||||
Date: January 2017
|
||||
Contact: Chanwoo Choi <cw00.choi@samsung.com>
|
||||
Description:
|
||||
The /sys/class/devfreq-event/event(x)/name attribute contains
|
||||
The /sys/class/devfreq-event/event<x>/name attribute contains
|
||||
the name of the devfreq-event object. This attribute is
|
||||
read-only.
|
||||
|
||||
What: /sys/class/devfreq-event/event(x)/enable_count
|
||||
What: /sys/class/devfreq-event/event<x>/enable_count
|
||||
Date: January 2017
|
||||
Contact: Chanwoo Choi <cw00.choi@samsung.com>
|
||||
Description:
|
||||
The /sys/class/devfreq-event/event(x)/enable_count attribute
|
||||
The /sys/class/devfreq-event/event<x>/enable_count attribute
|
||||
contains the reference count to enable the devfreq-event
|
||||
object. If the device is enabled, the value of attribute is
|
||||
greater than zero.
|
||||
|
||||
@@ -65,19 +65,19 @@ Description:
|
||||
interface associated with each cable cannot update
|
||||
multiple cable states of an extcon device simultaneously.
|
||||
|
||||
What: /sys/class/extcon/.../cable.x/name
|
||||
What: /sys/class/extcon/.../cable.X/name
|
||||
Date: February 2012
|
||||
Contact: MyungJoo Ham <myungjoo.ham@samsung.com>
|
||||
Description:
|
||||
The /sys/class/extcon/.../cable.x/name shows the name of cable
|
||||
"x" (integer between 0 and 31) of an extcon device.
|
||||
The /sys/class/extcon/.../cable.X/name shows the name of cable
|
||||
"X" (integer between 0 and 31) of an extcon device.
|
||||
|
||||
What: /sys/class/extcon/.../cable.x/state
|
||||
What: /sys/class/extcon/.../cable.X/state
|
||||
Date: February 2012
|
||||
Contact: MyungJoo Ham <myungjoo.ham@samsung.com>
|
||||
Description:
|
||||
The /sys/class/extcon/.../cable.x/state shows and stores the
|
||||
state of cable "x" (integer between 0 and 31) of an extcon
|
||||
The /sys/class/extcon/.../cable.X/state shows and stores the
|
||||
state of cable "X" (integer between 0 and 31) of an extcon
|
||||
device. The state value is either 0 (detached) or 1
|
||||
(attached).
|
||||
|
||||
|
||||
27
Documentation/ABI/testing/sysfs-class-fc
Normal file
27
Documentation/ABI/testing/sysfs-class-fc
Normal file
@@ -0,0 +1,27 @@
|
||||
What: /sys/class/fc/fc_udev_device/appid_store
|
||||
Date: Aug 2021
|
||||
Contact: Muneendra Kumar <muneendra.kumar@broadconm.com>
|
||||
Description:
|
||||
This interface allows an admin to set an FC application
|
||||
identifier in the blkcg associated with a cgroup id. The
|
||||
identifier is typically a UUID that is associated with
|
||||
an application or logical entity such as a virtual
|
||||
machine or container group. The application or logical
|
||||
entity utilizes a block device via the cgroup id.
|
||||
FC adapter drivers may query the identifier and tag FC
|
||||
traffic based on the identifier. FC host and FC fabric
|
||||
entities can utilize the application id and FC traffic
|
||||
tag to identify traffic sources.
|
||||
|
||||
The interface expects a string "<cgroupid>:<appid>" where:
|
||||
<cgroupid> is inode of the cgroup in hexadecimal
|
||||
<appid> is user provided string upto 128 characters
|
||||
in length.
|
||||
|
||||
If an appid_store is done for a cgroup id that already
|
||||
has an appid set, the new value will override the
|
||||
previous value.
|
||||
|
||||
If an admin wants to remove an FC application identifier
|
||||
from a cgroup, an appid_store should be done with the
|
||||
following string: "<cgroupid>:"
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/class/gnss/gnssN/type
|
||||
What: /sys/class/gnss/gnss<N>/type
|
||||
Date: May 2018
|
||||
KernelVersion: 4.18
|
||||
Contact: Johan Hovold <johan@kernel.org>
|
||||
|
||||
932
Documentation/ABI/testing/sysfs-class-hwmon
Normal file
932
Documentation/ABI/testing/sysfs-class-hwmon
Normal file
@@ -0,0 +1,932 @@
|
||||
What: /sys/class/hwmon/hwmonX/name
|
||||
Description:
|
||||
The chip name.
|
||||
This should be a short, lowercase string, not containing
|
||||
whitespace, dashes, or the wildcard character '*'.
|
||||
This attribute represents the chip name. It is the only
|
||||
mandatory attribute.
|
||||
I2C devices get this attribute created automatically.
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/update_interval
|
||||
Description:
|
||||
The interval at which the chip will update readings.
|
||||
Unit: millisecond
|
||||
|
||||
RW
|
||||
|
||||
Some devices have a variable update rate or interval.
|
||||
This attribute can be used to change it to the desired value.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_min
|
||||
Description:
|
||||
Voltage min value.
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_lcrit
|
||||
Description:
|
||||
Voltage critical min value.
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RW
|
||||
|
||||
If voltage drops to or below this limit, the system may
|
||||
take drastic action such as power down or reset. At the very
|
||||
least, it should report a fault.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_max
|
||||
Description:
|
||||
Voltage max value.
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_crit
|
||||
Description:
|
||||
Voltage critical max value.
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RW
|
||||
|
||||
If voltage reaches or exceeds this limit, the system may
|
||||
take drastic action such as power down or reset. At the very
|
||||
least, it should report a fault.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_input
|
||||
Description:
|
||||
Voltage input value.
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RO
|
||||
|
||||
Voltage measured on the chip pin.
|
||||
|
||||
Actual voltage depends on the scaling resistors on the
|
||||
motherboard, as recommended in the chip datasheet.
|
||||
|
||||
This varies by chip and by motherboard.
|
||||
Because of this variation, values are generally NOT scaled
|
||||
by the chip driver, and must be done by the application.
|
||||
However, some drivers (notably lm87 and via686a)
|
||||
do scale, because of internal resistors built into a chip.
|
||||
These drivers will output the actual voltage. Rule of
|
||||
thumb: drivers should report the voltage values at the
|
||||
"pins" of the chip.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_average
|
||||
Description:
|
||||
Average voltage
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_lowest
|
||||
Description:
|
||||
Historical minimum voltage
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_highest
|
||||
Description:
|
||||
Historical maximum voltage
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_reset_history
|
||||
Description:
|
||||
Reset inX_lowest and inX_highest
|
||||
|
||||
WO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/in_reset_history
|
||||
Description:
|
||||
Reset inX_lowest and inX_highest for all sensors
|
||||
|
||||
WO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_label
|
||||
Description:
|
||||
Suggested voltage channel label.
|
||||
|
||||
Text string
|
||||
|
||||
Should only be created if the driver has hints about what
|
||||
this voltage channel is being used for, and user-space
|
||||
doesn't. In all other cases, the label is provided by
|
||||
user-space.
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_enable
|
||||
Description:
|
||||
Enable or disable the sensors.
|
||||
|
||||
When disabled the sensor read will return -ENODATA.
|
||||
|
||||
- 1: Enable
|
||||
- 0: Disable
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/cpuY_vid
|
||||
Description:
|
||||
CPU core reference voltage.
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RO
|
||||
|
||||
Not always correct.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/vrm
|
||||
Description:
|
||||
Voltage Regulator Module version number.
|
||||
|
||||
RW (but changing it should no more be necessary)
|
||||
|
||||
Originally the VRM standard version multiplied by 10, but now
|
||||
an arbitrary number, as not all standards have a version
|
||||
number.
|
||||
|
||||
Affects the way the driver calculates the CPU core reference
|
||||
voltage from the vid pins.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_rated_min
|
||||
Description:
|
||||
Minimum rated voltage.
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/inY_rated_max
|
||||
Description:
|
||||
Maximum rated voltage.
|
||||
|
||||
Unit: millivolt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/fanY_min
|
||||
Description:
|
||||
Fan minimum value
|
||||
|
||||
Unit: revolution/min (RPM)
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/fanY_max
|
||||
Description:
|
||||
Fan maximum value
|
||||
|
||||
Unit: revolution/min (RPM)
|
||||
|
||||
Only rarely supported by the hardware.
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/fanY_input
|
||||
Description:
|
||||
Fan input value.
|
||||
|
||||
Unit: revolution/min (RPM)
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/fanY_div
|
||||
Description:
|
||||
Fan divisor.
|
||||
|
||||
Integer value in powers of two (1, 2, 4, 8, 16, 32, 64, 128).
|
||||
|
||||
RW
|
||||
|
||||
Some chips only support values 1, 2, 4 and 8.
|
||||
Note that this is actually an internal clock divisor, which
|
||||
affects the measurable speed range, not the read value.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/fanY_pulses
|
||||
Description:
|
||||
Number of tachometer pulses per fan revolution.
|
||||
|
||||
Integer value, typically between 1 and 4.
|
||||
|
||||
RW
|
||||
|
||||
This value is a characteristic of the fan connected to the
|
||||
device's input, so it has to be set in accordance with the fan
|
||||
model.
|
||||
|
||||
Should only be created if the chip has a register to configure
|
||||
the number of pulses. In the absence of such a register (and
|
||||
thus attribute) the value assumed by all devices is 2 pulses
|
||||
per fan revolution.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/fanY_target
|
||||
Description:
|
||||
Desired fan speed
|
||||
|
||||
Unit: revolution/min (RPM)
|
||||
|
||||
RW
|
||||
|
||||
Only makes sense if the chip supports closed-loop fan speed
|
||||
control based on the measured fan speed.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/fanY_label
|
||||
Description:
|
||||
Suggested fan channel label.
|
||||
|
||||
Text string
|
||||
|
||||
Should only be created if the driver has hints about what
|
||||
this fan channel is being used for, and user-space doesn't.
|
||||
In all other cases, the label is provided by user-space.
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/fanY_enable
|
||||
Description:
|
||||
Enable or disable the sensors.
|
||||
|
||||
When disabled the sensor read will return -ENODATA.
|
||||
|
||||
- 1: Enable
|
||||
- 0: Disable
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/pwmY
|
||||
Description:
|
||||
Pulse width modulation fan control.
|
||||
|
||||
Integer value in the range 0 to 255
|
||||
|
||||
RW
|
||||
|
||||
255 is max or 100%.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/pwmY_enable
|
||||
Description:
|
||||
Fan speed control method:
|
||||
|
||||
- 0: no fan speed control (i.e. fan at full speed)
|
||||
- 1: manual fan speed control enabled (using `pwmY`)
|
||||
- 2+: automatic fan speed control enabled
|
||||
|
||||
Check individual chip documentation files for automatic mode
|
||||
details.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/pwmY_mode
|
||||
Description:
|
||||
- 0: DC mode (direct current)
|
||||
- 1: PWM mode (pulse-width modulation)
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/pwmY_freq
|
||||
Description:
|
||||
Base PWM frequency in Hz.
|
||||
|
||||
Only possibly available when pwmN_mode is PWM, but not always
|
||||
present even then.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/pwmY_auto_channels_temp
|
||||
Description:
|
||||
Select which temperature channels affect this PWM output in
|
||||
auto mode.
|
||||
|
||||
Bitfield, 1 is temp1, 2 is temp2, 4 is temp3 etc...
|
||||
Which values are possible depend on the chip used.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/pwmY_auto_pointZ_pwm
|
||||
What: /sys/class/hwmon/hwmonX/pwmY_auto_pointZ_temp
|
||||
What: /sys/class/hwmon/hwmonX/pwmY_auto_pointZ_temp_hyst
|
||||
Description:
|
||||
Define the PWM vs temperature curve.
|
||||
|
||||
Number of trip points is chip-dependent. Use this for chips
|
||||
which associate trip points to PWM output channels.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_auto_pointZ_pwm
|
||||
What: /sys/class/hwmon/hwmonX/tempY_auto_pointZ_temp
|
||||
What: /sys/class/hwmon/hwmonX/tempY_auto_pointZ_temp_hyst
|
||||
Description:
|
||||
Define the PWM vs temperature curve.
|
||||
|
||||
Number of trip points is chip-dependent. Use this for chips
|
||||
which associate trip points to temperature channels.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_type
|
||||
Description:
|
||||
Sensor type selection.
|
||||
|
||||
Integers 1 to 6
|
||||
|
||||
RW
|
||||
|
||||
- 1: CPU embedded diode
|
||||
- 2: 3904 transistor
|
||||
- 3: thermal diode
|
||||
- 4: thermistor
|
||||
- 5: AMD AMDSI
|
||||
- 6: Intel PECI
|
||||
|
||||
Not all types are supported by all chips
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_max
|
||||
Description:
|
||||
Temperature max value.
|
||||
|
||||
Unit: millidegree Celsius (or millivolt, see below)
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_min
|
||||
Description:
|
||||
Temperature min value.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_max_hyst
|
||||
Description:
|
||||
Temperature hysteresis value for max limit.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
Must be reported as an absolute temperature, NOT a delta
|
||||
from the max value.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_min_hyst
|
||||
Description:
|
||||
Temperature hysteresis value for min limit.
|
||||
Unit: millidegree Celsius
|
||||
|
||||
Must be reported as an absolute temperature, NOT a delta
|
||||
from the min value.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_input
|
||||
Description:
|
||||
Temperature input value.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_crit
|
||||
Description:
|
||||
Temperature critical max value, typically greater than
|
||||
corresponding temp_max values.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_crit_alarm
|
||||
Description:
|
||||
Critical high temperature alarm flag.
|
||||
|
||||
- 0: OK
|
||||
- 1: temperature has reached tempY_crit
|
||||
|
||||
RW
|
||||
|
||||
Contrary to regular alarm flags which clear themselves
|
||||
automatically when read, this one sticks until cleared by
|
||||
the user. This is done by writing 0 to the file. Writing
|
||||
other values is unsupported.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_crit_hyst
|
||||
Description:
|
||||
Temperature hysteresis value for critical limit.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
Must be reported as an absolute temperature, NOT a delta
|
||||
from the critical value.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_emergency
|
||||
Description:
|
||||
Temperature emergency max value, for chips supporting more than
|
||||
two upper temperature limits. Must be equal or greater than
|
||||
corresponding temp_crit values.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_emergency_hyst
|
||||
Description:
|
||||
Temperature hysteresis value for emergency limit.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
Must be reported as an absolute temperature, NOT a delta
|
||||
from the emergency value.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_lcrit
|
||||
Description:
|
||||
Temperature critical min value, typically lower than
|
||||
corresponding temp_min values.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_lcrit_hyst
|
||||
Description:
|
||||
Temperature hysteresis value for critical min limit.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
Must be reported as an absolute temperature, NOT a delta
|
||||
from the critical min value.
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_offset
|
||||
Description:
|
||||
Temperature offset which is added to the temperature reading
|
||||
by the chip.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
Read/Write value.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_label
|
||||
Description:
|
||||
Suggested temperature channel label.
|
||||
|
||||
Text string
|
||||
|
||||
Should only be created if the driver has hints about what
|
||||
this temperature channel is being used for, and user-space
|
||||
doesn't. In all other cases, the label is provided by
|
||||
user-space.
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_lowest
|
||||
Description:
|
||||
Historical minimum temperature
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_highest
|
||||
Description:
|
||||
Historical maximum temperature
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_reset_history
|
||||
Description:
|
||||
Reset temp_lowest and temp_highest
|
||||
|
||||
WO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/temp_reset_history
|
||||
Description:
|
||||
Reset temp_lowest and temp_highest for all sensors
|
||||
|
||||
WO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_enable
|
||||
Description:
|
||||
Enable or disable the sensors.
|
||||
|
||||
When disabled the sensor read will return -ENODATA.
|
||||
|
||||
- 1: Enable
|
||||
- 0: Disable
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_rated_min
|
||||
Description:
|
||||
Minimum rated temperature.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/tempY_rated_max
|
||||
Description:
|
||||
Maximum rated temperature.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_max
|
||||
Description:
|
||||
Current max value
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_min
|
||||
Description:
|
||||
Current min value.
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_lcrit
|
||||
Description:
|
||||
Current critical low value
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_crit
|
||||
Description:
|
||||
Current critical high value.
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_input
|
||||
Description:
|
||||
Current input value
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_average
|
||||
Description:
|
||||
Average current use
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_lowest
|
||||
Description:
|
||||
Historical minimum current
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_highest
|
||||
Description:
|
||||
Historical maximum current
|
||||
Unit: milliampere
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_reset_history
|
||||
Description:
|
||||
Reset currX_lowest and currX_highest
|
||||
|
||||
WO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/curr_reset_history
|
||||
Description:
|
||||
Reset currX_lowest and currX_highest for all sensors
|
||||
|
||||
WO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_enable
|
||||
Description:
|
||||
Enable or disable the sensors.
|
||||
|
||||
When disabled the sensor read will return -ENODATA.
|
||||
|
||||
- 1: Enable
|
||||
- 0: Disable
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_rated_min
|
||||
Description:
|
||||
Minimum rated current.
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/currY_rated_max
|
||||
Description:
|
||||
Maximum rated current.
|
||||
|
||||
Unit: milliampere
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_average
|
||||
Description:
|
||||
Average power use
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_average_interval
|
||||
Description:
|
||||
Power use averaging interval. A poll
|
||||
notification is sent to this file if the
|
||||
hardware changes the averaging interval.
|
||||
|
||||
Unit: milliseconds
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_average_interval_max
|
||||
Description:
|
||||
Maximum power use averaging interval
|
||||
|
||||
Unit: milliseconds
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_average_interval_min
|
||||
Description:
|
||||
Minimum power use averaging interval
|
||||
|
||||
Unit: milliseconds
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_average_highest
|
||||
Description:
|
||||
Historical average maximum power use
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_average_lowest
|
||||
Description:
|
||||
Historical average minimum power use
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_average_max
|
||||
Description:
|
||||
A poll notification is sent to
|
||||
`powerY_average` when power use
|
||||
rises above this value.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_average_min
|
||||
Description:
|
||||
A poll notification is sent to
|
||||
`powerY_average` when power use
|
||||
sinks below this value.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_input
|
||||
Description:
|
||||
Instantaneous power use
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_input_highest
|
||||
Description:
|
||||
Historical maximum power use
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_input_lowest
|
||||
Description:
|
||||
Historical minimum power use
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_reset_history
|
||||
Description:
|
||||
Reset input_highest, input_lowest,
|
||||
average_highest and average_lowest.
|
||||
|
||||
WO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_accuracy
|
||||
Description:
|
||||
Accuracy of the power meter.
|
||||
|
||||
Unit: Percent
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_cap
|
||||
Description:
|
||||
If power use rises above this limit, the
|
||||
system should take action to reduce power use.
|
||||
A poll notification is sent to this file if the
|
||||
cap is changed by the hardware. The `*_cap`
|
||||
files only appear if the cap is known to be
|
||||
enforced by hardware.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_cap_hyst
|
||||
Description:
|
||||
Margin of hysteresis built around capping and
|
||||
notification.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_cap_max
|
||||
Description:
|
||||
Maximum cap that can be set.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_cap_min
|
||||
Description:
|
||||
Minimum cap that can be set.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_max
|
||||
Description:
|
||||
Maximum power.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_crit
|
||||
Description:
|
||||
Critical maximum power.
|
||||
|
||||
If power rises to or above this limit, the
|
||||
system is expected take drastic action to reduce
|
||||
power consumption, such as a system shutdown or
|
||||
a forced powerdown of some devices.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_enable
|
||||
Description:
|
||||
Enable or disable the sensors.
|
||||
|
||||
When disabled the sensor read will return
|
||||
-ENODATA.
|
||||
|
||||
- 1: Enable
|
||||
- 0: Disable
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_rated_min
|
||||
Description:
|
||||
Minimum rated power.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/powerY_rated_max
|
||||
Description:
|
||||
Maximum rated power.
|
||||
|
||||
Unit: microWatt
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/energyY_input
|
||||
Description:
|
||||
Cumulative energy use
|
||||
|
||||
Unit: microJoule
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/energyY_enable
|
||||
Description:
|
||||
Enable or disable the sensors.
|
||||
|
||||
When disabled the sensor read will return
|
||||
-ENODATA.
|
||||
|
||||
- 1: Enable
|
||||
- 0: Disable
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/humidityY_input
|
||||
Description:
|
||||
Humidity
|
||||
|
||||
Unit: milli-percent (per cent mille, pcm)
|
||||
|
||||
RO
|
||||
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/humidityY_enable
|
||||
Description:
|
||||
Enable or disable the sensors
|
||||
|
||||
When disabled the sensor read will return
|
||||
-ENODATA.
|
||||
|
||||
- 1: Enable
|
||||
- 0: Disable
|
||||
|
||||
RW
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/humidityY_rated_min
|
||||
Description:
|
||||
Minimum rated humidity.
|
||||
|
||||
Unit: milli-percent (per cent mille, pcm)
|
||||
|
||||
RO
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/humidityY_rated_max
|
||||
Description:
|
||||
Maximum rated humidity.
|
||||
|
||||
Unit: milli-percent (per cent mille, pcm)
|
||||
|
||||
RO
|
||||
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/intrusionY_alarm
|
||||
Description:
|
||||
Chassis intrusion detection
|
||||
|
||||
- 0: OK
|
||||
- 1: intrusion detected
|
||||
|
||||
RW
|
||||
|
||||
Contrary to regular alarm flags which clear themselves
|
||||
automatically when read, this one sticks until cleared by
|
||||
the user. This is done by writing 0 to the file. Writing
|
||||
other values is unsupported.
|
||||
|
||||
What: /sys/class/hwmon/hwmonX/intrusionY_beep
|
||||
Description:
|
||||
Chassis intrusion beep
|
||||
|
||||
- 0: disable
|
||||
- 1: enable
|
||||
|
||||
RW
|
||||
@@ -6,7 +6,7 @@ Description:
|
||||
The mei/ class sub-directory belongs to mei device class
|
||||
|
||||
|
||||
What: /sys/class/mei/meiN/
|
||||
What: /sys/class/mei/mei<N>/
|
||||
Date: May 2014
|
||||
KernelVersion: 3.17
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
@@ -14,7 +14,7 @@ Description:
|
||||
The /sys/class/mei/meiN directory is created for
|
||||
each probed mei device
|
||||
|
||||
What: /sys/class/mei/meiN/fw_status
|
||||
What: /sys/class/mei/mei<N>/fw_status
|
||||
Date: Nov 2014
|
||||
KernelVersion: 3.19
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
@@ -29,7 +29,7 @@ Description: Display fw status registers content
|
||||
Also number of registers varies between 1 and 6
|
||||
depending on generation.
|
||||
|
||||
What: /sys/class/mei/meiN/hbm_ver
|
||||
What: /sys/class/mei/mei<N>/hbm_ver
|
||||
Date: Aug 2016
|
||||
KernelVersion: 4.9
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
@@ -38,7 +38,7 @@ Description: Display the negotiated HBM protocol version.
|
||||
The HBM protocol version negotiated
|
||||
between the driver and the device.
|
||||
|
||||
What: /sys/class/mei/meiN/hbm_ver_drv
|
||||
What: /sys/class/mei/mei<N>/hbm_ver_drv
|
||||
Date: Aug 2016
|
||||
KernelVersion: 4.9
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
@@ -46,7 +46,7 @@ Description: Display the driver HBM protocol version.
|
||||
|
||||
The HBM protocol version supported by the driver.
|
||||
|
||||
What: /sys/class/mei/meiN/tx_queue_limit
|
||||
What: /sys/class/mei/mei<N>/tx_queue_limit
|
||||
Date: Jan 2018
|
||||
KernelVersion: 4.16
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
@@ -55,7 +55,7 @@ Description: Configure tx queue limit
|
||||
Set maximal number of pending writes
|
||||
per opened session.
|
||||
|
||||
What: /sys/class/mei/meiN/fw_ver
|
||||
What: /sys/class/mei/mei<N>/fw_ver
|
||||
Date: May 2018
|
||||
KernelVersion: 4.18
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
@@ -66,7 +66,7 @@ Description: Display the ME firmware version.
|
||||
There can be up to three such blocks for different
|
||||
FW components.
|
||||
|
||||
What: /sys/class/mei/meiN/dev_state
|
||||
What: /sys/class/mei/mei<N>/dev_state
|
||||
Date: Mar 2019
|
||||
KernelVersion: 5.1
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
@@ -81,7 +81,7 @@ Description: Display the ME device state.
|
||||
POWER_DOWN
|
||||
POWER_UP
|
||||
|
||||
What: /sys/class/mei/meiN/trc
|
||||
What: /sys/class/mei/mei<N>/trc
|
||||
Date: Nov 2019
|
||||
KernelVersion: 5.5
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
@@ -91,7 +91,7 @@ Description: Display trc status register content
|
||||
status information into trc status register
|
||||
for BIOS and OS to monitor fw health.
|
||||
|
||||
What: /sys/class/mei/meiN/kind
|
||||
What: /sys/class/mei/mei<N>/kind
|
||||
Date: Jul 2020
|
||||
KernelVersion: 5.8
|
||||
Contact: Tomas Winkler <tomas.winkler@intel.com>
|
||||
|
||||
@@ -8,7 +8,7 @@ Description:
|
||||
PCIe form factor add-in Coprocessor card based on the Intel Many
|
||||
Integrated Core (MIC) architecture that runs a Linux OS.
|
||||
|
||||
What: /sys/class/mic/mic(x)
|
||||
What: /sys/class/mic/mic<X>
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -17,7 +17,7 @@ Description:
|
||||
represent MIC devices (0,1,..etc). Each directory has
|
||||
information specific to that MIC device.
|
||||
|
||||
What: /sys/class/mic/mic(x)/family
|
||||
What: /sys/class/mic/mic<X>/family
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -25,7 +25,7 @@ Description:
|
||||
Provides information about the Coprocessor family for an Intel
|
||||
MIC device. For example - "x100"
|
||||
|
||||
What: /sys/class/mic/mic(x)/stepping
|
||||
What: /sys/class/mic/mic<X>/stepping
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -33,7 +33,7 @@ Description:
|
||||
Provides information about the silicon stepping for an Intel
|
||||
MIC device. For example - "A0" or "B0"
|
||||
|
||||
What: /sys/class/mic/mic(x)/state
|
||||
What: /sys/class/mic/mic<X>/state
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -69,7 +69,7 @@ Description:
|
||||
"shutdown" Initiates card OS shutdown.
|
||||
========== ===================================================
|
||||
|
||||
What: /sys/class/mic/mic(x)/shutdown_status
|
||||
What: /sys/class/mic/mic<X>/shutdown_status
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -88,7 +88,7 @@ Description:
|
||||
"restart" Shutdown because of a restart command.
|
||||
========== ===================================================
|
||||
|
||||
What: /sys/class/mic/mic(x)/cmdline
|
||||
What: /sys/class/mic/mic<X>/cmdline
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -104,7 +104,7 @@ Description:
|
||||
or modify existing ones and then write the whole kernel command
|
||||
line back to this entry.
|
||||
|
||||
What: /sys/class/mic/mic(x)/firmware
|
||||
What: /sys/class/mic/mic<X>/firmware
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -114,7 +114,7 @@ Description:
|
||||
card can be found. The entry can be written to change the
|
||||
firmware image location under /lib/firmware/.
|
||||
|
||||
What: /sys/class/mic/mic(x)/ramdisk
|
||||
What: /sys/class/mic/mic<X>/ramdisk
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -124,7 +124,7 @@ Description:
|
||||
OS boot can be found. The entry can be written to change
|
||||
the ramdisk image location under /lib/firmware/.
|
||||
|
||||
What: /sys/class/mic/mic(x)/bootmode
|
||||
What: /sys/class/mic/mic<X>/bootmode
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -135,7 +135,7 @@ Description:
|
||||
a) linux - Boot a Linux image.
|
||||
b) flash - Boot an image for flash updates.
|
||||
|
||||
What: /sys/class/mic/mic(x)/log_buf_addr
|
||||
What: /sys/class/mic/mic<X>/log_buf_addr
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -149,7 +149,7 @@ Description:
|
||||
log buffer address to be written can be found in the System.map
|
||||
file of the card OS.
|
||||
|
||||
What: /sys/class/mic/mic(x)/log_buf_len
|
||||
What: /sys/class/mic/mic<X>/log_buf_len
|
||||
Date: October 2013
|
||||
KernelVersion: 3.13
|
||||
Contact: Sudeep Dutt <sudeep.dutt@intel.com>
|
||||
@@ -163,7 +163,7 @@ Description:
|
||||
buffer length address to be written can be found in the
|
||||
System.map file of the card OS.
|
||||
|
||||
What: /sys/class/mic/mic(x)/heartbeat_enable
|
||||
What: /sys/class/mic/mic<X>/heartbeat_enable
|
||||
Date: March 2015
|
||||
KernelVersion: 4.4
|
||||
Contact: Ashutosh Dixit <ashutosh.dixit@intel.com>
|
||||
|
||||
@@ -7,7 +7,7 @@ Description:
|
||||
Framework and provides a sysfs interface for using MUX
|
||||
controllers.
|
||||
|
||||
What: /sys/class/mux/muxchipN/
|
||||
What: /sys/class/mux/muxchip<N>/
|
||||
Date: April 2017
|
||||
KernelVersion: 4.13
|
||||
Contact: Peter Rosin <peda@axentia.se>
|
||||
|
||||
@@ -480,6 +480,19 @@ Description:
|
||||
|
||||
Valid values: Represented in microvolts
|
||||
|
||||
What: /sys/class/power_supply/<supply_name>/cycle_count
|
||||
Date: January 2010
|
||||
Contact: linux-pm@vger.kernel.org
|
||||
Description:
|
||||
Reports the number of full charge + discharge cycles the
|
||||
battery has undergone.
|
||||
|
||||
Access: Read
|
||||
|
||||
Valid values:
|
||||
Integer > 0: representing full cycles
|
||||
Integer = 0: cycle_count info is not available
|
||||
|
||||
**USB Properties**
|
||||
|
||||
What: /sys/class/power_supply/<supply_name>/input_current_limit
|
||||
|
||||
@@ -7,7 +7,7 @@ Description:
|
||||
Framework and provides a sysfs interface for using PWM
|
||||
channels.
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/
|
||||
What: /sys/class/pwm/pwmchip<N>/
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
@@ -16,14 +16,14 @@ Description:
|
||||
probed PWM controller/chip where N is the base of the
|
||||
PWM chip.
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/npwm
|
||||
What: /sys/class/pwm/pwmchip<N>/npwm
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
Description:
|
||||
The number of PWM channels supported by the PWM chip.
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/export
|
||||
What: /sys/class/pwm/pwmchip<N>/export
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
@@ -31,14 +31,14 @@ Description:
|
||||
Exports a PWM channel from the PWM chip for sysfs control.
|
||||
Value is between 0 and /sys/class/pwm/pwmchipN/npwm - 1.
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/unexport
|
||||
What: /sys/class/pwm/pwmchip<N>/unexport
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
Description:
|
||||
Unexports a PWM channel.
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/pwmX
|
||||
What: /sys/class/pwm/pwmchip<N>/pwmX
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
@@ -47,21 +47,21 @@ Description:
|
||||
each exported PWM channel where X is the exported PWM
|
||||
channel number.
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/pwmX/period
|
||||
What: /sys/class/pwm/pwmchip<N>/pwmX/period
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
Description:
|
||||
Sets the PWM signal period in nanoseconds.
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/pwmX/duty_cycle
|
||||
What: /sys/class/pwm/pwmchip<N>/pwmX/duty_cycle
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
Description:
|
||||
Sets the PWM signal duty cycle in nanoseconds.
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/pwmX/polarity
|
||||
What: /sys/class/pwm/pwmchip<N>/pwmX/polarity
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
@@ -69,7 +69,7 @@ Description:
|
||||
Sets the output polarity of the PWM signal to "normal" or
|
||||
"inversed".
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/pwmX/enable
|
||||
What: /sys/class/pwm/pwmchip<N>/pwmX/enable
|
||||
Date: May 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
||||
@@ -78,7 +78,7 @@ Description:
|
||||
0 is disabled
|
||||
1 is enabled
|
||||
|
||||
What: /sys/class/pwm/pwmchipN/pwmX/capture
|
||||
What: /sys/class/pwm/pwmchip<N>/pwmX/capture
|
||||
Date: June 2016
|
||||
KernelVersion: 4.8
|
||||
Contact: Lee Jones <lee.jones@linaro.org>
|
||||
|
||||
@@ -10,7 +10,7 @@ Description:
|
||||
NOTE: An mport ID is not a RapidIO destination ID assigned to a
|
||||
given local mport device.
|
||||
|
||||
What: /sys/class/rapidio_port/rapidioN/sys_size
|
||||
What: /sys/class/rapidio_port/rapidio<N>/sys_size
|
||||
Date: Apr, 2014
|
||||
KernelVersion: v3.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
@@ -22,7 +22,7 @@ Description:
|
||||
|
||||
1 = large (16-bit destination ID, max. 65536 devices).
|
||||
|
||||
What: /sys/class/rapidio_port/rapidioN/port_destid
|
||||
What: /sys/class/rapidio_port/rapidio<N>/port_destid
|
||||
Date: Apr, 2014
|
||||
KernelVersion: v3.15
|
||||
Contact: Matt Porter <mporter@kernel.crashing.org>,
|
||||
|
||||
@@ -7,7 +7,7 @@ Description:
|
||||
core and provides a sysfs interface for configuring infrared
|
||||
remote controller receivers.
|
||||
|
||||
What: /sys/class/rc/rcN/
|
||||
What: /sys/class/rc/rc<N>/
|
||||
Date: Apr 2010
|
||||
KernelVersion: 2.6.35
|
||||
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
||||
@@ -15,7 +15,7 @@ Description:
|
||||
A /sys/class/rc/rcN directory is created for each remote
|
||||
control receiver device where N is the number of the receiver.
|
||||
|
||||
What: /sys/class/rc/rcN/protocols
|
||||
What: /sys/class/rc/rc<N>/protocols
|
||||
Date: Jun 2010
|
||||
KernelVersion: 2.6.36
|
||||
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
||||
@@ -40,7 +40,7 @@ Description:
|
||||
Write fails with EINVAL if an invalid protocol combination or
|
||||
unknown protocol name is used.
|
||||
|
||||
What: /sys/class/rc/rcN/filter
|
||||
What: /sys/class/rc/rc<N>/filter
|
||||
Date: Jan 2014
|
||||
KernelVersion: 3.15
|
||||
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
||||
@@ -55,7 +55,7 @@ Description:
|
||||
|
||||
This value may be reset to 0 if the current protocol is altered.
|
||||
|
||||
What: /sys/class/rc/rcN/filter_mask
|
||||
What: /sys/class/rc/rc<N>/filter_mask
|
||||
Date: Jan 2014
|
||||
KernelVersion: 3.15
|
||||
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
||||
@@ -72,7 +72,7 @@ Description:
|
||||
|
||||
This value may be reset to 0 if the current protocol is altered.
|
||||
|
||||
What: /sys/class/rc/rcN/wakeup_protocols
|
||||
What: /sys/class/rc/rc<N>/wakeup_protocols
|
||||
Date: Feb 2017
|
||||
KernelVersion: 4.11
|
||||
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
||||
@@ -98,7 +98,7 @@ Description:
|
||||
unknown protocol name is used, or if wakeup is not supported by
|
||||
the hardware.
|
||||
|
||||
What: /sys/class/rc/rcN/wakeup_filter
|
||||
What: /sys/class/rc/rc<N>/wakeup_filter
|
||||
Date: Jan 2014
|
||||
KernelVersion: 3.15
|
||||
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
||||
@@ -117,7 +117,7 @@ Description:
|
||||
|
||||
This value may be reset to 0 if the wakeup protocol is altered.
|
||||
|
||||
What: /sys/class/rc/rcN/wakeup_filter_mask
|
||||
What: /sys/class/rc/rc<N>/wakeup_filter_mask
|
||||
Date: Jan 2014
|
||||
KernelVersion: 3.15
|
||||
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/class/rc/rcN/wakeup_data
|
||||
What: /sys/class/rc/rc<N>/wakeup_data
|
||||
Date: Mar 2016
|
||||
KernelVersion: 4.6
|
||||
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
||||
|
||||
259
Documentation/ABI/testing/sysfs-class-thermal
Normal file
259
Documentation/ABI/testing/sysfs-class-thermal
Normal file
@@ -0,0 +1,259 @@
|
||||
What: /sys/class/thermal/thermal_zoneX/type
|
||||
Description:
|
||||
Strings which represent the thermal zone type.
|
||||
This is given by thermal zone driver as part of registration.
|
||||
E.g: "acpitz" indicates it's an ACPI thermal device.
|
||||
In order to keep it consistent with hwmon sys attribute; this
|
||||
shouldbe a short, lowercase string, not containing spaces nor
|
||||
dashes.
|
||||
|
||||
RO, Required
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/temp
|
||||
Description:
|
||||
Current temperature as reported by thermal zone (sensor).
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RO, Required
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/mode
|
||||
Description:
|
||||
One of the predefined values in [enabled, disabled].
|
||||
This file gives information about the algorithm that is
|
||||
currently managing the thermal zone. It can be either default
|
||||
kernel based algorithm or user space application.
|
||||
|
||||
enabled
|
||||
enable Kernel Thermal management.
|
||||
disabled
|
||||
Preventing kernel thermal zone driver actions upon
|
||||
trip points so that user application can take full
|
||||
charge of the thermal management.
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/policy
|
||||
Description:
|
||||
One of the various thermal governors used for a particular zone.
|
||||
|
||||
RW, Required
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/available_policies
|
||||
Description:
|
||||
Available thermal governors which can be used for a
|
||||
particular zone.
|
||||
|
||||
RO, Required
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/trip_point_Y_temp
|
||||
Description:
|
||||
The temperature above which trip point will be fired.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RO, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/trip_point_Y_type
|
||||
Description:
|
||||
Strings which indicate the type of the trip point.
|
||||
|
||||
E.g. it can be one of critical, hot, passive, `active[0-*]`
|
||||
for ACPI thermal zone.
|
||||
|
||||
RO, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/trip_point_Y_hyst
|
||||
Description:
|
||||
The hysteresis value for a trip point, represented as an
|
||||
integer.
|
||||
|
||||
Unit: Celsius
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/cdevY
|
||||
Description:
|
||||
Sysfs link to the thermal cooling device node where the sys I/F
|
||||
for cooling device throttling control represents.
|
||||
|
||||
RO, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/cdevY_trip_point
|
||||
Description:
|
||||
The trip point in this thermal zone which `cdev[0-*]` is
|
||||
associated with; -1 means the cooling device is not
|
||||
associated with any trip point.
|
||||
|
||||
RO, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/cdevY_weight
|
||||
Description:
|
||||
The influence of `cdev[0-*]` in this thermal zone. This value
|
||||
is relative to the rest of cooling devices in the thermal
|
||||
zone. For example, if a cooling device has a weight double
|
||||
than that of other, it's twice as effective in cooling the
|
||||
thermal zone.
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/emul_temp
|
||||
Description:
|
||||
Interface to set the emulated temperature method in thermal zone
|
||||
(sensor). After setting this temperature, the thermal zone may
|
||||
pass this temperature to platform emulation function if
|
||||
registered or cache it locally. This is useful in debugging
|
||||
different temperature threshold and its associated cooling
|
||||
action. This is write only node and writing 0 on this node
|
||||
should disable emulation.
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
WO, Optional
|
||||
|
||||
WARNING:
|
||||
Be careful while enabling this option on production systems,
|
||||
because userland can easily disable the thermal policy by simply
|
||||
flooding this sysfs node with low temperature values.
|
||||
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/k_d
|
||||
Description:
|
||||
The derivative term of the power allocator governor's PID
|
||||
controller. For more information see
|
||||
Documentation/driver-api/thermal/power_allocator.rst
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/k_i
|
||||
Description:
|
||||
The integral term of the power allocator governor's PID
|
||||
controller. This term allows the PID controller to compensate
|
||||
for long term drift. For more information see
|
||||
Documentation/driver-api/thermal/power_allocator.rst
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/k_po
|
||||
Description:
|
||||
The proportional term of the power allocator governor's PID
|
||||
controller during temperature overshoot. Temperature overshoot
|
||||
is when the current temperature is above the "desired
|
||||
temperature" trip point. For more information see
|
||||
Documentation/driver-api/thermal/power_allocator.rst
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/k_pu
|
||||
Description:
|
||||
The proportional term of the power allocator governor's PID
|
||||
controller during temperature undershoot. Temperature undershoot
|
||||
is when the current temperature is below the "desired
|
||||
temperature" trip point. For more information see
|
||||
Documentation/driver-api/thermal/power_allocator.rst
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/integral_cutoff
|
||||
Description:
|
||||
Temperature offset from the desired temperature trip point
|
||||
above which the integral term of the power allocator
|
||||
governor's PID controller starts accumulating errors. For
|
||||
example, if integral_cutoff is 0, then the integral term only
|
||||
accumulates error when temperature is above the desired
|
||||
temperature trip point. For more information see
|
||||
Documentation/driver-api/thermal/power_allocator.rst
|
||||
|
||||
Unit: millidegree Celsius
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/slope
|
||||
Description:
|
||||
The slope constant used in a linear extrapolation model
|
||||
to determine a hotspot temperature based off the sensor's
|
||||
raw readings. It is up to the device driver to determine
|
||||
the usage of these values.
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/offset
|
||||
Description:
|
||||
The offset constant used in a linear extrapolation model
|
||||
to determine a hotspot temperature based off the sensor's
|
||||
raw readings. It is up to the device driver to determine
|
||||
the usage of these values.
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/thermal_zoneX/sustainable_power
|
||||
Description:
|
||||
An estimate of the sustained power that can be dissipated by
|
||||
the thermal zone. Used by the power allocator governor. For
|
||||
more information see
|
||||
Documentation/driver-api/thermal/power_allocator.rst
|
||||
|
||||
Unit: milliwatts
|
||||
|
||||
RW, Optional
|
||||
|
||||
What: /sys/class/thermal/cooling_deviceX/type
|
||||
Description:
|
||||
String which represents the type of device, e.g:
|
||||
|
||||
- for generic ACPI: should be "Fan", "Processor" or "LCD"
|
||||
- for memory controller device on intel_menlow platform:
|
||||
should be "Memory controller".
|
||||
|
||||
RO, Required
|
||||
|
||||
What: /sys/class/thermal/cooling_deviceX/max_state
|
||||
Description:
|
||||
The maximum permissible cooling state of this cooling device.
|
||||
|
||||
RO, Required
|
||||
|
||||
What: /sys/class/thermal/cooling_deviceX/cur_state
|
||||
Description:
|
||||
The current cooling state of this cooling device.
|
||||
The value can any integer numbers between 0 and max_state:
|
||||
|
||||
- cur_state == 0 means no cooling
|
||||
- cur_state == max_state means the maximum cooling.
|
||||
|
||||
RW, Required
|
||||
|
||||
What: /sys/class/thermal/cooling_deviceX/stats/reset
|
||||
Description:
|
||||
Writing any value resets the cooling device's statistics.
|
||||
|
||||
WO, Required
|
||||
|
||||
What: /sys/class/thermal/cooling_deviceX/stats/time_in_state_ms:
|
||||
Description:
|
||||
The amount of time spent by the cooling device in various
|
||||
cooling states. The output will have "<state> <time>" pair
|
||||
in each line, which will mean this cooling device spent <time>
|
||||
msec of time at <state>.
|
||||
|
||||
Output will have one line for each of the supported states.
|
||||
|
||||
RO, Required
|
||||
|
||||
What: /sys/class/thermal/cooling_deviceX/stats/total_trans
|
||||
Description:
|
||||
A single positive value showing the total number of times
|
||||
the state of a cooling device is changed.
|
||||
|
||||
RO, Required
|
||||
|
||||
What: /sys/class/thermal/cooling_deviceX/stats/trans_table
|
||||
Description:
|
||||
This gives fine grained information about all the cooling state
|
||||
transitions. The cat output here is a two dimensional matrix,
|
||||
where an entry <i,j> (row i, column j) represents the number
|
||||
of transitions from State_i to State_j. If the transition
|
||||
table is bigger than PAGE_SIZE, reading this will return
|
||||
an -EFBIG error.
|
||||
|
||||
RO, Required
|
||||
@@ -200,7 +200,7 @@ Description: USB Power Delivery Specification defines a set of product types
|
||||
amc Alternate Mode Controller
|
||||
====================== ==========================
|
||||
|
||||
What: /sys/class/typec/<port>-partner>/identity/
|
||||
What: /sys/class/typec/<port>-partner/identity/
|
||||
Date: April 2017
|
||||
Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com>
|
||||
Description:
|
||||
|
||||
@@ -18,14 +18,14 @@ Description:
|
||||
and it will be removed. The default is 3 superframes
|
||||
(~197 ms) as required by the specification.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/
|
||||
What: /sys/class/uwb_rc/uwb<N>/
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
Description:
|
||||
An individual UWB radio controller.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/beacon
|
||||
What: /sys/class/uwb_rc/uwb<N>/beacon
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -43,7 +43,7 @@ Description:
|
||||
Reading returns the currently active channel, or -1 if
|
||||
the radio controller is not beaconing.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/ASIE
|
||||
What: /sys/class/uwb_rc/uwb<N>/ASIE
|
||||
Date: August 2014
|
||||
KernelVersion: 3.18
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -56,7 +56,7 @@ Description:
|
||||
Reading returns the current ASIE. Writing replaces
|
||||
the current ASIE with the one written.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/scan
|
||||
What: /sys/class/uwb_rc/uwb<N>/scan
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -75,7 +75,7 @@ Description:
|
||||
4 scan (with start time of <bpst offset>)
|
||||
== =======================================
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/mac_address
|
||||
What: /sys/class/uwb_rc/uwb<N>/mac_address
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -85,7 +85,7 @@ Description:
|
||||
controller's EUI-48 but only do so while the device is
|
||||
not beaconing or scanning.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/wusbhc
|
||||
What: /sys/class/uwb_rc/uwb<N>/wusbhc
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -93,7 +93,7 @@ Description:
|
||||
A symlink to the device (if any) of the WUSB Host
|
||||
Controller PAL using this radio controller.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/<EUI-48>/
|
||||
What: /sys/class/uwb_rc/uwb<N>/<EUI-48>/
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -102,7 +102,7 @@ Description:
|
||||
as part of a scan or is a member of the radio
|
||||
controllers beacon group.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/<EUI-48>/BPST
|
||||
What: /sys/class/uwb_rc/uwb<N>/<EUI-48>/BPST
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -111,7 +111,7 @@ Description:
|
||||
interval superframe timer) of the last beacon from
|
||||
this device was received.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/<EUI-48>/DevAddr
|
||||
What: /sys/class/uwb_rc/uwb<N>/<EUI-48>/DevAddr
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -119,7 +119,7 @@ Description:
|
||||
The current DevAddr of this device in colon separated
|
||||
hex octets.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/<EUI-48>/EUI_48
|
||||
What: /sys/class/uwb_rc/uwb<N>/<EUI-48>/EUI_48
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -128,7 +128,7 @@ Description:
|
||||
The EUI-48 of this device in colon separated hex
|
||||
octets.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/<EUI-48>/IEs
|
||||
What: /sys/class/uwb_rc/uwb<N>/<EUI-48>/IEs
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -136,7 +136,7 @@ Description:
|
||||
The latest IEs included in this device's beacon, in
|
||||
space separated hex octets with one IE per line.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/<EUI-48>/LQE
|
||||
What: /sys/class/uwb_rc/uwb<N>/<EUI-48>/LQE
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
@@ -146,7 +146,7 @@ Description:
|
||||
This gives an estimate on a suitable PHY rate. Refer
|
||||
to [ECMA-368] section 13.3 for more details.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/<EUI-48>/RSSI
|
||||
What: /sys/class/uwb_rc/uwb<N>/<EUI-48>/RSSI
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: linux-usb@vger.kernel.org
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_chid
|
||||
What: /sys/class/uwb_rc/uwb<N>/wusbhc/wusb_chid
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: David Vrabel <david.vrabel@csr.com>
|
||||
@@ -9,7 +9,7 @@ Description:
|
||||
|
||||
Set an all zero CHID to stop the host controller.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_trust_timeout
|
||||
What: /sys/class/uwb_rc/uwb<N>/wusbhc/wusb_trust_timeout
|
||||
Date: July 2008
|
||||
KernelVersion: 2.6.27
|
||||
Contact: David Vrabel <david.vrabel@csr.com>
|
||||
@@ -24,7 +24,7 @@ Description:
|
||||
lifetime of PTKs and GTKs) it should not be changed
|
||||
from the default.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_phy_rate
|
||||
What: /sys/class/uwb_rc/uwb<N>/wusbhc/wusb_phy_rate
|
||||
Date: August 2009
|
||||
KernelVersion: 2.6.32
|
||||
Contact: David Vrabel <david.vrabel@csr.com>
|
||||
@@ -37,7 +37,7 @@ Description:
|
||||
Refer to [ECMA-368] section 10.3.1.1 for the value to
|
||||
use.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_dnts
|
||||
What: /sys/class/uwb_rc/uwb<N>/wusbhc/wusb_dnts
|
||||
Date: June 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: Thomas Pugliese <thomas.pugliese@gmail.com>
|
||||
@@ -47,7 +47,7 @@ Description:
|
||||
often the devices will have the opportunity to send
|
||||
notifications to the host.
|
||||
|
||||
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_retry_count
|
||||
What: /sys/class/uwb_rc/uwb<N>/wusbhc/wusb_retry_count
|
||||
Date: June 2013
|
||||
KernelVersion: 3.11
|
||||
Contact: Thomas Pugliese <thomas.pugliese@gmail.com>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/devices/platform/dock.N/docked
|
||||
What: /sys/devices/platform/dock.<N>/docked
|
||||
Date: Dec, 2006
|
||||
KernelVersion: 2.6.19
|
||||
Contact: linux-acpi@vger.kernel.org
|
||||
@@ -6,7 +6,7 @@ Description:
|
||||
(RO) Value 1 or 0 indicates whether the software believes the
|
||||
laptop is docked in a docking station.
|
||||
|
||||
What: /sys/devices/platform/dock.N/undock
|
||||
What: /sys/devices/platform/dock.<N>/undock
|
||||
Date: Dec, 2006
|
||||
KernelVersion: 2.6.19
|
||||
Contact: linux-acpi@vger.kernel.org
|
||||
@@ -14,14 +14,14 @@ Description:
|
||||
(WO) Writing to this file causes the software to initiate an
|
||||
undock request to the firmware.
|
||||
|
||||
What: /sys/devices/platform/dock.N/uid
|
||||
What: /sys/devices/platform/dock.<N>/uid
|
||||
Date: Feb, 2007
|
||||
KernelVersion: v2.6.21
|
||||
Contact: linux-acpi@vger.kernel.org
|
||||
Description:
|
||||
(RO) Displays the docking station the laptop is docked to.
|
||||
|
||||
What: /sys/devices/platform/dock.N/flags
|
||||
What: /sys/devices/platform/dock.<N>/flags
|
||||
Date: May, 2007
|
||||
KernelVersion: v2.6.21
|
||||
Contact: linux-acpi@vger.kernel.org
|
||||
@@ -30,7 +30,7 @@ Description:
|
||||
request has been made by the user (from the immediate_undock
|
||||
option).
|
||||
|
||||
What: /sys/devices/platform/dock.N/type
|
||||
What: /sys/devices/platform/dock.<N>/type
|
||||
Date: Aug, 2008
|
||||
KernelVersion: v2.6.27
|
||||
Contact: linux-acpi@vger.kernel.org
|
||||
|
||||
@@ -269,3 +269,39 @@ Description:
|
||||
the current runtime PM status of the device, which may be
|
||||
"suspended", "suspending", "resuming", "active", "error" (fatal
|
||||
error), or "unsupported" (runtime PM is disabled).
|
||||
|
||||
What: /sys/devices/.../power/runtime_active_time
|
||||
Date: Jul 2010
|
||||
Contact: Arjan van de Ven <arjan@linux.intel.com>
|
||||
Description:
|
||||
Reports the total time that the device has been active.
|
||||
Used for runtime PM statistics.
|
||||
|
||||
What: /sys/devices/.../power/runtime_suspended_time
|
||||
Date: Jul 2010
|
||||
Contact: Arjan van de Ven <arjan@linux.intel.com>
|
||||
Description:
|
||||
Reports total time that the device has been suspended.
|
||||
Used for runtime PM statistics.
|
||||
|
||||
What: /sys/devices/.../power/runtime_usage
|
||||
Date: Apr 2010
|
||||
Contact: Dominik Brodowski <linux@dominikbrodowski.net>
|
||||
Description:
|
||||
Reports the runtime PM usage count of a device.
|
||||
|
||||
What: /sys/devices/.../power/runtime_enabled
|
||||
Date: Apr 2010
|
||||
Contact: Dominik Brodowski <linux@dominikbrodowski.net>
|
||||
Description:
|
||||
Is runtime PM enabled for this device?
|
||||
States are "enabled", "disabled", "forbidden" or a
|
||||
combination of the latter two.
|
||||
|
||||
What: /sys/devices/.../power/runtime_active_kids
|
||||
Date: Apr 2010
|
||||
Contact: Dominik Brodowski <linux@dominikbrodowski.net>
|
||||
Description:
|
||||
Reports the runtime PM children usage count of a device, or
|
||||
0 if the the children will be ignored.
|
||||
|
||||
|
||||
@@ -7,10 +7,12 @@ Description:
|
||||
bus / platform-specific way. This attribute is only present for
|
||||
devices that can support determining such information:
|
||||
|
||||
"removable": device can be removed from the platform by the user
|
||||
"fixed": device is fixed to the platform / cannot be removed
|
||||
=========== ===================================================
|
||||
"removable" device can be removed from the platform by the user
|
||||
"fixed" device is fixed to the platform / cannot be removed
|
||||
by the user.
|
||||
"unknown": The information is unavailable / cannot be deduced.
|
||||
"unknown" The information is unavailable / cannot be deduced.
|
||||
=========== ===================================================
|
||||
|
||||
Currently this is only supported by USB (which infers the
|
||||
information from a combination of hub descriptor bits and
|
||||
|
||||
@@ -7,7 +7,7 @@ Description:
|
||||
Individual CPU attributes are contained in subdirectories
|
||||
named by the kernel's logical CPU number, e.g.:
|
||||
|
||||
/sys/devices/system/cpu/cpu#/
|
||||
/sys/devices/system/cpu/cpuX/
|
||||
|
||||
What: /sys/devices/system/cpu/kernel_max
|
||||
/sys/devices/system/cpu/offline
|
||||
@@ -53,7 +53,7 @@ Description: Dynamic addition and removal of CPU's. This is not hotplug
|
||||
the system. Information written to the file to remove CPU's
|
||||
is architecture specific.
|
||||
|
||||
What: /sys/devices/system/cpu/cpu#/node
|
||||
What: /sys/devices/system/cpu/cpuX/node
|
||||
Date: October 2009
|
||||
Contact: Linux memory management mailing list <linux-mm@kvack.org>
|
||||
Description: Discover NUMA node a CPU belongs to
|
||||
@@ -67,41 +67,41 @@ Description: Discover NUMA node a CPU belongs to
|
||||
/sys/devices/system/cpu/cpu42/node2 -> ../../node/node2
|
||||
|
||||
|
||||
What: /sys/devices/system/cpu/cpu#/topology/core_id
|
||||
/sys/devices/system/cpu/cpu#/topology/core_siblings
|
||||
/sys/devices/system/cpu/cpu#/topology/core_siblings_list
|
||||
/sys/devices/system/cpu/cpu#/topology/physical_package_id
|
||||
/sys/devices/system/cpu/cpu#/topology/thread_siblings
|
||||
/sys/devices/system/cpu/cpu#/topology/thread_siblings_list
|
||||
What: /sys/devices/system/cpu/cpuX/topology/core_id
|
||||
/sys/devices/system/cpu/cpuX/topology/core_siblings
|
||||
/sys/devices/system/cpu/cpuX/topology/core_siblings_list
|
||||
/sys/devices/system/cpu/cpuX/topology/physical_package_id
|
||||
/sys/devices/system/cpu/cpuX/topology/thread_siblings
|
||||
/sys/devices/system/cpu/cpuX/topology/thread_siblings_list
|
||||
Date: December 2008
|
||||
Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
|
||||
Description: CPU topology files that describe a logical CPU's relationship
|
||||
to other cores and threads in the same physical package.
|
||||
|
||||
One cpu# directory is created per logical CPU in the system,
|
||||
One cpuX directory is created per logical CPU in the system,
|
||||
e.g. /sys/devices/system/cpu/cpu42/.
|
||||
|
||||
Briefly, the files above are:
|
||||
|
||||
core_id: the CPU core ID of cpu#. Typically it is the
|
||||
core_id: the CPU core ID of cpuX. Typically it is the
|
||||
hardware platform's identifier (rather than the kernel's).
|
||||
The actual value is architecture and platform dependent.
|
||||
|
||||
core_siblings: internal kernel map of cpu#'s hardware threads
|
||||
core_siblings: internal kernel map of cpuX's hardware threads
|
||||
within the same physical_package_id.
|
||||
|
||||
core_siblings_list: human-readable list of the logical CPU
|
||||
numbers within the same physical_package_id as cpu#.
|
||||
numbers within the same physical_package_id as cpuX.
|
||||
|
||||
physical_package_id: physical package id of cpu#. Typically
|
||||
physical_package_id: physical package id of cpuX. Typically
|
||||
corresponds to a physical socket number, but the actual value
|
||||
is architecture and platform dependent.
|
||||
|
||||
thread_siblings: internal kernel map of cpu#'s hardware
|
||||
threads within the same core as cpu#
|
||||
thread_siblings: internal kernel map of cpuX's hardware
|
||||
threads within the same core as cpuX
|
||||
|
||||
thread_siblings_list: human-readable list of cpu#'s hardware
|
||||
threads within the same core as cpu#
|
||||
thread_siblings_list: human-readable list of cpuX's hardware
|
||||
threads within the same core as cpuX
|
||||
|
||||
See Documentation/admin-guide/cputopology.rst for more information.
|
||||
|
||||
@@ -135,7 +135,7 @@ Description: Discover cpuidle policy and mechanism
|
||||
Documentation/driver-api/pm/cpuidle.rst for more information.
|
||||
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/name
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/name
|
||||
/sys/devices/system/cpu/cpuX/cpuidle/stateN/latency
|
||||
/sys/devices/system/cpu/cpuX/cpuidle/stateN/power
|
||||
/sys/devices/system/cpu/cpuX/cpuidle/stateN/time
|
||||
@@ -174,7 +174,7 @@ Description:
|
||||
(a count).
|
||||
======== ==== =================================================
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/desc
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/desc
|
||||
Date: February 2008
|
||||
KernelVersion: v2.6.25
|
||||
Contact: Linux power management list <linux-pm@vger.kernel.org>
|
||||
@@ -182,7 +182,7 @@ Description:
|
||||
(RO) A small description about the idle state (string).
|
||||
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/disable
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/disable
|
||||
Date: March 2012
|
||||
KernelVersion: v3.10
|
||||
Contact: Linux power management list <linux-pm@vger.kernel.org>
|
||||
@@ -195,14 +195,14 @@ Description:
|
||||
does not reflect it. Likewise, if one enables a deep state but a
|
||||
lighter state still is disabled, then this has no effect.
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/default_status
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/default_status
|
||||
Date: December 2019
|
||||
KernelVersion: v5.6
|
||||
Contact: Linux power management list <linux-pm@vger.kernel.org>
|
||||
Description:
|
||||
(RO) The default status of this state, "enabled" or "disabled".
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/residency
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/residency
|
||||
Date: March 2014
|
||||
KernelVersion: v3.15
|
||||
Contact: Linux power management list <linux-pm@vger.kernel.org>
|
||||
@@ -211,7 +211,7 @@ Description:
|
||||
time (in microseconds) this cpu should spend in this idle state
|
||||
to make the transition worth the effort.
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/s2idle/
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/s2idle/
|
||||
Date: March 2018
|
||||
KernelVersion: v4.17
|
||||
Contact: Linux power management list <linux-pm@vger.kernel.org>
|
||||
@@ -221,7 +221,7 @@ Description:
|
||||
This attribute group is only present for states that can be
|
||||
used in suspend-to-idle with suspended timekeeping.
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/s2idle/time
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/s2idle/time
|
||||
Date: March 2018
|
||||
KernelVersion: v4.17
|
||||
Contact: Linux power management list <linux-pm@vger.kernel.org>
|
||||
@@ -229,7 +229,7 @@ Description:
|
||||
Total time spent by the CPU in suspend-to-idle (with scheduler
|
||||
tick suspended) after requesting this state.
|
||||
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/s2idle/usage
|
||||
What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/s2idle/usage
|
||||
Date: March 2018
|
||||
KernelVersion: v4.17
|
||||
Contact: Linux power management list <linux-pm@vger.kernel.org>
|
||||
@@ -237,7 +237,7 @@ Description:
|
||||
Total number of times this state has been requested by the CPU
|
||||
while entering suspend-to-idle.
|
||||
|
||||
What: /sys/devices/system/cpu/cpu#/cpufreq/*
|
||||
What: /sys/devices/system/cpu/cpuX/cpufreq/*
|
||||
Date: pre-git history
|
||||
Contact: linux-pm@vger.kernel.org
|
||||
Description: Discover and change clock speed of CPUs
|
||||
@@ -252,7 +252,7 @@ Description: Discover and change clock speed of CPUs
|
||||
See files in Documentation/cpu-freq/ for more information.
|
||||
|
||||
|
||||
What: /sys/devices/system/cpu/cpu#/cpufreq/freqdomain_cpus
|
||||
What: /sys/devices/system/cpu/cpuX/cpufreq/freqdomain_cpus
|
||||
Date: June 2013
|
||||
Contact: linux-pm@vger.kernel.org
|
||||
Description: Discover CPUs in the same CPU frequency coordination domain
|
||||
@@ -301,16 +301,16 @@ Description: Processor frequency boosting control
|
||||
Documentation/admin-guide/pm/cpufreq.rst
|
||||
|
||||
|
||||
What: /sys/devices/system/cpu/cpu#/crash_notes
|
||||
/sys/devices/system/cpu/cpu#/crash_notes_size
|
||||
What: /sys/devices/system/cpu/cpuX/crash_notes
|
||||
/sys/devices/system/cpu/cpuX/crash_notes_size
|
||||
Date: April 2013
|
||||
Contact: kexec@lists.infradead.org
|
||||
Description: address and size of the percpu note.
|
||||
|
||||
crash_notes: the physical address of the memory that holds the
|
||||
note of cpu#.
|
||||
note of cpuX.
|
||||
|
||||
crash_notes_size: size of the note of cpu#.
|
||||
crash_notes_size: size of the note of cpuX.
|
||||
|
||||
|
||||
What: /sys/devices/system/cpu/intel_pstate/max_perf_pct
|
||||
@@ -503,12 +503,12 @@ Description: Identifies the subset of CPUs in the system that can execute
|
||||
If absent, then all or none of the CPUs can execute AArch32
|
||||
applications and execve() will behave accordingly.
|
||||
|
||||
What: /sys/devices/system/cpu/cpu#/cpu_capacity
|
||||
What: /sys/devices/system/cpu/cpuX/cpu_capacity
|
||||
Date: December 2016
|
||||
Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
|
||||
Description: information about CPUs heterogeneity.
|
||||
|
||||
cpu_capacity: capacity of cpu#.
|
||||
cpu_capacity: capacity of cpuX.
|
||||
|
||||
What: /sys/devices/system/cpu/vulnerabilities
|
||||
/sys/devices/system/cpu/vulnerabilities/meltdown
|
||||
@@ -560,7 +560,7 @@ Description: Control Symmetric Multi Threading (SMT)
|
||||
If control status is "forceoff" or "notsupported" writes
|
||||
are rejected.
|
||||
|
||||
What: /sys/devices/system/cpu/cpu#/power/energy_perf_bias
|
||||
What: /sys/devices/system/cpu/cpuX/power/energy_perf_bias
|
||||
Date: March 2019
|
||||
Contact: linux-pm@vger.kernel.org
|
||||
Description: Intel Energy and Performance Bias Hint (EPB)
|
||||
|
||||
27
Documentation/ABI/testing/sysfs-driver-aspeed-uart-routing
Normal file
27
Documentation/ABI/testing/sysfs-driver-aspeed-uart-routing
Normal file
@@ -0,0 +1,27 @@
|
||||
What: /sys/bus/platform/drivers/aspeed-uart-routing/*/uart*
|
||||
Date: September 2021
|
||||
Contact: Oskar Senft <osk@google.com>
|
||||
Chia-Wei Wang <chiawei_wang@aspeedtech.com>
|
||||
Description: Selects the RX source of the UARTx device.
|
||||
|
||||
When read, each file shows the list of available options with currently
|
||||
selected option marked by brackets "[]". The list of available options
|
||||
depends on the selected file.
|
||||
|
||||
e.g.
|
||||
cat /sys/bus/platform/drivers/aspeed-uart-routing/*.uart_routing/uart1
|
||||
[io1] io2 io3 io4 uart2 uart3 uart4 io6
|
||||
|
||||
In this case, UART1 gets its input from IO1 (physical serial port 1).
|
||||
|
||||
Users: OpenBMC. Proposed changes should be mailed to
|
||||
openbmc@lists.ozlabs.org
|
||||
|
||||
What: /sys/bus/platform/drivers/aspeed-uart-routing/*/io*
|
||||
Date: September 2021
|
||||
Contact: Oskar Senft <osk@google.com>
|
||||
Chia-Wei Wang <chiawei_wang@aspeedtech.com>
|
||||
Description: Selects the RX source of IOx serial port. The current selection
|
||||
will be marked by brackets "[]".
|
||||
Users: OpenBMC. Proposed changes should be mailed to
|
||||
openbmc@lists.ozlabs.org
|
||||
@@ -13,6 +13,7 @@ Description:
|
||||
Interface specification for more details.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_type
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/device_type
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the device type. This is one of the UFS
|
||||
@@ -22,6 +23,7 @@ Description: This file shows the device type. This is one of the UFS
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_class
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/device_class
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the device class. This is one of the UFS
|
||||
@@ -31,6 +33,7 @@ Description: This file shows the device class. This is one of the UFS
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_sub_class
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/device_sub_class
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the UFS storage subclass. This is one of
|
||||
@@ -40,6 +43,7 @@ Description: This file shows the UFS storage subclass. This is one of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/protocol
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/protocol
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the protocol supported by an UFS device.
|
||||
@@ -50,6 +54,7 @@ Description: This file shows the protocol supported by an UFS device.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_luns
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/number_of_luns
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows number of logical units. This is one of
|
||||
@@ -59,6 +64,7 @@ Description: This file shows number of logical units. This is one of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_wluns
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/number_of_wluns
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows number of well known logical units.
|
||||
@@ -69,6 +75,7 @@ Description: This file shows number of well known logical units.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/boot_enable
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/boot_enable
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows value that indicates whether the device is
|
||||
@@ -79,6 +86,7 @@ Description: This file shows value that indicates whether the device is
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/descriptor_access_enable
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/descriptor_access_enable
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows value that indicates whether the device
|
||||
@@ -90,6 +98,7 @@ Description: This file shows value that indicates whether the device
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/initial_power_mode
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/initial_power_mode
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows value that defines the power mode after
|
||||
@@ -100,6 +109,7 @@ Description: This file shows value that defines the power mode after
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/high_priority_lun
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/high_priority_lun
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the high priority lun. This is one of
|
||||
@@ -109,6 +119,7 @@ Description: This file shows the high priority lun. This is one of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/secure_removal_type
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/secure_removal_type
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the secure removal type. This is one of
|
||||
@@ -118,6 +129,7 @@ Description: This file shows the secure removal type. This is one of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/support_security_lun
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/support_security_lun
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether the security lun is supported.
|
||||
@@ -128,6 +140,7 @@ Description: This file shows whether the security lun is supported.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/bkops_termination_latency
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/bkops_termination_latency
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the background operations termination
|
||||
@@ -138,6 +151,7 @@ Description: This file shows the background operations termination
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/initial_active_icc_level
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/initial_active_icc_level
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the initial active ICC level. This is one
|
||||
@@ -147,6 +161,7 @@ Description: This file shows the initial active ICC level. This is one
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/specification_version
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/specification_version
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the specification version. This is one
|
||||
@@ -156,6 +171,7 @@ Description: This file shows the specification version. This is one
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/manufacturing_date
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/manufacturing_date
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the manufacturing date in BCD format.
|
||||
@@ -166,6 +182,7 @@ Description: This file shows the manufacturing date in BCD format.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/manufacturer_id
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/manufacturer_id
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the manufacturer ID. This is one of the
|
||||
@@ -175,6 +192,7 @@ Description: This file shows the manufacturer ID. This is one of the
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/rtt_capability
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/rtt_capability
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum number of outstanding RTTs
|
||||
@@ -185,6 +203,7 @@ Description: This file shows the maximum number of outstanding RTTs
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/rtc_update
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/rtc_update
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the frequency and method of the realtime
|
||||
@@ -195,6 +214,7 @@ Description: This file shows the frequency and method of the realtime
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/ufs_features
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/ufs_features
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows which features are supported by the device.
|
||||
@@ -205,6 +225,7 @@ Description: This file shows which features are supported by the device.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/ffu_timeout
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/ffu_timeout
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the FFU timeout. This is one of the
|
||||
@@ -214,6 +235,7 @@ Description: This file shows the FFU timeout. This is one of the
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/queue_depth
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/queue_depth
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the device queue depth. This is one of the
|
||||
@@ -223,6 +245,7 @@ Description: This file shows the device queue depth. This is one of the
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_version
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/device_version
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the device version. This is one of the
|
||||
@@ -232,6 +255,7 @@ Description: This file shows the device version. This is one of the
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_secure_wpa
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/number_of_secure_wpa
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows number of secure write protect areas
|
||||
@@ -242,6 +266,7 @@ Description: This file shows number of secure write protect areas
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/psa_max_data_size
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/psa_max_data_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum amount of data that may be
|
||||
@@ -253,6 +278,7 @@ Description: This file shows the maximum amount of data that may be
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/psa_state_timeout
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/psa_state_timeout
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the command maximum timeout for a change
|
||||
@@ -264,6 +290,7 @@ Description: This file shows the command maximum timeout for a change
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/unipro_version
|
||||
What: /sys/bus/platform/devices/*.ufs/interconnect_descriptor/unipro_version
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the MIPI UniPro version number in BCD format.
|
||||
@@ -274,6 +301,7 @@ Description: This file shows the MIPI UniPro version number in BCD format.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/mphy_version
|
||||
What: /sys/bus/platform/devices/*.ufs/interconnect_descriptor/mphy_version
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the MIPI M-PHY version number in BCD format.
|
||||
@@ -285,6 +313,7 @@ Description: This file shows the MIPI M-PHY version number in BCD format.
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/raw_device_capacity
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/raw_device_capacity
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the total memory quantity available to
|
||||
@@ -296,6 +325,7 @@ Description: This file shows the total memory quantity available to
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_number_of_luns
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/max_number_of_luns
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum number of logical units
|
||||
@@ -306,6 +336,7 @@ Description: This file shows the maximum number of logical units
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/segment_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/segment_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the segment size. This is one of the UFS
|
||||
@@ -315,6 +346,7 @@ Description: This file shows the segment size. This is one of the UFS
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/allocation_unit_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/allocation_unit_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the allocation unit size. This is one of
|
||||
@@ -324,6 +356,7 @@ Description: This file shows the allocation unit size. This is one of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/min_addressable_block_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/min_addressable_block_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the minimum addressable block size. This
|
||||
@@ -334,6 +367,7 @@ Description: This file shows the minimum addressable block size. This
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/optimal_read_block_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/optimal_read_block_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the optimal read block size. This is one
|
||||
@@ -344,6 +378,7 @@ Description: This file shows the optimal read block size. This is one
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/optimal_write_block_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/optimal_write_block_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the optimal write block size. This is one
|
||||
@@ -354,6 +389,7 @@ Description: This file shows the optimal write block size. This is one
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_in_buffer_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/max_in_buffer_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum data-in buffer size. This
|
||||
@@ -364,6 +400,7 @@ Description: This file shows the maximum data-in buffer size. This
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_out_buffer_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/max_out_buffer_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum data-out buffer size. This
|
||||
@@ -374,6 +411,7 @@ Description: This file shows the maximum data-out buffer size. This
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/rpmb_rw_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/rpmb_rw_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum number of RPMB frames allowed
|
||||
@@ -384,6 +422,7 @@ Description: This file shows the maximum number of RPMB frames allowed
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/dyn_capacity_resource_policy
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/dyn_capacity_resource_policy
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the dynamic capacity resource policy. This
|
||||
@@ -394,6 +433,7 @@ Description: This file shows the dynamic capacity resource policy. This
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/data_ordering
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/data_ordering
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows support for out-of-order data transfer.
|
||||
@@ -404,6 +444,7 @@ Description: This file shows support for out-of-order data transfer.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_number_of_contexts
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/max_number_of_contexts
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows maximum available number of contexts which
|
||||
@@ -414,6 +455,7 @@ Description: This file shows maximum available number of contexts which
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/sys_data_tag_unit_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/sys_data_tag_unit_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows system data tag unit size. This is one of
|
||||
@@ -423,6 +465,7 @@ Description: This file shows system data tag unit size. This is one of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/sys_data_tag_resource_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/sys_data_tag_resource_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows maximum storage area size allocated by
|
||||
@@ -434,6 +477,7 @@ Description: This file shows maximum storage area size allocated by
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/secure_removal_types
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/secure_removal_types
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows supported secure removal types. This is
|
||||
@@ -444,6 +488,7 @@ Description: This file shows supported secure removal types. This is
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/memory_types
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/memory_types
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows supported memory types. This is one of
|
||||
@@ -454,6 +499,7 @@ Description: This file shows supported memory types. This is one of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/*_memory_max_alloc_units
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/*_memory_max_alloc_units
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum number of allocation units for
|
||||
@@ -465,6 +511,7 @@ Description: This file shows the maximum number of allocation units for
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/*_memory_capacity_adjustment_factor
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/*_memory_capacity_adjustment_factor
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the memory capacity adjustment factor for
|
||||
@@ -477,6 +524,7 @@ Description: This file shows the memory capacity adjustment factor for
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/health_descriptor/eol_info
|
||||
What: /sys/bus/platform/devices/*.ufs/health_descriptor/eol_info
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows preend of life information. This is one
|
||||
@@ -487,6 +535,7 @@ Description: This file shows preend of life information. This is one
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/health_descriptor/life_time_estimation_a
|
||||
What: /sys/bus/platform/devices/*.ufs/health_descriptor/life_time_estimation_a
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows indication of the device life time
|
||||
@@ -497,6 +546,7 @@ Description: This file shows indication of the device life time
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/health_descriptor/life_time_estimation_b
|
||||
What: /sys/bus/platform/devices/*.ufs/health_descriptor/life_time_estimation_b
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows indication of the device life time
|
||||
@@ -508,6 +558,7 @@ Description: This file shows indication of the device life time
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/power_descriptor/active_icc_levels_vcc*
|
||||
What: /sys/bus/platform/devices/*.ufs/power_descriptor/active_icc_levels_vcc*
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows maximum VCC, VCCQ and VCCQ2 value for
|
||||
@@ -519,6 +570,7 @@ Description: This file shows maximum VCC, VCCQ and VCCQ2 value for
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/manufacturer_name
|
||||
What: /sys/bus/platform/devices/*.ufs/string_descriptors/manufacturer_name
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file contains a device manufacturer name string.
|
||||
@@ -528,6 +580,7 @@ Description: This file contains a device manufacturer name string.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/product_name
|
||||
What: /sys/bus/platform/devices/*.ufs/string_descriptors/product_name
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file contains a product name string. The full information
|
||||
@@ -536,6 +589,7 @@ Description: This file contains a product name string. The full information
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/oem_id
|
||||
What: /sys/bus/platform/devices/*.ufs/string_descriptors/oem_id
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file contains a OEM ID string. The full information
|
||||
@@ -544,6 +598,7 @@ Description: This file contains a OEM ID string. The full information
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/serial_number
|
||||
What: /sys/bus/platform/devices/*.ufs/string_descriptors/serial_number
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file contains a device serial number string. The full
|
||||
@@ -553,6 +608,7 @@ Description: This file contains a device serial number string. The full
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/string_descriptors/product_revision
|
||||
What: /sys/bus/platform/devices/*.ufs/string_descriptors/product_revision
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file contains a product revision string. The full
|
||||
@@ -684,6 +740,7 @@ Description: This file shows the granularity of the LUN. This is one of
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/device_init
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/device_init
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the device init status. The full information
|
||||
@@ -692,6 +749,7 @@ Description: This file shows the device init status. The full information
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/permanent_wpe
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/permanent_wpe
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether permanent write protection is enabled.
|
||||
@@ -701,6 +759,7 @@ Description: This file shows whether permanent write protection is enabled.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/power_on_wpe
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/power_on_wpe
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether write protection is enabled on all
|
||||
@@ -711,6 +770,7 @@ Description: This file shows whether write protection is enabled on all
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/bkops_enable
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/bkops_enable
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether the device background operations are
|
||||
@@ -720,6 +780,7 @@ Description: This file shows whether the device background operations are
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/life_span_mode_enable
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/life_span_mode_enable
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether the device life span mode is enabled.
|
||||
@@ -729,6 +790,7 @@ Description: This file shows whether the device life span mode is enabled.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/phy_resource_removal
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/phy_resource_removal
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether physical resource removal is enable.
|
||||
@@ -738,6 +800,7 @@ Description: This file shows whether physical resource removal is enable.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/busy_rtc
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/busy_rtc
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether the device is executing internal
|
||||
@@ -747,6 +810,7 @@ Description: This file shows whether the device is executing internal
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/disable_fw_update
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/disable_fw_update
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether the device FW update is permanently
|
||||
@@ -757,6 +821,7 @@ Description: This file shows whether the device FW update is permanently
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/boot_lun_enabled
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/boot_lun_enabled
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the boot lun enabled UFS device attribute.
|
||||
@@ -766,6 +831,7 @@ Description: This file provides the boot lun enabled UFS device attribute.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/current_power_mode
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/current_power_mode
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the current power mode UFS device attribute.
|
||||
@@ -775,6 +841,7 @@ Description: This file provides the current power mode UFS device attribute.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/active_icc_level
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/active_icc_level
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the active icc level UFS device attribute.
|
||||
@@ -784,6 +851,7 @@ Description: This file provides the active icc level UFS device attribute.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/ooo_data_enabled
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/ooo_data_enabled
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the out of order data transfer enabled UFS
|
||||
@@ -793,6 +861,7 @@ Description: This file provides the out of order data transfer enabled UFS
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/bkops_status
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/bkops_status
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the background operations status UFS device
|
||||
@@ -802,6 +871,7 @@ Description: This file provides the background operations status UFS device
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/purge_status
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/purge_status
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the purge operation status UFS device
|
||||
@@ -811,6 +881,7 @@ Description: This file provides the purge operation status UFS device
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_data_in_size
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/max_data_in_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum data size in a DATA IN
|
||||
@@ -820,6 +891,7 @@ Description: This file shows the maximum data size in a DATA IN
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_data_out_size
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/max_data_out_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the maximum number of bytes that can be
|
||||
@@ -829,6 +901,7 @@ Description: This file shows the maximum number of bytes that can be
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/reference_clock_frequency
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/reference_clock_frequency
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the reference clock frequency UFS device
|
||||
@@ -838,6 +911,7 @@ Description: This file provides the reference clock frequency UFS device
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/configuration_descriptor_lock
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/configuration_descriptor_lock
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows whether the configuration descriptor is locked.
|
||||
@@ -845,6 +919,7 @@ Description: This file shows whether the configuration descriptor is locked.
|
||||
UFS specifications 2.1. The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_number_of_rtt
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/max_number_of_rtt
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the maximum current number of
|
||||
@@ -855,6 +930,7 @@ Description: This file provides the maximum current number of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/exception_event_control
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/exception_event_control
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the exception event control UFS device
|
||||
@@ -864,6 +940,7 @@ Description: This file provides the exception event control UFS device
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/exception_event_status
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/exception_event_status
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the exception event status UFS device
|
||||
@@ -873,6 +950,7 @@ Description: This file provides the exception event status UFS device
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/ffu_status
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/ffu_status
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file provides the ffu status UFS device attribute.
|
||||
@@ -882,6 +960,7 @@ Description: This file provides the ffu status UFS device attribute.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/psa_state
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/psa_state
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file show the PSA feature status. The full information
|
||||
@@ -890,6 +969,7 @@ Description: This file show the PSA feature status. The full information
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/psa_data_size
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/psa_data_size
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the amount of data that the host plans to
|
||||
@@ -903,7 +983,7 @@ Description: This file shows the amount of data that the host plans to
|
||||
What: /sys/class/scsi_device/*/device/dyn_cap_needed
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the The amount of physical memory needed
|
||||
Description: This file shows the amount of physical memory needed
|
||||
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.
|
||||
@@ -912,6 +992,7 @@ Description: This file shows the The amount of physical memory needed
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/rpm_lvl
|
||||
What: /sys/bus/platform/devices/*.ufs/rpm_lvl
|
||||
Date: September 2014
|
||||
Contact: Subhash Jadavani <subhashj@codeaurora.org>
|
||||
Description: This entry could be used to set or show the UFS device
|
||||
@@ -938,6 +1019,7 @@ Description: This entry could be used to set or show the UFS device
|
||||
== ====================================================
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/rpm_target_dev_state
|
||||
What: /sys/bus/platform/devices/*.ufs/rpm_target_dev_state
|
||||
Date: February 2018
|
||||
Contact: Subhash Jadavani <subhashj@codeaurora.org>
|
||||
Description: This entry shows the target power mode of an UFS device
|
||||
@@ -946,6 +1028,7 @@ Description: This entry shows the target power mode of an UFS device
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/rpm_target_link_state
|
||||
What: /sys/bus/platform/devices/*.ufs/rpm_target_link_state
|
||||
Date: February 2018
|
||||
Contact: Subhash Jadavani <subhashj@codeaurora.org>
|
||||
Description: This entry shows the target state of an UFS UIC link
|
||||
@@ -954,6 +1037,7 @@ Description: This entry shows the target state of an UFS UIC link
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/spm_lvl
|
||||
What: /sys/bus/platform/devices/*.ufs/spm_lvl
|
||||
Date: September 2014
|
||||
Contact: Subhash Jadavani <subhashj@codeaurora.org>
|
||||
Description: This entry could be used to set or show the UFS device
|
||||
@@ -980,6 +1064,7 @@ Description: This entry could be used to set or show the UFS device
|
||||
== ====================================================
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/spm_target_dev_state
|
||||
What: /sys/bus/platform/devices/*.ufs/spm_target_dev_state
|
||||
Date: February 2018
|
||||
Contact: Subhash Jadavani <subhashj@codeaurora.org>
|
||||
Description: This entry shows the target power mode of an UFS device
|
||||
@@ -988,6 +1073,7 @@ Description: This entry shows the target power mode of an UFS device
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/spm_target_link_state
|
||||
What: /sys/bus/platform/devices/*.ufs/spm_target_link_state
|
||||
Date: February 2018
|
||||
Contact: Subhash Jadavani <subhashj@codeaurora.org>
|
||||
Description: This entry shows the target state of an UFS UIC link
|
||||
@@ -996,6 +1082,7 @@ Description: This entry shows the target state of an UFS UIC link
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/monitor_enable
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/monitor_enable
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the status of performance monitor enablement
|
||||
@@ -1003,6 +1090,7 @@ Description: This file shows the status of performance monitor enablement
|
||||
is stopped, the performance data collected is also cleared.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/monitor_chunk_size
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/monitor_chunk_size
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file tells the monitor to focus on requests transferring
|
||||
@@ -1010,6 +1098,7 @@ Description: This file tells the monitor to focus on requests transferring
|
||||
It can only be changed when monitor is disabled.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_total_sectors
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/read_total_sectors
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows how many sectors (in 512 Bytes) have been
|
||||
@@ -1018,6 +1107,7 @@ Description: This file shows how many sectors (in 512 Bytes) have been
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_total_busy
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/read_total_busy
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows how long (in micro seconds) has been spent
|
||||
@@ -1026,6 +1116,7 @@ Description: This file shows how long (in micro seconds) has been spent
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_nr_requests
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/read_nr_requests
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows how many read requests have been sent after
|
||||
@@ -1034,6 +1125,7 @@ Description: This file shows how many read requests have been sent after
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_max
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/read_req_latency_max
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the maximum latency (in micro seconds) of
|
||||
@@ -1042,6 +1134,7 @@ Description: This file shows the maximum latency (in micro seconds) of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_min
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/read_req_latency_min
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the minimum latency (in micro seconds) of
|
||||
@@ -1050,6 +1143,7 @@ Description: This file shows the minimum latency (in micro seconds) of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_avg
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/read_req_latency_avg
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the average latency (in micro seconds) of
|
||||
@@ -1058,6 +1152,7 @@ Description: This file shows the average latency (in micro seconds) of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_sum
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/read_req_latency_sum
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the total latency (in micro seconds) of
|
||||
@@ -1066,6 +1161,7 @@ Description: This file shows the total latency (in micro seconds) of
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_total_sectors
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/write_total_sectors
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows how many sectors (in 512 Bytes) have been sent
|
||||
@@ -1074,6 +1170,7 @@ Description: This file shows how many sectors (in 512 Bytes) have been sent
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_total_busy
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/write_total_busy
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows how long (in micro seconds) has been spent
|
||||
@@ -1082,6 +1179,7 @@ Description: This file shows how long (in micro seconds) has been spent
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_nr_requests
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/write_nr_requests
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows how many write requests have been sent after
|
||||
@@ -1090,6 +1188,7 @@ Description: This file shows how many write requests have been sent after
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_max
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/write_req_latency_max
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the maximum latency (in micro seconds) of write
|
||||
@@ -1098,6 +1197,7 @@ Description: This file shows the maximum latency (in micro seconds) of write
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_min
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/write_req_latency_min
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the minimum latency (in micro seconds) of write
|
||||
@@ -1106,6 +1206,7 @@ Description: This file shows the minimum latency (in micro seconds) of write
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_avg
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/write_req_latency_avg
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the average latency (in micro seconds) of write
|
||||
@@ -1114,6 +1215,7 @@ Description: This file shows the average latency (in micro seconds) of write
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_sum
|
||||
What: /sys/bus/platform/devices/*.ufs/monitor/write_req_latency_sum
|
||||
Date: January 2021
|
||||
Contact: Can Guo <cang@codeaurora.org>
|
||||
Description: This file shows the total latency (in micro seconds) of write
|
||||
@@ -1122,6 +1224,7 @@ Description: This file shows the total latency (in micro seconds) of write
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_presv_us_en
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/wb_presv_us_en
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows if preserve user-space was configured
|
||||
@@ -1129,6 +1232,7 @@ Description: This entry shows if preserve user-space was configured
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_shared_alloc_units
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/wb_shared_alloc_units
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the shared allocated units of WB buffer
|
||||
@@ -1136,6 +1240,7 @@ Description: This entry shows the shared allocated units of WB buffer
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_type
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/wb_type
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the configured WB type.
|
||||
@@ -1144,6 +1249,7 @@ Description: This entry shows the configured WB type.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_buff_cap_adj
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_buff_cap_adj
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the total user-space decrease in shared
|
||||
@@ -1154,6 +1260,7 @@ Description: This entry shows the total user-space decrease in shared
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_alloc_units
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_max_alloc_units
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the Maximum total WriteBooster Buffer size
|
||||
@@ -1162,6 +1269,7 @@ Description: This entry shows the Maximum total WriteBooster Buffer size
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_wb_luns
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_max_wb_luns
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the maximum number of luns that can support
|
||||
@@ -1170,6 +1278,7 @@ Description: This entry shows the maximum number of luns that can support
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_red_type
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_sup_red_type
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: The supportability of user space reduction mode
|
||||
@@ -1184,6 +1293,7 @@ Description: The supportability of user space reduction mode
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_wb_type
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_sup_wb_type
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: The supportability of WriteBooster Buffer type.
|
||||
@@ -1198,6 +1308,7 @@ Description: The supportability of WriteBooster Buffer type.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_enable
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/wb_enable
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the status of WriteBooster.
|
||||
@@ -1210,6 +1321,7 @@ Description: This entry shows the status of WriteBooster.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_en
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/wb_flush_en
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows if flush is enabled.
|
||||
@@ -1222,6 +1334,7 @@ Description: This entry shows if flush is enabled.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_during_h8
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/wb_flush_during_h8
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: Flush WriteBooster Buffer during hibernate state.
|
||||
@@ -1236,6 +1349,7 @@ Description: Flush WriteBooster Buffer during hibernate state.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_avail_buf
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/wb_avail_buf
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the amount of unused WriteBooster buffer
|
||||
@@ -1244,6 +1358,7 @@ Description: This entry shows the amount of unused WriteBooster buffer
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_cur_buf
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/wb_cur_buf
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the amount of unused current buffer.
|
||||
@@ -1251,6 +1366,7 @@ Description: This entry shows the amount of unused current buffer.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_flush_status
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/wb_flush_status
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows the flush operation status.
|
||||
@@ -1267,6 +1383,7 @@ Description: This entry shows the flush operation status.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/wb_life_time_est
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/wb_life_time_est
|
||||
Date: June 2020
|
||||
Contact: Asutosh Das <asutoshd@codeaurora.org>
|
||||
Description: This entry shows an indication of the WriteBooster Buffer
|
||||
@@ -1289,6 +1406,7 @@ Description: This entry shows the configured size of WriteBooster buffer.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/wb_on
|
||||
What: /sys/bus/platform/devices/*.ufs/wb_on
|
||||
Date: January 2021
|
||||
Contact: Bean Huo <beanhuo@micron.com>
|
||||
Description: This node is used to set or display whether UFS WriteBooster is
|
||||
@@ -1300,6 +1418,7 @@ Description: This node is used to set or display whether UFS WriteBooster is
|
||||
disable/enable WriteBooster through this sysfs node.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_version
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/hpb_version
|
||||
Date: June 2021
|
||||
Contact: Daejun Park <daejun7.park@samsung.com>
|
||||
Description: This entry shows the HPB specification version.
|
||||
@@ -1310,6 +1429,7 @@ Description: This entry shows the HPB specification version.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/device_descriptor/hpb_control
|
||||
What: /sys/bus/platform/devices/*.ufs/device_descriptor/hpb_control
|
||||
Date: June 2021
|
||||
Contact: Daejun Park <daejun7.park@samsung.com>
|
||||
Description: This entry shows an indication of the HPB control mode.
|
||||
@@ -1319,6 +1439,7 @@ Description: This entry shows an indication of the HPB control mode.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_region_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_region_size
|
||||
Date: June 2021
|
||||
Contact: Daejun Park <daejun7.park@samsung.com>
|
||||
Description: This entry shows the bHPBRegionSize which can be calculated
|
||||
@@ -1328,6 +1449,7 @@ Description: This entry shows the bHPBRegionSize which can be calculated
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_number_lu
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_number_lu
|
||||
Date: June 2021
|
||||
Contact: Daejun Park <daejun7.park@samsung.com>
|
||||
Description: This entry shows the maximum number of HPB LU supported by
|
||||
@@ -1338,6 +1460,7 @@ Description: This entry shows the maximum number of HPB LU supported by
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_subregion_size
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_subregion_size
|
||||
Date: June 2021
|
||||
Contact: Daejun Park <daejun7.park@samsung.com>
|
||||
Description: This entry shows the bHPBSubRegionSize, which can be
|
||||
@@ -1349,6 +1472,7 @@ Description: This entry shows the bHPBSubRegionSize, which can be
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/hpb_max_active_regions
|
||||
What: /sys/bus/platform/devices/*.ufs/geometry_descriptor/hpb_max_active_regions
|
||||
Date: June 2021
|
||||
Contact: Daejun Park <daejun7.park@samsung.com>
|
||||
Description: This entry shows the maximum number of active HPB regions that
|
||||
@@ -1434,6 +1558,7 @@ Description: This entry shows the requeue timeout threshold for write buffer
|
||||
this entry.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/attributes/max_data_size_hpb_single_cmd
|
||||
What: /sys/bus/platform/devices/*.ufs/attributes/max_data_size_hpb_single_cmd
|
||||
Date: June 2021
|
||||
Contact: Daejun Park <daejun7.park@samsung.com>
|
||||
Description: This entry shows the maximum HPB data size for using a single HPB
|
||||
@@ -1450,6 +1575,7 @@ Description: This entry shows the maximum HPB data size for using a single HPB
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/flags/hpb_enable
|
||||
What: /sys/bus/platform/devices/*.ufs/flags/hpb_enable
|
||||
Date: June 2021
|
||||
Contact: Daejun Park <daejun7.park@samsung.com>
|
||||
Description: This entry shows the status of HPB.
|
||||
|
||||
@@ -29,7 +29,7 @@ Description:
|
||||
What: /sys/module/xen_blkback/parameters/buffer_squeeze_duration_ms
|
||||
Date: December 2019
|
||||
KernelVersion: 5.6
|
||||
Contact: SeongJae Park <sjpark@amazon.de>
|
||||
Contact: SeongJae Park <sj@kernel.org>
|
||||
Description:
|
||||
When memory pressure is reported to blkback this option
|
||||
controls the duration in milliseconds that blkback will not
|
||||
@@ -39,7 +39,7 @@ Description:
|
||||
What: /sys/module/xen_blkback/parameters/feature_persistent
|
||||
Date: September 2020
|
||||
KernelVersion: 5.10
|
||||
Contact: SeongJae Park <sjpark@amazon.de>
|
||||
Contact: SeongJae Park <sj@kernel.org>
|
||||
Description:
|
||||
Whether to enable the persistent grants feature or not. Note
|
||||
that this option only takes effect on newly created backends.
|
||||
|
||||
@@ -12,7 +12,7 @@ Description:
|
||||
What: /sys/module/xen_blkfront/parameters/feature_persistent
|
||||
Date: September 2020
|
||||
KernelVersion: 5.10
|
||||
Contact: SeongJae Park <sjpark@amazon.de>
|
||||
Contact: SeongJae Park <sj@kernel.org>
|
||||
Description:
|
||||
Whether to enable the persistent grants feature or not. Note
|
||||
that this option only takes effect on newly created frontends.
|
||||
|
||||
@@ -24,14 +24,14 @@ Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: The version of the ESRT structure provided by the firmware.
|
||||
|
||||
What: /sys/firmware/efi/esrt/entries/entry$N/
|
||||
What: /sys/firmware/efi/esrt/entries/entry<N>/
|
||||
Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: Each ESRT entry is identified by a GUID, and each gets a
|
||||
subdirectory under entries/ .
|
||||
example: /sys/firmware/efi/esrt/entries/entry0/
|
||||
|
||||
What: /sys/firmware/efi/esrt/entries/entry$N/fw_type
|
||||
What: /sys/firmware/efi/esrt/entries/entry<N>/fw_type
|
||||
Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: What kind of firmware entry this is:
|
||||
@@ -43,33 +43,33 @@ Description: What kind of firmware entry this is:
|
||||
3 UEFI Driver
|
||||
== ===============
|
||||
|
||||
What: /sys/firmware/efi/esrt/entries/entry$N/fw_class
|
||||
What: /sys/firmware/efi/esrt/entries/entry<N>/fw_class
|
||||
Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: This is the entry's guid, and will match the directory name.
|
||||
|
||||
What: /sys/firmware/efi/esrt/entries/entry$N/fw_version
|
||||
What: /sys/firmware/efi/esrt/entries/entry<N>/fw_version
|
||||
Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: The version of the firmware currently installed. This is a
|
||||
32-bit unsigned integer.
|
||||
|
||||
What: /sys/firmware/efi/esrt/entries/entry$N/lowest_supported_fw_version
|
||||
What: /sys/firmware/efi/esrt/entries/entry<N>/lowest_supported_fw_version
|
||||
Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: The lowest version of the firmware that can be installed.
|
||||
|
||||
What: /sys/firmware/efi/esrt/entries/entry$N/capsule_flags
|
||||
What: /sys/firmware/efi/esrt/entries/entry<N>/capsule_flags
|
||||
Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: Flags that must be passed to UpdateCapsule()
|
||||
|
||||
What: /sys/firmware/efi/esrt/entries/entry$N/last_attempt_version
|
||||
What: /sys/firmware/efi/esrt/entries/entry<N>/last_attempt_version
|
||||
Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: The last firmware version for which an update was attempted.
|
||||
|
||||
What: /sys/firmware/efi/esrt/entries/entry$N/last_attempt_status
|
||||
What: /sys/firmware/efi/esrt/entries/entry<N>/last_attempt_status
|
||||
Date: February 2015
|
||||
Contact: Peter Jones <pjones@redhat.com>
|
||||
Description: The result of the last firmware update attempt for the
|
||||
|
||||
@@ -10,7 +10,7 @@ Description:
|
||||
any cache it aliases, if any).
|
||||
Users: kernel memory tuning tools
|
||||
|
||||
What: /sys/kernel/slab/cache/aliases
|
||||
What: /sys/kernel/slab/<cache>/aliases
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -19,7 +19,7 @@ Description:
|
||||
The aliases file is read-only and specifies how many caches
|
||||
have merged into this cache.
|
||||
|
||||
What: /sys/kernel/slab/cache/align
|
||||
What: /sys/kernel/slab/<cache>/align
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -28,7 +28,7 @@ Description:
|
||||
The align file is read-only and specifies the cache's object
|
||||
alignment in bytes.
|
||||
|
||||
What: /sys/kernel/slab/cache/alloc_calls
|
||||
What: /sys/kernel/slab/<cache>/alloc_calls
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -39,7 +39,7 @@ Description:
|
||||
The alloc_calls file only contains information if debugging is
|
||||
enabled for that cache (see Documentation/vm/slub.rst).
|
||||
|
||||
What: /sys/kernel/slab/cache/alloc_fastpath
|
||||
What: /sys/kernel/slab/<cache>/alloc_fastpath
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -50,7 +50,7 @@ Description:
|
||||
current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/alloc_from_partial
|
||||
What: /sys/kernel/slab/<cache>/alloc_from_partial
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -62,7 +62,7 @@ Description:
|
||||
count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/alloc_refill
|
||||
What: /sys/kernel/slab/<cache>/alloc_refill
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -73,7 +73,7 @@ Description:
|
||||
remote cpu frees. It can be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/alloc_slab
|
||||
What: /sys/kernel/slab/<cache>/alloc_slab
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -84,7 +84,7 @@ Description:
|
||||
clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/alloc_slowpath
|
||||
What: /sys/kernel/slab/<cache>/alloc_slowpath
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -96,7 +96,7 @@ Description:
|
||||
clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/cache_dma
|
||||
What: /sys/kernel/slab/<cache>/cache_dma
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -106,7 +106,7 @@ Description:
|
||||
are from ZONE_DMA.
|
||||
Available when CONFIG_ZONE_DMA is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/cpu_slabs
|
||||
What: /sys/kernel/slab/<cache>/cpu_slabs
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -115,7 +115,7 @@ Description:
|
||||
The cpu_slabs file is read-only and displays how many cpu slabs
|
||||
are active and their NUMA locality.
|
||||
|
||||
What: /sys/kernel/slab/cache/cpuslab_flush
|
||||
What: /sys/kernel/slab/<cache>/cpuslab_flush
|
||||
Date: April 2009
|
||||
KernelVersion: 2.6.31
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -128,7 +128,7 @@ Description:
|
||||
current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/ctor
|
||||
What: /sys/kernel/slab/<cache>/ctor
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -138,7 +138,7 @@ Description:
|
||||
constructor function, which is invoked for each object when a
|
||||
new slab is allocated.
|
||||
|
||||
What: /sys/kernel/slab/cache/deactivate_empty
|
||||
What: /sys/kernel/slab/<cache>/deactivate_empty
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -148,7 +148,7 @@ Description:
|
||||
was deactivated. It can be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/deactivate_full
|
||||
What: /sys/kernel/slab/<cache>/deactivate_full
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -158,7 +158,7 @@ Description:
|
||||
was deactivated. It can be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/deactivate_remote_frees
|
||||
What: /sys/kernel/slab/<cache>/deactivate_remote_frees
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -169,7 +169,7 @@ Description:
|
||||
remotely. It can be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/deactivate_to_head
|
||||
What: /sys/kernel/slab/<cache>/deactivate_to_head
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -180,7 +180,7 @@ Description:
|
||||
list. It can be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/deactivate_to_tail
|
||||
What: /sys/kernel/slab/<cache>/deactivate_to_tail
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -191,7 +191,7 @@ Description:
|
||||
list. It can be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/destroy_by_rcu
|
||||
What: /sys/kernel/slab/<cache>/destroy_by_rcu
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -200,7 +200,7 @@ Description:
|
||||
The destroy_by_rcu file is read-only and specifies whether
|
||||
slabs (not objects) are freed by rcu.
|
||||
|
||||
What: /sys/kernel/slab/cache/free_add_partial
|
||||
What: /sys/kernel/slab/<cache>/free_add_partial
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -211,7 +211,7 @@ Description:
|
||||
partial list. It can be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/free_calls
|
||||
What: /sys/kernel/slab/<cache>/free_calls
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -221,7 +221,7 @@ Description:
|
||||
object frees if slab debugging is enabled (see
|
||||
Documentation/vm/slub.rst).
|
||||
|
||||
What: /sys/kernel/slab/cache/free_fastpath
|
||||
What: /sys/kernel/slab/<cache>/free_fastpath
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -232,7 +232,7 @@ Description:
|
||||
It can be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/free_frozen
|
||||
What: /sys/kernel/slab/<cache>/free_frozen
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -243,7 +243,7 @@ Description:
|
||||
clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/free_remove_partial
|
||||
What: /sys/kernel/slab/<cache>/free_remove_partial
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -255,7 +255,7 @@ Description:
|
||||
count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/free_slab
|
||||
What: /sys/kernel/slab/<cache>/free_slab
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -266,7 +266,7 @@ Description:
|
||||
the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/free_slowpath
|
||||
What: /sys/kernel/slab/<cache>/free_slowpath
|
||||
Date: February 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -277,7 +277,7 @@ Description:
|
||||
be written to clear the current count.
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/hwcache_align
|
||||
What: /sys/kernel/slab/<cache>/hwcache_align
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -286,7 +286,7 @@ Description:
|
||||
The hwcache_align file is read-only and specifies whether
|
||||
objects are aligned on cachelines.
|
||||
|
||||
What: /sys/kernel/slab/cache/min_partial
|
||||
What: /sys/kernel/slab/<cache>/min_partial
|
||||
Date: February 2009
|
||||
KernelVersion: 2.6.30
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -297,7 +297,7 @@ Description:
|
||||
allocating new slabs. Such slabs may be reclaimed by utilizing
|
||||
the shrink file.
|
||||
|
||||
What: /sys/kernel/slab/cache/object_size
|
||||
What: /sys/kernel/slab/<cache>/object_size
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -306,7 +306,7 @@ Description:
|
||||
The object_size file is read-only and specifies the cache's
|
||||
object size.
|
||||
|
||||
What: /sys/kernel/slab/cache/objects
|
||||
What: /sys/kernel/slab/<cache>/objects
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -315,7 +315,7 @@ Description:
|
||||
The objects file is read-only and displays how many objects are
|
||||
active and from which nodes they are from.
|
||||
|
||||
What: /sys/kernel/slab/cache/objects_partial
|
||||
What: /sys/kernel/slab/<cache>/objects_partial
|
||||
Date: April 2008
|
||||
KernelVersion: 2.6.26
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -325,7 +325,7 @@ Description:
|
||||
objects are on partial slabs and from which nodes they are
|
||||
from.
|
||||
|
||||
What: /sys/kernel/slab/cache/objs_per_slab
|
||||
What: /sys/kernel/slab/<cache>/objs_per_slab
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -333,9 +333,9 @@ Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
Description:
|
||||
The file objs_per_slab is read-only and specifies how many
|
||||
objects may be allocated from a single slab of the order
|
||||
specified in /sys/kernel/slab/cache/order.
|
||||
specified in /sys/kernel/slab/<cache>/order.
|
||||
|
||||
What: /sys/kernel/slab/cache/order
|
||||
What: /sys/kernel/slab/<cache>/order
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -352,7 +352,7 @@ Description:
|
||||
order is used and this sysfs entry can not be used to change
|
||||
the order at run time.
|
||||
|
||||
What: /sys/kernel/slab/cache/order_fallback
|
||||
What: /sys/kernel/slab/<cache>/order_fallback
|
||||
Date: April 2008
|
||||
KernelVersion: 2.6.26
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -365,7 +365,7 @@ Description:
|
||||
|
||||
Available when CONFIG_SLUB_STATS is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/partial
|
||||
What: /sys/kernel/slab/<cache>/partial
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -374,7 +374,7 @@ Description:
|
||||
The partial file is read-only and displays how long many
|
||||
partial slabs there are and how long each node's list is.
|
||||
|
||||
What: /sys/kernel/slab/cache/poison
|
||||
What: /sys/kernel/slab/<cache>/poison
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -383,7 +383,7 @@ Description:
|
||||
The poison file specifies whether objects should be poisoned
|
||||
when a new slab is allocated.
|
||||
|
||||
What: /sys/kernel/slab/cache/reclaim_account
|
||||
What: /sys/kernel/slab/<cache>/reclaim_account
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -392,7 +392,7 @@ Description:
|
||||
The reclaim_account file specifies whether the cache's objects
|
||||
are reclaimable (and grouped by their mobility).
|
||||
|
||||
What: /sys/kernel/slab/cache/red_zone
|
||||
What: /sys/kernel/slab/<cache>/red_zone
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -401,7 +401,7 @@ Description:
|
||||
The red_zone file specifies whether the cache's objects are red
|
||||
zoned.
|
||||
|
||||
What: /sys/kernel/slab/cache/remote_node_defrag_ratio
|
||||
What: /sys/kernel/slab/<cache>/remote_node_defrag_ratio
|
||||
Date: January 2008
|
||||
KernelVersion: 2.6.25
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -415,7 +415,7 @@ Description:
|
||||
|
||||
Available when CONFIG_NUMA is enabled.
|
||||
|
||||
What: /sys/kernel/slab/cache/sanity_checks
|
||||
What: /sys/kernel/slab/<cache>/sanity_checks
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -426,7 +426,7 @@ Description:
|
||||
checks. Caches that enable sanity_checks cannot be merged with
|
||||
caches that do not.
|
||||
|
||||
What: /sys/kernel/slab/cache/shrink
|
||||
What: /sys/kernel/slab/<cache>/shrink
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -442,7 +442,7 @@ Description:
|
||||
adversely impact other running applications. So it
|
||||
should be used with care.
|
||||
|
||||
What: /sys/kernel/slab/cache/slab_size
|
||||
What: /sys/kernel/slab/<cache>/slab_size
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -451,7 +451,7 @@ Description:
|
||||
The slab_size file is read-only and specifies the object size
|
||||
with metadata (debugging information and alignment) in bytes.
|
||||
|
||||
What: /sys/kernel/slab/cache/slabs
|
||||
What: /sys/kernel/slab/<cache>/slabs
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -461,7 +461,7 @@ Description:
|
||||
there are (both cpu and partial) and from which nodes they are
|
||||
from.
|
||||
|
||||
What: /sys/kernel/slab/cache/store_user
|
||||
What: /sys/kernel/slab/<cache>/store_user
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -470,7 +470,7 @@ Description:
|
||||
The store_user file specifies whether the location of
|
||||
allocation or free should be tracked for a cache.
|
||||
|
||||
What: /sys/kernel/slab/cache/total_objects
|
||||
What: /sys/kernel/slab/<cache>/total_objects
|
||||
Date: April 2008
|
||||
KernelVersion: 2.6.26
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -479,7 +479,7 @@ Description:
|
||||
The total_objects file is read-only and displays how many total
|
||||
objects a cache has and from which nodes they are from.
|
||||
|
||||
What: /sys/kernel/slab/cache/trace
|
||||
What: /sys/kernel/slab/<cache>/trace
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -488,7 +488,7 @@ Description:
|
||||
The trace file specifies whether object allocations and frees
|
||||
should be traced.
|
||||
|
||||
What: /sys/kernel/slab/cache/validate
|
||||
What: /sys/kernel/slab/<cache>/validate
|
||||
Date: May 2007
|
||||
KernelVersion: 2.6.22
|
||||
Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
@@ -496,3 +496,24 @@ Contact: Pekka Enberg <penberg@cs.helsinki.fi>,
|
||||
Description:
|
||||
Writing to the validate file causes SLUB to traverse all of its
|
||||
cache's objects and check the validity of metadata.
|
||||
|
||||
What: /sys/kernel/slab/<cache>/usersize
|
||||
Date: Jun 2017
|
||||
Contact: David Windsor <dave@nullcore.net>
|
||||
Description:
|
||||
The usersize file is read-only and contains the usercopy
|
||||
region size.
|
||||
|
||||
What: /sys/kernel/slab/<cache>/slabs_cpu_partial
|
||||
Date: Aug 2011
|
||||
Contact: Christoph Lameter <cl@linux.com>
|
||||
Description:
|
||||
This read-only file shows the number of partialli allocated
|
||||
frozen slabs.
|
||||
|
||||
What: /sys/kernel/slab/<cache>/cpu_partial
|
||||
Date: Aug 2011
|
||||
Contact: Christoph Lameter <cl@linux.com>
|
||||
Description:
|
||||
This read-only file shows the number of per cpu partial
|
||||
pages to keep around.
|
||||
|
||||
129
Documentation/ABI/testing/sysfs-mce
Normal file
129
Documentation/ABI/testing/sysfs-mce
Normal file
@@ -0,0 +1,129 @@
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/
|
||||
Contact: Andi Kleen <ak@linux.intel.com>
|
||||
Date: Feb, 2007
|
||||
Description:
|
||||
(X = CPU number)
|
||||
|
||||
Machine checks report internal hardware error conditions
|
||||
detected by the CPU. Uncorrected errors typically cause a
|
||||
machine check (often with panic), corrected ones cause a
|
||||
machine check log entry.
|
||||
|
||||
For more details about the x86 machine check architecture
|
||||
see the Intel and AMD architecture manuals from their
|
||||
developer websites.
|
||||
|
||||
For more details about the architecture
|
||||
see http://one.firstfloor.org/~andi/mce.pdf
|
||||
|
||||
Each CPU has its own directory.
|
||||
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/bank<Y>
|
||||
Contact: Andi Kleen <ak@linux.intel.com>
|
||||
Date: Feb, 2007
|
||||
Description:
|
||||
(Y bank number)
|
||||
|
||||
64bit Hex bitmask enabling/disabling specific subevents for
|
||||
bank Y.
|
||||
|
||||
When a bit in the bitmask is zero then the respective
|
||||
subevent will not be reported.
|
||||
|
||||
By default all events are enabled.
|
||||
|
||||
Note that BIOS maintain another mask to disable specific events
|
||||
per bank. This is not visible here
|
||||
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/check_interval
|
||||
Contact: Andi Kleen <ak@linux.intel.com>
|
||||
Date: Feb, 2007
|
||||
Description:
|
||||
The entries appear for each CPU, but they are truly shared
|
||||
between all CPUs.
|
||||
|
||||
How often to poll for corrected machine check errors, in
|
||||
seconds (Note output is hexadecimal). Default 5 minutes.
|
||||
When the poller finds MCEs it triggers an exponential speedup
|
||||
(poll more often) on the polling interval. When the poller
|
||||
stops finding MCEs, it triggers an exponential backoff
|
||||
(poll less often) on the polling interval. The check_interval
|
||||
variable is both the initial and maximum polling interval.
|
||||
0 means no polling for corrected machine check errors
|
||||
(but some corrected errors might be still reported
|
||||
in other ways)
|
||||
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/tolerant
|
||||
Contact: Andi Kleen <ak@linux.intel.com>
|
||||
Date: Feb, 2007
|
||||
Description:
|
||||
The entries appear for each CPU, but they are truly shared
|
||||
between all CPUs.
|
||||
|
||||
Tolerance level. When a machine check exception occurs for a
|
||||
non corrected machine check the kernel can take different
|
||||
actions.
|
||||
|
||||
Since machine check exceptions can happen any time it is
|
||||
sometimes risky for the kernel to kill a process because it
|
||||
defies normal kernel locking rules. The tolerance level
|
||||
configures how hard the kernel tries to recover even at some
|
||||
risk of deadlock. Higher tolerant values trade potentially
|
||||
better uptime with the risk of a crash or even corruption
|
||||
(for tolerant >= 3).
|
||||
|
||||
== ===========================================================
|
||||
0 always panic on uncorrected errors, log corrected errors
|
||||
1 panic or SIGBUS on uncorrected errors, log corrected errors
|
||||
2 SIGBUS or log uncorrected errors, log corrected errors
|
||||
3 never panic or SIGBUS, log all errors (for testing only)
|
||||
== ===========================================================
|
||||
|
||||
Default: 1
|
||||
|
||||
Note this only makes a difference if the CPU allows recovery
|
||||
from a machine check exception. Current x86 CPUs generally
|
||||
do not.
|
||||
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/trigger
|
||||
Contact: Andi Kleen <ak@linux.intel.com>
|
||||
Date: Feb, 2007
|
||||
Description:
|
||||
The entries appear for each CPU, but they are truly shared
|
||||
between all CPUs.
|
||||
|
||||
Program to run when a machine check event is detected.
|
||||
This is an alternative to running mcelog regularly from cron
|
||||
and allows to detect events faster.
|
||||
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/monarch_timeout
|
||||
Contact: Andi Kleen <ak@linux.intel.com>
|
||||
Date: Feb, 2007
|
||||
Description:
|
||||
How long to wait for the other CPUs to machine check too on a
|
||||
exception. 0 to disable waiting for other CPUs.
|
||||
|
||||
Unit: us
|
||||
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/ignore_ce
|
||||
Contact: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
|
||||
Date: Jun 2009
|
||||
Description:
|
||||
Disables polling and CMCI for corrected errors.
|
||||
All corrected events are not cleared and kept in bank MSRs.
|
||||
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/dont_log_ce
|
||||
Contact: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
|
||||
Date: Jun 2009
|
||||
Description:
|
||||
Disables logging for corrected errors.
|
||||
All reported corrected errors will be cleared silently.
|
||||
|
||||
This option will be useful if you never care about corrected
|
||||
errors.
|
||||
|
||||
What: /sys/devices/system/machinecheck/machinecheckX/cmci_disabled
|
||||
Contact: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
|
||||
Date: Jun 2009
|
||||
Description:
|
||||
Disables the CMCI feature.
|
||||
@@ -41,6 +41,13 @@ KernelVersion: 3.3
|
||||
Contact: Kay Sievers <kay.sievers@vrfy.org>
|
||||
Description: Module size in bytes.
|
||||
|
||||
What: /sys/module/*/initstate
|
||||
Date: Nov 2006
|
||||
KernelVersion: 2.6.19
|
||||
Contact: Kay Sievers <kay.sievers@vrfy.org>
|
||||
Description: Show the initialization state(live, coming, going) of
|
||||
the module.
|
||||
|
||||
What: /sys/module/*/taint
|
||||
Date: Jan 2012
|
||||
KernelVersion: 3.3
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
What: /sys/bus/wmi/devices/6932965F-1671-4CEB-B988-D3AB0A901919/dell_privacy_supported_type
|
||||
Date: Apr 2021
|
||||
KernelVersion: 5.13
|
||||
Contact: "perry.yuan@dell.com>"
|
||||
Contact: "<perry.yuan@dell.com>"
|
||||
Description:
|
||||
Display which dell hardware level privacy devices are supported
|
||||
“Dell Privacy” is a set of HW, FW, and SW features to enhance
|
||||
Dell’s commitment to platform privacy for MIC, Camera, and
|
||||
ePrivacy screens.
|
||||
The supported hardware privacy devices are:
|
||||
|
||||
Attributes:
|
||||
Microphone Mute:
|
||||
Identifies the local microphone can be muted by hardware, no applications
|
||||
@@ -18,13 +19,15 @@ Attributes:
|
||||
shutter assembly that is built onto the camera module to block capturing images
|
||||
from outside the laptop
|
||||
|
||||
Values:
|
||||
|
||||
supported:
|
||||
The privacy device is supported by this system
|
||||
|
||||
unsupported:
|
||||
The privacy device is not supported on this system
|
||||
|
||||
For example to check which privacy devices are supported:
|
||||
For example to check which privacy devices are supported::
|
||||
|
||||
# cat /sys/bus/wmi/drivers/dell-privacy/6932965F-1671-4CEB-B988-D3AB0A901919/dell_privacy_supported_type
|
||||
[Microphone Mute] [supported]
|
||||
@@ -34,21 +37,34 @@ Attributes:
|
||||
What: /sys/bus/wmi/devices/6932965F-1671-4CEB-B988-D3AB0A901919/dell_privacy_current_state
|
||||
Date: Apr 2021
|
||||
KernelVersion: 5.13
|
||||
Contact: "perry.yuan@dell.com>"
|
||||
Contact: "<perry.yuan@dell.com>"
|
||||
Description:
|
||||
Allow user space to check current dell privacy device state.
|
||||
Describes the Device State class exposed by BIOS which can be
|
||||
consumed by various applications interested in knowing the Privacy
|
||||
feature capabilities
|
||||
|
||||
Attributes:
|
||||
Microphone:
|
||||
Identifies the local microphone can be muted by hardware, no applications
|
||||
is available to capture system mic sound
|
||||
|
||||
Camera Shutter:
|
||||
Identifies camera shutter controlled by hardware, which is a micromechanical
|
||||
shutter assembly that is built onto the camera module to block capturing images
|
||||
from outside the laptop
|
||||
|
||||
Values:
|
||||
muted:
|
||||
Identifies the privacy device is turned off and cannot send stream to OS applications
|
||||
Identifies the privacy device is turned off
|
||||
and cannot send stream to OS applications
|
||||
|
||||
unmuted:
|
||||
Identifies the privacy device is turned on ,audio or camera driver can get
|
||||
stream from mic and camera module to OS applications
|
||||
Identifies the privacy device is turned on,
|
||||
audio or camera driver can get stream from mic
|
||||
and camera module to OS applications
|
||||
|
||||
For example to check all supported current privacy device states:
|
||||
For example to check all supported current privacy device states::
|
||||
|
||||
# cat /sys/bus/wmi/drivers/dell-privacy/6932965F-1671-4CEB-B988-D3AB0A901919/dell_privacy_current_state
|
||||
[Microphone] [unmuted]
|
||||
|
||||
@@ -133,7 +133,10 @@ Contact: linux-acpi@vger.kernel.org
|
||||
Description:
|
||||
(RO) Presents SSC (spread spectrum clock) information for EMI
|
||||
(Electro magnetic interference) control. This is a bit mask.
|
||||
|
||||
======= ==========================================
|
||||
Bits Description
|
||||
======= ==========================================
|
||||
[7:0] Sets clock spectrum spread percentage:
|
||||
0x00=0.2% , 0x3F=10%
|
||||
1 LSB = 0.1% increase in spread (for
|
||||
@@ -151,3 +154,4 @@ Description:
|
||||
[10] 0: No white noise. 1: Add white noise
|
||||
to spread waveform
|
||||
[11] When 1, future writes are ignored.
|
||||
======= ==========================================
|
||||
|
||||
@@ -11,8 +11,10 @@ Description:
|
||||
to take effect.
|
||||
|
||||
Display global reset setting bits for PMC.
|
||||
|
||||
* bit 31 - global reset is locked
|
||||
* bit 20 - global reset is set
|
||||
|
||||
Writing bit 20 value to the etr3 will induce
|
||||
a platform "global reset" upon consequent platform reset,
|
||||
in case the register is not locked.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
What: /sys/devices/platform/8086%x:00/firmware_version
|
||||
What: /sys/devices/platform/8086<x>:00/firmware_version
|
||||
Date: November 2016
|
||||
KernelVersion: 4.10
|
||||
Contact: "Sebastien Guiriec" <sebastien.guiriec@intel.com>
|
||||
|
||||
@@ -6,7 +6,7 @@ Description:
|
||||
providing a standardized interface to the ancillary
|
||||
features of PTP hardware clocks.
|
||||
|
||||
What: /sys/class/ptp/ptpN/
|
||||
What: /sys/class/ptp/ptp<N>/
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
@@ -14,7 +14,7 @@ Description:
|
||||
hardware clock registered into the PTP class driver
|
||||
subsystem.
|
||||
|
||||
What: /sys/class/ptp/ptpN/clock_name
|
||||
What: /sys/class/ptp/ptp<N>/clock_name
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
@@ -25,7 +25,7 @@ Description:
|
||||
MAC based ones. The string does not necessarily have
|
||||
to be any kind of unique id.
|
||||
|
||||
What: /sys/class/ptp/ptpN/max_adjustment
|
||||
What: /sys/class/ptp/ptp<N>/max_adjustment
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
@@ -33,42 +33,42 @@ Description:
|
||||
frequency adjustment value (a positive integer) in
|
||||
parts per billion.
|
||||
|
||||
What: /sys/class/ptp/ptpN/max_vclocks
|
||||
What: /sys/class/ptp/ptp<N>/max_vclocks
|
||||
Date: May 2021
|
||||
Contact: Yangbo Lu <yangbo.lu@nxp.com>
|
||||
Description:
|
||||
This file contains the maximum number of ptp vclocks.
|
||||
Write integer to re-configure it.
|
||||
|
||||
What: /sys/class/ptp/ptpN/n_alarms
|
||||
What: /sys/class/ptp/ptp<N>/n_alarms
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
This file contains the number of periodic or one shot
|
||||
alarms offer by the PTP hardware clock.
|
||||
|
||||
What: /sys/class/ptp/ptpN/n_external_timestamps
|
||||
What: /sys/class/ptp/ptp<N>/n_external_timestamps
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
This file contains the number of external timestamp
|
||||
channels offered by the PTP hardware clock.
|
||||
|
||||
What: /sys/class/ptp/ptpN/n_periodic_outputs
|
||||
What: /sys/class/ptp/ptp<N>/n_periodic_outputs
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
This file contains the number of programmable periodic
|
||||
output channels offered by the PTP hardware clock.
|
||||
|
||||
What: /sys/class/ptp/ptpN/n_pins
|
||||
What: /sys/class/ptp/ptp<N>/n_pins
|
||||
Date: March 2014
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
This file contains the number of programmable pins
|
||||
offered by the PTP hardware clock.
|
||||
|
||||
What: /sys/class/ptp/ptpN/n_vclocks
|
||||
What: /sys/class/ptp/ptp<N>/n_vclocks
|
||||
Date: May 2021
|
||||
Contact: Yangbo Lu <yangbo.lu@nxp.com>
|
||||
Description:
|
||||
@@ -81,7 +81,7 @@ Description:
|
||||
switches the physical clock back to normal, adjustable
|
||||
operation.
|
||||
|
||||
What: /sys/class/ptp/ptpN/pins
|
||||
What: /sys/class/ptp/ptp<N>/pins
|
||||
Date: March 2014
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
@@ -94,7 +94,7 @@ Description:
|
||||
assignment may be changed by two writing numbers into
|
||||
the file.
|
||||
|
||||
What: /sys/class/ptp/ptpN/pps_available
|
||||
What: /sys/class/ptp/ptp<N>/pps_available
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
@@ -103,7 +103,7 @@ Description:
|
||||
"1" means that the PPS is supported, while "0" means
|
||||
not supported.
|
||||
|
||||
What: /sys/class/ptp/ptpN/extts_enable
|
||||
What: /sys/class/ptp/ptp<N>/extts_enable
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
@@ -113,7 +113,7 @@ Description:
|
||||
To disable external timestamps, write the channel
|
||||
index followed by a "0" into the file.
|
||||
|
||||
What: /sys/class/ptp/ptpN/fifo
|
||||
What: /sys/class/ptp/ptp<N>/fifo
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
@@ -121,7 +121,7 @@ Description:
|
||||
the form of three integers: channel index, seconds,
|
||||
and nanoseconds.
|
||||
|
||||
What: /sys/class/ptp/ptpN/period
|
||||
What: /sys/class/ptp/ptp<N>/period
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
@@ -132,7 +132,7 @@ Description:
|
||||
period nanoseconds. To disable a periodic output, set
|
||||
all the seconds and nanoseconds values to zero.
|
||||
|
||||
What: /sys/class/ptp/ptpN/pps_enable
|
||||
What: /sys/class/ptp/ptp<N>/pps_enable
|
||||
Date: September 2010
|
||||
Contact: Richard Cochran <richardcochran@gmail.com>
|
||||
Description:
|
||||
|
||||
174
Documentation/ABI/testing/sysfs-timecard
Normal file
174
Documentation/ABI/testing/sysfs-timecard
Normal file
@@ -0,0 +1,174 @@
|
||||
What: /sys/class/timecard/
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: This directory contains files and directories
|
||||
providing a standardized interface to the ancillary
|
||||
features of the OpenCompute timecard.
|
||||
|
||||
What: /sys/class/timecard/ocpN/
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: This directory contains the attributes of the Nth timecard
|
||||
registered.
|
||||
|
||||
What: /sys/class/timecard/ocpN/available_clock_sources
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RO) The list of available time sources that the PHC
|
||||
uses for clock adjustments.
|
||||
|
||||
==== =================================================
|
||||
NONE no adjustments
|
||||
PPS adjustments come from the PPS1 selector (default)
|
||||
TOD adjustments from the GNSS/TOD module
|
||||
IRIG adjustments from external IRIG-B signal
|
||||
DCF adjustments from external DCF signal
|
||||
==== =================================================
|
||||
|
||||
What: /sys/class/timecard/ocpN/available_sma_inputs
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RO) Set of available destinations (sinks) for a SMA
|
||||
input signal.
|
||||
|
||||
===== ================================================
|
||||
10Mhz signal is used as the 10Mhz reference clock
|
||||
PPS1 signal is sent to the PPS1 selector
|
||||
PPS2 signal is sent to the PPS2 selector
|
||||
TS1 signal is sent to timestamper 1
|
||||
TS2 signal is sent to timestamper 2
|
||||
IRIG signal is sent to the IRIG-B module
|
||||
DCF signal is sent to the DCF module
|
||||
===== ================================================
|
||||
|
||||
What: /sys/class/timecard/ocpN/available_sma_outputs
|
||||
Date: May 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RO) Set of available sources for a SMA output signal.
|
||||
|
||||
===== ================================================
|
||||
10Mhz output is from the 10Mhz reference clock
|
||||
PHC output PPS is from the PHC clock
|
||||
MAC output PPS is from the Miniature Atomic Clock
|
||||
GNSS output PPS is from the GNSS module
|
||||
GNSS2 output PPS is from the second GNSS module
|
||||
IRIG output is from the PHC, in IRIG-B format
|
||||
DCF output is from the PHC, in DCF format
|
||||
===== ================================================
|
||||
|
||||
What: /sys/class/timecard/ocpN/clock_source
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RW) Contains the current synchronization source used by
|
||||
the PHC. May be changed by writing one of the listed
|
||||
values from the available_clock_sources attribute set.
|
||||
|
||||
What: /sys/class/timecard/ocpN/gnss_sync
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RO) Indicates whether a valid GNSS signal is received,
|
||||
or when the signal was lost.
|
||||
|
||||
What: /sys/class/timecard/ocpN/i2c
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: This optional attribute links to the associated i2c device.
|
||||
|
||||
What: /sys/class/timecard/ocpN/irig_b_mode
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RW) An integer from 0-7 indicating the timecode format
|
||||
of the IRIG-B output signal: B00<n>
|
||||
|
||||
What: /sys/class/timecard/ocpN/pps
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: This optional attribute links to the associated PPS device.
|
||||
|
||||
What: /sys/class/timecard/ocpN/ptp
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: This attribute links to the associated PTP device.
|
||||
|
||||
What: /sys/class/timecard/ocpN/serialnum
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RO) Provides the serial number of the timecard.
|
||||
|
||||
What: /sys/class/timecard/ocpN/sma1
|
||||
What: /sys/class/timecard/ocpN/sma2
|
||||
What: /sys/class/timecard/ocpN/sma3
|
||||
What: /sys/class/timecard/ocpN/sma4
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RW) These attributes specify the direction of the signal
|
||||
on the associated SMA connectors, and also the signal sink
|
||||
or source.
|
||||
|
||||
The display format of the attribute is a space separated
|
||||
list of signals, prefixed by the input/output direction.
|
||||
|
||||
The signal direction may be changed (if supported) by
|
||||
prefixing the signal list with either "in:" or "out:".
|
||||
If neither prefix is present, then the direction is unchanged.
|
||||
|
||||
The output signal may be changed by writing one of the listed
|
||||
values from the available_sma_outputs attribute set.
|
||||
|
||||
The input destinations may be changed by writing multiple
|
||||
values from the available_sma_inputs attribute set,
|
||||
separated by spaces. If there are duplicated input
|
||||
destinations between connectors, the lowest numbered SMA
|
||||
connector is given priority.
|
||||
|
||||
Note that not all input combinations may make sense.
|
||||
|
||||
The 10Mhz reference clock input is currently only valid
|
||||
on SMA1 and may not be combined with other destination sinks.
|
||||
|
||||
What: /sys/class/timecard/ocpN/ts_window_adjust
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RW) When retrieving the PHC with the PTP SYS_OFFSET_EXTENDED
|
||||
ioctl, a system timestamp is made before and after the PHC
|
||||
time is retrieved. The midpoint between the two system
|
||||
timestamps is usually taken to be the SYS time associated
|
||||
with the PHC time. This estimate may be wrong, as it depends
|
||||
on PCI latencies, and when the PHC time was latched
|
||||
|
||||
The attribute value reduces the end timestamp by the given
|
||||
number of nanoseconds, so the computed midpoint matches the
|
||||
retrieved PHC time.
|
||||
|
||||
The initial value is set based on measured PCI latency and
|
||||
the estimated point where the FPGA latches the PHC time. This
|
||||
value may be changed by writing an unsigned integer.
|
||||
|
||||
What: /sys/class/timecard/ocpN/ttyGNSS
|
||||
What: /sys/class/timecard/ocpN/ttyGNSS2
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: These optional attributes link to the TTY serial ports
|
||||
associated with the GNSS devices.
|
||||
|
||||
What: /sys/class/timecard/ocpN/ttyMAC
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: This optional attribute links to the TTY serial port
|
||||
associated with the Miniature Atomic Clock.
|
||||
|
||||
What: /sys/class/timecard/ocpN/ttyNMEA
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: This optional attribute links to the TTY serial port
|
||||
which outputs the PHC time in NMEA ZDA format.
|
||||
|
||||
What: /sys/class/timecard/ocpN/utc_tai_offset
|
||||
Date: September 2021
|
||||
Contact: Jonathan Lemon <jonathan.lemon@gmail.com>
|
||||
Description: (RW) The DCF and IRIG output signals are in UTC, while the
|
||||
TimeCard operates on TAI. This attribute allows setting the
|
||||
offset in seconds, which is added to the TAI timebase for
|
||||
these formats.
|
||||
|
||||
The offset may be changed by writing an unsigned integer.
|
||||
@@ -9,7 +9,7 @@ Description:
|
||||
The file supports poll() to detect virtual
|
||||
console switches.
|
||||
|
||||
What: /sys/class/tty/tty0/active
|
||||
What: /sys/class/tty/tty<x>/active
|
||||
Date: Nov 2010
|
||||
Contact: Kay Sievers <kay.sievers@vrfy.org>
|
||||
Description:
|
||||
@@ -18,7 +18,7 @@ Description:
|
||||
The file supports poll() to detect virtual
|
||||
console switches.
|
||||
|
||||
What: /sys/class/tty/ttyS0/uartclk
|
||||
What: /sys/class/tty/ttyS<x>/uartclk
|
||||
Date: Sep 2012
|
||||
Contact: Tomas Hlavacek <tmshlvck@gmail.com>
|
||||
Description:
|
||||
@@ -29,7 +29,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/type
|
||||
What: /sys/class/tty/ttyS<x>/type
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -38,7 +38,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/line
|
||||
What: /sys/class/tty/ttyS<x>/line
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -47,7 +47,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/port
|
||||
What: /sys/class/tty/ttyS<x>/port
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -56,7 +56,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/irq
|
||||
What: /sys/class/tty/ttyS<x>/irq
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -65,7 +65,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/flags
|
||||
What: /sys/class/tty/ttyS<x>/flags
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -74,7 +74,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/xmit_fifo_size
|
||||
What: /sys/class/tty/ttyS<x>/xmit_fifo_size
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -83,7 +83,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/close_delay
|
||||
What: /sys/class/tty/ttyS<x>/close_delay
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -92,7 +92,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/closing_wait
|
||||
What: /sys/class/tty/ttyS<x>/closing_wait
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -101,7 +101,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/custom_divisor
|
||||
What: /sys/class/tty/ttyS<x>/custom_divisor
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -110,7 +110,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/io_type
|
||||
What: /sys/class/tty/ttyS<x>/io_type
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -120,7 +120,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/iomem_base
|
||||
What: /sys/class/tty/ttyS<x>/iomem_base
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -129,7 +129,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/iomem_reg_shift
|
||||
What: /sys/class/tty/ttyS<x>/iomem_reg_shift
|
||||
Date: October 2012
|
||||
Contact: Alan Cox <alan@linux.intel.com>
|
||||
Description:
|
||||
@@ -139,7 +139,7 @@ Description:
|
||||
These sysfs values expose the TIOCGSERIAL interface via
|
||||
sysfs rather than via ioctls.
|
||||
|
||||
What: /sys/class/tty/ttyS0/rx_trig_bytes
|
||||
What: /sys/class/tty/ttyS<x>/rx_trig_bytes
|
||||
Date: May 2014
|
||||
Contact: Yoshihiro YUNOMAE <yoshihiro.yunomae.ez@hitachi.com>
|
||||
Description:
|
||||
@@ -155,7 +155,7 @@ Description:
|
||||
16550A, which has 1/4/8/14 bytes trigger, the RX trigger is
|
||||
automatically changed to 4 bytes.
|
||||
|
||||
What: /sys/class/tty/ttyS0/console
|
||||
What: /sys/class/tty/ttyS<x>/console
|
||||
Date: February 2020
|
||||
Contact: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
|
||||
Description:
|
||||
|
||||
@@ -202,49 +202,44 @@ newly arrived RCU callbacks against future grace periods:
|
||||
1 static void rcu_prepare_for_idle(void)
|
||||
2 {
|
||||
3 bool needwake;
|
||||
4 struct rcu_data *rdp;
|
||||
5 struct rcu_dynticks *rdtp = this_cpu_ptr(&rcu_dynticks);
|
||||
6 struct rcu_node *rnp;
|
||||
7 struct rcu_state *rsp;
|
||||
8 int tne;
|
||||
9
|
||||
10 if (IS_ENABLED(CONFIG_RCU_NOCB_CPU_ALL) ||
|
||||
11 rcu_is_nocb_cpu(smp_processor_id()))
|
||||
12 return;
|
||||
4 struct rcu_data *rdp = this_cpu_ptr(&rcu_data);
|
||||
5 struct rcu_node *rnp;
|
||||
6 int tne;
|
||||
7
|
||||
8 lockdep_assert_irqs_disabled();
|
||||
9 if (rcu_rdp_is_offloaded(rdp))
|
||||
10 return;
|
||||
11
|
||||
12 /* Handle nohz enablement switches conservatively. */
|
||||
13 tne = READ_ONCE(tick_nohz_active);
|
||||
14 if (tne != rdtp->tick_nohz_enabled_snap) {
|
||||
15 if (rcu_cpu_has_callbacks(NULL))
|
||||
16 invoke_rcu_core();
|
||||
17 rdtp->tick_nohz_enabled_snap = tne;
|
||||
14 if (tne != rdp->tick_nohz_enabled_snap) {
|
||||
15 if (!rcu_segcblist_empty(&rdp->cblist))
|
||||
16 invoke_rcu_core(); /* force nohz to see update. */
|
||||
17 rdp->tick_nohz_enabled_snap = tne;
|
||||
18 return;
|
||||
19 }
|
||||
20 if (!tne)
|
||||
21 return;
|
||||
22 if (rdtp->all_lazy &&
|
||||
23 rdtp->nonlazy_posted != rdtp->nonlazy_posted_snap) {
|
||||
24 rdtp->all_lazy = false;
|
||||
25 rdtp->nonlazy_posted_snap = rdtp->nonlazy_posted;
|
||||
26 invoke_rcu_core();
|
||||
27 return;
|
||||
28 }
|
||||
29 if (rdtp->last_accelerate == jiffies)
|
||||
30 return;
|
||||
31 rdtp->last_accelerate = jiffies;
|
||||
32 for_each_rcu_flavor(rsp) {
|
||||
33 rdp = this_cpu_ptr(rsp->rda);
|
||||
34 if (rcu_segcblist_pend_cbs(&rdp->cblist))
|
||||
35 continue;
|
||||
36 rnp = rdp->mynode;
|
||||
37 raw_spin_lock_rcu_node(rnp);
|
||||
38 needwake = rcu_accelerate_cbs(rsp, rnp, rdp);
|
||||
39 raw_spin_unlock_rcu_node(rnp);
|
||||
40 if (needwake)
|
||||
41 rcu_gp_kthread_wake(rsp);
|
||||
42 }
|
||||
43 }
|
||||
22
|
||||
23 /*
|
||||
24 * If we have not yet accelerated this jiffy, accelerate all
|
||||
25 * callbacks on this CPU.
|
||||
26 */
|
||||
27 if (rdp->last_accelerate == jiffies)
|
||||
28 return;
|
||||
29 rdp->last_accelerate = jiffies;
|
||||
30 if (rcu_segcblist_pend_cbs(&rdp->cblist)) {
|
||||
31 rnp = rdp->mynode;
|
||||
32 raw_spin_lock_rcu_node(rnp); /* irqs already disabled. */
|
||||
33 needwake = rcu_accelerate_cbs(rnp, rdp);
|
||||
34 raw_spin_unlock_rcu_node(rnp); /* irqs remain disabled. */
|
||||
35 if (needwake)
|
||||
36 rcu_gp_kthread_wake();
|
||||
37 }
|
||||
38 }
|
||||
|
||||
But the only part of ``rcu_prepare_for_idle()`` that really matters for
|
||||
this discussion are lines 37–39. We will therefore abbreviate this
|
||||
this discussion are lines 32–34. We will therefore abbreviate this
|
||||
function as follows:
|
||||
|
||||
.. kernel-figure:: rcu_node-lock.svg
|
||||
|
||||
@@ -96,6 +96,16 @@ warnings:
|
||||
the ``rcu_.*timer wakeup didn't happen for`` console-log message,
|
||||
which will include additional debugging information.
|
||||
|
||||
- A low-level kernel issue that either fails to invoke one of the
|
||||
variants of rcu_user_enter(), rcu_user_exit(), rcu_idle_enter(),
|
||||
rcu_idle_exit(), rcu_irq_enter(), or rcu_irq_exit() on the one
|
||||
hand, or that invokes one of them too many times on the other.
|
||||
Historically, the most frequent issue has been an omission
|
||||
of either irq_enter() or irq_exit(), which in turn invoke
|
||||
rcu_irq_enter() or rcu_irq_exit(), respectively. Building your
|
||||
kernel with CONFIG_RCU_EQS_DEBUG=y can help track down these types
|
||||
of issues, which sometimes arise in architecture-specific code.
|
||||
|
||||
- A bug in the RCU implementation.
|
||||
|
||||
- A hardware failure. This is quite unlikely, but has occurred
|
||||
|
||||
@@ -1016,6 +1016,8 @@ All time durations are in microseconds.
|
||||
- nr_periods
|
||||
- nr_throttled
|
||||
- throttled_usec
|
||||
- nr_bursts
|
||||
- burst_usec
|
||||
|
||||
cpu.weight
|
||||
A read-write single value file which exists on non-root
|
||||
@@ -1047,6 +1049,12 @@ All time durations are in microseconds.
|
||||
$PERIOD duration. "max" for $MAX indicates no limit. If only
|
||||
one number is written, $MAX is updated.
|
||||
|
||||
cpu.max.burst
|
||||
A read-write single value file which exists on non-root
|
||||
cgroups. The default is "0".
|
||||
|
||||
The burst in the range [0, $MAX].
|
||||
|
||||
cpu.pressure
|
||||
A read-write nested-keyed file.
|
||||
|
||||
@@ -2310,6 +2318,16 @@ Miscellaneous controller provides 3 interface files. If two misc resources (res_
|
||||
Limits can be set higher than the capacity value in the misc.capacity
|
||||
file.
|
||||
|
||||
misc.events
|
||||
A read-only flat-keyed file which exists on non-root cgroups. The
|
||||
following entries are defined. Unless specified otherwise, a value
|
||||
change in this file generates a file modified event. All fields in
|
||||
this file are hierarchical.
|
||||
|
||||
max
|
||||
The number of times the cgroup's resource usage was
|
||||
about to go over the max boundary.
|
||||
|
||||
Migration and Ownership
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
@@ -19,11 +19,13 @@ these macros in include/asm-XXX/topology.h::
|
||||
|
||||
#define topology_physical_package_id(cpu)
|
||||
#define topology_die_id(cpu)
|
||||
#define topology_cluster_id(cpu)
|
||||
#define topology_core_id(cpu)
|
||||
#define topology_book_id(cpu)
|
||||
#define topology_drawer_id(cpu)
|
||||
#define topology_sibling_cpumask(cpu)
|
||||
#define topology_core_cpumask(cpu)
|
||||
#define topology_cluster_cpumask(cpu)
|
||||
#define topology_die_cpumask(cpu)
|
||||
#define topology_book_cpumask(cpu)
|
||||
#define topology_drawer_cpumask(cpu)
|
||||
@@ -39,10 +41,12 @@ not defined by include/asm-XXX/topology.h:
|
||||
|
||||
1) topology_physical_package_id: -1
|
||||
2) topology_die_id: -1
|
||||
3) topology_core_id: 0
|
||||
4) topology_sibling_cpumask: just the given CPU
|
||||
5) topology_core_cpumask: just the given CPU
|
||||
6) topology_die_cpumask: just the given CPU
|
||||
3) topology_cluster_id: -1
|
||||
4) topology_core_id: 0
|
||||
5) topology_sibling_cpumask: just the given CPU
|
||||
6) topology_core_cpumask: just the given CPU
|
||||
7) topology_cluster_cpumask: just the given CPU
|
||||
8) topology_die_cpumask: just the given CPU
|
||||
|
||||
For architectures that don't support books (CONFIG_SCHED_BOOK) there are no
|
||||
default definitions for topology_book_id() and topology_book_cpumask().
|
||||
|
||||
@@ -249,8 +249,7 @@ Debug messages during Boot Process
|
||||
|
||||
To activate debug messages for core code and built-in modules during
|
||||
the boot process, even before userspace and debugfs exists, use
|
||||
``dyndbg="QUERY"``, ``module.dyndbg="QUERY"``, or ``ddebug_query="QUERY"``
|
||||
(``ddebug_query`` is obsoleted by ``dyndbg``, and deprecated). QUERY follows
|
||||
``dyndbg="QUERY"`` or ``module.dyndbg="QUERY"``. QUERY follows
|
||||
the syntax described above, but must not exceed 1023 characters. Your
|
||||
bootloader may impose lower limits.
|
||||
|
||||
@@ -270,8 +269,7 @@ this boot parameter for debugging purposes.
|
||||
|
||||
If ``foo`` module is not built-in, ``foo.dyndbg`` will still be processed at
|
||||
boot time, without effect, but will be reprocessed when module is
|
||||
loaded later. ``ddebug_query=`` and bare ``dyndbg=`` are only processed at
|
||||
boot.
|
||||
loaded later. Bare ``dyndbg=`` is only processed at boot.
|
||||
|
||||
|
||||
Debug Messages at Module Initialization Time
|
||||
@@ -358,8 +356,11 @@ Examples
|
||||
// boot-args example, with newlines and comments for readability
|
||||
Kernel command line: ...
|
||||
// see whats going on in dyndbg=value processing
|
||||
dynamic_debug.verbose=1
|
||||
// enable pr_debugs in 2 builtins, #cmt is stripped
|
||||
dyndbg="module params +p #cmt ; module sys +p"
|
||||
dynamic_debug.verbose=3
|
||||
// enable pr_debugs in the btrfs module (can be builtin or loadable)
|
||||
btrfs.dyndbg="+p"
|
||||
// enable pr_debugs in all files under init/
|
||||
// and the function parse_one, #cmt is stripped
|
||||
dyndbg="file init/* +p #cmt ; func parse_one +p"
|
||||
// enable pr_debugs in 2 functions in a module loaded later
|
||||
pc87360.dyndbg="func pc87360_init_device +p; func pc87360_find +p"
|
||||
|
||||
@@ -490,9 +490,8 @@ Spectre variant 2
|
||||
|
||||
Restricting indirect branch speculation on a user program will
|
||||
also prevent the program from launching a variant 2 attack
|
||||
on x86. All sand-boxed SECCOMP programs have indirect branch
|
||||
speculation restricted by default. Administrators can change
|
||||
that behavior via the kernel command line and sysfs control files.
|
||||
on x86. Administrators can change that behavior via the kernel
|
||||
command line and sysfs control files.
|
||||
See :ref:`spectre_mitigation_control_command_line`.
|
||||
|
||||
Programs that disable their indirect branch speculation will have
|
||||
@@ -594,61 +593,14 @@ kernel command line.
|
||||
Not specifying this option is equivalent to
|
||||
spectre_v2=auto.
|
||||
|
||||
For user space mitigation:
|
||||
|
||||
spectre_v2_user=
|
||||
|
||||
[X86] Control mitigation of Spectre variant 2
|
||||
(indirect branch speculation) vulnerability between
|
||||
user space tasks
|
||||
|
||||
on
|
||||
Unconditionally enable mitigations. Is
|
||||
enforced by spectre_v2=on
|
||||
|
||||
off
|
||||
Unconditionally disable mitigations. Is
|
||||
enforced by spectre_v2=off
|
||||
|
||||
prctl
|
||||
Indirect branch speculation is enabled,
|
||||
but mitigation can be enabled via prctl
|
||||
per thread. The mitigation control state
|
||||
is inherited on fork.
|
||||
|
||||
prctl,ibpb
|
||||
Like "prctl" above, but only STIBP is
|
||||
controlled per thread. IBPB is issued
|
||||
always when switching between different user
|
||||
space processes.
|
||||
|
||||
seccomp
|
||||
Same as "prctl" above, but all seccomp
|
||||
threads will enable the mitigation unless
|
||||
they explicitly opt out.
|
||||
|
||||
seccomp,ibpb
|
||||
Like "seccomp" above, but only STIBP is
|
||||
controlled per thread. IBPB is issued
|
||||
always when switching between different
|
||||
user space processes.
|
||||
|
||||
auto
|
||||
Kernel selects the mitigation depending on
|
||||
the available CPU features and vulnerability.
|
||||
|
||||
Default mitigation:
|
||||
If CONFIG_SECCOMP=y then "seccomp", otherwise "prctl"
|
||||
|
||||
Not specifying this option is equivalent to
|
||||
spectre_v2_user=auto.
|
||||
|
||||
In general the kernel by default selects
|
||||
reasonable mitigations for the current CPU. To
|
||||
disable Spectre variant 2 mitigations, boot with
|
||||
spectre_v2=off. Spectre variant 1 mitigations
|
||||
cannot be disabled.
|
||||
|
||||
For spectre_v2_user see :doc:`/admin-guide/kernel-parameters`.
|
||||
|
||||
Mitigation selection guide
|
||||
--------------------------
|
||||
|
||||
@@ -674,9 +626,8 @@ Mitigation selection guide
|
||||
off by disabling their indirect branch speculation when they are run
|
||||
(See :ref:`Documentation/userspace-api/spec_ctrl.rst <set_spec_ctrl>`).
|
||||
This prevents untrusted programs from polluting the branch target
|
||||
buffer. All programs running in SECCOMP sandboxes have indirect
|
||||
branch speculation restricted by default. This behavior can be
|
||||
changed via the kernel command line and sysfs control files. See
|
||||
buffer. This behavior can be changed via the kernel command line
|
||||
and sysfs control files. See
|
||||
:ref:`spectre_mitigation_control_command_line`.
|
||||
|
||||
3. High security mode
|
||||
|
||||
@@ -841,11 +841,6 @@
|
||||
Format: <port#>,<type>
|
||||
See also Documentation/input/devices/joystick-parport.rst
|
||||
|
||||
ddebug_query= [KNL,DYNAMIC_DEBUG] Enable debug messages at early boot
|
||||
time. See
|
||||
Documentation/admin-guide/dynamic-debug-howto.rst for
|
||||
details. Deprecated, see dyndbg.
|
||||
|
||||
debug [KNL] Enable kernel debugging (events log level).
|
||||
|
||||
debug_boot_weak_hash
|
||||
@@ -2353,7 +2348,14 @@
|
||||
[KVM] Controls how many 4KiB pages are periodically zapped
|
||||
back to huge pages. 0 disables the recovery, otherwise if
|
||||
the value is N KVM will zap 1/Nth of the 4KiB pages every
|
||||
minute. The default is 60.
|
||||
period (see below). The default is 60.
|
||||
|
||||
kvm.nx_huge_pages_recovery_period_ms=
|
||||
[KVM] Controls the time period at which KVM zaps 4KiB pages
|
||||
back to huge pages. If the value is a non-zero N, KVM will
|
||||
zap a portion (see ratio above) of the pages every N msecs.
|
||||
If the value is 0 (the default), KVM will pick a period based
|
||||
on the ratio, such that a page is zapped after 1 hour on average.
|
||||
|
||||
kvm-amd.nested= [KVM,AMD] Allow nested virtualization in KVM/SVM.
|
||||
Default is 1 (enabled)
|
||||
@@ -2365,6 +2367,8 @@
|
||||
kvm-arm.mode=
|
||||
[KVM,ARM] Select one of KVM/arm64's modes of operation.
|
||||
|
||||
none: Forcefully disable KVM.
|
||||
|
||||
nvhe: Standard nVHE-based mode, without support for
|
||||
protected guests.
|
||||
|
||||
@@ -2372,7 +2376,9 @@
|
||||
state is kept private from the host.
|
||||
Not valid if the kernel is running in EL2.
|
||||
|
||||
Defaults to VHE/nVHE based on hardware support.
|
||||
Defaults to VHE/nVHE based on hardware support. Setting
|
||||
mode to "protected" will disable kexec and hibernation
|
||||
for the host.
|
||||
|
||||
kvm-arm.vgic_v3_group0_trap=
|
||||
[KVM,ARM] Trap guest accesses to GICv3 group-0
|
||||
@@ -5303,8 +5309,7 @@
|
||||
auto - Kernel selects the mitigation depending on
|
||||
the available CPU features and vulnerability.
|
||||
|
||||
Default mitigation:
|
||||
If CONFIG_SECCOMP=y then "seccomp", otherwise "prctl"
|
||||
Default mitigation: "prctl"
|
||||
|
||||
Not specifying this option is equivalent to
|
||||
spectre_v2_user=auto.
|
||||
@@ -5348,7 +5353,7 @@
|
||||
will disable SSB unless they explicitly opt out.
|
||||
|
||||
Default mitigations:
|
||||
X86: If CONFIG_SECCOMP=y "seccomp", otherwise "prctl"
|
||||
X86: "prctl"
|
||||
|
||||
On powerpc the options are:
|
||||
|
||||
@@ -5497,6 +5502,15 @@
|
||||
stifb= [HW]
|
||||
Format: bpp:<bpp1>[:<bpp2>[:<bpp3>...]]
|
||||
|
||||
strict_sas_size=
|
||||
[X86]
|
||||
Format: <bool>
|
||||
Enable or disable strict sigaltstack size checks
|
||||
against the required signal frame size which
|
||||
depends on the supported FPU features. This can
|
||||
be used to filter out binaries which have
|
||||
not yet been made aware of AT_MINSIGSTKSZ.
|
||||
|
||||
sunrpc.min_resvport=
|
||||
sunrpc.max_resvport=
|
||||
[NFS,SUNRPC]
|
||||
|
||||
@@ -58,15 +58,20 @@ Camera sensor devices
|
||||
============ ==========================================================
|
||||
Driver Name
|
||||
============ ==========================================================
|
||||
ccs MIPI CCS compliant camera sensors (also SMIA++ and SMIA)
|
||||
et8ek8 ET8EK8 camera sensor
|
||||
hi556 Hynix Hi-556 sensor
|
||||
hi846 Hynix Hi-846 sensor
|
||||
imx208 Sony IMX208 sensor
|
||||
imx214 Sony IMX214 sensor
|
||||
imx219 Sony IMX219 sensor
|
||||
imx258 Sony IMX258 sensor
|
||||
imx274 Sony IMX274 sensor
|
||||
imx290 Sony IMX290 sensor
|
||||
imx319 Sony IMX319 sensor
|
||||
imx334 Sony IMX334 sensor
|
||||
imx355 Sony IMX355 sensor
|
||||
imx412 Sony IMX412 sensor
|
||||
m5mols Fujitsu M-5MOLS 8MP sensor
|
||||
mt9m001 mt9m001
|
||||
mt9m032 MT9M032 camera sensor
|
||||
@@ -79,6 +84,7 @@ mt9v032 Micron MT9V032 sensor
|
||||
mt9v111 Aptina MT9V111 sensor
|
||||
noon010pc30 Siliconfile NOON010PC30 sensor
|
||||
ov13858 OmniVision OV13858 sensor
|
||||
ov13b10 OmniVision OV13B10 sensor
|
||||
ov2640 OmniVision OV2640 sensor
|
||||
ov2659 OmniVision OV2659 sensor
|
||||
ov2680 OmniVision OV2680 sensor
|
||||
@@ -104,7 +110,6 @@ s5k4ecgx Samsung S5K4ECGX sensor
|
||||
s5k5baf Samsung S5K5BAF sensor
|
||||
s5k6a3 Samsung S5K6A3 sensor
|
||||
s5k6aa Samsung S5K6AAFX sensor
|
||||
smiapp SMIA++/SMIA sensor
|
||||
sr030pc30 Siliconfile SR030PC30 sensor
|
||||
vs6624 ST VS6624 sensor
|
||||
============ ==========================================================
|
||||
@@ -138,6 +143,7 @@ Driver Name
|
||||
ad5820 AD5820 lens voice coil
|
||||
ak7375 AK7375 lens voice coil
|
||||
dw9714 DW9714 lens voice coil
|
||||
dw9768 DW9768 lens voice coil
|
||||
dw9807-vcm DW9807 lens voice coil
|
||||
============ ==========================================================
|
||||
|
||||
|
||||
@@ -155,6 +155,66 @@ the resolutions supported by the sensor.
|
||||
[fmt:SBGGR10_1X10/800x600@1/30 field:none colorspace:srgb]
|
||||
-> "imx7-mipi-csis.0":0 [ENABLED]
|
||||
|
||||
i.MX6ULL-EVK with OV5640
|
||||
------------------------
|
||||
|
||||
On this platform a parallel OV5640 sensor is connected to the CSI port.
|
||||
The following example configures a video capture pipeline with an output
|
||||
of 640x480 and UYVY8_2X8 format:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
# Setup links
|
||||
media-ctl -l "'ov5640 1-003c':0 -> 'csi':0[1]"
|
||||
media-ctl -l "'csi':1 -> 'csi capture':0[1]"
|
||||
|
||||
# Configure pads for pipeline
|
||||
media-ctl -v -V "'ov5640 1-003c':0 [fmt:UYVY8_2X8/640x480 field:none]"
|
||||
|
||||
After this streaming can start:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
gst-launch-1.0 -v v4l2src device=/dev/video1 ! video/x-raw,format=UYVY,width=640,height=480 ! v4l2convert ! fbdevsink
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
# media-ctl -p
|
||||
Media controller API version 5.14.0
|
||||
|
||||
Media device information
|
||||
------------------------
|
||||
driver imx7-csi
|
||||
model imx-media
|
||||
serial
|
||||
bus info
|
||||
hw revision 0x0
|
||||
driver version 5.14.0
|
||||
|
||||
Device topology
|
||||
- entity 1: csi (2 pads, 2 links)
|
||||
type V4L2 subdev subtype Unknown flags 0
|
||||
device node name /dev/v4l-subdev0
|
||||
pad0: Sink
|
||||
[fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
|
||||
<- "ov5640 1-003c":0 [ENABLED,IMMUTABLE]
|
||||
pad1: Source
|
||||
[fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
|
||||
-> "csi capture":0 [ENABLED,IMMUTABLE]
|
||||
|
||||
- entity 4: csi capture (1 pad, 1 link)
|
||||
type Node subtype V4L flags 0
|
||||
device node name /dev/video1
|
||||
pad0: Sink
|
||||
<- "csi":1 [ENABLED,IMMUTABLE]
|
||||
|
||||
- entity 10: ov5640 1-003c (1 pad, 1 link)
|
||||
type V4L2 subdev subtype Sensor flags 0
|
||||
device node name /dev/v4l-subdev1
|
||||
pad0: Source
|
||||
[fmt:UYVY8_2X8/640x480@1/30 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:full-range]
|
||||
-> "csi":0 [ENABLED,IMMUTABLE]
|
||||
|
||||
References
|
||||
----------
|
||||
|
||||
|
||||
@@ -51,10 +51,11 @@ to userspace as a V4L2 sub-device node and has two pads:
|
||||
.. tabularcolumns:: |p{0.8cm}|p{4.0cm}|p{4.0cm}|
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - pad
|
||||
- direction
|
||||
- purpose
|
||||
* - Pad
|
||||
- Direction
|
||||
- Purpose
|
||||
|
||||
* - 0
|
||||
- sink
|
||||
@@ -148,10 +149,11 @@ Each pipe has two sink pads and three source pads for the following purpose:
|
||||
.. tabularcolumns:: |p{0.8cm}|p{4.0cm}|p{4.0cm}|
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - pad
|
||||
- direction
|
||||
- purpose
|
||||
* - Pad
|
||||
- Direction
|
||||
- Purpose
|
||||
|
||||
* - 0
|
||||
- sink
|
||||
|
||||
@@ -159,7 +159,7 @@ whatever). Otherwise the device numbers can get confusing. The ivtv
|
||||
Read-only
|
||||
|
||||
The raw YUV video output from the current video input. The YUV format
|
||||
is non-standard (V4L2_PIX_FMT_HM12).
|
||||
is a 16x16 linear tiled NV12 format (V4L2_PIX_FMT_NV12_16L16)
|
||||
|
||||
Note that the YUV and PCM streams are not synchronized, so they are of
|
||||
limited use.
|
||||
|
||||
@@ -61,9 +61,10 @@ vimc-debayer:
|
||||
* 1 Pad source
|
||||
|
||||
vimc-scaler:
|
||||
Scale up the image by a factor of 3. E.g.: a 640x480 image becomes a
|
||||
1920x1440 image. (this value can be configured, see at
|
||||
`Module options`_).
|
||||
Re-size the image to meet the source pad resolution. E.g.: if the sync
|
||||
pad is configured to 360x480 and the source to 1280x720, the image will
|
||||
be stretched to fit the source resolution. Works for any resolution
|
||||
within the vimc limitations (even shrinking the image if necessary).
|
||||
Exposes:
|
||||
|
||||
* 1 Pad sink
|
||||
@@ -75,16 +76,3 @@ vimc-capture:
|
||||
|
||||
* 1 Pad sink
|
||||
* 1 Pad source
|
||||
|
||||
|
||||
Module options
|
||||
--------------
|
||||
|
||||
Vimc has a module parameter to configure the driver.
|
||||
|
||||
* ``sca_mult=<unsigned int>``
|
||||
|
||||
Image size multiplier factor to be used to multiply both width and
|
||||
height, so the image size will be ``sca_mult^2`` bigger than the
|
||||
original one. Currently, only supports scaling up (the default value
|
||||
is 3).
|
||||
|
||||
@@ -196,6 +196,28 @@ you can go through every map in the process, find the PFNs, look those up
|
||||
in kpagecount, and tally up the number of pages that are only referenced
|
||||
once.
|
||||
|
||||
Exceptions for Shared Memory
|
||||
============================
|
||||
|
||||
Page table entries for shared pages are cleared when the pages are zapped or
|
||||
swapped out. This makes swapped out pages indistinguishable from never-allocated
|
||||
ones.
|
||||
|
||||
In kernel space, the swap location can still be retrieved from the page cache.
|
||||
However, values stored only on the normal PTE get lost irretrievably when the
|
||||
page is swapped out (i.e. SOFT_DIRTY).
|
||||
|
||||
In user space, whether the page is present, swapped or none can be deduced with
|
||||
the help of lseek and/or mincore system calls.
|
||||
|
||||
lseek() can differentiate between accessed pages (present or swapped out) and
|
||||
holes (none/non-allocated) by specifying the SEEK_DATA flag on the file where
|
||||
the pages are backed. For anonymous shared pages, the file can be found in
|
||||
``/proc/pid/map_files/``.
|
||||
|
||||
mincore() can differentiate between pages in memory (present, including swap
|
||||
cache) and out of memory (swapped out or none/non-allocated).
|
||||
|
||||
Other notes
|
||||
===========
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ Setting the ramoops parameters can be done in several different manners:
|
||||
mem=128M ramoops.mem_address=0x8000000 ramoops.ecc=1
|
||||
|
||||
B. Use Device Tree bindings, as described in
|
||||
``Documentation/devicetree/bindings/reserved-memory/ramoops.txt``.
|
||||
``Documentation/devicetree/bindings/reserved-memory/ramoops.yaml``.
|
||||
For example::
|
||||
|
||||
reserved-memory {
|
||||
|
||||
@@ -543,7 +543,7 @@ As mentioned earlier, Speakup can either be completely compiled into the
|
||||
kernel, with the exception of the help module, or it can be compiled as
|
||||
a series of modules. When compiled as modules, Speakup will only be
|
||||
able to speak some of the bootup messages if your system administrator
|
||||
has configured the system to load the modules at boo time. The modules
|
||||
has configured the system to load the modules at boot time. The modules
|
||||
can be loaded after the file systems have been checked and mounted, or
|
||||
from an initrd. There is a third possibility. Speakup can be compiled
|
||||
with some components built into the kernel, and others as modules. As
|
||||
|
||||
@@ -55,6 +55,7 @@ SoC-specific documents
|
||||
stm32/stm32h750-overview
|
||||
stm32/stm32f769-overview
|
||||
stm32/stm32f429-overview
|
||||
stm32/stm32mp13-overview
|
||||
stm32/stm32mp157-overview
|
||||
|
||||
sunxi
|
||||
|
||||
@@ -21,6 +21,7 @@ Orion family
|
||||
- Datasheet: https://web.archive.org/web/20210124231420/http://csclub.uwaterloo.ca/~board/ts7800/MV88F5182-datasheet.pdf
|
||||
- Programmer's User Guide: https://web.archive.org/web/20210124231536/http://csclub.uwaterloo.ca/~board/ts7800/MV88F5182-opensource-manual.pdf
|
||||
- User Manual: https://web.archive.org/web/20210124231631/http://csclub.uwaterloo.ca/~board/ts7800/MV88F5182-usermanual.pdf
|
||||
- Functional Errata: https://web.archive.org/web/20210704165540/https://www.digriz.org.uk/ts78xx/88F5182_Functional_Errata.pdf
|
||||
- 88F5281
|
||||
|
||||
- Datasheet: https://web.archive.org/web/20131028144728/http://www.ocmodshop.com/images/reviews/networking/qnap_ts409u/marvel_88f5281_data_sheet.pdf
|
||||
@@ -212,6 +213,7 @@ EBU Armada family ARMv8
|
||||
arch/arm64/boot/dts/marvell/armada-37*
|
||||
|
||||
Armada 7K Flavors:
|
||||
- 88F6040 (AP806 Quad 600 MHz + one CP110)
|
||||
- 88F7020 (AP806 Dual + one CP110)
|
||||
- 88F7040 (AP806 Quad + one CP110)
|
||||
|
||||
@@ -243,6 +245,23 @@ EBU Armada family ARMv8
|
||||
Device tree files:
|
||||
arch/arm64/boot/dts/marvell/armada-80*
|
||||
|
||||
Octeon TX2 CN913x Flavors:
|
||||
- CN9130 (AP807 Quad + one internal CP115)
|
||||
- CN9131 (AP807 Quad + one internal CP115 + one external CP115 / 88F8215)
|
||||
- CN9132 (AP807 Quad + one internal CP115 + two external CP115 / 88F8215)
|
||||
|
||||
Core:
|
||||
ARM Cortex A72
|
||||
|
||||
Homepage:
|
||||
https://web.archive.org/web/20200803150818/https://www.marvell.com/products/infrastructure-processors/multi-core-processors/octeon-tx2/octeon-tx2-cn9130.html
|
||||
|
||||
Product Brief:
|
||||
https://web.archive.org/web/20200803150818/https://www.marvell.com/content/dam/marvell/en/public-collateral/embedded-processors/marvell-infrastructure-processors-octeon-tx2-cn913x-product-brief-2020-02.pdf
|
||||
|
||||
Device tree files:
|
||||
arch/arm64/boot/dts/marvell/cn913*
|
||||
|
||||
Avanta family
|
||||
-------------
|
||||
|
||||
|
||||
@@ -137,6 +137,26 @@ the Microchip website: http://www.microchip.com.
|
||||
|
||||
http://ww1.microchip.com/downloads/en/DeviceDoc/DS60001476B.pdf
|
||||
|
||||
* ARM Cortex-A7 based SoCs
|
||||
- sama7g5 family
|
||||
|
||||
- sama7g51
|
||||
- sama7g52
|
||||
- sama7g53
|
||||
- sama7g54 (device superset)
|
||||
|
||||
* Datasheet
|
||||
|
||||
Coming soon
|
||||
|
||||
- lan966 family
|
||||
- lan9662
|
||||
- lan9668
|
||||
|
||||
* Datasheet
|
||||
|
||||
Coming soon
|
||||
|
||||
* ARM Cortex-M7 MCUs
|
||||
- sams70 family
|
||||
|
||||
|
||||
37
Documentation/arm/stm32/stm32mp13-overview.rst
Normal file
37
Documentation/arm/stm32/stm32mp13-overview.rst
Normal file
@@ -0,0 +1,37 @@
|
||||
===================
|
||||
STM32MP13 Overview
|
||||
===================
|
||||
|
||||
Introduction
|
||||
------------
|
||||
|
||||
The STM32MP131/STM32MP133/STM32MP135 are Cortex-A MPU aimed at various applications.
|
||||
They feature:
|
||||
|
||||
- One Cortex-A7 application core
|
||||
- Standard memories interface support
|
||||
- Standard connectivity, widely inherited from the STM32 MCU family
|
||||
- Comprehensive security support
|
||||
|
||||
More details:
|
||||
|
||||
- Cortex-A7 core running up to @900MHz
|
||||
- FMC controller to connect SDRAM, NOR and NAND memories
|
||||
- QSPI
|
||||
- SD/MMC/SDIO support
|
||||
- 2*Ethernet controller
|
||||
- CAN
|
||||
- ADC/DAC
|
||||
- USB EHCI/OHCI controllers
|
||||
- USB OTG
|
||||
- I2C, SPI, CAN busses support
|
||||
- Several general purpose timers
|
||||
- Serial Audio interface
|
||||
- LCD controller
|
||||
- DCMIPP
|
||||
- SPDIFRX
|
||||
- DFSDM
|
||||
|
||||
:Authors:
|
||||
|
||||
- Alexandre Torgue <alexandre.torgue@foss.st.com>
|
||||
@@ -340,6 +340,16 @@ Before jumping into the kernel, the following conditions must be met:
|
||||
- SMCR_EL2.LEN must be initialised to the same value for all CPUs the
|
||||
kernel will execute on.
|
||||
|
||||
For CPUs with the Scalable Matrix Extension FA64 feature (FEAT_SME_FA64)
|
||||
|
||||
- If EL3 is present:
|
||||
|
||||
- SMCR_EL3.FA64 (bit 31) must be initialised to 0b1.
|
||||
|
||||
- If the kernel is entered at EL1 and EL2 is present:
|
||||
|
||||
- SMCR_EL2.FA64 (bit 31) must be initialised to 0b1.
|
||||
|
||||
The requirements described above for CPU mode, caches, MMUs, architected
|
||||
timers, coherency and system registers apply to all CPUs. All CPUs must
|
||||
enter the kernel in the same exception level. Where the values documented
|
||||
|
||||
@@ -235,7 +235,15 @@ infrastructure:
|
||||
| DPB | [3-0] | y |
|
||||
+------------------------------+---------+---------+
|
||||
|
||||
6) ID_AA64MMFR2_EL1 - Memory model feature register 2
|
||||
6) ID_AA64MMFR0_EL1 - Memory model feature register 0
|
||||
|
||||
+------------------------------+---------+---------+
|
||||
| Name | bits | visible |
|
||||
+------------------------------+---------+---------+
|
||||
| ECV | [63-60] | y |
|
||||
+------------------------------+---------+---------+
|
||||
|
||||
7) ID_AA64MMFR2_EL1 - Memory model feature register 2
|
||||
|
||||
+------------------------------+---------+---------+
|
||||
| Name | bits | visible |
|
||||
@@ -243,7 +251,7 @@ infrastructure:
|
||||
| AT | [35-32] | y |
|
||||
+------------------------------+---------+---------+
|
||||
|
||||
7) ID_AA64ZFR0_EL1 - SVE feature ID register 0
|
||||
8) ID_AA64ZFR0_EL1 - SVE feature ID register 0
|
||||
|
||||
+------------------------------+---------+---------+
|
||||
| Name | bits | visible |
|
||||
|
||||
@@ -247,6 +247,10 @@ HWCAP2_MTE
|
||||
Functionality implied by ID_AA64PFR1_EL1.MTE == 0b0010, as described
|
||||
by Documentation/arm64/memory-tagging-extension.rst.
|
||||
|
||||
HWCAP2_ECV
|
||||
|
||||
Functionality implied by ID_AA64MMFR0_EL1.ECV == 0b0001.
|
||||
|
||||
4. Unused AT_HWCAP bits
|
||||
-----------------------
|
||||
|
||||
|
||||
@@ -92,12 +92,24 @@ stable kernels.
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Cortex-A77 | #1508412 | ARM64_ERRATUM_1508412 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Cortex-A710 | #2119858 | ARM64_ERRATUM_2119858 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Cortex-A710 | #2054223 | ARM64_ERRATUM_2054223 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Cortex-A710 | #2224489 | ARM64_ERRATUM_2224489 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Neoverse-N1 | #1188873,1418040| ARM64_ERRATUM_1418040 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Neoverse-N1 | #1349291 | N/A |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Neoverse-N1 | #1542419 | ARM64_ERRATUM_1542419 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Neoverse-N2 | #2139208 | ARM64_ERRATUM_2139208 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Neoverse-N2 | #2067961 | ARM64_ERRATUM_2067961 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | Neoverse-N2 | #2253138 | ARM64_ERRATUM_2253138 |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
| ARM | MMU-500 | #841119,826419 | N/A |
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
+----------------+-----------------+-----------------+-----------------------------+
|
||||
|
||||
@@ -64,7 +64,7 @@ macros, it was decided that brand new macros should be introduced instead::
|
||||
of importing all the crappy, historic, essentially randomly chosen
|
||||
debug symbol macro names from the binutils and older kernels?
|
||||
|
||||
.. _discussion: https://lkml.kernel.org/r/20170217104757.28588-1-jslaby@suse.cz
|
||||
.. _discussion: https://lore.kernel.org/r/20170217104757.28588-1-jslaby@suse.cz
|
||||
|
||||
Macros Description
|
||||
------------------
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
.. SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
.. _inline_encryption:
|
||||
|
||||
=================
|
||||
Inline Encryption
|
||||
=================
|
||||
@@ -7,230 +9,269 @@ Inline Encryption
|
||||
Background
|
||||
==========
|
||||
|
||||
Inline encryption hardware sits logically between memory and the disk, and can
|
||||
en/decrypt data as it goes in/out of the disk. Inline encryption hardware has a
|
||||
fixed number of "keyslots" - slots into which encryption contexts (i.e. the
|
||||
encryption key, encryption algorithm, data unit size) can be programmed by the
|
||||
kernel at any time. Each request sent to the disk can be tagged with the index
|
||||
of a keyslot (and also a data unit number to act as an encryption tweak), and
|
||||
the inline encryption hardware will en/decrypt the data in the request with the
|
||||
encryption context programmed into that keyslot. This is very different from
|
||||
full disk encryption solutions like self encrypting drives/TCG OPAL/ATA
|
||||
Security standards, since with inline encryption, any block on disk could be
|
||||
encrypted with any encryption context the kernel chooses.
|
||||
Inline encryption hardware sits logically between memory and disk, and can
|
||||
en/decrypt data as it goes in/out of the disk. For each I/O request, software
|
||||
can control exactly how the inline encryption hardware will en/decrypt the data
|
||||
in terms of key, algorithm, data unit size (the granularity of en/decryption),
|
||||
and data unit number (a value that determines the initialization vector(s)).
|
||||
|
||||
Some inline encryption hardware accepts all encryption parameters including raw
|
||||
keys directly in low-level I/O requests. However, most inline encryption
|
||||
hardware instead has a fixed number of "keyslots" and requires that the key,
|
||||
algorithm, and data unit size first be programmed into a keyslot. Each
|
||||
low-level I/O request then just contains a keyslot index and data unit number.
|
||||
|
||||
Note that inline encryption hardware is very different from traditional crypto
|
||||
accelerators, which are supported through the kernel crypto API. Traditional
|
||||
crypto accelerators operate on memory regions, whereas inline encryption
|
||||
hardware operates on I/O requests. Thus, inline encryption hardware needs to be
|
||||
managed by the block layer, not the kernel crypto API.
|
||||
|
||||
Inline encryption hardware is also very different from "self-encrypting drives",
|
||||
such as those based on the TCG Opal or ATA Security standards. Self-encrypting
|
||||
drives don't provide fine-grained control of encryption and provide no way to
|
||||
verify the correctness of the resulting ciphertext. Inline encryption hardware
|
||||
provides fine-grained control of encryption, including the choice of key and
|
||||
initialization vector for each sector, and can be tested for correctness.
|
||||
|
||||
Objective
|
||||
=========
|
||||
|
||||
We want to support inline encryption (IE) in the kernel.
|
||||
To allow for testing, we also want a crypto API fallback when actual
|
||||
IE hardware is absent. We also want IE to work with layered devices
|
||||
like dm and loopback (i.e. we want to be able to use the IE hardware
|
||||
of the underlying devices if present, or else fall back to crypto API
|
||||
en/decryption).
|
||||
|
||||
We want to support inline encryption in the kernel. To make testing easier, we
|
||||
also want support for falling back to the kernel crypto API when actual inline
|
||||
encryption hardware is absent. We also want inline encryption to work with
|
||||
layered devices like device-mapper and loopback (i.e. we want to be able to use
|
||||
the inline encryption hardware of the underlying devices if present, or else
|
||||
fall back to crypto API en/decryption).
|
||||
|
||||
Constraints and notes
|
||||
=====================
|
||||
|
||||
- IE hardware has a limited number of "keyslots" that can be programmed
|
||||
with an encryption context (key, algorithm, data unit size, etc.) at any time.
|
||||
One can specify a keyslot in a data request made to the device, and the
|
||||
device will en/decrypt the data using the encryption context programmed into
|
||||
that specified keyslot. When possible, we want to make multiple requests with
|
||||
the same encryption context share the same keyslot.
|
||||
- We need a way for upper layers (e.g. filesystems) to specify an encryption
|
||||
context to use for en/decrypting a bio, and device drivers (e.g. UFSHCD) need
|
||||
to be able to use that encryption context when they process the request.
|
||||
Encryption contexts also introduce constraints on bio merging; the block layer
|
||||
needs to be aware of these constraints.
|
||||
|
||||
- We need a way for upper layers like filesystems to specify an encryption
|
||||
context to use for en/decrypting a struct bio, and a device driver (like UFS)
|
||||
needs to be able to use that encryption context when it processes the bio.
|
||||
- Different inline encryption hardware has different supported algorithms,
|
||||
supported data unit sizes, maximum data unit numbers, etc. We call these
|
||||
properties the "crypto capabilities". We need a way for device drivers to
|
||||
advertise crypto capabilities to upper layers in a generic way.
|
||||
|
||||
- We need a way for device drivers to expose their inline encryption
|
||||
capabilities in a unified way to the upper layers.
|
||||
- Inline encryption hardware usually (but not always) requires that keys be
|
||||
programmed into keyslots before being used. Since programming keyslots may be
|
||||
slow and there may not be very many keyslots, we shouldn't just program the
|
||||
key for every I/O request, but rather keep track of which keys are in the
|
||||
keyslots and reuse an already-programmed keyslot when possible.
|
||||
|
||||
- Upper layers typically define a specific end-of-life for crypto keys, e.g.
|
||||
when an encrypted directory is locked or when a crypto mapping is torn down.
|
||||
At these times, keys are wiped from memory. We must provide a way for upper
|
||||
layers to also evict keys from any keyslots they are present in.
|
||||
|
||||
Design
|
||||
======
|
||||
- When possible, device-mapper devices must be able to pass through the inline
|
||||
encryption support of their underlying devices. However, it doesn't make
|
||||
sense for device-mapper devices to have keyslots themselves.
|
||||
|
||||
We add a struct bio_crypt_ctx to struct bio that can
|
||||
represent an encryption context, because we need to be able to pass this
|
||||
encryption context from the upper layers (like the fs layer) to the
|
||||
device driver to act upon.
|
||||
Basic design
|
||||
============
|
||||
|
||||
While IE hardware works on the notion of keyslots, the FS layer has no
|
||||
knowledge of keyslots - it simply wants to specify an encryption context to
|
||||
use while en/decrypting a bio.
|
||||
We introduce ``struct blk_crypto_key`` to represent an inline encryption key and
|
||||
how it will be used. This includes the actual bytes of the key; the size of the
|
||||
key; the algorithm and data unit size the key will be used with; and the number
|
||||
of bytes needed to represent the maximum data unit number the key will be used
|
||||
with.
|
||||
|
||||
We introduce a keyslot manager (KSM) that handles the translation from
|
||||
encryption contexts specified by the FS to keyslots on the IE hardware.
|
||||
This KSM also serves as the way IE hardware can expose its capabilities to
|
||||
upper layers. The generic mode of operation is: each device driver that wants
|
||||
to support IE will construct a KSM and set it up in its struct request_queue.
|
||||
Upper layers that want to use IE on this device can then use this KSM in
|
||||
the device's struct request_queue to translate an encryption context into
|
||||
a keyslot. The presence of the KSM in the request queue shall be used to mean
|
||||
that the device supports IE.
|
||||
We introduce ``struct bio_crypt_ctx`` to represent an encryption context. It
|
||||
contains a data unit number and a pointer to a blk_crypto_key. We add pointers
|
||||
to a bio_crypt_ctx to ``struct bio`` and ``struct request``; this allows users
|
||||
of the block layer (e.g. filesystems) to provide an encryption context when
|
||||
creating a bio and have it be passed down the stack for processing by the block
|
||||
layer and device drivers. Note that the encryption context doesn't explicitly
|
||||
say whether to encrypt or decrypt, as that is implicit from the direction of the
|
||||
bio; WRITE means encrypt, and READ means decrypt.
|
||||
|
||||
The KSM uses refcounts to track which keyslots are idle (either they have no
|
||||
encryption context programmed, or there are no in-flight struct bios
|
||||
referencing that keyslot). When a new encryption context needs a keyslot, it
|
||||
tries to find a keyslot that has already been programmed with the same
|
||||
encryption context, and if there is no such keyslot, it evicts the least
|
||||
recently used idle keyslot and programs the new encryption context into that
|
||||
one. If no idle keyslots are available, then the caller will sleep until there
|
||||
is at least one.
|
||||
We also introduce ``struct blk_crypto_profile`` to contain all generic inline
|
||||
encryption-related state for a particular inline encryption device. The
|
||||
blk_crypto_profile serves as the way that drivers for inline encryption hardware
|
||||
advertise their crypto capabilities and provide certain functions (e.g.,
|
||||
functions to program and evict keys) to upper layers. Each device driver that
|
||||
wants to support inline encryption will construct a blk_crypto_profile, then
|
||||
associate it with the disk's request_queue.
|
||||
|
||||
The blk_crypto_profile also manages the hardware's keyslots, when applicable.
|
||||
This happens in the block layer, so that users of the block layer can just
|
||||
specify encryption contexts and don't need to know about keyslots at all, nor do
|
||||
device drivers need to care about most details of keyslot management.
|
||||
|
||||
blk-mq changes, other block layer changes and blk-crypto-fallback
|
||||
=================================================================
|
||||
Specifically, for each keyslot, the block layer (via the blk_crypto_profile)
|
||||
keeps track of which blk_crypto_key that keyslot contains (if any), and how many
|
||||
in-flight I/O requests are using it. When the block layer creates a
|
||||
``struct request`` for a bio that has an encryption context, it grabs a keyslot
|
||||
that already contains the key if possible. Otherwise it waits for an idle
|
||||
keyslot (a keyslot that isn't in-use by any I/O), then programs the key into the
|
||||
least-recently-used idle keyslot using the function the device driver provided.
|
||||
In both cases, the resulting keyslot is stored in the ``crypt_keyslot`` field of
|
||||
the request, where it is then accessible to device drivers and is released after
|
||||
the request completes.
|
||||
|
||||
We add a pointer to a ``bi_crypt_context`` and ``keyslot`` to
|
||||
struct request. These will be referred to as the ``crypto fields``
|
||||
for the request. This ``keyslot`` is the keyslot into which the
|
||||
``bi_crypt_context`` has been programmed in the KSM of the ``request_queue``
|
||||
that this request is being sent to.
|
||||
``struct request`` also contains a pointer to the original bio_crypt_ctx.
|
||||
Requests can be built from multiple bios, and the block layer must take the
|
||||
encryption context into account when trying to merge bios and requests. For two
|
||||
bios/requests to be merged, they must have compatible encryption contexts: both
|
||||
unencrypted, or both encrypted with the same key and contiguous data unit
|
||||
numbers. Only the encryption context for the first bio in a request is
|
||||
retained, since the remaining bios have been verified to be merge-compatible
|
||||
with the first bio.
|
||||
|
||||
We introduce ``block/blk-crypto-fallback.c``, which allows upper layers to remain
|
||||
blissfully unaware of whether or not real inline encryption hardware is present
|
||||
underneath. When a bio is submitted with a target ``request_queue`` that doesn't
|
||||
support the encryption context specified with the bio, the block layer will
|
||||
en/decrypt the bio with the blk-crypto-fallback.
|
||||
To make it possible for inline encryption to work with request_queue based
|
||||
layered devices, when a request is cloned, its encryption context is cloned as
|
||||
well. When the cloned request is submitted, it is then processed as usual; this
|
||||
includes getting a keyslot from the clone's target device if needed.
|
||||
|
||||
If the bio is a ``WRITE`` bio, a bounce bio is allocated, and the data in the bio
|
||||
is encrypted stored in the bounce bio - blk-mq will then proceed to process the
|
||||
bounce bio as if it were not encrypted at all (except when blk-integrity is
|
||||
concerned). ``blk-crypto-fallback`` sets the bounce bio's ``bi_end_io`` to an
|
||||
internal function that cleans up the bounce bio and ends the original bio.
|
||||
blk-crypto-fallback
|
||||
===================
|
||||
|
||||
If the bio is a ``READ`` bio, the bio's ``bi_end_io`` (and also ``bi_private``)
|
||||
is saved and overwritten by ``blk-crypto-fallback`` to
|
||||
``bio_crypto_fallback_decrypt_bio``. The bio's ``bi_crypt_context`` is also
|
||||
overwritten with ``NULL``, so that to the rest of the stack, the bio looks
|
||||
as if it was a regular bio that never had an encryption context specified.
|
||||
``bio_crypto_fallback_decrypt_bio`` will decrypt the bio, restore the original
|
||||
``bi_end_io`` (and also ``bi_private``) and end the bio again.
|
||||
It is desirable for the inline encryption support of upper layers (e.g.
|
||||
filesystems) to be testable without real inline encryption hardware, and
|
||||
likewise for the block layer's keyslot management logic. It is also desirable
|
||||
to allow upper layers to just always use inline encryption rather than have to
|
||||
implement encryption in multiple ways.
|
||||
|
||||
Regardless of whether real inline encryption hardware is used or the
|
||||
Therefore, we also introduce *blk-crypto-fallback*, which is an implementation
|
||||
of inline encryption using the kernel crypto API. blk-crypto-fallback is built
|
||||
into the block layer, so it works on any block device without any special setup.
|
||||
Essentially, when a bio with an encryption context is submitted to a
|
||||
request_queue that doesn't support that encryption context, the block layer will
|
||||
handle en/decryption of the bio using blk-crypto-fallback.
|
||||
|
||||
For encryption, the data cannot be encrypted in-place, as callers usually rely
|
||||
on it being unmodified. Instead, blk-crypto-fallback allocates bounce pages,
|
||||
fills a new bio with those bounce pages, encrypts the data into those bounce
|
||||
pages, and submits that "bounce" bio. When the bounce bio completes,
|
||||
blk-crypto-fallback completes the original bio. If the original bio is too
|
||||
large, multiple bounce bios may be required; see the code for details.
|
||||
|
||||
For decryption, blk-crypto-fallback "wraps" the bio's completion callback
|
||||
(``bi_complete``) and private data (``bi_private``) with its own, unsets the
|
||||
bio's encryption context, then submits the bio. If the read completes
|
||||
successfully, blk-crypto-fallback restores the bio's original completion
|
||||
callback and private data, then decrypts the bio's data in-place using the
|
||||
kernel crypto API. Decryption happens from a workqueue, as it may sleep.
|
||||
Afterwards, blk-crypto-fallback completes the bio.
|
||||
|
||||
In both cases, the bios that blk-crypto-fallback submits no longer have an
|
||||
encryption context. Therefore, lower layers only see standard unencrypted I/O.
|
||||
|
||||
blk-crypto-fallback also defines its own blk_crypto_profile and has its own
|
||||
"keyslots"; its keyslots contain ``struct crypto_skcipher`` objects. The reason
|
||||
for this is twofold. First, it allows the keyslot management logic to be tested
|
||||
without actual inline encryption hardware. Second, similar to actual inline
|
||||
encryption hardware, the crypto API doesn't accept keys directly in requests but
|
||||
rather requires that keys be set ahead of time, and setting keys can be
|
||||
expensive; moreover, allocating a crypto_skcipher can't happen on the I/O path
|
||||
at all due to the locks it takes. Therefore, the concept of keyslots still
|
||||
makes sense for blk-crypto-fallback.
|
||||
|
||||
Note that regardless of whether real inline encryption hardware or
|
||||
blk-crypto-fallback is used, the ciphertext written to disk (and hence the
|
||||
on-disk format of data) will be the same (assuming the hardware's implementation
|
||||
of the algorithm being used adheres to spec and functions correctly).
|
||||
|
||||
If a ``request queue``'s inline encryption hardware claimed to support the
|
||||
encryption context specified with a bio, then it will not be handled by the
|
||||
``blk-crypto-fallback``. We will eventually reach a point in blk-mq when a
|
||||
struct request needs to be allocated for that bio. At that point,
|
||||
blk-mq tries to program the encryption context into the ``request_queue``'s
|
||||
keyslot_manager, and obtain a keyslot, which it stores in its newly added
|
||||
``keyslot`` field. This keyslot is released when the request is completed.
|
||||
|
||||
When the first bio is added to a request, ``blk_crypto_rq_bio_prep`` is called,
|
||||
which sets the request's ``crypt_ctx`` to a copy of the bio's
|
||||
``bi_crypt_context``. bio_crypt_do_front_merge is called whenever a subsequent
|
||||
bio is merged to the front of the request, which updates the ``crypt_ctx`` of
|
||||
the request so that it matches the newly merged bio's ``bi_crypt_context``. In particular, the request keeps a copy of the ``bi_crypt_context`` of the first
|
||||
bio in its bio-list (blk-mq needs to be careful to maintain this invariant
|
||||
during bio and request merges).
|
||||
|
||||
To make it possible for inline encryption to work with request queue based
|
||||
layered devices, when a request is cloned, its ``crypto fields`` are cloned as
|
||||
well. When the cloned request is submitted, blk-mq programs the
|
||||
``bi_crypt_context`` of the request into the clone's request_queue's keyslot
|
||||
manager, and stores the returned keyslot in the clone's ``keyslot``.
|
||||
on-disk format of data) will be the same (assuming that both the inline
|
||||
encryption hardware's implementation and the kernel crypto API's implementation
|
||||
of the algorithm being used adhere to spec and function correctly).
|
||||
|
||||
blk-crypto-fallback is optional and is controlled by the
|
||||
``CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK`` kernel configuration option.
|
||||
|
||||
API presented to users of the block layer
|
||||
=========================================
|
||||
|
||||
``struct blk_crypto_key`` represents a crypto key (the raw key, size of the
|
||||
key, the crypto algorithm to use, the data unit size to use, and the number of
|
||||
bytes required to represent data unit numbers that will be specified with the
|
||||
``bi_crypt_context``).
|
||||
``blk_crypto_config_supported()`` allows users to check ahead of time whether
|
||||
inline encryption with particular crypto settings will work on a particular
|
||||
request_queue -- either via hardware or via blk-crypto-fallback. This function
|
||||
takes in a ``struct blk_crypto_config`` which is like blk_crypto_key, but omits
|
||||
the actual bytes of the key and instead just contains the algorithm, data unit
|
||||
size, etc. This function can be useful if blk-crypto-fallback is disabled.
|
||||
|
||||
``blk_crypto_init_key`` allows upper layers to initialize such a
|
||||
``blk_crypto_key``.
|
||||
``blk_crypto_init_key()`` allows users to initialize a blk_crypto_key.
|
||||
|
||||
``bio_crypt_set_ctx`` should be called on any bio that a user of
|
||||
the block layer wants en/decrypted via inline encryption (or the
|
||||
blk-crypto-fallback, if hardware support isn't available for the desired
|
||||
crypto configuration). This function takes the ``blk_crypto_key`` and the
|
||||
data unit number (DUN) to use when en/decrypting the bio.
|
||||
Users must call ``blk_crypto_start_using_key()`` before actually starting to use
|
||||
a blk_crypto_key on a request_queue (even if ``blk_crypto_config_supported()``
|
||||
was called earlier). This is needed to initialize blk-crypto-fallback if it
|
||||
will be needed. This must not be called from the data path, as this may have to
|
||||
allocate resources, which may deadlock in that case.
|
||||
|
||||
``blk_crypto_config_supported`` allows upper layers to query whether or not the
|
||||
an encryption context passed to request queue can be handled by blk-crypto
|
||||
(either by real inline encryption hardware, or by the blk-crypto-fallback).
|
||||
This is useful e.g. when blk-crypto-fallback is disabled, and the upper layer
|
||||
wants to use an algorithm that may not supported by hardware - this function
|
||||
lets the upper layer know ahead of time that the algorithm isn't supported,
|
||||
and the upper layer can fallback to something else if appropriate.
|
||||
Next, to attach an encryption context to a bio, users should call
|
||||
``bio_crypt_set_ctx()``. This function allocates a bio_crypt_ctx and attaches
|
||||
it to a bio, given the blk_crypto_key and the data unit number that will be used
|
||||
for en/decryption. Users don't need to worry about freeing the bio_crypt_ctx
|
||||
later, as that happens automatically when the bio is freed or reset.
|
||||
|
||||
``blk_crypto_start_using_key`` - Upper layers must call this function on
|
||||
``blk_crypto_key`` and a ``request_queue`` before using the key with any bio
|
||||
headed for that ``request_queue``. This function ensures that either the
|
||||
hardware supports the key's crypto settings, or the crypto API fallback has
|
||||
transforms for the needed mode allocated and ready to go. Note that this
|
||||
function may allocate an ``skcipher``, and must not be called from the data
|
||||
path, since allocating ``skciphers`` from the data path can deadlock.
|
||||
Finally, when done using inline encryption with a blk_crypto_key on a
|
||||
request_queue, users must call ``blk_crypto_evict_key()``. This ensures that
|
||||
the key is evicted from all keyslots it may be programmed into and unlinked from
|
||||
any kernel data structures it may be linked into.
|
||||
|
||||
``blk_crypto_evict_key`` *must* be called by upper layers before a
|
||||
``blk_crypto_key`` is freed. Further, it *must* only be called only once
|
||||
there are no more in-flight requests that use that ``blk_crypto_key``.
|
||||
``blk_crypto_evict_key`` will ensure that a key is removed from any keyslots in
|
||||
inline encryption hardware that the key might have been programmed into (or the blk-crypto-fallback).
|
||||
In summary, for users of the block layer, the lifecycle of a blk_crypto_key is
|
||||
as follows:
|
||||
|
||||
1. ``blk_crypto_config_supported()`` (optional)
|
||||
2. ``blk_crypto_init_key()``
|
||||
3. ``blk_crypto_start_using_key()``
|
||||
4. ``bio_crypt_set_ctx()`` (potentially many times)
|
||||
5. ``blk_crypto_evict_key()`` (after all I/O has completed)
|
||||
6. Zeroize the blk_crypto_key (this has no dedicated function)
|
||||
|
||||
If a blk_crypto_key is being used on multiple request_queues, then
|
||||
``blk_crypto_config_supported()`` (if used), ``blk_crypto_start_using_key()``,
|
||||
and ``blk_crypto_evict_key()`` must be called on each request_queue.
|
||||
|
||||
API presented to device drivers
|
||||
===============================
|
||||
|
||||
A :c:type:``struct blk_keyslot_manager`` should be set up by device drivers in
|
||||
the ``request_queue`` of the device. The device driver needs to call
|
||||
``blk_ksm_init`` (or its resource-managed variant ``devm_blk_ksm_init``) on the
|
||||
``blk_keyslot_manager``, while specifying the number of keyslots supported by
|
||||
the hardware.
|
||||
A device driver that wants to support inline encryption must set up a
|
||||
blk_crypto_profile in the request_queue of its device. To do this, it first
|
||||
must call ``blk_crypto_profile_init()`` (or its resource-managed variant
|
||||
``devm_blk_crypto_profile_init()``), providing the number of keyslots.
|
||||
|
||||
The device driver also needs to tell the KSM how to actually manipulate the
|
||||
IE hardware in the device to do things like programming the crypto key into
|
||||
the IE hardware into a particular keyslot. All this is achieved through the
|
||||
struct blk_ksm_ll_ops field in the KSM that the device driver
|
||||
must fill up after initing the ``blk_keyslot_manager``.
|
||||
Next, it must advertise its crypto capabilities by setting fields in the
|
||||
blk_crypto_profile, e.g. ``modes_supported`` and ``max_dun_bytes_supported``.
|
||||
|
||||
The KSM also handles runtime power management for the device when applicable
|
||||
(e.g. when it wants to program a crypto key into the IE hardware, the device
|
||||
must be runtime powered on) - so the device driver must also set the ``dev``
|
||||
field in the ksm to point to the `struct device` for the KSM to use for runtime
|
||||
power management.
|
||||
It then must set function pointers in the ``ll_ops`` field of the
|
||||
blk_crypto_profile to tell upper layers how to control the inline encryption
|
||||
hardware, e.g. how to program and evict keyslots. Most drivers will need to
|
||||
implement ``keyslot_program`` and ``keyslot_evict``. For details, see the
|
||||
comments for ``struct blk_crypto_ll_ops``.
|
||||
|
||||
``blk_ksm_reprogram_all_keys`` can be called by device drivers if the device
|
||||
needs each and every of its keyslots to be reprogrammed with the key it
|
||||
"should have" at the point in time when the function is called. This is useful
|
||||
e.g. if a device loses all its keys on runtime power down/up.
|
||||
Once the driver registers a blk_crypto_profile with a request_queue, I/O
|
||||
requests the driver receives via that queue may have an encryption context. All
|
||||
encryption contexts will be compatible with the crypto capabilities declared in
|
||||
the blk_crypto_profile, so drivers don't need to worry about handling
|
||||
unsupported requests. Also, if a nonzero number of keyslots was declared in the
|
||||
blk_crypto_profile, then all I/O requests that have an encryption context will
|
||||
also have a keyslot which was already programmed with the appropriate key.
|
||||
|
||||
If the driver used ``blk_ksm_init`` instead of ``devm_blk_ksm_init``, then
|
||||
``blk_ksm_destroy`` should be called to free up all resources used by a
|
||||
``blk_keyslot_manager`` once it is no longer needed.
|
||||
If the driver implements runtime suspend and its blk_crypto_ll_ops don't work
|
||||
while the device is runtime-suspended, then the driver must also set the ``dev``
|
||||
field of the blk_crypto_profile to point to the ``struct device`` that will be
|
||||
resumed before any of the low-level operations are called.
|
||||
|
||||
If there are situations where the inline encryption hardware loses the contents
|
||||
of its keyslots, e.g. device resets, the driver must handle reprogramming the
|
||||
keyslots. To do this, the driver may call ``blk_crypto_reprogram_all_keys()``.
|
||||
|
||||
Finally, if the driver used ``blk_crypto_profile_init()`` instead of
|
||||
``devm_blk_crypto_profile_init()``, then it is responsible for calling
|
||||
``blk_crypto_profile_destroy()`` when the crypto profile is no longer needed.
|
||||
|
||||
Layered Devices
|
||||
===============
|
||||
|
||||
Request queue based layered devices like dm-rq that wish to support IE need to
|
||||
create their own keyslot manager for their request queue, and expose whatever
|
||||
functionality they choose. When a layered device wants to pass a clone of that
|
||||
request to another ``request_queue``, blk-crypto will initialize and prepare the
|
||||
clone as necessary - see ``blk_crypto_insert_cloned_request`` in
|
||||
``blk-crypto.c``.
|
||||
|
||||
|
||||
Future Optimizations for layered devices
|
||||
========================================
|
||||
|
||||
Creating a keyslot manager for a layered device uses up memory for each
|
||||
keyslot, and in general, a layered device merely passes the request on to a
|
||||
"child" device, so the keyslots in the layered device itself are completely
|
||||
unused, and don't need any refcounting or keyslot programming. We can instead
|
||||
define a new type of KSM; the "passthrough KSM", that layered devices can use
|
||||
to advertise an unlimited number of keyslots, and support for any encryption
|
||||
algorithms they choose, while not actually using any memory for each keyslot.
|
||||
Another use case for the "passthrough KSM" is for IE devices that do not have a
|
||||
limited number of keyslots.
|
||||
|
||||
Request queue based layered devices like dm-rq that wish to support inline
|
||||
encryption need to create their own blk_crypto_profile for their request_queue,
|
||||
and expose whatever functionality they choose. When a layered device wants to
|
||||
pass a clone of that request to another request_queue, blk-crypto will
|
||||
initialize and prepare the clone as necessary; see
|
||||
``blk_crypto_insert_cloned_request()``.
|
||||
|
||||
Interaction between inline encryption and blk integrity
|
||||
=======================================================
|
||||
@@ -257,7 +298,7 @@ Because there isn't any real hardware yet, it seems prudent to assume that
|
||||
hardware implementations might not implement both features together correctly,
|
||||
and disallow the combination for now. Whenever a device supports integrity, the
|
||||
kernel will pretend that the device does not support hardware inline encryption
|
||||
(by essentially setting the keyslot manager in the request_queue of the device
|
||||
to NULL). When the crypto API fallback is enabled, this means that all bios with
|
||||
and encryption context will use the fallback, and IO will complete as usual.
|
||||
When the fallback is disabled, a bio with an encryption context will be failed.
|
||||
(by setting the blk_crypto_profile in the request_queue of the device to NULL).
|
||||
When the crypto API fallback is enabled, this means that all bios with and
|
||||
encryption context will use the fallback, and IO will complete as usual. When
|
||||
the fallback is disabled, a bio with an encryption context will be failed.
|
||||
|
||||
@@ -4,7 +4,7 @@ Queue sysfs files
|
||||
|
||||
This text file will detail the queue files that are located in the sysfs tree
|
||||
for each block device. Note that stacked devices typically do not export
|
||||
any settings, since their queue merely functions are a remapping target.
|
||||
any settings, since their queue merely functions as a remapping target.
|
||||
These files are the ones found in the /sys/block/xxx/queue/ directory.
|
||||
|
||||
Files denoted with a RO postfix are readonly and the RW postfix means
|
||||
@@ -40,10 +40,11 @@ discard_max_hw_bytes (RO)
|
||||
-------------------------
|
||||
Devices that support discard functionality may have internal limits on
|
||||
the number of bytes that can be trimmed or unmapped in a single operation.
|
||||
The discard_max_bytes parameter is set by the device driver to the maximum
|
||||
number of bytes that can be discarded in a single operation. Discard
|
||||
requests issued to the device must not exceed this limit. A discard_max_bytes
|
||||
value of 0 means that the device does not support discard functionality.
|
||||
The `discard_max_hw_bytes` parameter is set by the device driver to the
|
||||
maximum number of bytes that can be discarded in a single operation.
|
||||
Discard requests issued to the device must not exceed this limit.
|
||||
A `discard_max_hw_bytes` value of 0 means that the device does not support
|
||||
discard functionality.
|
||||
|
||||
discard_max_bytes (RW)
|
||||
----------------------
|
||||
@@ -286,4 +287,35 @@ sequential zones of zoned block devices (devices with a zoned attributed
|
||||
that reports "host-managed" or "host-aware"). This value is always 0 for
|
||||
regular block devices.
|
||||
|
||||
independent_access_ranges (RO)
|
||||
------------------------------
|
||||
|
||||
The presence of this sub-directory of the /sys/block/xxx/queue/ directory
|
||||
indicates that the device is capable of executing requests targeting
|
||||
different sector ranges in parallel. For instance, single LUN multi-actuator
|
||||
hard-disks will have an independent_access_ranges directory if the device
|
||||
correctly advertizes the sector ranges of its actuators.
|
||||
|
||||
The independent_access_ranges directory contains one directory per access
|
||||
range, with each range described using the sector (RO) attribute file to
|
||||
indicate the first sector of the range and the nr_sectors (RO) attribute file
|
||||
to indicate the total number of sectors in the range starting from the first
|
||||
sector of the range. For example, a dual-actuator hard-disk will have the
|
||||
following independent_access_ranges entries.::
|
||||
|
||||
$ tree /sys/block/<device>/queue/independent_access_ranges/
|
||||
/sys/block/<device>/queue/independent_access_ranges/
|
||||
|-- 0
|
||||
| |-- nr_sectors
|
||||
| `-- sector
|
||||
`-- 1
|
||||
|-- nr_sectors
|
||||
`-- sector
|
||||
|
||||
The sector and nr_sectors attributes use 512B sector unit, regardless of
|
||||
the actual block size of the device. Independent access ranges do not
|
||||
overlap and include all sectors within the device capacity. The access
|
||||
ranges are numbered in increasing order of the range start sector,
|
||||
that is, the sector attribute of range 0 always has the value 0.
|
||||
|
||||
Jens Axboe <jens.axboe@oracle.com>, February 2009
|
||||
|
||||
92
Documentation/bpf/bpf_licensing.rst
Normal file
92
Documentation/bpf/bpf_licensing.rst
Normal file
@@ -0,0 +1,92 @@
|
||||
=============
|
||||
BPF licensing
|
||||
=============
|
||||
|
||||
Background
|
||||
==========
|
||||
|
||||
* Classic BPF was BSD licensed
|
||||
|
||||
"BPF" was originally introduced as BSD Packet Filter in
|
||||
http://www.tcpdump.org/papers/bpf-usenix93.pdf. The corresponding instruction
|
||||
set and its implementation came from BSD with BSD license. That original
|
||||
instruction set is now known as "classic BPF".
|
||||
|
||||
However an instruction set is a specification for machine-language interaction,
|
||||
similar to a programming language. It is not a code. Therefore, the
|
||||
application of a BSD license may be misleading in a certain context, as the
|
||||
instruction set may enjoy no copyright protection.
|
||||
|
||||
* eBPF (extended BPF) instruction set continues to be BSD
|
||||
|
||||
In 2014, the classic BPF instruction set was significantly extended. We
|
||||
typically refer to this instruction set as eBPF to disambiguate it from cBPF.
|
||||
The eBPF instruction set is still BSD licensed.
|
||||
|
||||
Implementations of eBPF
|
||||
=======================
|
||||
|
||||
Using the eBPF instruction set requires implementing code in both kernel space
|
||||
and user space.
|
||||
|
||||
In Linux Kernel
|
||||
---------------
|
||||
|
||||
The reference implementations of the eBPF interpreter and various just-in-time
|
||||
compilers are part of Linux and are GPLv2 licensed. The implementation of
|
||||
eBPF helper functions is also GPLv2 licensed. Interpreters, JITs, helpers,
|
||||
and verifiers are called eBPF runtime.
|
||||
|
||||
In User Space
|
||||
-------------
|
||||
|
||||
There are also implementations of eBPF runtime (interpreter, JITs, helper
|
||||
functions) under
|
||||
Apache2 (https://github.com/iovisor/ubpf),
|
||||
MIT (https://github.com/qmonnet/rbpf), and
|
||||
BSD (https://github.com/DPDK/dpdk/blob/main/lib/librte_bpf).
|
||||
|
||||
In HW
|
||||
-----
|
||||
|
||||
The HW can choose to execute eBPF instruction natively and provide eBPF runtime
|
||||
in HW or via the use of implementing firmware with a proprietary license.
|
||||
|
||||
In other operating systems
|
||||
--------------------------
|
||||
|
||||
Other kernels or user space implementations of eBPF instruction set and runtime
|
||||
can have proprietary licenses.
|
||||
|
||||
Using BPF programs in the Linux kernel
|
||||
======================================
|
||||
|
||||
Linux Kernel (while being GPLv2) allows linking of proprietary kernel modules
|
||||
under these rules:
|
||||
Documentation/process/license-rules.rst
|
||||
|
||||
When a kernel module is loaded, the linux kernel checks which functions it
|
||||
intends to use. If any function is marked as "GPL only," the corresponding
|
||||
module or program has to have GPL compatible license.
|
||||
|
||||
Loading BPF program into the Linux kernel is similar to loading a kernel
|
||||
module. BPF is loaded at run time and not statically linked to the Linux
|
||||
kernel. BPF program loading follows the same license checking rules as kernel
|
||||
modules. BPF programs can be proprietary if they don't use "GPL only" BPF
|
||||
helper functions.
|
||||
|
||||
Further, some BPF program types - Linux Security Modules (LSM) and TCP
|
||||
Congestion Control (struct_ops), as of Aug 2021 - are required to be GPL
|
||||
compatible even if they don't use "GPL only" helper functions directly. The
|
||||
registration step of LSM and TCP congestion control modules of the Linux
|
||||
kernel is done through EXPORT_SYMBOL_GPL kernel functions. In that sense LSM
|
||||
and struct_ops BPF programs are implicitly calling "GPL only" functions.
|
||||
The same restriction applies to BPF programs that call kernel functions
|
||||
directly via unstable interface also known as "kfunc".
|
||||
|
||||
Packaging BPF programs with user space applications
|
||||
====================================================
|
||||
|
||||
Generally, proprietary-licensed applications and GPL licensed BPF programs
|
||||
written for the Linux kernel in the same package can co-exist because they are
|
||||
separate executable processes. This applies to both cBPF and eBPF programs.
|
||||
@@ -85,6 +85,7 @@ sequentially and type id is assigned to each recognized type starting from id
|
||||
#define BTF_KIND_VAR 14 /* Variable */
|
||||
#define BTF_KIND_DATASEC 15 /* Section */
|
||||
#define BTF_KIND_FLOAT 16 /* Floating point */
|
||||
#define BTF_KIND_DECL_TAG 17 /* Decl Tag */
|
||||
|
||||
Note that the type section encodes debug info, not just pure types.
|
||||
``BTF_KIND_FUNC`` is not a type, and it represents a defined subprogram.
|
||||
@@ -106,7 +107,7 @@ Each type contains the following common data::
|
||||
* "size" tells the size of the type it is describing.
|
||||
*
|
||||
* "type" is used by PTR, TYPEDEF, VOLATILE, CONST, RESTRICT,
|
||||
* FUNC and FUNC_PROTO.
|
||||
* FUNC, FUNC_PROTO and DECL_TAG.
|
||||
* "type" is a type_id referring to another type.
|
||||
*/
|
||||
union {
|
||||
@@ -465,6 +466,32 @@ map definition.
|
||||
|
||||
No additional type data follow ``btf_type``.
|
||||
|
||||
2.2.17 BTF_KIND_DECL_TAG
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
``struct btf_type`` encoding requirement:
|
||||
* ``name_off``: offset to a non-empty string
|
||||
* ``info.kind_flag``: 0
|
||||
* ``info.kind``: BTF_KIND_DECL_TAG
|
||||
* ``info.vlen``: 0
|
||||
* ``type``: ``struct``, ``union``, ``func``, ``var`` or ``typedef``
|
||||
|
||||
``btf_type`` is followed by ``struct btf_decl_tag``.::
|
||||
|
||||
struct btf_decl_tag {
|
||||
__u32 component_idx;
|
||||
};
|
||||
|
||||
The ``name_off`` encodes btf_decl_tag attribute string.
|
||||
The ``type`` should be ``struct``, ``union``, ``func``, ``var`` or ``typedef``.
|
||||
For ``var`` or ``typedef`` type, ``btf_decl_tag.component_idx`` must be ``-1``.
|
||||
For the other three types, if the btf_decl_tag attribute is
|
||||
applied to the ``struct``, ``union`` or ``func`` itself,
|
||||
``btf_decl_tag.component_idx`` must be ``-1``. Otherwise,
|
||||
the attribute is applied to a ``struct``/``union`` member or
|
||||
a ``func`` argument, and ``btf_decl_tag.component_idx`` should be a
|
||||
valid index (starting from 0) pointing to a member or an argument.
|
||||
|
||||
3. BTF Kernel API
|
||||
*****************
|
||||
|
||||
|
||||
@@ -82,6 +82,15 @@ Testing and debugging BPF
|
||||
s390
|
||||
|
||||
|
||||
Licensing
|
||||
=========
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
bpf_licensing
|
||||
|
||||
|
||||
Other
|
||||
=====
|
||||
|
||||
|
||||
@@ -150,6 +150,46 @@ mirror of the mainline's version of libbpf for a stand-alone build.
|
||||
However, all changes to libbpf's code base must be upstreamed through
|
||||
the mainline kernel tree.
|
||||
|
||||
|
||||
API documentation convention
|
||||
============================
|
||||
|
||||
The libbpf API is documented via comments above definitions in
|
||||
header files. These comments can be rendered by doxygen and sphinx
|
||||
for well organized html output. This section describes the
|
||||
convention in which these comments should be formated.
|
||||
|
||||
Here is an example from btf.h:
|
||||
|
||||
.. code-block:: c
|
||||
|
||||
/**
|
||||
* @brief **btf__new()** creates a new instance of a BTF object from the raw
|
||||
* bytes of an ELF's BTF section
|
||||
* @param data raw bytes
|
||||
* @param size number of bytes passed in `data`
|
||||
* @return new BTF object instance which has to be eventually freed with
|
||||
* **btf__free()**
|
||||
*
|
||||
* On error, error-code-encoded-as-pointer is returned, not a NULL. To extract
|
||||
* error code from such a pointer `libbpf_get_error()` should be used. If
|
||||
* `libbpf_set_strict_mode(LIBBPF_STRICT_CLEAN_PTRS)` is enabled, NULL is
|
||||
* returned on error instead. In both cases thread-local `errno` variable is
|
||||
* always set to error code as well.
|
||||
*/
|
||||
|
||||
The comment must start with a block comment of the form '/\*\*'.
|
||||
|
||||
The documentation always starts with a @brief directive. This line is a short
|
||||
description about this API. It starts with the name of the API, denoted in bold
|
||||
like so: **api_name**. Please include an open and close parenthesis if this is a
|
||||
function. Follow with the short description of the API. A longer form description
|
||||
can be added below the last directive, at the bottom of the comment.
|
||||
|
||||
Parameters are denoted with the @param directive, there should be one for each
|
||||
parameter. If this is a function with a non-void return, use the @return directive
|
||||
to document it.
|
||||
|
||||
License
|
||||
-------------------
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user