Commit 95faf6ba authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'driver-core-5.16-rc1' of...

Merge tag 'driver-core-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core

Pull driver core updates from Greg KH:
 "Here is the big set of driver core changes for 5.16-rc1.

  All of these have been in linux-next for a while now with no reported
  problems.

  Included in here are:

   - big update and cleanup of the sysfs abi documentation files and
     scripts from Mauro. We are almost at the place where we can
     properly check that the running kernel's sysfs abi is documented
     fully.

   - firmware loader updates

   - dyndbg updates

   - kernfs cleanups and fixes from Christoph

   - device property updates

   - component fix

   - other minor driver core cleanups and fixes"

* tag 'driver-core-5.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (122 commits)
  device property: Drop redundant NULL checks
  x86/build: Tuck away built-in firmware under FW_LOADER
  vmlinux.lds.h: wrap built-in firmware support under FW_LOADER
  firmware_loader: move struct builtin_fw to the only place used
  x86/microcode: Use the firmware_loader built-in API
  firmware_loader: remove old DECLARE_BUILTIN_FIRMWARE()
  firmware_loader: formalize built-in firmware API
  component: do not leave master devres group open after bind
  dyndbg: refine verbosity 1-4 summary-detail
  gpiolib: acpi: Replace custom code with device_match_acpi_handle()
  i2c: acpi: Replace custom function with device_match_acpi_handle()
  driver core: Provide device_match_acpi_handle() helper
  dyndbg: fix spurious vNpr_info change
  dyndbg: no vpr-info on empty queries
  dyndbg: vpr-info on remove-module complete, not starting
  device property: Add missed header in fwnode.h
  Documentation: dyndbg: Improve cli param examples
  dyndbg: Remove support for ddebug_query param
  dyndbg: make dyndbg a known cli param
  dyndbg: show module in vpr-info in dd-exec-queries
  ...
parents 5c904c66 27e0bcd0
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: ...@@ -6,6 +6,7 @@ Description:
Since Kernel 5.11, multiple buffers are supported. Since Kernel 5.11, multiple buffers are supported.
so, it is better to use, instead: so, it is better to use, instead:
/sys/bus/iio/devices/iio:deviceX/bufferY/length /sys/bus/iio/devices/iio:deviceX/bufferY/length
What: /sys/bus/iio/devices/iio:deviceX/buffer/enable What: /sys/bus/iio/devices/iio:deviceX/buffer/enable
...@@ -17,6 +18,7 @@ Description: ...@@ -17,6 +18,7 @@ Description:
Since Kernel 5.11, multiple buffers are supported. Since Kernel 5.11, multiple buffers are supported.
so, it is better to use, instead: so, it is better to use, instead:
/sys/bus/iio/devices/iio:deviceX/bufferY/enable /sys/bus/iio/devices/iio:deviceX/bufferY/enable
What: /sys/bus/iio/devices/iio:deviceX/scan_elements What: /sys/bus/iio/devices/iio:deviceX/scan_elements
...@@ -165,6 +167,7 @@ Description: ...@@ -165,6 +167,7 @@ Description:
Since Kernel 5.11, multiple buffers are supported. Since Kernel 5.11, multiple buffers are supported.
so, it is better to use, instead: so, it is better to use, instead:
/sys/bus/iio/devices/iio:deviceX/bufferY/watermark /sys/bus/iio/devices/iio:deviceX/bufferY/watermark
What: /sys/bus/iio/devices/iio:deviceX/buffer/data_available What: /sys/bus/iio/devices/iio:deviceX/buffer/data_available
...@@ -179,4 +182,5 @@ Description: ...@@ -179,4 +182,5 @@ Description:
Since Kernel 5.11, multiple buffers are supported. Since Kernel 5.11, multiple buffers are supported.
so, it is better to use, instead: so, it is better to use, instead:
/sys/bus/iio/devices/iio:deviceX/bufferY/data_available /sys/bus/iio/devices/iio:deviceX/bufferY/data_available
What: /sys/fs/o2cb/ (was /sys/o2cb) What: /sys/fs/o2cb/
Date: Dec 2005 Date: Dec 2005
KernelVersion: 2.6.16 KernelVersion: 2.6.16
Contact: ocfs2-devel@oss.oracle.com Contact: ocfs2-devel@oss.oracle.com
......
...@@ -232,10 +232,10 @@ Description: The RoCE type of the associated GID resides at index <gid-index>. ...@@ -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. or "RoCE v2" for RoCE v2 based GIDs.
What: /sys/class/infiniband_mad/umadN/ibdev What: /sys/class/infiniband_mad/umad<N>/ibdev
What: /sys/class/infiniband_mad/umadN/port What: /sys/class/infiniband_mad/umad<N>/port
What: /sys/class/infiniband_mad/issmN/ibdev What: /sys/class/infiniband_mad/issm<N>/ibdev
What: /sys/class/infiniband_mad/issmN/port What: /sys/class/infiniband_mad/issm<N>/port
Date: Apr, 2005 Date: Apr, 2005
KernelVersion: v2.6.12 KernelVersion: v2.6.12
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
...@@ -261,8 +261,8 @@ Description: ...@@ -261,8 +261,8 @@ Description:
userspace ABI compatibility of umad & issm devices. userspace ABI compatibility of umad & issm devices.
What: /sys/class/infiniband_verbs/uverbsN/ibdev What: /sys/class/infiniband_verbs/uverbs<N>/ibdev
What: /sys/class/infiniband_verbs/uverbsN/abi_version What: /sys/class/infiniband_verbs/uverbs<N>/abi_version
Date: Sept, 2005 Date: Sept, 2005
KernelVersion: v2.6.14 KernelVersion: v2.6.14
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
...@@ -471,7 +471,7 @@ Description: ...@@ -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 Date: May, 2010
KernelVersion: v2.6.35 KernelVersion: v2.6.35
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
...@@ -480,8 +480,8 @@ Description: ...@@ -480,8 +480,8 @@ Description:
the Service Level (SL). Listing the SL files returns the Virtual the Service Level (SL). Listing the SL files returns the Virtual
Lane (VL) as programmed by the SL. 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_settings_bin
What: /sys/class/infiniband/qibX/ports/N/CCMgtA/cc_table_bin What: /sys/class/infiniband/qibX/ports/<N>/CCMgtA/cc_table_bin
Date: May, 2010 Date: May, 2010
KernelVersion: v2.6.35 KernelVersion: v2.6.35
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
...@@ -499,11 +499,11 @@ Description: ...@@ -499,11 +499,11 @@ Description:
delay. delay.
=============== ================================================ =============== ================================================
What: /sys/class/infiniband/qibX/ports/N/linkstate/loopback 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/led_override
What: /sys/class/infiniband/qibX/ports/N/linkstate/hrtbt_enable 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
What: /sys/class/infiniband/qibX/ports/N/linkstate/status_str What: /sys/class/infiniband/qibX/ports/<N>/linkstate/status_str
Date: May, 2010 Date: May, 2010
KernelVersion: v2.6.35 KernelVersion: v2.6.35
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
...@@ -523,16 +523,16 @@ Description: ...@@ -523,16 +523,16 @@ Description:
"Fatal_Hardware_Error". "Fatal_Hardware_Error".
=============== =============================================== =============== ===============================================
What: /sys/class/infiniband/qibX/ports/N/diag_counters/rc_resends 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/seq_naks
What: /sys/class/infiniband/qibX/ports/N/diag_counters/rdma_seq 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/rnr_naks
What: /sys/class/infiniband/qibX/ports/N/diag_counters/other_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/rc_timeouts
What: /sys/class/infiniband/qibX/ports/N/diag_counters/look_pkts 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/pkt_drops
What: /sys/class/infiniband/qibX/ports/N/diag_counters/dma_wait 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/unaligned
Date: May, 2010 Date: May, 2010
KernelVersion: v2.6.35 KernelVersion: v2.6.35
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
...@@ -650,9 +650,9 @@ Description: ...@@ -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_settings_bin
What: /sys/class/infiniband/hfi1_X/ports/N/CCMgtA/cc_table_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_prescan
Date: May, 2016 Date: May, 2016
KernelVersion: v4.6 KernelVersion: v4.6
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
...@@ -675,9 +675,9 @@ Description: ...@@ -675,9 +675,9 @@ Description:
disable. disable.
=============== ================================================ =============== ================================================
What: /sys/class/infiniband/hfi1_X/ports/N/sc2vl/[0-31] 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>/sl2sc/[0-31]
What: /sys/class/infiniband/hfi1_X/ports/N/vl2mtu/[0-15] What: /sys/class/infiniband/hfi1_X/ports/<N>/vl2mtu/[0-15]
Date: May, 2016 Date: May, 2016
KernelVersion: v4.6 KernelVersion: v4.6
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
...@@ -691,8 +691,8 @@ Description: ...@@ -691,8 +691,8 @@ Description:
=============== =================================================== =============== ===================================================
What: /sys/class/infiniband/hfi1_X/sdma_N/cpu_list 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>/vl
Date: Sept, 2016 Date: Sept, 2016
KernelVersion: v4.8 KernelVersion: v4.8
Contact: linux-rdma@vger.kernel.org Contact: linux-rdma@vger.kernel.org
......
...@@ -195,7 +195,7 @@ Description: The "tpm_version_major" property shows the TCG spec major version ...@@ -195,7 +195,7 @@ Description: The "tpm_version_major" property shows the TCG spec major version
2 2
What: /sys/class/tpm/tpmX/pcr-H/N What: /sys/class/tpm/tpmX/pcr-<H>/<N>
Date: March 2021 Date: March 2021
KernelVersion: 5.12 KernelVersion: 5.12
Contact: linux-integrity@vger.kernel.org Contact: linux-integrity@vger.kernel.org
......
...@@ -23,3 +23,10 @@ Contact: Device Tree mailing list <devicetree@vger.kernel.org> ...@@ -23,3 +23,10 @@ Contact: Device Tree mailing list <devicetree@vger.kernel.org>
Description: Description:
If CONFIG_OF is enabled, then this file is present. When If CONFIG_OF is enabled, then this file is present. When
read, it returns full name of the device node. 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).
What: /sys/module The /sys/module tree consists of the following structure:
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 The name of the module that is in the kernel. This
module name will always show up if the module is loaded as a module name will always show up if the module is loaded as a
dynamic module. If it is built directly into the kernel, it dynamic module. If it is built directly into the kernel, it
...@@ -12,7 +11,8 @@ Description: ...@@ -12,7 +11,8 @@ Description:
Note: The conditions of creation in the built-in case are not Note: The conditions of creation in the built-in case are not
by design and may be removed in the future. 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 This directory contains individual files that are each
individual parameters of the module that are able to be individual parameters of the module that are able to be
changed at runtime. See the individual module changed at runtime. See the individual module
...@@ -25,10 +25,23 @@ Description: ...@@ -25,10 +25,23 @@ Description:
individual driver documentation for details as to the individual driver documentation for details as to the
stability of the different parameters. 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 If the module is able to be unloaded from the kernel, this file
will contain the current reference count of the module. will contain the current reference count of the module.
Note: If the module is built into the kernel, or if the Note: If the module is built into the kernel, or if the
CONFIG_MODULE_UNLOAD kernel configuration value is not enabled, CONFIG_MODULE_UNLOAD kernel configuration value is not enabled,
this file will not be present. 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 ...@@ -4,23 +4,29 @@ KernelVersion: 4.14
Description: Description:
The attributes: The attributes:
========== =================================== ===================== =======================================
c_chmask capture channel mask c_chmask capture channel mask
c_srate capture sampling rate c_srate capture sampling rate
c_ssize capture sample size (bytes) c_ssize capture sample size (bytes)
c_mute_present capture mute control enable c_mute_present capture mute control enable
c_volume_present capture volume control enable c_volume_present capture volume control enable
c_volume_min capture volume control min value (in 1/256 dB) c_volume_min capture volume control min value
c_volume_max capture volume control max value (in 1/256 dB) (in 1/256 dB)
c_volume_res capture volume control resolution (in 1/256 dB) c_volume_max capture volume control max value
p_chmask playback channel mask (in 1/256 dB)
p_srate playback sampling rate c_volume_res capture volume control resolution
p_ssize playback sample size (bytes) (in 1/256 dB)
p_mute_present playback mute control enable 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_present playback volume control enable
p_volume_min playback volume control min value (in 1/256 dB) p_volume_min playback volume control min value
p_volume_max playback volume control max value (in 1/256 dB) (in 1/256 dB)
p_volume_res playback volume control resolution (in 1/256 dB) p_volume_max playback volume control max value
req_number the number of pre-allocated request (in 1/256 dB)
for both capture and playback 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 ...@@ -4,23 +4,30 @@ KernelVersion: 3.18
Description: Description:
The attributes: The attributes:
========= ============================ ===================== =======================================
c_chmask capture channel mask c_chmask capture channel mask
c_srate capture sampling rate c_srate capture sampling rate
c_ssize capture sample size (bytes) c_ssize capture sample size (bytes)
c_sync capture synchronization type (async/adaptive) c_sync capture synchronization type
c_mute_present capture mute control enable (async/adaptive)
c_mute_present capture mute control enable
c_volume_present capture volume control enable c_volume_present capture volume control enable
c_volume_min capture volume control min value (in 1/256 dB) c_volume_min capture volume control min value
c_volume_max capture volume control max value (in 1/256 dB) (in 1/256 dB)
c_volume_res capture volume control resolution (in 1/256 dB) c_volume_max capture volume control max value
fb_max maximum extra bandwidth in async mode (in 1/256 dB)
p_chmask playback channel mask c_volume_res capture volume control resolution
p_srate playback sampling rate (in 1/256 dB)
p_ssize playback sample size (bytes) fb_max maximum extra bandwidth in async mode
p_mute_present playback mute control enable 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_present playback volume control enable
p_volume_min playback volume control min value (in 1/256 dB) p_volume_min playback volume control min value
p_volume_max playback volume control max value (in 1/256 dB) (in 1/256 dB)
p_volume_res playback volume control resolution (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)
===================== =======================================
What: security/evm What: /sys/kernel/security/evm
What: /sys/kernel/security/*/evm
Date: March 2011 Date: March 2011
Contact: Mimi Zohar <zohar@us.ibm.com> Contact: Mimi Zohar <zohar@us.ibm.com>
Description: Description:
...@@ -93,7 +94,7 @@ Description: ...@@ -93,7 +94,7 @@ Description:
core/ima-setup) have support for loading keys at boot core/ima-setup) have support for loading keys at boot
time. time.
What: security/integrity/evm/evm_xattrs What: /sys/kernel/security/*/evm/evm_xattrs
Date: April 2018 Date: April 2018
Contact: Matthew Garrett <mjg59@google.com> Contact: Matthew Garrett <mjg59@google.com>
Description: Description:
......
What: security/ima/policy What: /sys/kernel/security/*/ima/policy
Date: May 2008 Date: May 2008
Contact: Mimi Zohar <zohar@us.ibm.com> Contact: Mimi Zohar <zohar@us.ibm.com>
Description: Description:
......
What: /sys/fs/pstore/... (or /dev/pstore/...) What: /sys/fs/pstore/...
What: /dev/pstore/...
Date: March 2011 Date: March 2011
KernelVersion: 2.6.39 KernelVersion: 2.6.39
Contact: tony.luck@intel.com Contact: tony.luck@intel.com
......
What: /sys/class/ata_... What: /sys/class/ata_*
Description: Description:
Provide a place in sysfs for storing the ATA topology of the Provide a place in sysfs for storing the ATA topology of the
system. This allows retrieving various information about ATA system. This allows retrieving various information about ATA
......
What: /sys/bus/mdio_bus/devices/.../statistics/ What: /sys/bus/mdio_bus/devices/.../statistics/
What: /sys/class/mdio_bus/.../statistics/
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
...@@ -7,6 +8,7 @@ Description: ...@@ -7,6 +8,7 @@ Description:
MDIO bus address statistics. MDIO bus address statistics.
What: /sys/bus/mdio_bus/devices/.../statistics/transfers What: /sys/bus/mdio_bus/devices/.../statistics/transfers
What: /sys/class/mdio_bus/.../transfers
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
...@@ -14,6 +16,7 @@ Description: ...@@ -14,6 +16,7 @@ Description:
Total number of transfers for this MDIO bus. Total number of transfers for this MDIO bus.
What: /sys/bus/mdio_bus/devices/.../statistics/errors What: /sys/bus/mdio_bus/devices/.../statistics/errors
What: /sys/class/mdio_bus/.../statistics/errors
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
...@@ -21,6 +24,7 @@ Description: ...@@ -21,6 +24,7 @@ Description:
Total number of transfer errors for this MDIO bus. Total number of transfer errors for this MDIO bus.
What: /sys/bus/mdio_bus/devices/.../statistics/writes What: /sys/bus/mdio_bus/devices/.../statistics/writes
What: /sys/class/mdio_bus/.../statistics/writes
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
...@@ -28,6 +32,7 @@ Description: ...@@ -28,6 +32,7 @@ Description:
Total number of write transactions for this MDIO bus. Total number of write transactions for this MDIO bus.
What: /sys/bus/mdio_bus/devices/.../statistics/reads What: /sys/bus/mdio_bus/devices/.../statistics/reads
What: /sys/class/mdio_bus/.../statistics/reads
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
...@@ -35,6 +40,7 @@ Description: ...@@ -35,6 +40,7 @@ Description:
Total number of read transactions for this MDIO bus. Total number of read transactions for this MDIO bus.
What: /sys/bus/mdio_bus/devices/.../statistics/transfers_<addr> What: /sys/bus/mdio_bus/devices/.../statistics/transfers_<addr>
What: /sys/class/mdio_bus/.../statistics/transfers_<addr>
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
...@@ -42,6 +48,7 @@ Description: ...@@ -42,6 +48,7 @@ Description:
Total number of transfers for this MDIO bus address. Total number of transfers for this MDIO bus address.
What: /sys/bus/mdio_bus/devices/.../statistics/errors_<addr> What: /sys/bus/mdio_bus/devices/.../statistics/errors_<addr>
What: /sys/class/mdio_bus/.../statistics/errors_<addr>
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
...@@ -49,6 +56,7 @@ Description: ...@@ -49,6 +56,7 @@ Description:
Total number of transfer errors for this MDIO bus address. Total number of transfer errors for this MDIO bus address.
What: /sys/bus/mdio_bus/devices/.../statistics/writes_<addr> What: /sys/bus/mdio_bus/devices/.../statistics/writes_<addr>
What: /sys/class/mdio_bus/.../statistics/writes_<addr>
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
...@@ -56,6 +64,7 @@ Description: ...@@ -56,6 +64,7 @@ Description:
Total number of write transactions for this MDIO bus address. Total number of write transactions for this MDIO bus address.
What: /sys/bus/mdio_bus/devices/.../statistics/reads_<addr> What: /sys/bus/mdio_bus/devices/.../statistics/reads_<addr>
What: /sys/class/mdio_bus/.../statistics/reads_<addr>
Date: January 2020 Date: January 2020
KernelVersion: 5.6 KernelVersion: 5.6
Contact: netdev@vger.kernel.org Contact: netdev@vger.kernel.org
......
What: /sys/bus/pci/drivers/.../bind What: /sys/bus/pci/drivers/.../bind
What: /sys/devices/pciX/.../bind
Date: December 2003 Date: December 2003
Contact: linux-pci@vger.kernel.org Contact: linux-pci@vger.kernel.org
Description: Description:
...@@ -14,6 +15,7 @@ Description: ...@@ -14,6 +15,7 @@ Description:
(Note: kernels before 2.6.28 may require echo -n). (Note: kernels before 2.6.28 may require echo -n).
What: /sys/bus/pci/drivers/.../unbind What: /sys/bus/pci/drivers/.../unbind
What: /sys/devices/pciX/.../unbind
Date: December 2003 Date: December 2003
Contact: linux-pci@vger.kernel.org Contact: linux-pci@vger.kernel.org
Description: Description:
...@@ -29,6 +31,7 @@ Description: ...@@ -29,6 +31,7 @@ Description:
(Note: kernels before 2.6.28 may require echo -n). (Note: kernels before 2.6.28 may require echo -n).
What: /sys/bus/pci/drivers/.../new_id What: /sys/bus/pci/drivers/.../new_id
What: /sys/devices/pciX/.../new_id
Date: December 2003 Date: December 2003
Contact: linux-pci@vger.kernel.org Contact: linux-pci@vger.kernel.org
Description: Description:
...@@ -47,6 +50,7 @@ Description: ...@@ -47,6 +50,7 @@ Description:
# echo "8086 10f5" > /sys/bus/pci/drivers/foo/new_id # echo "8086 10f5" > /sys/bus/pci/drivers/foo/new_id
What: /sys/bus/pci/drivers/.../remove_id What: /sys/bus/pci/drivers/.../remove_id
What: /sys/devices/pciX/.../remove_id
Date: February 2009 Date: February 2009
Contact: Chris Wright <chrisw@sous-sol.org> Contact: Chris Wright <chrisw@sous-sol.org>
Description: Description:
...@@ -160,7 +164,7 @@ Description: ...@@ -160,7 +164,7 @@ Description:
If the underlying VPD has a writable section then the If the underlying VPD has a writable section then the
corresponding section of this file will be writable. corresponding section of this file will be writable.
What: /sys/bus/pci/devices/.../virtfnN What: /sys/bus/pci/devices/.../virtfn<N>
Date: March 2009 Date: March 2009
Contact: Yu Zhao <yu.zhao@intel.com> Contact: Yu Zhao <yu.zhao@intel.com>
Description: Description:
...@@ -187,6 +191,24 @@ Description: ...@@ -187,6 +191,24 @@ Description:
The symbolic link points to the PCI device sysfs entry of the The symbolic link points to the PCI device sysfs entry of the
Physical Function this device associates with. 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 What: /sys/bus/pci/slots/.../module
Date: June 2009 Date: June 2009
Contact: linux-pci@vger.kernel.org Contact: linux-pci@vger.kernel.org
......
...@@ -42,3 +42,15 @@ Date: August 2021 ...@@ -42,3 +42,15 @@ Date: August 2021
Contact: Barry Song <song.bao.hua@hisilicon.com> Contact: Barry Song <song.bao.hua@hisilicon.com>
Description: Description:
This attribute will show "msi" if <N> is a valid msi irq 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`
What: /sys/bus/rapidio/devices/nn:d:iiii What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>
Description: Description:
For each RapidIO device, the RapidIO subsystem creates files in For each RapidIO device, the RapidIO subsystem creates files in
an individual subdirectory with the following name format of an individual subdirectory with the following name format of
...@@ -29,7 +29,7 @@ Description: ...@@ -29,7 +29,7 @@ Description:
Attributes Common for All RapidIO Devices 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 Date: Nov, 2005
KernelVersion: v2.6.15 KernelVersion: v2.6.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -37,7 +37,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>, ...@@ -37,7 +37,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
Description: Description:
(RO) returns the device identifier (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 Date: Nov, 2005
KernelVersion: v2.6.15 KernelVersion: v2.6.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -45,7 +45,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>, ...@@ -45,7 +45,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
Description: Description:
(RO) returns the device vendor identifier (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 Date: Nov, 2005
KernelVersion: v2.6.15 KernelVersion: v2.6.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -53,7 +53,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>, ...@@ -53,7 +53,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
Description: Description:
(RO) returns the device revision level (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 Date: Nov, 2005
KernelVersion: v2.6.15 KernelVersion: v2.6.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -61,7 +61,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>, ...@@ -61,7 +61,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
Description: Description:
(RO) returns identifier for the assembly containing the device (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 Date: Nov, 2005
KernelVersion: v2.6.15 KernelVersion: v2.6.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -70,7 +70,7 @@ Description: ...@@ -70,7 +70,7 @@ Description:
(RO) returns revision level of the assembly containing the (RO) returns revision level of the assembly containing the
device device
What: /sys/bus/rapidio/devices/nn:d:iiii/asm_vid What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/asm_vid
Date: Nov, 2005 Date: Nov, 2005
KernelVersion: v2.6.15 KernelVersion: v2.6.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -79,7 +79,7 @@ Description: ...@@ -79,7 +79,7 @@ Description:
(RO) returns vendor identifier of the assembly containing the (RO) returns vendor identifier of the assembly containing the
device device
What: /sys/bus/rapidio/devices/nn:d:iiii/destid What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/destid
Date: Mar, 2011 Date: Mar, 2011
KernelVersion: v2.6.3 KernelVersion: v2.6.3
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -88,7 +88,7 @@ Description: ...@@ -88,7 +88,7 @@ Description:
(RO) returns device destination ID assigned by the enumeration (RO) returns device destination ID assigned by the enumeration
routine routine
What: /sys/bus/rapidio/devices/nn:d:iiii/lprev What: /sys/bus/rapidio/devices/<nn>:<d>:<iiii>/lprev
Date: Mar, 2011 Date: Mar, 2011
KernelVersion: v2.6.39 KernelVersion: v2.6.39
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -97,7 +97,7 @@ Description: ...@@ -97,7 +97,7 @@ Description:
(RO) returns name of previous device (switch) on the path to the (RO) returns name of previous device (switch) on the path to the
device that that owns this attribute 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 Date: Jul, 2013
KernelVersion: v3.11 KernelVersion: v3.11
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -105,7 +105,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>, ...@@ -105,7 +105,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
Description: Description:
(RO) returns the device modalias (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 Date: Nov, 2005
KernelVersion: v2.6.15 KernelVersion: v2.6.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -128,7 +128,7 @@ device-specific sysfs attributes by specifying a callback function that may be ...@@ -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 set by the switch initialization routine during enumeration or discovery
process. process.
What: /sys/bus/rapidio/devices/nn:s:iiii/routes What: /sys/bus/rapidio/devices/<nn>:<s>:<iiii>/routes
Date: Nov, 2005 Date: Nov, 2005
KernelVersion: v2.6.15 KernelVersion: v2.6.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -138,7 +138,7 @@ Description: ...@@ -138,7 +138,7 @@ Description:
This attribute reports only valid routing table entries, one This attribute reports only valid routing table entries, one
line for each entry. 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 Date: Mar, 2011
KernelVersion: v2.6.3 KernelVersion: v2.6.3
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -147,7 +147,7 @@ Description: ...@@ -147,7 +147,7 @@ Description:
(RO) device destination ID of the associated device that defines (RO) device destination ID of the associated device that defines
a route to the switch 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 Date: Mar, 2011
KernelVersion: v2.6.39 KernelVersion: v2.6.39
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -155,7 +155,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>, ...@@ -155,7 +155,7 @@ Contact: Matt Porter <mporter@kernel.crashing.org>,
Description: Description:
(RO) number of hops on the path to the switch (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 Date: Mar, 2011
KernelVersion: v2.6.39 KernelVersion: v2.6.39
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -172,7 +172,7 @@ Device-specific Switch Attributes ...@@ -172,7 +172,7 @@ Device-specific Switch Attributes
IDT_GEN2- IDT_GEN2-
What: /sys/bus/rapidio/devices/nn:s:iiii/errlog What: /sys/bus/rapidio/devices/<nn>:<s>:<iiii>/errlog
Date: Oct, 2010 Date: Oct, 2010
KernelVersion: v2.6.37 KernelVersion: v2.6.37
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
......
What: /sys/bus/usb/devices/INTERFACE/authorized What: /sys/bus/usb/devices/<INTERFACE>/authorized
Date: August 2015 Date: August 2015
Description: Description:
This allows to authorize (1) or deauthorize (0) This allows to authorize (1) or deauthorize (0)
...@@ -166,14 +166,14 @@ Description: ...@@ -166,14 +166,14 @@ Description:
The file will be present for all speeds of USB devices, and will 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. 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 Date: August 2012
Contact: Lan Tianyu <tianyu.lan@intel.com> Contact: Lan Tianyu <tianyu.lan@intel.com>
Description: 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. 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 Date: January 2013
Contact: Lan Tianyu <tianyu.lan@intel.com> Contact: Lan Tianyu <tianyu.lan@intel.com>
Description: Description:
...@@ -182,7 +182,7 @@ Description: ...@@ -182,7 +182,7 @@ Description:
The file will read "hotplug", "hardwired" and "not used" if the The file will read "hotplug", "hardwired" and "not used" if the
information is available, and "unknown" otherwise. 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 Date: October 2018
Contact: Bjørn Mork <bjorn@mork.no> Contact: Bjørn Mork <bjorn@mork.no>
Description: Description:
...@@ -192,7 +192,7 @@ Description: ...@@ -192,7 +192,7 @@ Description:
raw location value as a hex integer. 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 Date: May 2018
Contact: Nicolas Boichat <drinkcat@chromium.org> Contact: Nicolas Boichat <drinkcat@chromium.org>
Description: Description:
...@@ -216,7 +216,7 @@ Description: ...@@ -216,7 +216,7 @@ Description:
used to help make enumeration work better on some high speed used to help make enumeration work better on some high speed
devices. 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 Date: February 2018
Contact: Richard Leitner <richard.leitner@skidata.com> Contact: Richard Leitner <richard.leitner@skidata.com>
Description: Description:
...@@ -230,10 +230,10 @@ Description: ...@@ -230,10 +230,10 @@ Description:
Any time this value changes the corresponding hub device will send a Any time this value changes the corresponding hub device will send a
udev event with the following attributes:: 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] 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 Date: November 2015
Contact: Lu Baolu <baolu.lu@linux.intel.com> Contact: Lu Baolu <baolu.lu@linux.intel.com>
Description: Description:
...@@ -288,3 +288,277 @@ Description: ...@@ -288,3 +288,277 @@ Description:
USB 3.2 adds Dual-lane support, 2 rx and 2 tx -lanes over Type-C. 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 Inter-Chip SSIC devices support asymmetric lanes up to 4 lanes per
direction. Devices before USB 3.2 are single lane (tx_lanes = 1) 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 ...@@ -23,14 +23,17 @@ default
The default backing dev, used for non-block device backed The default backing dev, used for non-block device backed
filesystems which do not provide their own BDI. filesystems which do not provide their own BDI.
Files under /sys/class/bdi/<bdi>/ What: /sys/class/bdi/<bdi>/read_ahead_kb
Date: January 2008
read_ahead_kb (read-write) Contact: Peter Zijlstra <a.p.zijlstra@chello.nl>
Description:
Size of the read-ahead window in kilobytes 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 Under normal circumstances each device is given a part of the
total write-back cache that relates to its current average total write-back cache that relates to its current average
writeout speed in relation to the other devices. writeout speed in relation to the other devices.
...@@ -39,8 +42,12 @@ min_ratio (read-write) ...@@ -39,8 +42,12 @@ min_ratio (read-write)
percentage of the write-back cache to a particular device. percentage of the write-back cache to a particular device.
For example, this is useful for providing a minimum QoS. 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 Allows limiting a particular device to use not more than the
given percentage of the write-back cache. This is useful in given percentage of the write-back cache. This is useful in
situations where we want to avoid one device taking all or situations where we want to avoid one device taking all or
...@@ -48,7 +55,12 @@ max_ratio (read-write) ...@@ -48,7 +55,12 @@ max_ratio (read-write)
mount that is prone to get stuck, or a FUSE mount which cannot mount that is prone to get stuck, or a FUSE mount which cannot
be trusted to play fair. 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 If set, the backing device requires that all pages comprising a write
request must not be changed until writeout is complete. request must not be changed until writeout is complete.
(read-only)
...@@ -166,10 +166,11 @@ Description: read only ...@@ -166,10 +166,11 @@ Description: read only
Decimal value of the Per Process MMIO space length. Decimal value of the Per Process MMIO space length.
Users: https://github.com/ibm-capi/libcxl 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 Date: September 2014
Contact: linuxppc-dev@lists.ozlabs.org Contact: linuxppc-dev@lists.ozlabs.org
Description: read only Description: read only
(not in a guest)
Decimal value of the Per Process MMIO space offset. Decimal value of the Per Process MMIO space offset.
Users: https://github.com/ibm-capi/libcxl Users: https://github.com/ibm-capi/libcxl
...@@ -190,28 +191,31 @@ Description: read only ...@@ -190,28 +191,31 @@ Description: read only
Identifies the revision level of the PSL. Identifies the revision level of the PSL.
Users: https://github.com/ibm-capi/libcxl 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 Date: September 2014
Contact: linuxppc-dev@lists.ozlabs.org Contact: linuxppc-dev@lists.ozlabs.org
Description: read only Description: read only
(not in a guest)
Identifies the revision level of the base image for devices Identifies the revision level of the base image for devices
that support loadable PSLs. For FPGAs this field identifies that support loadable PSLs. For FPGAs this field identifies
the image contained in the on-adapter flash which is loaded the image contained in the on-adapter flash which is loaded
during the initial program load. during the initial program load.
Users: https://github.com/ibm-capi/libcxl 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 Date: September 2014
Contact: linuxppc-dev@lists.ozlabs.org Contact: linuxppc-dev@lists.ozlabs.org
Description: read only Description: read only
(not in a guest)
Will return "user" or "factory" depending on the image loaded Will return "user" or "factory" depending on the image loaded
onto the card. onto the card.
Users: https://github.com/ibm-capi/libcxl 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 Date: December 2014
Contact: linuxppc-dev@lists.ozlabs.org Contact: linuxppc-dev@lists.ozlabs.org
Description: read/write Description: read/write
(not in a guest)
Valid entries are "none", "user", and "factory". Valid entries are "none", "user", and "factory".
"none" means PERST will not cause image to be loaded to the "none" means PERST will not cause image to be loaded to the
card. A power cycle is required to load the image. card. A power cycle is required to load the image.
...@@ -235,10 +239,11 @@ Description: write only ...@@ -235,10 +239,11 @@ Description: write only
contexts on the card AFUs. contexts on the card AFUs.
Users: https://github.com/ibm-capi/libcxl 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 Date: July 2015
Contact: linuxppc-dev@lists.ozlabs.org Contact: linuxppc-dev@lists.ozlabs.org
Description: read/write Description: read/write
(not in a guest)
Trust that when an image is reloaded via PERST, it will not Trust that when an image is reloaded via PERST, it will not
have changed. have changed.
......
What: /sys/class/devfreq-event/event(x)/ What: /sys/class/devfreq-event/event<x>/
Date: January 2017 Date: January 2017
Contact: Chanwoo Choi <cw00.choi@samsung.com> Contact: Chanwoo Choi <cw00.choi@samsung.com>
Description: Description:
Provide a place in sysfs for the devfreq-event objects. Provide a place in sysfs for the devfreq-event objects.
This allows accessing various devfreq-event specific variables. 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. 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 Date: January 2017
Contact: Chanwoo Choi <cw00.choi@samsung.com> Contact: Chanwoo Choi <cw00.choi@samsung.com>
Description: 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 the name of the devfreq-event object. This attribute is
read-only. read-only.
What: /sys/class/devfreq-event/event(x)/enable_count What: /sys/class/devfreq-event/event<x>/enable_count
Date: January 2017 Date: January 2017
Contact: Chanwoo Choi <cw00.choi@samsung.com> Contact: Chanwoo Choi <cw00.choi@samsung.com>
Description: 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 contains the reference count to enable the devfreq-event
object. If the device is enabled, the value of attribute is object. If the device is enabled, the value of attribute is
greater than zero. greater than zero.
...@@ -65,19 +65,19 @@ Description: ...@@ -65,19 +65,19 @@ Description:
interface associated with each cable cannot update interface associated with each cable cannot update
multiple cable states of an extcon device simultaneously. 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 Date: February 2012
Contact: MyungJoo Ham <myungjoo.ham@samsung.com> Contact: MyungJoo Ham <myungjoo.ham@samsung.com>
Description: Description:
The /sys/class/extcon/.../cable.x/name shows the name of cable The /sys/class/extcon/.../cable.X/name shows the name of cable
"x" (integer between 0 and 31) of an extcon device. "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 Date: February 2012
Contact: MyungJoo Ham <myungjoo.ham@samsung.com> Contact: MyungJoo Ham <myungjoo.ham@samsung.com>
Description: Description:
The /sys/class/extcon/.../cable.x/state shows and stores the The /sys/class/extcon/.../cable.X/state shows and stores the
state of cable "x" (integer between 0 and 31) of an extcon state of cable "X" (integer between 0 and 31) of an extcon
device. The state value is either 0 (detached) or 1 device. The state value is either 0 (detached) or 1
(attached). (attached).
......
What: /sys/class/gnss/gnssN/type What: /sys/class/gnss/gnss<N>/type
Date: May 2018 Date: May 2018
KernelVersion: 4.18 KernelVersion: 4.18
Contact: Johan Hovold <johan@kernel.org> Contact: Johan Hovold <johan@kernel.org>
......
This diff is collapsed.
...@@ -6,7 +6,7 @@ Description: ...@@ -6,7 +6,7 @@ Description:
The mei/ class sub-directory belongs to mei device class The mei/ class sub-directory belongs to mei device class
What: /sys/class/mei/meiN/ What: /sys/class/mei/mei<N>/
Date: May 2014 Date: May 2014
KernelVersion: 3.17 KernelVersion: 3.17
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
...@@ -14,7 +14,7 @@ Description: ...@@ -14,7 +14,7 @@ Description:
The /sys/class/mei/meiN directory is created for The /sys/class/mei/meiN directory is created for
each probed mei device each probed mei device
What: /sys/class/mei/meiN/fw_status What: /sys/class/mei/mei<N>/fw_status
Date: Nov 2014 Date: Nov 2014
KernelVersion: 3.19 KernelVersion: 3.19
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
...@@ -29,7 +29,7 @@ Description: Display fw status registers content ...@@ -29,7 +29,7 @@ Description: Display fw status registers content
Also number of registers varies between 1 and 6 Also number of registers varies between 1 and 6
depending on generation. depending on generation.
What: /sys/class/mei/meiN/hbm_ver What: /sys/class/mei/mei<N>/hbm_ver
Date: Aug 2016 Date: Aug 2016
KernelVersion: 4.9 KernelVersion: 4.9
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
...@@ -38,7 +38,7 @@ Description: Display the negotiated HBM protocol version. ...@@ -38,7 +38,7 @@ Description: Display the negotiated HBM protocol version.
The HBM protocol version negotiated The HBM protocol version negotiated
between the driver and the device. 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 Date: Aug 2016
KernelVersion: 4.9 KernelVersion: 4.9
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
...@@ -46,7 +46,7 @@ Description: Display the driver HBM protocol version. ...@@ -46,7 +46,7 @@ Description: Display the driver HBM protocol version.
The HBM protocol version supported by the driver. 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 Date: Jan 2018
KernelVersion: 4.16 KernelVersion: 4.16
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
...@@ -55,7 +55,7 @@ Description: Configure tx queue limit ...@@ -55,7 +55,7 @@ Description: Configure tx queue limit
Set maximal number of pending writes Set maximal number of pending writes
per opened session. per opened session.
What: /sys/class/mei/meiN/fw_ver What: /sys/class/mei/mei<N>/fw_ver
Date: May 2018 Date: May 2018
KernelVersion: 4.18 KernelVersion: 4.18
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
...@@ -66,7 +66,7 @@ Description: Display the ME firmware version. ...@@ -66,7 +66,7 @@ Description: Display the ME firmware version.
There can be up to three such blocks for different There can be up to three such blocks for different
FW components. FW components.
What: /sys/class/mei/meiN/dev_state What: /sys/class/mei/mei<N>/dev_state
Date: Mar 2019 Date: Mar 2019
KernelVersion: 5.1 KernelVersion: 5.1
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
...@@ -81,7 +81,7 @@ Description: Display the ME device state. ...@@ -81,7 +81,7 @@ Description: Display the ME device state.
POWER_DOWN POWER_DOWN
POWER_UP POWER_UP
What: /sys/class/mei/meiN/trc What: /sys/class/mei/mei<N>/trc
Date: Nov 2019 Date: Nov 2019
KernelVersion: 5.5 KernelVersion: 5.5
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
...@@ -91,7 +91,7 @@ Description: Display trc status register content ...@@ -91,7 +91,7 @@ Description: Display trc status register content
status information into trc status register status information into trc status register
for BIOS and OS to monitor fw health. for BIOS and OS to monitor fw health.
What: /sys/class/mei/meiN/kind What: /sys/class/mei/mei<N>/kind
Date: Jul 2020 Date: Jul 2020
KernelVersion: 5.8 KernelVersion: 5.8
Contact: Tomas Winkler <tomas.winkler@intel.com> Contact: Tomas Winkler <tomas.winkler@intel.com>
......
...@@ -8,7 +8,7 @@ Description: ...@@ -8,7 +8,7 @@ Description:
PCIe form factor add-in Coprocessor card based on the Intel Many PCIe form factor add-in Coprocessor card based on the Intel Many
Integrated Core (MIC) architecture that runs a Linux OS. Integrated Core (MIC) architecture that runs a Linux OS.
What: /sys/class/mic/mic(x) What: /sys/class/mic/mic<X>
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -17,7 +17,7 @@ Description: ...@@ -17,7 +17,7 @@ Description:
represent MIC devices (0,1,..etc). Each directory has represent MIC devices (0,1,..etc). Each directory has
information specific to that MIC device. information specific to that MIC device.
What: /sys/class/mic/mic(x)/family What: /sys/class/mic/mic<X>/family
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -25,7 +25,7 @@ Description: ...@@ -25,7 +25,7 @@ Description:
Provides information about the Coprocessor family for an Intel Provides information about the Coprocessor family for an Intel
MIC device. For example - "x100" MIC device. For example - "x100"
What: /sys/class/mic/mic(x)/stepping What: /sys/class/mic/mic<X>/stepping
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -33,7 +33,7 @@ Description: ...@@ -33,7 +33,7 @@ Description:
Provides information about the silicon stepping for an Intel Provides information about the silicon stepping for an Intel
MIC device. For example - "A0" or "B0" MIC device. For example - "A0" or "B0"
What: /sys/class/mic/mic(x)/state What: /sys/class/mic/mic<X>/state
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -69,7 +69,7 @@ Description: ...@@ -69,7 +69,7 @@ Description:
"shutdown" Initiates card OS shutdown. "shutdown" Initiates card OS shutdown.
========== =================================================== ========== ===================================================
What: /sys/class/mic/mic(x)/shutdown_status What: /sys/class/mic/mic<X>/shutdown_status
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -88,7 +88,7 @@ Description: ...@@ -88,7 +88,7 @@ Description:
"restart" Shutdown because of a restart command. "restart" Shutdown because of a restart command.
========== =================================================== ========== ===================================================
What: /sys/class/mic/mic(x)/cmdline What: /sys/class/mic/mic<X>/cmdline
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -104,7 +104,7 @@ Description: ...@@ -104,7 +104,7 @@ Description:
or modify existing ones and then write the whole kernel command or modify existing ones and then write the whole kernel command
line back to this entry. line back to this entry.
What: /sys/class/mic/mic(x)/firmware What: /sys/class/mic/mic<X>/firmware
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -114,7 +114,7 @@ Description: ...@@ -114,7 +114,7 @@ Description:
card can be found. The entry can be written to change the card can be found. The entry can be written to change the
firmware image location under /lib/firmware/. firmware image location under /lib/firmware/.
What: /sys/class/mic/mic(x)/ramdisk What: /sys/class/mic/mic<X>/ramdisk
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -124,7 +124,7 @@ Description: ...@@ -124,7 +124,7 @@ Description:
OS boot can be found. The entry can be written to change OS boot can be found. The entry can be written to change
the ramdisk image location under /lib/firmware/. the ramdisk image location under /lib/firmware/.
What: /sys/class/mic/mic(x)/bootmode What: /sys/class/mic/mic<X>/bootmode
Date: October 2013 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -135,7 +135,7 @@ Description: ...@@ -135,7 +135,7 @@ Description:
a) linux - Boot a Linux image. a) linux - Boot a Linux image.
b) flash - Boot an image for flash updates. 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 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -149,7 +149,7 @@ Description: ...@@ -149,7 +149,7 @@ Description:
log buffer address to be written can be found in the System.map log buffer address to be written can be found in the System.map
file of the card OS. 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 Date: October 2013
KernelVersion: 3.13 KernelVersion: 3.13
Contact: Sudeep Dutt <sudeep.dutt@intel.com> Contact: Sudeep Dutt <sudeep.dutt@intel.com>
...@@ -163,7 +163,7 @@ Description: ...@@ -163,7 +163,7 @@ Description:
buffer length address to be written can be found in the buffer length address to be written can be found in the
System.map file of the card OS. 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 Date: March 2015
KernelVersion: 4.4 KernelVersion: 4.4
Contact: Ashutosh Dixit <ashutosh.dixit@intel.com> Contact: Ashutosh Dixit <ashutosh.dixit@intel.com>
......
...@@ -7,7 +7,7 @@ Description: ...@@ -7,7 +7,7 @@ Description:
Framework and provides a sysfs interface for using MUX Framework and provides a sysfs interface for using MUX
controllers. controllers.
What: /sys/class/mux/muxchipN/ What: /sys/class/mux/muxchip<N>/
Date: April 2017 Date: April 2017
KernelVersion: 4.13 KernelVersion: 4.13
Contact: Peter Rosin <peda@axentia.se> Contact: Peter Rosin <peda@axentia.se>
......
...@@ -7,7 +7,7 @@ Description: ...@@ -7,7 +7,7 @@ Description:
Framework and provides a sysfs interface for using PWM Framework and provides a sysfs interface for using PWM
channels. channels.
What: /sys/class/pwm/pwmchipN/ What: /sys/class/pwm/pwmchip<N>/
Date: May 2013 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
...@@ -16,14 +16,14 @@ Description: ...@@ -16,14 +16,14 @@ Description:
probed PWM controller/chip where N is the base of the probed PWM controller/chip where N is the base of the
PWM chip. PWM chip.
What: /sys/class/pwm/pwmchipN/npwm What: /sys/class/pwm/pwmchip<N>/npwm
Date: May 2013 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
Description: Description:
The number of PWM channels supported by the PWM chip. 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 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
...@@ -31,14 +31,14 @@ Description: ...@@ -31,14 +31,14 @@ Description:
Exports a PWM channel from the PWM chip for sysfs control. Exports a PWM channel from the PWM chip for sysfs control.
Value is between 0 and /sys/class/pwm/pwmchipN/npwm - 1. 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 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
Description: Description:
Unexports a PWM channel. Unexports a PWM channel.
What: /sys/class/pwm/pwmchipN/pwmX What: /sys/class/pwm/pwmchip<N>/pwmX
Date: May 2013 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
...@@ -47,21 +47,21 @@ Description: ...@@ -47,21 +47,21 @@ Description:
each exported PWM channel where X is the exported PWM each exported PWM channel where X is the exported PWM
channel number. channel number.
What: /sys/class/pwm/pwmchipN/pwmX/period What: /sys/class/pwm/pwmchip<N>/pwmX/period
Date: May 2013 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
Description: Description:
Sets the PWM signal period in nanoseconds. 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 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
Description: Description:
Sets the PWM signal duty cycle in nanoseconds. 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 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
...@@ -69,7 +69,7 @@ Description: ...@@ -69,7 +69,7 @@ Description:
Sets the output polarity of the PWM signal to "normal" or Sets the output polarity of the PWM signal to "normal" or
"inversed". "inversed".
What: /sys/class/pwm/pwmchipN/pwmX/enable What: /sys/class/pwm/pwmchip<N>/pwmX/enable
Date: May 2013 Date: May 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: H Hartley Sweeten <hsweeten@visionengravers.com> Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
...@@ -78,7 +78,7 @@ Description: ...@@ -78,7 +78,7 @@ Description:
0 is disabled 0 is disabled
1 is enabled 1 is enabled
What: /sys/class/pwm/pwmchipN/pwmX/capture What: /sys/class/pwm/pwmchip<N>/pwmX/capture
Date: June 2016 Date: June 2016
KernelVersion: 4.8 KernelVersion: 4.8
Contact: Lee Jones <lee.jones@linaro.org> Contact: Lee Jones <lee.jones@linaro.org>
......
...@@ -10,7 +10,7 @@ Description: ...@@ -10,7 +10,7 @@ Description:
NOTE: An mport ID is not a RapidIO destination ID assigned to a NOTE: An mport ID is not a RapidIO destination ID assigned to a
given local mport device. given local mport device.
What: /sys/class/rapidio_port/rapidioN/sys_size What: /sys/class/rapidio_port/rapidio<N>/sys_size
Date: Apr, 2014 Date: Apr, 2014
KernelVersion: v3.15 KernelVersion: v3.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
...@@ -22,7 +22,7 @@ Description: ...@@ -22,7 +22,7 @@ Description:
1 = large (16-bit destination ID, max. 65536 devices). 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 Date: Apr, 2014
KernelVersion: v3.15 KernelVersion: v3.15
Contact: Matt Porter <mporter@kernel.crashing.org>, Contact: Matt Porter <mporter@kernel.crashing.org>,
......
...@@ -7,7 +7,7 @@ Description: ...@@ -7,7 +7,7 @@ Description:
core and provides a sysfs interface for configuring infrared core and provides a sysfs interface for configuring infrared
remote controller receivers. remote controller receivers.
What: /sys/class/rc/rcN/ What: /sys/class/rc/rc<N>/
Date: Apr 2010 Date: Apr 2010
KernelVersion: 2.6.35 KernelVersion: 2.6.35
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
...@@ -15,7 +15,7 @@ Description: ...@@ -15,7 +15,7 @@ Description:
A /sys/class/rc/rcN directory is created for each remote A /sys/class/rc/rcN directory is created for each remote
control receiver device where N is the number of the receiver. 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 Date: Jun 2010
KernelVersion: 2.6.36 KernelVersion: 2.6.36
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
...@@ -40,7 +40,7 @@ Description: ...@@ -40,7 +40,7 @@ Description:
Write fails with EINVAL if an invalid protocol combination or Write fails with EINVAL if an invalid protocol combination or
unknown protocol name is used. unknown protocol name is used.
What: /sys/class/rc/rcN/filter What: /sys/class/rc/rc<N>/filter
Date: Jan 2014 Date: Jan 2014
KernelVersion: 3.15 KernelVersion: 3.15
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
...@@ -55,7 +55,7 @@ Description: ...@@ -55,7 +55,7 @@ Description:
This value may be reset to 0 if the current protocol is altered. 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 Date: Jan 2014
KernelVersion: 3.15 KernelVersion: 3.15
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
...@@ -72,7 +72,7 @@ Description: ...@@ -72,7 +72,7 @@ Description:
This value may be reset to 0 if the current protocol is altered. 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 Date: Feb 2017
KernelVersion: 4.11 KernelVersion: 4.11
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
...@@ -98,7 +98,7 @@ Description: ...@@ -98,7 +98,7 @@ Description:
unknown protocol name is used, or if wakeup is not supported by unknown protocol name is used, or if wakeup is not supported by
the hardware. the hardware.
What: /sys/class/rc/rcN/wakeup_filter What: /sys/class/rc/rc<N>/wakeup_filter
Date: Jan 2014 Date: Jan 2014
KernelVersion: 3.15 KernelVersion: 3.15
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
...@@ -117,7 +117,7 @@ Description: ...@@ -117,7 +117,7 @@ Description:
This value may be reset to 0 if the wakeup protocol is altered. 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 Date: Jan 2014
KernelVersion: 3.15 KernelVersion: 3.15
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
......
What: /sys/class/rc/rcN/wakeup_data What: /sys/class/rc/rc<N>/wakeup_data
Date: Mar 2016 Date: Mar 2016
KernelVersion: 4.6 KernelVersion: 4.6
Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
......
...@@ -200,7 +200,7 @@ Description: USB Power Delivery Specification defines a set of product types ...@@ -200,7 +200,7 @@ Description: USB Power Delivery Specification defines a set of product types
amc Alternate Mode Controller amc Alternate Mode Controller
====================== ========================== ====================== ==========================
What: /sys/class/typec/<port>-partner>/identity/ What: /sys/class/typec/<port>-partner/identity/
Date: April 2017 Date: April 2017
Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com> Contact: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Description: Description:
......
...@@ -18,14 +18,14 @@ Description: ...@@ -18,14 +18,14 @@ Description:
and it will be removed. The default is 3 superframes and it will be removed. The default is 3 superframes
(~197 ms) as required by the specification. (~197 ms) as required by the specification.
What: /sys/class/uwb_rc/uwbN/ What: /sys/class/uwb_rc/uwb<N>/
Date: July 2008 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
Description: Description:
An individual UWB radio controller. An individual UWB radio controller.
What: /sys/class/uwb_rc/uwbN/beacon What: /sys/class/uwb_rc/uwb<N>/beacon
Date: July 2008 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -43,7 +43,7 @@ Description: ...@@ -43,7 +43,7 @@ Description:
Reading returns the currently active channel, or -1 if Reading returns the currently active channel, or -1 if
the radio controller is not beaconing. the radio controller is not beaconing.
What: /sys/class/uwb_rc/uwbN/ASIE What: /sys/class/uwb_rc/uwb<N>/ASIE
Date: August 2014 Date: August 2014
KernelVersion: 3.18 KernelVersion: 3.18
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -56,7 +56,7 @@ Description: ...@@ -56,7 +56,7 @@ Description:
Reading returns the current ASIE. Writing replaces Reading returns the current ASIE. Writing replaces
the current ASIE with the one written. 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -75,7 +75,7 @@ Description: ...@@ -75,7 +75,7 @@ Description:
4 scan (with start time of <bpst offset>) 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -85,7 +85,7 @@ Description: ...@@ -85,7 +85,7 @@ Description:
controller's EUI-48 but only do so while the device is controller's EUI-48 but only do so while the device is
not beaconing or scanning. not beaconing or scanning.
What: /sys/class/uwb_rc/uwbN/wusbhc What: /sys/class/uwb_rc/uwb<N>/wusbhc
Date: July 2008 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -93,7 +93,7 @@ Description: ...@@ -93,7 +93,7 @@ Description:
A symlink to the device (if any) of the WUSB Host A symlink to the device (if any) of the WUSB Host
Controller PAL using this radio controller. 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -102,7 +102,7 @@ Description: ...@@ -102,7 +102,7 @@ Description:
as part of a scan or is a member of the radio as part of a scan or is a member of the radio
controllers beacon group. 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -111,7 +111,7 @@ Description: ...@@ -111,7 +111,7 @@ Description:
interval superframe timer) of the last beacon from interval superframe timer) of the last beacon from
this device was received. 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -119,7 +119,7 @@ Description: ...@@ -119,7 +119,7 @@ Description:
The current DevAddr of this device in colon separated The current DevAddr of this device in colon separated
hex octets. 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -128,7 +128,7 @@ Description: ...@@ -128,7 +128,7 @@ Description:
The EUI-48 of this device in colon separated hex The EUI-48 of this device in colon separated hex
octets. octets.
What: /sys/class/uwb_rc/uwbN/<EUI-48>/IEs What: /sys/class/uwb_rc/uwb<N>/<EUI-48>/IEs
Date: July 2008 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -136,7 +136,7 @@ Description: ...@@ -136,7 +136,7 @@ Description:
The latest IEs included in this device's beacon, in The latest IEs included in this device's beacon, in
space separated hex octets with one IE per line. 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
...@@ -146,7 +146,7 @@ Description: ...@@ -146,7 +146,7 @@ Description:
This gives an estimate on a suitable PHY rate. Refer This gives an estimate on a suitable PHY rate. Refer
to [ECMA-368] section 13.3 for more details. 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: linux-usb@vger.kernel.org Contact: linux-usb@vger.kernel.org
......
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_chid What: /sys/class/uwb_rc/uwb<N>/wusbhc/wusb_chid
Date: July 2008 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: David Vrabel <david.vrabel@csr.com> Contact: David Vrabel <david.vrabel@csr.com>
...@@ -9,7 +9,7 @@ Description: ...@@ -9,7 +9,7 @@ Description:
Set an all zero CHID to stop the host controller. 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 Date: July 2008
KernelVersion: 2.6.27 KernelVersion: 2.6.27
Contact: David Vrabel <david.vrabel@csr.com> Contact: David Vrabel <david.vrabel@csr.com>
...@@ -24,7 +24,7 @@ Description: ...@@ -24,7 +24,7 @@ Description:
lifetime of PTKs and GTKs) it should not be changed lifetime of PTKs and GTKs) it should not be changed
from the default. 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 Date: August 2009
KernelVersion: 2.6.32 KernelVersion: 2.6.32
Contact: David Vrabel <david.vrabel@csr.com> Contact: David Vrabel <david.vrabel@csr.com>
...@@ -37,7 +37,7 @@ Description: ...@@ -37,7 +37,7 @@ Description:
Refer to [ECMA-368] section 10.3.1.1 for the value to Refer to [ECMA-368] section 10.3.1.1 for the value to
use. use.
What: /sys/class/uwb_rc/uwbN/wusbhc/wusb_dnts What: /sys/class/uwb_rc/uwb<N>/wusbhc/wusb_dnts
Date: June 2013 Date: June 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: Thomas Pugliese <thomas.pugliese@gmail.com> Contact: Thomas Pugliese <thomas.pugliese@gmail.com>
...@@ -47,7 +47,7 @@ Description: ...@@ -47,7 +47,7 @@ Description:
often the devices will have the opportunity to send often the devices will have the opportunity to send
notifications to the host. 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 Date: June 2013
KernelVersion: 3.11 KernelVersion: 3.11
Contact: Thomas Pugliese <thomas.pugliese@gmail.com> Contact: Thomas Pugliese <thomas.pugliese@gmail.com>
......
What: /sys/devices/platform/dock.N/docked What: /sys/devices/platform/dock.<N>/docked
Date: Dec, 2006 Date: Dec, 2006
KernelVersion: 2.6.19 KernelVersion: 2.6.19
Contact: linux-acpi@vger.kernel.org Contact: linux-acpi@vger.kernel.org
...@@ -6,7 +6,7 @@ Description: ...@@ -6,7 +6,7 @@ Description:
(RO) Value 1 or 0 indicates whether the software believes the (RO) Value 1 or 0 indicates whether the software believes the
laptop is docked in a docking station. laptop is docked in a docking station.
What: /sys/devices/platform/dock.N/undock What: /sys/devices/platform/dock.<N>/undock
Date: Dec, 2006 Date: Dec, 2006
KernelVersion: 2.6.19 KernelVersion: 2.6.19
Contact: linux-acpi@vger.kernel.org Contact: linux-acpi@vger.kernel.org
...@@ -14,14 +14,14 @@ Description: ...@@ -14,14 +14,14 @@ Description:
(WO) Writing to this file causes the software to initiate an (WO) Writing to this file causes the software to initiate an
undock request to the firmware. undock request to the firmware.
What: /sys/devices/platform/dock.N/uid What: /sys/devices/platform/dock.<N>/uid
Date: Feb, 2007 Date: Feb, 2007
KernelVersion: v2.6.21 KernelVersion: v2.6.21
Contact: linux-acpi@vger.kernel.org Contact: linux-acpi@vger.kernel.org
Description: Description:
(RO) Displays the docking station the laptop is docked to. (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 Date: May, 2007
KernelVersion: v2.6.21 KernelVersion: v2.6.21
Contact: linux-acpi@vger.kernel.org Contact: linux-acpi@vger.kernel.org
...@@ -30,7 +30,7 @@ Description: ...@@ -30,7 +30,7 @@ Description:
request has been made by the user (from the immediate_undock request has been made by the user (from the immediate_undock
option). option).
What: /sys/devices/platform/dock.N/type What: /sys/devices/platform/dock.<N>/type
Date: Aug, 2008 Date: Aug, 2008
KernelVersion: v2.6.27 KernelVersion: v2.6.27
Contact: linux-acpi@vger.kernel.org Contact: linux-acpi@vger.kernel.org
......
...@@ -269,3 +269,39 @@ Description: ...@@ -269,3 +269,39 @@ Description:
the current runtime PM status of the device, which may be the current runtime PM status of the device, which may be
"suspended", "suspending", "resuming", "active", "error" (fatal "suspended", "suspending", "resuming", "active", "error" (fatal
error), or "unsupported" (runtime PM is disabled). 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: ...@@ -7,10 +7,12 @@ Description:
bus / platform-specific way. This attribute is only present for bus / platform-specific way. This attribute is only present for
devices that can support determining such information: 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. 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 Currently this is only supported by USB (which infers the
information from a combination of hub descriptor bits and information from a combination of hub descriptor bits and
......
...@@ -7,7 +7,7 @@ Description: ...@@ -7,7 +7,7 @@ Description:
Individual CPU attributes are contained in subdirectories Individual CPU attributes are contained in subdirectories
named by the kernel's logical CPU number, e.g.: 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 What: /sys/devices/system/cpu/kernel_max
/sys/devices/system/cpu/offline /sys/devices/system/cpu/offline
...@@ -53,7 +53,7 @@ Description: Dynamic addition and removal of CPU's. This is not hotplug ...@@ -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 the system. Information written to the file to remove CPU's
is architecture specific. is architecture specific.
What: /sys/devices/system/cpu/cpu#/node What: /sys/devices/system/cpu/cpuX/node
Date: October 2009 Date: October 2009
Contact: Linux memory management mailing list <linux-mm@kvack.org> Contact: Linux memory management mailing list <linux-mm@kvack.org>
Description: Discover NUMA node a CPU belongs to Description: Discover NUMA node a CPU belongs to
...@@ -67,41 +67,41 @@ 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 /sys/devices/system/cpu/cpu42/node2 -> ../../node/node2
What: /sys/devices/system/cpu/cpu#/topology/core_id What: /sys/devices/system/cpu/cpuX/topology/core_id
/sys/devices/system/cpu/cpu#/topology/core_siblings /sys/devices/system/cpu/cpuX/topology/core_siblings
/sys/devices/system/cpu/cpu#/topology/core_siblings_list /sys/devices/system/cpu/cpuX/topology/core_siblings_list
/sys/devices/system/cpu/cpu#/topology/physical_package_id /sys/devices/system/cpu/cpuX/topology/physical_package_id
/sys/devices/system/cpu/cpu#/topology/thread_siblings /sys/devices/system/cpu/cpuX/topology/thread_siblings
/sys/devices/system/cpu/cpu#/topology/thread_siblings_list /sys/devices/system/cpu/cpuX/topology/thread_siblings_list
Date: December 2008 Date: December 2008
Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org> Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
Description: CPU topology files that describe a logical CPU's relationship Description: CPU topology files that describe a logical CPU's relationship
to other cores and threads in the same physical package. 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/. e.g. /sys/devices/system/cpu/cpu42/.
Briefly, the files above are: 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). hardware platform's identifier (rather than the kernel's).
The actual value is architecture and platform dependent. 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. within the same physical_package_id.
core_siblings_list: human-readable list of the logical CPU 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 corresponds to a physical socket number, but the actual value
is architecture and platform dependent. is architecture and platform dependent.
thread_siblings: internal kernel map of cpu#'s hardware thread_siblings: internal kernel map of cpuX's hardware
threads within the same core as cpu# threads within the same core as cpuX
thread_siblings_list: human-readable list of cpu#'s hardware thread_siblings_list: human-readable list of cpuX's hardware
threads within the same core as cpu# threads within the same core as cpuX
See Documentation/admin-guide/cputopology.rst for more information. See Documentation/admin-guide/cputopology.rst for more information.
...@@ -135,7 +135,7 @@ Description: Discover cpuidle policy and mechanism ...@@ -135,7 +135,7 @@ Description: Discover cpuidle policy and mechanism
Documentation/driver-api/pm/cpuidle.rst for more information. 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/latency
/sys/devices/system/cpu/cpuX/cpuidle/stateN/power /sys/devices/system/cpu/cpuX/cpuidle/stateN/power
/sys/devices/system/cpu/cpuX/cpuidle/stateN/time /sys/devices/system/cpu/cpuX/cpuidle/stateN/time
...@@ -174,7 +174,7 @@ Description: ...@@ -174,7 +174,7 @@ Description:
(a count). (a count).
======== ==== ================================================= ======== ==== =================================================
What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/desc What: /sys/devices/system/cpu/cpuX/cpuidle/state<N>/desc
Date: February 2008 Date: February 2008
KernelVersion: v2.6.25 KernelVersion: v2.6.25
Contact: Linux power management list <linux-pm@vger.kernel.org> Contact: Linux power management list <linux-pm@vger.kernel.org>
...@@ -182,7 +182,7 @@ Description: ...@@ -182,7 +182,7 @@ Description:
(RO) A small description about the idle state (string). (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 Date: March 2012
KernelVersion: v3.10 KernelVersion: v3.10
Contact: Linux power management list <linux-pm@vger.kernel.org> Contact: Linux power management list <linux-pm@vger.kernel.org>
...@@ -195,14 +195,14 @@ Description: ...@@ -195,14 +195,14 @@ Description:
does not reflect it. Likewise, if one enables a deep state but a does not reflect it. Likewise, if one enables a deep state but a
lighter state still is disabled, then this has no effect. 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 Date: December 2019
KernelVersion: v5.6 KernelVersion: v5.6
Contact: Linux power management list <linux-pm@vger.kernel.org> Contact: Linux power management list <linux-pm@vger.kernel.org>
Description: Description:
(RO) The default status of this state, "enabled" or "disabled". (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 Date: March 2014
KernelVersion: v3.15 KernelVersion: v3.15
Contact: Linux power management list <linux-pm@vger.kernel.org> Contact: Linux power management list <linux-pm@vger.kernel.org>
...@@ -211,7 +211,7 @@ Description: ...@@ -211,7 +211,7 @@ Description:
time (in microseconds) this cpu should spend in this idle state time (in microseconds) this cpu should spend in this idle state
to make the transition worth the effort. 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 Date: March 2018
KernelVersion: v4.17 KernelVersion: v4.17
Contact: Linux power management list <linux-pm@vger.kernel.org> Contact: Linux power management list <linux-pm@vger.kernel.org>
...@@ -221,7 +221,7 @@ Description: ...@@ -221,7 +221,7 @@ Description:
This attribute group is only present for states that can be This attribute group is only present for states that can be
used in suspend-to-idle with suspended timekeeping. 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 Date: March 2018
KernelVersion: v4.17 KernelVersion: v4.17
Contact: Linux power management list <linux-pm@vger.kernel.org> Contact: Linux power management list <linux-pm@vger.kernel.org>
...@@ -229,7 +229,7 @@ Description: ...@@ -229,7 +229,7 @@ Description:
Total time spent by the CPU in suspend-to-idle (with scheduler Total time spent by the CPU in suspend-to-idle (with scheduler
tick suspended) after requesting this state. 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 Date: March 2018
KernelVersion: v4.17 KernelVersion: v4.17
Contact: Linux power management list <linux-pm@vger.kernel.org> Contact: Linux power management list <linux-pm@vger.kernel.org>
...@@ -237,7 +237,7 @@ Description: ...@@ -237,7 +237,7 @@ Description:
Total number of times this state has been requested by the CPU Total number of times this state has been requested by the CPU
while entering suspend-to-idle. while entering suspend-to-idle.
What: /sys/devices/system/cpu/cpu#/cpufreq/* What: /sys/devices/system/cpu/cpuX/cpufreq/*
Date: pre-git history Date: pre-git history
Contact: linux-pm@vger.kernel.org Contact: linux-pm@vger.kernel.org
Description: Discover and change clock speed of CPUs Description: Discover and change clock speed of CPUs
...@@ -252,7 +252,7 @@ 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. 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 Date: June 2013
Contact: linux-pm@vger.kernel.org Contact: linux-pm@vger.kernel.org
Description: Discover CPUs in the same CPU frequency coordination domain Description: Discover CPUs in the same CPU frequency coordination domain
...@@ -301,16 +301,16 @@ Description: Processor frequency boosting control ...@@ -301,16 +301,16 @@ Description: Processor frequency boosting control
Documentation/admin-guide/pm/cpufreq.rst Documentation/admin-guide/pm/cpufreq.rst
What: /sys/devices/system/cpu/cpu#/crash_notes What: /sys/devices/system/cpu/cpuX/crash_notes
/sys/devices/system/cpu/cpu#/crash_notes_size /sys/devices/system/cpu/cpuX/crash_notes_size
Date: April 2013 Date: April 2013
Contact: kexec@lists.infradead.org Contact: kexec@lists.infradead.org
Description: address and size of the percpu note. Description: address and size of the percpu note.
crash_notes: the physical address of the memory that holds the 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 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 ...@@ -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 If absent, then all or none of the CPUs can execute AArch32
applications and execve() will behave accordingly. 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 Date: December 2016
Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org> Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
Description: information about CPUs heterogeneity. Description: information about CPUs heterogeneity.
cpu_capacity: capacity of cpu#. cpu_capacity: capacity of cpuX.
What: /sys/devices/system/cpu/vulnerabilities What: /sys/devices/system/cpu/vulnerabilities
/sys/devices/system/cpu/vulnerabilities/meltdown /sys/devices/system/cpu/vulnerabilities/meltdown
...@@ -560,7 +560,7 @@ Description: Control Symmetric Multi Threading (SMT) ...@@ -560,7 +560,7 @@ Description: Control Symmetric Multi Threading (SMT)
If control status is "forceoff" or "notsupported" writes If control status is "forceoff" or "notsupported" writes
are rejected. 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 Date: March 2019
Contact: linux-pm@vger.kernel.org Contact: linux-pm@vger.kernel.org
Description: Intel Energy and Performance Bias Hint (EPB) Description: Intel Energy and Performance Bias Hint (EPB)
......
This diff is collapsed.
...@@ -24,14 +24,14 @@ Date: February 2015 ...@@ -24,14 +24,14 @@ Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: The version of the ESRT structure provided by the firmware. 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 Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: Each ESRT entry is identified by a GUID, and each gets a Description: Each ESRT entry is identified by a GUID, and each gets a
subdirectory under entries/ . subdirectory under entries/ .
example: /sys/firmware/efi/esrt/entries/entry0/ 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 Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: What kind of firmware entry this is: Description: What kind of firmware entry this is:
...@@ -43,33 +43,33 @@ Description: What kind of firmware entry this is: ...@@ -43,33 +43,33 @@ Description: What kind of firmware entry this is:
3 UEFI Driver 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 Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: This is the entry's guid, and will match the directory name. 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 Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: The version of the firmware currently installed. This is a Description: The version of the firmware currently installed. This is a
32-bit unsigned integer. 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 Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: The lowest version of the firmware that can be installed. 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 Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: Flags that must be passed to UpdateCapsule() 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 Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: The last firmware version for which an update was attempted. 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 Date: February 2015
Contact: Peter Jones <pjones@redhat.com> Contact: Peter Jones <pjones@redhat.com>
Description: The result of the last firmware update attempt for the Description: The result of the last firmware update attempt for the
......
This diff is collapsed.
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 ...@@ -41,6 +41,13 @@ KernelVersion: 3.3
Contact: Kay Sievers <kay.sievers@vrfy.org> Contact: Kay Sievers <kay.sievers@vrfy.org>
Description: Module size in bytes. 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 What: /sys/module/*/taint
Date: Jan 2012 Date: Jan 2012
KernelVersion: 3.3 KernelVersion: 3.3
......
...@@ -133,7 +133,10 @@ Contact: linux-acpi@vger.kernel.org ...@@ -133,7 +133,10 @@ Contact: linux-acpi@vger.kernel.org
Description: Description:
(RO) Presents SSC (spread spectrum clock) information for EMI (RO) Presents SSC (spread spectrum clock) information for EMI
(Electro magnetic interference) control. This is a bit mask. (Electro magnetic interference) control. This is a bit mask.
======= ==========================================
Bits Description Bits Description
======= ==========================================
[7:0] Sets clock spectrum spread percentage: [7:0] Sets clock spectrum spread percentage:
0x00=0.2% , 0x3F=10% 0x00=0.2% , 0x3F=10%
1 LSB = 0.1% increase in spread (for 1 LSB = 0.1% increase in spread (for
...@@ -151,3 +154,4 @@ Description: ...@@ -151,3 +154,4 @@ Description:
[10] 0: No white noise. 1: Add white noise [10] 0: No white noise. 1: Add white noise
to spread waveform to spread waveform
[11] When 1, future writes are ignored. [11] When 1, future writes are ignored.
======= ==========================================
What: /sys/devices/platform/8086%x:00/firmware_version What: /sys/devices/platform/8086<x>:00/firmware_version
Date: November 2016 Date: November 2016
KernelVersion: 4.10 KernelVersion: 4.10
Contact: "Sebastien Guiriec" <sebastien.guiriec@intel.com> Contact: "Sebastien Guiriec" <sebastien.guiriec@intel.com>
......
...@@ -6,7 +6,7 @@ Description: ...@@ -6,7 +6,7 @@ Description:
providing a standardized interface to the ancillary providing a standardized interface to the ancillary
features of PTP hardware clocks. features of PTP hardware clocks.
What: /sys/class/ptp/ptpN/ What: /sys/class/ptp/ptp<N>/
Date: September 2010 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
...@@ -14,7 +14,7 @@ Description: ...@@ -14,7 +14,7 @@ Description:
hardware clock registered into the PTP class driver hardware clock registered into the PTP class driver
subsystem. subsystem.
What: /sys/class/ptp/ptpN/clock_name What: /sys/class/ptp/ptp<N>/clock_name
Date: September 2010 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
...@@ -25,7 +25,7 @@ Description: ...@@ -25,7 +25,7 @@ Description:
MAC based ones. The string does not necessarily have MAC based ones. The string does not necessarily have
to be any kind of unique id. 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 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
...@@ -33,42 +33,42 @@ Description: ...@@ -33,42 +33,42 @@ Description:
frequency adjustment value (a positive integer) in frequency adjustment value (a positive integer) in
parts per billion. parts per billion.
What: /sys/class/ptp/ptpN/max_vclocks What: /sys/class/ptp/ptp<N>/max_vclocks
Date: May 2021 Date: May 2021
Contact: Yangbo Lu <yangbo.lu@nxp.com> Contact: Yangbo Lu <yangbo.lu@nxp.com>
Description: Description:
This file contains the maximum number of ptp vclocks. This file contains the maximum number of ptp vclocks.
Write integer to re-configure it. Write integer to re-configure it.
What: /sys/class/ptp/ptpN/n_alarms What: /sys/class/ptp/ptp<N>/n_alarms
Date: September 2010 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
This file contains the number of periodic or one shot This file contains the number of periodic or one shot
alarms offer by the PTP hardware clock. 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 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
This file contains the number of external timestamp This file contains the number of external timestamp
channels offered by the PTP hardware clock. 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 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
This file contains the number of programmable periodic This file contains the number of programmable periodic
output channels offered by the PTP hardware clock. 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 Date: March 2014
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
This file contains the number of programmable pins This file contains the number of programmable pins
offered by the PTP hardware clock. offered by the PTP hardware clock.
What: /sys/class/ptp/ptpN/n_vclocks What: /sys/class/ptp/ptp<N>/n_vclocks
Date: May 2021 Date: May 2021
Contact: Yangbo Lu <yangbo.lu@nxp.com> Contact: Yangbo Lu <yangbo.lu@nxp.com>
Description: Description:
...@@ -81,7 +81,7 @@ Description: ...@@ -81,7 +81,7 @@ Description:
switches the physical clock back to normal, adjustable switches the physical clock back to normal, adjustable
operation. operation.
What: /sys/class/ptp/ptpN/pins What: /sys/class/ptp/ptp<N>/pins
Date: March 2014 Date: March 2014
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
...@@ -94,7 +94,7 @@ Description: ...@@ -94,7 +94,7 @@ Description:
assignment may be changed by two writing numbers into assignment may be changed by two writing numbers into
the file. the file.
What: /sys/class/ptp/ptpN/pps_available What: /sys/class/ptp/ptp<N>/pps_available
Date: September 2010 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
...@@ -103,7 +103,7 @@ Description: ...@@ -103,7 +103,7 @@ Description:
"1" means that the PPS is supported, while "0" means "1" means that the PPS is supported, while "0" means
not supported. not supported.
What: /sys/class/ptp/ptpN/extts_enable What: /sys/class/ptp/ptp<N>/extts_enable
Date: September 2010 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
...@@ -113,7 +113,7 @@ Description: ...@@ -113,7 +113,7 @@ Description:
To disable external timestamps, write the channel To disable external timestamps, write the channel
index followed by a "0" into the file. index followed by a "0" into the file.
What: /sys/class/ptp/ptpN/fifo What: /sys/class/ptp/ptp<N>/fifo
Date: September 2010 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
...@@ -121,7 +121,7 @@ Description: ...@@ -121,7 +121,7 @@ Description:
the form of three integers: channel index, seconds, the form of three integers: channel index, seconds,
and nanoseconds. and nanoseconds.
What: /sys/class/ptp/ptpN/period What: /sys/class/ptp/ptp<N>/period
Date: September 2010 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
...@@ -132,7 +132,7 @@ Description: ...@@ -132,7 +132,7 @@ Description:
period nanoseconds. To disable a periodic output, set period nanoseconds. To disable a periodic output, set
all the seconds and nanoseconds values to zero. 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 Date: September 2010
Contact: Richard Cochran <richardcochran@gmail.com> Contact: Richard Cochran <richardcochran@gmail.com>
Description: Description:
......
...@@ -9,7 +9,7 @@ Description: ...@@ -9,7 +9,7 @@ Description:
The file supports poll() to detect virtual The file supports poll() to detect virtual
console switches. console switches.
What: /sys/class/tty/tty0/active What: /sys/class/tty/tty<x>/active
Date: Nov 2010 Date: Nov 2010
Contact: Kay Sievers <kay.sievers@vrfy.org> Contact: Kay Sievers <kay.sievers@vrfy.org>
Description: Description:
...@@ -18,7 +18,7 @@ Description: ...@@ -18,7 +18,7 @@ Description:
The file supports poll() to detect virtual The file supports poll() to detect virtual
console switches. console switches.
What: /sys/class/tty/ttyS0/uartclk What: /sys/class/tty/ttyS<x>/uartclk
Date: Sep 2012 Date: Sep 2012
Contact: Tomas Hlavacek <tmshlvck@gmail.com> Contact: Tomas Hlavacek <tmshlvck@gmail.com>
Description: Description:
...@@ -29,7 +29,7 @@ Description: ...@@ -29,7 +29,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/type What: /sys/class/tty/ttyS<x>/type
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -38,7 +38,7 @@ Description: ...@@ -38,7 +38,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/line What: /sys/class/tty/ttyS<x>/line
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -47,7 +47,7 @@ Description: ...@@ -47,7 +47,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/port What: /sys/class/tty/ttyS<x>/port
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -56,7 +56,7 @@ Description: ...@@ -56,7 +56,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/irq What: /sys/class/tty/ttyS<x>/irq
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -65,7 +65,7 @@ Description: ...@@ -65,7 +65,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/flags What: /sys/class/tty/ttyS<x>/flags
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -74,7 +74,7 @@ Description: ...@@ -74,7 +74,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. 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 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -83,7 +83,7 @@ Description: ...@@ -83,7 +83,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/close_delay What: /sys/class/tty/ttyS<x>/close_delay
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -92,7 +92,7 @@ Description: ...@@ -92,7 +92,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/closing_wait What: /sys/class/tty/ttyS<x>/closing_wait
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -101,7 +101,7 @@ Description: ...@@ -101,7 +101,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/custom_divisor What: /sys/class/tty/ttyS<x>/custom_divisor
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -110,7 +110,7 @@ Description: ...@@ -110,7 +110,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/io_type What: /sys/class/tty/ttyS<x>/io_type
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -120,7 +120,7 @@ Description: ...@@ -120,7 +120,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. sysfs rather than via ioctls.
What: /sys/class/tty/ttyS0/iomem_base What: /sys/class/tty/ttyS<x>/iomem_base
Date: October 2012 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -129,7 +129,7 @@ Description: ...@@ -129,7 +129,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. 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 Date: October 2012
Contact: Alan Cox <alan@linux.intel.com> Contact: Alan Cox <alan@linux.intel.com>
Description: Description:
...@@ -139,7 +139,7 @@ Description: ...@@ -139,7 +139,7 @@ Description:
These sysfs values expose the TIOCGSERIAL interface via These sysfs values expose the TIOCGSERIAL interface via
sysfs rather than via ioctls. 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 Date: May 2014
Contact: Yoshihiro YUNOMAE <yoshihiro.yunomae.ez@hitachi.com> Contact: Yoshihiro YUNOMAE <yoshihiro.yunomae.ez@hitachi.com>
Description: Description:
...@@ -155,7 +155,7 @@ Description: ...@@ -155,7 +155,7 @@ Description:
16550A, which has 1/4/8/14 bytes trigger, the RX trigger is 16550A, which has 1/4/8/14 bytes trigger, the RX trigger is
automatically changed to 4 bytes. automatically changed to 4 bytes.
What: /sys/class/tty/ttyS0/console What: /sys/class/tty/ttyS<x>/console
Date: February 2020 Date: February 2020
Contact: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Contact: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Description: Description:
......
...@@ -249,8 +249,7 @@ Debug messages during Boot Process ...@@ -249,8 +249,7 @@ Debug messages during Boot Process
To activate debug messages for core code and built-in modules during To activate debug messages for core code and built-in modules during
the boot process, even before userspace and debugfs exists, use the boot process, even before userspace and debugfs exists, use
``dyndbg="QUERY"``, ``module.dyndbg="QUERY"``, or ``ddebug_query="QUERY"`` ``dyndbg="QUERY"`` or ``module.dyndbg="QUERY"``. QUERY follows
(``ddebug_query`` is obsoleted by ``dyndbg``, and deprecated). QUERY follows
the syntax described above, but must not exceed 1023 characters. Your the syntax described above, but must not exceed 1023 characters. Your
bootloader may impose lower limits. bootloader may impose lower limits.
...@@ -270,8 +269,7 @@ this boot parameter for debugging purposes. ...@@ -270,8 +269,7 @@ this boot parameter for debugging purposes.
If ``foo`` module is not built-in, ``foo.dyndbg`` will still be processed at 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 boot time, without effect, but will be reprocessed when module is
loaded later. ``ddebug_query=`` and bare ``dyndbg=`` are only processed at loaded later. Bare ``dyndbg=`` is only processed at boot.
boot.
Debug Messages at Module Initialization Time Debug Messages at Module Initialization Time
...@@ -358,8 +356,11 @@ Examples ...@@ -358,8 +356,11 @@ Examples
// boot-args example, with newlines and comments for readability // boot-args example, with newlines and comments for readability
Kernel command line: ... Kernel command line: ...
// see whats going on in dyndbg=value processing // see whats going on in dyndbg=value processing
dynamic_debug.verbose=1 dynamic_debug.verbose=3
// enable pr_debugs in 2 builtins, #cmt is stripped // enable pr_debugs in the btrfs module (can be builtin or loadable)
dyndbg="module params +p #cmt ; module sys +p" 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 // enable pr_debugs in 2 functions in a module loaded later
pc87360.dyndbg="func pc87360_init_device +p; func pc87360_find +p" pc87360.dyndbg="func pc87360_init_device +p; func pc87360_find +p"
...@@ -841,11 +841,6 @@ ...@@ -841,11 +841,6 @@
Format: <port#>,<type> Format: <port#>,<type>
See also Documentation/input/devices/joystick-parport.rst 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 [KNL] Enable kernel debugging (events log level).
debug_boot_weak_hash debug_boot_weak_hash
......
This diff is collapsed.
...@@ -21,60 +21,8 @@ from /dev/mcelog. Normally mcelog should be run regularly from a cronjob. ...@@ -21,60 +21,8 @@ from /dev/mcelog. Normally mcelog should be run regularly from a cronjob.
Each CPU has a directory in /sys/devices/system/machinecheck/machinecheckN Each CPU has a directory in /sys/devices/system/machinecheck/machinecheckN
(N = CPU number). (N = CPU number).
The directory contains some configurable entries: The directory contains some configurable entries. See
Documentation/ABI/testing/sysfs-mce for more details.
bankNctl
(N bank number)
64bit Hex bitmask enabling/disabling specific subevents for bank N
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
The following entries appear for each CPU, but they are truly shared
between all CPUs.
check_interval
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)
tolerant
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.
trigger
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.
monarch_timeout
How long to wait for the other CPUs to machine check too on a
exception. 0 to disable waiting for other CPUs.
Unit: us
TBD document entries for AMD threshold interrupt configuration TBD document entries for AMD threshold interrupt configuration
......
...@@ -8317,6 +8317,7 @@ L: linux-hwmon@vger.kernel.org ...@@ -8317,6 +8317,7 @@ L: linux-hwmon@vger.kernel.org
S: Maintained S: Maintained
W: http://hwmon.wiki.kernel.org/ W: http://hwmon.wiki.kernel.org/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git
F: Documentation/ABI/testing/sysfs-class-hwmon
F: Documentation/devicetree/bindings/hwmon/ F: Documentation/devicetree/bindings/hwmon/
F: Documentation/hwmon/ F: Documentation/hwmon/
F: drivers/hwmon/ F: drivers/hwmon/
...@@ -20557,6 +20558,8 @@ M: Tony Luck <tony.luck@intel.com> ...@@ -20557,6 +20558,8 @@ M: Tony Luck <tony.luck@intel.com>
M: Borislav Petkov <bp@alien8.de> M: Borislav Petkov <bp@alien8.de>
L: linux-edac@vger.kernel.org L: linux-edac@vger.kernel.org
S: Maintained S: Maintained
F: Documentation/ABI/testing/sysfs-mce
F: Documentation/x86/x86_64/machinecheck.rst
F: arch/x86/kernel/cpu/mce/* F: arch/x86/kernel/cpu/mce/*
X86 MICROCODE UPDATE SUPPORT X86 MICROCODE UPDATE SUPPORT
......
...@@ -130,14 +130,11 @@ static inline unsigned int x86_cpuid_family(void) ...@@ -130,14 +130,11 @@ static inline unsigned int x86_cpuid_family(void)
extern void __init load_ucode_bsp(void); extern void __init load_ucode_bsp(void);
extern void load_ucode_ap(void); extern void load_ucode_ap(void);
void reload_early_microcode(void); void reload_early_microcode(void);
extern bool get_builtin_firmware(struct cpio_data *cd, const char *name);
extern bool initrd_gone; extern bool initrd_gone;
#else #else
static inline void __init load_ucode_bsp(void) { } static inline void __init load_ucode_bsp(void) { }
static inline void load_ucode_ap(void) { } static inline void load_ucode_ap(void) { }
static inline void reload_early_microcode(void) { } static inline void reload_early_microcode(void) { }
static inline bool
get_builtin_firmware(struct cpio_data *cd, const char *name) { return false; }
#endif #endif
#endif /* _ASM_X86_MICROCODE_H */ #endif /* _ASM_X86_MICROCODE_H */
...@@ -456,17 +456,23 @@ apply_microcode_early_amd(u32 cpuid_1_eax, void *ucode, size_t size, bool save_p ...@@ -456,17 +456,23 @@ apply_microcode_early_amd(u32 cpuid_1_eax, void *ucode, size_t size, bool save_p
static bool get_builtin_microcode(struct cpio_data *cp, unsigned int family) static bool get_builtin_microcode(struct cpio_data *cp, unsigned int family)
{ {
#ifdef CONFIG_X86_64
char fw_name[36] = "amd-ucode/microcode_amd.bin"; char fw_name[36] = "amd-ucode/microcode_amd.bin";
struct firmware fw;
if (IS_ENABLED(CONFIG_X86_32))
return false;
if (family >= 0x15) if (family >= 0x15)
snprintf(fw_name, sizeof(fw_name), snprintf(fw_name, sizeof(fw_name),
"amd-ucode/microcode_amd_fam%.2xh.bin", family); "amd-ucode/microcode_amd_fam%.2xh.bin", family);
return get_builtin_firmware(cp, fw_name); if (firmware_request_builtin(&fw, fw_name)) {
#else cp->size = fw.size;
cp->data = (void *)fw.data;
return true;
}
return false; return false;
#endif
} }
static void __load_ucode_amd(unsigned int cpuid_1_eax, struct cpio_data *ret) static void __load_ucode_amd(unsigned int cpuid_1_eax, struct cpio_data *ret)
......
...@@ -140,23 +140,6 @@ static bool __init check_loader_disabled_bsp(void) ...@@ -140,23 +140,6 @@ static bool __init check_loader_disabled_bsp(void)
return *res; return *res;
} }
extern struct builtin_fw __start_builtin_fw[];
extern struct builtin_fw __end_builtin_fw[];
bool get_builtin_firmware(struct cpio_data *cd, const char *name)
{
struct builtin_fw *b_fw;
for (b_fw = __start_builtin_fw; b_fw != __end_builtin_fw; b_fw++) {
if (!strcmp(name, b_fw->name)) {
cd->size = b_fw->size;
cd->data = b_fw->data;
return true;
}
}
return false;
}
void __init load_ucode_bsp(void) void __init load_ucode_bsp(void)
{ {
unsigned int cpuid_1_eax; unsigned int cpuid_1_eax;
......
...@@ -456,6 +456,7 @@ static void save_mc_for_early(struct ucode_cpu_info *uci, u8 *mc, unsigned int s ...@@ -456,6 +456,7 @@ static void save_mc_for_early(struct ucode_cpu_info *uci, u8 *mc, unsigned int s
static bool load_builtin_intel_microcode(struct cpio_data *cp) static bool load_builtin_intel_microcode(struct cpio_data *cp)
{ {
unsigned int eax = 1, ebx, ecx = 0, edx; unsigned int eax = 1, ebx, ecx = 0, edx;
struct firmware fw;
char name[30]; char name[30];
if (IS_ENABLED(CONFIG_X86_32)) if (IS_ENABLED(CONFIG_X86_32))
...@@ -466,7 +467,13 @@ static bool load_builtin_intel_microcode(struct cpio_data *cp) ...@@ -466,7 +467,13 @@ static bool load_builtin_intel_microcode(struct cpio_data *cp)
sprintf(name, "intel-ucode/%02x-%02x-%02x", sprintf(name, "intel-ucode/%02x-%02x-%02x",
x86_family(eax), x86_model(eax), x86_stepping(eax)); x86_family(eax), x86_model(eax), x86_stepping(eax));
return get_builtin_firmware(cp, name); if (firmware_request_builtin(&fw, name)) {
cp->size = fw.size;
cp->data = (void *)fw.data;
return true;
}
return false;
} }
/* /*
......
...@@ -68,7 +68,9 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = { ...@@ -68,7 +68,9 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = {
"(__parainstructions|__alt_instructions)(_end)?|" "(__parainstructions|__alt_instructions)(_end)?|"
"(__iommu_table|__apicdrivers|__smp_locks)(_end)?|" "(__iommu_table|__apicdrivers|__smp_locks)(_end)?|"
"__(start|end)_pci_.*|" "__(start|end)_pci_.*|"
#if CONFIG_FW_LOADER_BUILTIN
"__(start|end)_builtin_fw|" "__(start|end)_builtin_fw|"
#endif
"__(start|stop)___ksymtab(_gpl)?|" "__(start|stop)___ksymtab(_gpl)?|"
"__(start|stop)___kcrctab(_gpl)?|" "__(start|stop)___kcrctab(_gpl)?|"
"__(start|stop)___param|" "__(start|stop)___param|"
......
...@@ -12,15 +12,12 @@ ...@@ -12,15 +12,12 @@
#include <linux/device.h> #include <linux/device.h>
#include <linux/of.h> #include <linux/of.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/string.h>
#include <linux/sched/topology.h> #include <linux/sched/topology.h>
#include <linux/cpuset.h> #include <linux/cpuset.h>
#include <linux/cpumask.h> #include <linux/cpumask.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/percpu.h>
#include <linux/rcupdate.h> #include <linux/rcupdate.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/smp.h>
static DEFINE_PER_CPU(struct scale_freq_data __rcu *, sft_data); static DEFINE_PER_CPU(struct scale_freq_data __rcu *, sft_data);
static struct cpumask scale_freq_counters_mask; static struct cpumask scale_freq_counters_mask;
......
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
*/ */
#include <linux/component.h> #include <linux/component.h>
#include <linux/device.h> #include <linux/device.h>
#include <linux/kref.h>
#include <linux/list.h> #include <linux/list.h>
#include <linux/mutex.h> #include <linux/mutex.h>
#include <linux/slab.h> #include <linux/slab.h>
...@@ -246,7 +245,7 @@ static int try_to_bring_up_master(struct master *master, ...@@ -246,7 +245,7 @@ static int try_to_bring_up_master(struct master *master,
return 0; return 0;
} }
if (!devres_open_group(master->parent, NULL, GFP_KERNEL)) if (!devres_open_group(master->parent, master, GFP_KERNEL))
return -ENOMEM; return -ENOMEM;
/* Found all components */ /* Found all components */
...@@ -258,6 +257,7 @@ static int try_to_bring_up_master(struct master *master, ...@@ -258,6 +257,7 @@ static int try_to_bring_up_master(struct master *master,
return ret; return ret;
} }
devres_close_group(master->parent, NULL);
master->bound = true; master->bound = true;
return 1; return 1;
} }
...@@ -282,7 +282,7 @@ static void take_down_master(struct master *master) ...@@ -282,7 +282,7 @@ static void take_down_master(struct master *master)
{ {
if (master->bound) { if (master->bound) {
master->ops->unbind(master->parent); master->ops->unbind(master->parent);
devres_release_group(master->parent, NULL); devres_release_group(master->parent, master);
master->bound = false; master->bound = false;
} }
} }
......
...@@ -821,9 +821,7 @@ struct device_link *device_link_add(struct device *consumer, ...@@ -821,9 +821,7 @@ struct device_link *device_link_add(struct device *consumer,
dev_bus_name(supplier), dev_name(supplier), dev_bus_name(supplier), dev_name(supplier),
dev_bus_name(consumer), dev_name(consumer)); dev_bus_name(consumer), dev_name(consumer));
if (device_register(&link->link_dev)) { if (device_register(&link->link_dev)) {
put_device(consumer); put_device(&link->link_dev);
put_device(supplier);
kfree(link);
link = NULL; link = NULL;
goto out; goto out;
} }
...@@ -2875,7 +2873,7 @@ void device_initialize(struct device *dev) ...@@ -2875,7 +2873,7 @@ void device_initialize(struct device *dev)
spin_lock_init(&dev->devres_lock); spin_lock_init(&dev->devres_lock);
INIT_LIST_HEAD(&dev->devres_head); INIT_LIST_HEAD(&dev->devres_head);
device_pm_init(dev); device_pm_init(dev);
set_dev_node(dev, -1); set_dev_node(dev, NUMA_NO_NODE);
#ifdef CONFIG_GENERIC_MSI_IRQ #ifdef CONFIG_GENERIC_MSI_IRQ
raw_spin_lock_init(&dev->msi_lock); raw_spin_lock_init(&dev->msi_lock);
INIT_LIST_HEAD(&dev->msi_list); INIT_LIST_HEAD(&dev->msi_list);
...@@ -4690,6 +4688,11 @@ define_dev_printk_level(_dev_info, KERN_INFO); ...@@ -4690,6 +4688,11 @@ define_dev_printk_level(_dev_info, KERN_INFO);
* *
* return dev_err_probe(dev, err, ...); * return dev_err_probe(dev, err, ...);
* *
* Note that it is deemed acceptable to use this function for error
* prints during probe even if the @err is known to never be -EPROBE_DEFER.
* The benefit compared to a normal dev_err() is the standardized format
* of the error code and the fact that the error code is returned.
*
* Returns @err. * Returns @err.
* *
*/ */
...@@ -4835,6 +4838,12 @@ int device_match_acpi_dev(struct device *dev, const void *adev) ...@@ -4835,6 +4838,12 @@ int device_match_acpi_dev(struct device *dev, const void *adev)
} }
EXPORT_SYMBOL(device_match_acpi_dev); EXPORT_SYMBOL(device_match_acpi_dev);
int device_match_acpi_handle(struct device *dev, const void *handle)
{
return ACPI_HANDLE(dev) == handle;
}
EXPORT_SYMBOL(device_match_acpi_handle);
int device_match_any(struct device *dev, const void *unused) int device_match_any(struct device *dev, const void *unused)
{ {
return 1; return 1;
......
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
obj-y += main.o
# Create $(fwdir) from $(CONFIG_EXTRA_FIRMWARE_DIR) -- if it doesn't have a # Create $(fwdir) from $(CONFIG_EXTRA_FIRMWARE_DIR) -- if it doesn't have a
# leading /, it's relative to $(srctree). # leading /, it's relative to $(srctree).
fwdir := $(subst $(quote),,$(CONFIG_EXTRA_FIRMWARE_DIR)) fwdir := $(subst $(quote),,$(CONFIG_EXTRA_FIRMWARE_DIR))
fwdir := $(addprefix $(srctree)/,$(filter-out /%,$(fwdir)))$(filter /%,$(fwdir)) fwdir := $(addprefix $(srctree)/,$(filter-out /%,$(fwdir)))$(filter /%,$(fwdir))
obj-y := $(addsuffix .gen.o, $(subst $(quote),,$(CONFIG_EXTRA_FIRMWARE))) firmware := $(addsuffix .gen.o, $(subst $(quote),,$(CONFIG_EXTRA_FIRMWARE)))
obj-y += $(firmware)
FWNAME = $(patsubst $(obj)/%.gen.S,%,$@) FWNAME = $(patsubst $(obj)/%.gen.S,%,$@)
FWSTR = $(subst $(comma),_,$(subst /,_,$(subst .,_,$(subst -,_,$(FWNAME))))) FWSTR = $(subst $(comma),_,$(subst /,_,$(subst .,_,$(subst -,_,$(FWNAME)))))
...@@ -34,7 +36,7 @@ $(obj)/%.gen.S: FORCE ...@@ -34,7 +36,7 @@ $(obj)/%.gen.S: FORCE
$(call filechk,fwbin) $(call filechk,fwbin)
# The .o files depend on the binaries directly; the .S files don't. # The .o files depend on the binaries directly; the .S files don't.
$(addprefix $(obj)/, $(obj-y)): $(obj)/%.gen.o: $(fwdir)/% $(addprefix $(obj)/, $(firmware)): $(obj)/%.gen.o: $(fwdir)/%
targets := $(patsubst $(obj)/%,%, \ targets := $(patsubst $(obj)/%,%, \
$(shell find $(obj) -name \*.gen.S 2>/dev/null)) $(shell find $(obj) -name \*.gen.S 2>/dev/null))
// SPDX-License-Identifier: GPL-2.0
/* Builtin firmware support */
#include <linux/firmware.h>
#include "../firmware.h"
/* Only if FW_LOADER=y */
#ifdef CONFIG_FW_LOADER
struct builtin_fw {
char *name;
void *data;
unsigned long size;
};
extern struct builtin_fw __start_builtin_fw[];
extern struct builtin_fw __end_builtin_fw[];
static bool fw_copy_to_prealloc_buf(struct firmware *fw,
void *buf, size_t size)
{
if (!buf)
return true;
if (size < fw->size)
return false;
memcpy(buf, fw->data, fw->size);
return true;
}
/**
* firmware_request_builtin() - load builtin firmware
* @fw: pointer to firmware struct
* @name: name of firmware file
*
* Some use cases in the kernel have a requirement so that no memory allocator
* is involved as these calls take place early in boot process. An example is
* the x86 CPU microcode loader. In these cases all the caller wants is to see
* if the firmware was built-in and if so use it right away. This can be used
* for such cases.
*
* This looks for the firmware in the built-in kernel. Only if the kernel was
* built-in with the firmware you are looking for will this return successfully.
*
* Callers of this API do not need to use release_firmware() as the pointer to
* the firmware is expected to be provided locally on the stack of the caller.
**/
bool firmware_request_builtin(struct firmware *fw, const char *name)
{
struct builtin_fw *b_fw;
if (!fw)
return false;
for (b_fw = __start_builtin_fw; b_fw != __end_builtin_fw; b_fw++) {
if (strcmp(name, b_fw->name) == 0) {
fw->size = b_fw->size;
fw->data = b_fw->data;
return true;
}
}
return false;
}
EXPORT_SYMBOL_NS_GPL(firmware_request_builtin, TEST_FIRMWARE);
/**
* firmware_request_builtin_buf() - load builtin firmware into optional buffer
* @fw: pointer to firmware struct
* @name: name of firmware file
* @buf: If set this lets you use a pre-allocated buffer so that the built-in
* firmware into is copied into. This field can be NULL. It is used by
* callers such as request_firmware_into_buf() and
* request_partial_firmware_into_buf()
* @size: if buf was provided, the max size of the allocated buffer available.
* If the built-in firmware does not fit into the pre-allocated @buf this
* call will fail.
*
* This looks for the firmware in the built-in kernel. Only if the kernel was
* built-in with the firmware you are looking for will this call possibly
* succeed. If you passed a @buf the firmware will be copied into it *iff* the
* built-in firmware fits into the pre-allocated buffer size specified in
* @size.
*
* This caller is to be used internally by the firmware_loader only.
**/
bool firmware_request_builtin_buf(struct firmware *fw, const char *name,
void *buf, size_t size)
{
if (!firmware_request_builtin(fw, name))
return false;
return fw_copy_to_prealloc_buf(fw, buf, size);
}
bool firmware_is_builtin(const struct firmware *fw)
{
struct builtin_fw *b_fw;
for (b_fw = __start_builtin_fw; b_fw != __end_builtin_fw; b_fw++)
if (fw->data == b_fw->data)
return true;
return false;
}
#endif
This diff is collapsed.
This diff is collapsed.
...@@ -1466,8 +1466,7 @@ int platform_dma_configure(struct device *dev) ...@@ -1466,8 +1466,7 @@ int platform_dma_configure(struct device *dev)
} }
static const struct dev_pm_ops platform_dev_pm_ops = { static const struct dev_pm_ops platform_dev_pm_ops = {
.runtime_suspend = pm_generic_runtime_suspend, SET_RUNTIME_PM_OPS(pm_generic_runtime_suspend, pm_generic_runtime_resume, NULL)
.runtime_resume = pm_generic_runtime_resume,
USE_PLATFORM_PM_SLEEP_OPS USE_PLATFORM_PM_SLEEP_OPS
}; };
......
This diff is collapsed.
...@@ -95,10 +95,7 @@ static bool acpi_gpio_deferred_req_irqs_done; ...@@ -95,10 +95,7 @@ static bool acpi_gpio_deferred_req_irqs_done;
static int acpi_gpiochip_find(struct gpio_chip *gc, void *data) static int acpi_gpiochip_find(struct gpio_chip *gc, void *data)
{ {
if (!gc->parent) return gc->parent && device_match_acpi_handle(gc->parent, data);
return false;
return ACPI_HANDLE(gc->parent) == data;
} }
/** /**
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment