ABI testing symbols¶
Documents interfaces that are felt to be stable, as the main development of this interface has been completed.
The interface can be changed to add new features, but the current interface will not break by doing this, unless grave errors or security problems are found in them.
Userspace programs can start to rely on these interfaces, but they must be aware of changes that can occur before these interfaces move to be marked stable.
Programs that use these interfaces are strongly encouraged to add their name to the description of these interfaces, so that the kernel developers can easily notify them if any changes occur.
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/align¶
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/align |
Defined on file sysfs-bus-dax
(RO) The align attribute indicates alignment of the dax region. Changes on align may not always be valid, when say certain mappings were created with 2M and then we switch to 1G. This validates all ranges against the new value being attempted, post resizing.
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/available_size¶
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/available_size |
Defined on file sysfs-bus-dax
(RO) The available_size attribute tracks available dax region capacity. This only applies to volatile hmem devices, not pmem devices, since pmem devices are defined by nvdimm namespace boundaries.
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/create¶
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/create |
Defined on file sysfs-bus-dax
(RW) The create interface to the dax region provides a way to create a new unconfigured dax device under the given region, which can then be configured (with a size etc.) and then probed.
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/delete¶
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/delete |
Defined on file sysfs-bus-dax
(WO) The delete interface for a dax region provides for deletion of any 0-sized and idle dax devices.
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/id¶
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/id |
Defined on file sysfs-bus-dax
(RO) The id attribute indicates the region id of a dax region.
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/seed¶
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/seed |
Defined on file sysfs-bus-dax
(RO) The seed device is a concept for dynamic dax regions to be able to split the region amongst multiple sub-instances. The seed device, similar to libnvdimm seed devices, is a device that starts with zero capacity allocated and unbound to a driver.
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/size¶
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/size |
Defined on file sysfs-bus-dax
(RO) The size attribute indicates the size of a given dax region in bytes.
.../XXXXXXX.ipa/endpoint_id/¶
.../XXXXXXX.ipa/endpoint_id/ |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/endpoint_id/ directory contains attributes that define IDs associated with IPA endpoints. The “rx” or “tx” in an endpoint name is from the perspective of the AP. An endpoint ID is a small unsigned integer.
.../XXXXXXX.ipa/endpoint_id/modem_rx¶
.../XXXXXXX.ipa/endpoint_id/modem_rx |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/endpoint_id/modem_rx file contains the ID of the AP endpoint on which packets originating from the embedded modem are received.
.../XXXXXXX.ipa/endpoint_id/modem_tx¶
.../XXXXXXX.ipa/endpoint_id/modem_tx |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/endpoint_id/modem_tx file contains the ID of the AP endpoint on which packets destined for the embedded modem are sent.
.../XXXXXXX.ipa/endpoint_id/monitor_rx¶
.../XXXXXXX.ipa/endpoint_id/monitor_rx |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/endpoint_id/monitor_rx file contains the ID of the AP endpoint on which IPA “monitor” data is received. The monitor endpoint supplies replicas of packets that enter the IPA hardware for processing. Each replicated packet is preceded by a fixed-size “ODL” header (see .../XXXXXXX.ipa/feature/monitor, above). Large packets are truncated, to reduce the bandwidth required to provide the monitor function.
.../XXXXXXX.ipa/feature/¶
.../XXXXXXX.ipa/feature/ |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/feature/ directory contains a set of attributes describing features implemented by the IPA hardware.
.../XXXXXXX.ipa/feature/rx_offload¶
.../XXXXXXX.ipa/feature/rx_offload |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/feature/rx_offload file contains a string indicating the type of receive checksum offload that is supported by the hardware. The possible values are “MAPv4” or “MAPv5”.
.../XXXXXXX.ipa/feature/tx_offload¶
.../XXXXXXX.ipa/feature/tx_offload |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/feature/tx_offload file contains a string indicating the type of transmit checksum offload that is supported by the hardware. The possible values are “MAPv4” or “MAPv5”.
.../XXXXXXX.ipa/modem/¶
.../XXXXXXX.ipa/modem/ |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/modem/ directory contains attributes describing properties of the modem embedded in the SoC.
.../XXXXXXX.ipa/modem/rx_endpoint_id¶
.../XXXXXXX.ipa/modem/rx_endpoint_id |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/modem/rx_endpoint_id file duplicates the value found in .../XXXXXXX.ipa/endpoint_id/modem_rx.
.../XXXXXXX.ipa/modem/tx_endpoint_id¶
.../XXXXXXX.ipa/modem/tx_endpoint_id |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/modem/tx_endpoint_id file duplicates the value found in .../XXXXXXX.ipa/endpoint_id/modem_tx.
.../XXXXXXX.ipa/version¶
.../XXXXXXX.ipa/version |
Defined on file sysfs-devices-platform-soc-ipa
The .../XXXXXXX.ipa/version file contains the IPA hardware version, as a period-separated set of two or three integers (e.g., “3.5.1” or “4.2”).
Symbols under /config/acpi¶
/config/acpi |
Defined on file configfs-acpi
This represents the ACPI subsystem entry point directory. It contains sub-groups corresponding to ACPI configurable options.
/config/acpi/table |
Defined on file configfs-acpi
This group contains the configuration for user defined ACPI tables. The attributes of a user define table are:
- aml
a binary attribute that the user can use to fill in the ACPI aml definitions. Once the aml data is written to this file and the file is closed the table will be loaded and ACPI devices will be enumerated. To check if the operation is successful the user must check the error code for close(). If the operation is successful, subsequent writes to this attribute will fail.
The rest of the attributes are read-only and are valid only after the table has been loaded by filling the aml entry:
- signature
ASCII table signature
- length
length of table in bytes, including the header
- revision
ACPI Specification minor version number
- oem_id
ASCII OEM identification
- oem_table_id
ASCII OEM table identification
- oem_revision
OEM revision number
- asl_compiler_id
ASCII ASL compiler vendor ID
- asl_compiler_revision
ASL compiler version
Symbols under /config/iio¶
/config/iio |
Defined on file configfs-iio
This represents Industrial IO configuration entry point directory. It contains sub-groups corresponding to IIO objects.
/config/iio/devices |
Defined on file configfs-iio
Industrial IO software devices directory.
/config/iio/devices/dummy |
Defined on file configfs-iio
Dummy IIO devices directory. Creating a directory here will result in creating a dummy IIO device in the IIO subsystem.
/config/iio/triggers |
Defined on file configfs-iio
Industrial IO software triggers directory.
/config/iio/triggers/hrtimers |
Defined on file configfs-iio
High resolution timers directory. Creating a directory here will result in creating a hrtimer trigger in the IIO subsystem.
Symbols under /config/pcie-gadget¶
/config/pcie-gadget |
Defined on file configfs-spear-pcie-gadget
Interface is used to configure selected dual mode PCIe controller as device and then program its various registers to configure it as a particular device type. This interfaces can be used to show spear’s PCIe device capability.
Nodes are only visible when configfs is mounted. To mount configfs in /config directory use:
# mount -t configfs none /config/
For nth PCIe Device Controller /config/pcie-gadget.n/:
link |
used to enable ltssm and read its status. |
int_type |
used to configure and read type of supported interrupt |
no_of_msi |
used to configure number of MSI vector needed and to read no of MSI granted. |
inta |
write 1 to assert INTA and 0 to de-assert. |
send_msi |
write MSI vector to be sent. |
vendor_id |
used to write and read vendor id (hex) |
device_id |
used to write and read device id (hex) |
bar0_size |
used to write and read bar0_size |
bar0_address |
used to write and read bar0 mapped area in hex. |
bar0_rw_offset |
used to write and read offset of bar0 where bar0_data will be written or read. |
bar0_data |
used to write and read data at bar0_rw_offset. |
Symbols under /config/rdma_cm¶
/config/rdma_cm |
Defined on file configfs-rdma_cm
Interface is used to configure RDMA-cable HCAs in respect to RDMA-CM attributes.
Attributes are visible only when configfs is mounted. To mount configfs in /config directory use: # mount -t configfs none /config/
In order to set parameters related to a specific HCA, a directory for this HCA has to be created: mkdir -p /config/rdma_cm/<hca>
/config/rdma_cm/<hca>/ports/<port-num>/default_roce_mode |
Defined on file configfs-rdma_cm
RDMA-CM based connections from HCA <hca> at port <port-num> will be initiated with this RoCE type as default. The possible RoCE types are either “IB/RoCE v1” or “RoCE v2”. This parameter has RW access.
/config/rdma_cm/<hca>/ports/<port-num>/default_roce_tos |
Defined on file configfs-rdma_cm
RDMA-CM QPs from HCA <hca> at port <port-num> will be created with this TOS as default. This can be overridden by using the rdma_set_option API. The possible RoCE TOS values are 0-255.
Symbols under /config/stp-policy¶
/config/stp-policy |
Defined on file configfs-stp-policy
This group contains policies mandating Master/Channel allocation for software sources wishing to send trace data over an STM device.
/config/stp-policy/<device>.<policy> |
Defined on file configfs-stp-policy
This group is the root of a policy; its name is a concatenation of an stm device name to which this policy applies and an arbitrary string. If <device> part doesn’t match an existing stm device, mkdir will fail with ENODEV; if that device already has a policy assigned to it, mkdir will fail with EBUSY.
/config/stp-policy/<device>.<policy>/<node> |
Defined on file configfs-stp-policy
Policy node is a string identifier that software clients will use to request a master/channel to be allocated and assigned to them.
/config/stp-policy/<device>.<policy>/<node>/channels |
Defined on file configfs-stp-policy
Range of channels from which to allocate for users of this node. Write two numbers: the first channel and the last channel number.
/config/stp-policy/<device>.<policy>/<node>/masters |
Defined on file configfs-stp-policy
Range of masters from which to allocate for users of this node. Write two numbers: the first master and the last master number.
/config/stp-policy/<device>.<policy>/device |
Defined on file configfs-stp-policy
STM device to which this policy applies, read only. Same as the <device> component of its parent directory.
/config/stp-policy/<device>:p_sys-t.<policy>/<node>/clocksync_interval |
Defined on file configfs-stp-policy-p_sys-t
Time interval in milliseconds. Send a CLOCKSYNC packet if this many milliseconds have passed since the previous CLOCKSYNC packet from this source. Zero is the default and stands for “never send the CLOCKSYNC”. It makes sense to use this option with sources that generate constant and/or periodic data, like stm_heartbeat.
/config/stp-policy/<device>:p_sys-t.<policy>/<node>/do_len |
Defined on file configfs-stp-policy-p_sys-t
Include payload length in the MIPI SyS-T header, boolean. If enabled, the SyS-T protocol encoder will include payload length in each packet’s metadata. This is normally redundant if the underlying transport protocol supports marking message boundaries (which STP does), so this is off by default.
/config/stp-policy/<device>:p_sys-t.<policy>/<node>/ts_interval |
Defined on file configfs-stp-policy-p_sys-t
Time interval in milliseconds. Include a timestamp in the MIPI SyS-T packet metadata, if this many milliseconds have passed since the previous packet from this source. Zero is the default and stands for “never send the timestamp”.
/config/stp-policy/<device>:p_sys-t.<policy>/<node>/uuid |
Defined on file configfs-stp-policy-p_sys-t
UUID source identifier string, RW. Default value is randomly generated at the mkdir <node> time. Data coming from trace sources that use this <node> will be tagged with this UUID in the MIPI SyS-T packet stream, to allow the decoder to discern between different sources within the same master/channel range, and identify the higher level decoders that may be needed for each source.
Symbols under /config/usb-gadget¶
/config/usb-gadget |
Defined on file configfs-usb-gadget
This group contains sub-groups corresponding to created USB gadgets.
/config/usb-gadget/gadget |
Defined on file configfs-usb-gadget
The attributes of a gadget:
UDC |
bind a gadget to UDC/unbind a gadget; write UDC’s name found in /sys/class/udc/* to bind a gadget, empty string “” to unbind. |
max_speed |
maximum speed the driver supports. Valid names are super-speed-plus, super-speed, high-speed, full-speed, and low-speed. |
bDeviceClass |
USB device class code |
bDeviceSubClass |
USB device subclass code |
bDeviceProtocol |
USB device protocol code |
bMaxPacketSize0 |
maximum endpoint 0 packet size |
bcdDevice |
bcd device release number |
bcdUSB |
bcd USB specification version number |
idProduct |
product ID |
idVendor |
vendor ID |
/config/usb-gadget/gadget/configs |
Defined on file configfs-usb-gadget
This group contains a USB gadget’s configurations
/config/usb-gadget/gadget/configs/config |
Defined on file configfs-usb-gadget
The attributes of a configuration:
bmAttributes |
configuration characteristics |
MaxPower |
maximum power consumption from the bus |
/config/usb-gadget/gadget/configs/config/strings |
Defined on file configfs-usb-gadget
This group contains subdirectories for language-specific strings for this configuration.
/config/usb-gadget/gadget/configs/config/strings/language |
Defined on file configfs-usb-gadget
The attributes:
configuration |
configuration description |
/config/usb-gadget/gadget/functions |
Defined on file configfs-usb-gadget
This group contains functions available to this USB gadget.
/config/usb-gadget/gadget/functions/<func>.<inst>/interface.<n> |
Defined on file configfs-usb-gadget
This group contains “Feature Descriptors” specific for one gadget’s USB interface or one interface group described by an IAD.
The attributes:
compatible_id |
8-byte string for “Compatible ID” |
sub_compatible_id |
8-byte string for “Sub Compatible ID” |
/config/usb-gadget/gadget/functions/<func>.<inst>/interface.<n>/<property> |
Defined on file configfs-usb-gadget
This group contains “Extended Property Descriptors” specific for one gadget’s USB interface or one interface group described by an IAD.
The attributes:
type |
value 1..7 for interpreting the data
|
data |
blob of data to be interpreted depending on type |
/config/usb-gadget/gadget/functions/Loopback.name |
Defined on file configfs-usb-gadget-loopback
The attributes:
qlen |
depth of loopback queue |
buflen |
buffer length |
/config/usb-gadget/gadget/functions/SourceSink.name |
Defined on file configfs-usb-gadget-sourcesink
The attributes:
pattern |
0 (all zeros), 1 (mod63), 2 (none) |
isoc_interval |
1..16 |
isoc_maxpacket |
0 - 1023 (fs), 0 - 1024 (hs/ss) |
isoc_mult |
0..2 (hs/ss only) |
isoc_maxburst |
0..15 (ss only) |
buflen |
buffer length |
bulk_qlen |
depth of queue for bulk |
iso_qlen |
depth of queue for iso |
/config/usb-gadget/gadget/functions/acm.name |
Defined on file configfs-usb-gadget-acm
This item contains just one readonly attribute: port_num. It contains the port number of the /dev/ttyGS<n> device associated with acm function’s instance “name”.
/config/usb-gadget/gadget/functions/acm.name/protocol |
Defined on file configfs-usb-gadget-acm
Reported bInterfaceProtocol for the ACM device. For legacy reasons, this defaults to 1 (USB_CDC_ACM_PROTO_AT_V25TER).
/config/usb-gadget/gadget/functions/ecm.name |
Defined on file configfs-usb-gadget-ecm
The attributes:
- ifname
network device interface name associated with this function instance
- qmult
queue length multiplier for high and super speed
- host_addr
MAC address of host’s end of this Ethernet over USB link
- dev_addr
MAC address of device’s end of this Ethernet over USB link
/config/usb-gadget/gadget/functions/eem.name |
Defined on file configfs-usb-gadget-eem
The attributes:
ifname |
network device interface name associated with this function instance |
qmult |
queue length multiplier for high and super speed |
host_addr |
MAC address of host’s end of this Ethernet over USB link |
dev_addr |
MAC address of device’s end of this Ethernet over USB link |
/config/usb-gadget/gadget/functions/ffs.name |
Defined on file configfs-usb-gadget-ffs
The purpose of this directory is to create and remove it.
A corresponding USB function instance is created/removed.
All attributes are read only:
ready |
1 if the function is ready to be used, E.G. if userspace has written descriptors and strings to ep0, so the gadget can be enabled - 0 otherwise. |
All other parameters are set through FunctionFS.
/config/usb-gadget/gadget/functions/geth.name |
Defined on file configfs-usb-gadget-subset
The attributes:
ifname |
network device interface name associated with this function instance |
qmult |
queue length multiplier for high and super speed |
host_addr |
MAC address of host’s end of this Ethernet over USB link |
dev_addr |
MAC address of device’s end of this Ethernet over USB link |
/config/usb-gadget/gadget/functions/gser.name |
Defined on file configfs-usb-gadget-serial
This item contains just one readonly attribute: port_num. It contains the port number of the /dev/ttyGS<n> device associated with gser function’s instance “name”.
/config/usb-gadget/gadget/functions/hid.name |
Defined on file configfs-usb-gadget-hid
The attributes:
protocol |
HID protocol to use |
report_desc |
blob corresponding to HID report descriptors except the data passed through /dev/hidg<N> |
report_length |
HID report length |
subclass |
HID device subclass to use |
/config/usb-gadget/gadget/functions/mass_storage.name |
Defined on file configfs-usb-gadget-mass-storage
The attributes:
stall |
Set to permit function to halt bulk endpoints. Disabled on some USB devices known not to work correctly. You should set it to true. |
num_buffers |
Number of pipeline buffers. Valid numbers are 2..4. Available only if CONFIG_USB_GADGET_DEBUG_FILES is set. |
/config/usb-gadget/gadget/functions/mass_storage.name/lun.name |
Defined on file configfs-usb-gadget-mass-storage
The attributes:
file |
The path to the backing file for the LUN. Required if LUN is not marked as removable. |
ro |
Flag specifying access to the LUN shall be read-only. This is implied if CD-ROM emulation is enabled as well as when it was impossible to open “filename” in R/W mode. |
removable |
Flag specifying that LUN shall be indicated as being removable. |
cdrom |
Flag specifying that LUN shall be reported as being a CD-ROM. |
nofua |
Flag specifying that FUA flag in SCSI WRITE(10,12) |
forced_eject |
This write-only file is useful only when the function is active. It causes the backing file to be forcibly detached from the LUN, regardless of whether the host has allowed it. Any non-zero number of bytes written will result in ejection. |
/config/usb-gadget/gadget/functions/midi.name |
Defined on file configfs-usb-gadget-midi
The attributes:
index |
index value for the USB MIDI adapter |
id |
ID string for the USB MIDI adapter |
buflen |
MIDI buffer length |
qlen |
USB read request queue length |
in_ports |
number of MIDI input ports |
out_ports |
number of MIDI output ports |
/config/usb-gadget/gadget/functions/midi2.name |
Defined on file configfs-usb-gadget-midi2
The attributes:
process_ump |
Flag to process UMP Stream messages (0 or 1) |
static_block |
Flag for static blocks (0 or 1) |
iface_name |
MIDI interface name string |
/config/usb-gadget/gadget/functions/midi2.name/ep.number |
Defined on file configfs-usb-gadget-midi2
This group contains a UMP Endpoint configuration. A new Endpoint starts from 0, and can be up to 3.
The attributes:
protocol_caps |
MIDI protocol capabilities (1, 2 or 3 for both) |
protocol |
Default MIDI protocol (1 or 2) |
ep_name |
UMP Endpoint name string |
product_id |
Product ID string |
manufacturer |
Manufacture ID (24 bit) |
family |
Device family ID (16 bit) |
model |
Device model ID (16 bit) |
sw_revision |
Software Revision (32 bit) |
/config/usb-gadget/gadget/functions/midi2.name/ep.number/block.number |
Defined on file configfs-usb-gadget-midi2
This group contains a UMP Function Block configuration. A new block starts from 0, and can be up to 31.
The attributes:
name |
Function Block name string |
direction |
1: input, 2: output, 3: bidirectional |
first_group |
The first UMP Group number (0-15) |
num_groups |
The number of groups in this FB (1-16) |
midi1_first_group |
The first UMP Group number for MIDI 1.0 (0-15) |
midi1_num_groups |
The number of groups for MIDI 1.0 (0-16) |
ui_hint |
0: unknown, 1: receiver, 2: sender, 3: both |
midi_ci_verison |
Supported MIDI-CI version number (8 bit) |
is_midi1 |
Legacy MIDI 1.0 device (0, 1 or 2) |
sysex8_streams |
Max number of SysEx8 streams (8 bit) |
active |
Active FB flag (0 or 1) |
/config/usb-gadget/gadget/functions/ncm.name |
Defined on file configfs-usb-gadget-ncm
The attributes:
- ifname - network device interface name associated with
this function instance
- qmult - queue length multiplier for high and
super speed
- host_addr - MAC address of host’s end of this
Ethernet over USB link
- dev_addr - MAC address of device’s end of this
Ethernet over USB link
/config/usb-gadget/gadget/functions/obex.name |
Defined on file configfs-usb-gadget-obex
This item contains just one readonly attribute: port_num. It contains the port number of the /dev/ttyGS<n> device associated with obex function’s instance “name”.
/config/usb-gadget/gadget/functions/phonet.name |
Defined on file configfs-usb-gadget-phonet
This item contains just one readonly attribute: ifname. It contains the network interface name assigned during network device registration.
/config/usb-gadget/gadget/functions/printer.name |
Defined on file configfs-usb-gadget-printer
The attributes:
pnp_string |
Data to be passed to the host in pnp string |
q_len |
Number of requests per endpoint |
/config/usb-gadget/gadget/functions/rndis.name |
Defined on file configfs-usb-gadget-rndis
The attributes:
ifname |
network device interface name associated with this function instance |
qmult |
queue length multiplier for high and super speed |
host_addr |
MAC address of host’s end of this Ethernet over USB link |
dev_addr |
MAC address of device’s end of this Ethernet over USB link |
class |
USB interface class, default is 02 (hex) |
subclass |
USB interface subclass, default is 06 (hex) |
protocol |
USB interface protocol, default is 00 (hex) |
/config/usb-gadget/gadget/functions/tcm.name |
Defined on file configfs-usb-gadget-tcm
There are no attributes because all the configuration is performed in the “target” subsystem of configfs.
/config/usb-gadget/gadget/functions/uac1.name |
Defined on file configfs-usb-gadget-uac1
The attributes:
c_chmask |
capture channel mask |
c_srate |
list of capture sampling rates (comma-separated) |
c_ssize |
capture sample size (bytes) |
c_mute_present |
capture mute control enable |
c_volume_present |
capture volume control enable |
c_volume_min |
capture volume control min value (in 1/256 dB) |
c_volume_max |
capture volume control max value (in 1/256 dB) |
c_volume_res |
capture volume control resolution (in 1/256 dB) |
p_chmask |
playback channel mask |
p_srate |
list of playback sampling rates (comma-separated) |
p_ssize |
playback sample size (bytes) |
p_mute_present |
playback mute control enable |
p_volume_present |
playback volume control enable |
p_volume_min |
playback volume control min value (in 1/256 dB) |
p_volume_max |
playback volume control max value (in 1/256 dB) |
p_volume_res |
playback volume control resolution (in 1/256 dB) |
req_number |
the number of pre-allocated requests for both capture and playback |
function_name |
name of the interface |
p_it_name |
playback input terminal name |
p_it_ch_name |
playback channels name |
p_ot_name |
playback output terminal name |
p_fu_vol_name |
playback mute/volume functional unit name |
c_it_name |
capture input terminal name |
c_it_ch_name |
capture channels name |
c_ot_name |
capture output terminal name |
c_fu_vol_name |
capture mute/volume functional unit name |
/config/usb-gadget/gadget/functions/uac1_legacy.name |
Defined on file configfs-usb-gadget-uac1_legacy
The attributes:
audio_buf_size - audio buffer size fn_cap - capture pcm device file name fn_cntl - control device file name fn_play - playback pcm device file name req_buf_size - ISO OUT endpoint request buffer size req_count - ISO OUT endpoint request count
/config/usb-gadget/gadget/functions/uac2.name |
Defined on file configfs-usb-gadget-uac2
The attributes:
c_chmask |
capture channel mask |
c_srate |
list of capture sampling rates (comma-separated) |
c_ssize |
capture sample size (bytes) |
c_hs_bint |
capture bInterval for HS/SS (1-4: fixed, 0: auto) |
c_sync |
capture synchronization type (async/adaptive) |
c_mute_present |
capture mute control enable |
c_volume_present |
capture volume control enable |
c_volume_min |
capture volume control min value (in 1/256 dB) |
c_volume_max |
capture volume control max value (in 1/256 dB) |
c_volume_res |
capture volume control resolution (in 1/256 dB) |
fb_max |
maximum extra bandwidth in async mode |
p_chmask |
playback channel mask |
p_srate |
list of playback sampling rates (comma-separated) |
p_ssize |
playback sample size (bytes) |
p_hs_bint |
playback bInterval for HS/SS (1-4: fixed, 0: auto) |
p_mute_present |
playback mute control enable |
p_volume_present |
playback volume control enable |
p_volume_min |
playback volume control min value (in 1/256 dB) |
p_volume_max |
playback volume control max value (in 1/256 dB) |
p_volume_res |
playback volume control resolution (in 1/256 dB) |
req_number |
the number of pre-allocated requests for both capture and playback |
function_name |
name of the interface |
if_ctrl_name |
topology control name |
clksrc_in_name |
input clock name |
clksrc_out_name |
output clock name |
p_it_name |
playback input terminal name |
p_it_ch_name |
playback input first channel name |
p_ot_name |
playback output terminal name |
p_fu_vol_name |
playback mute/volume function unit name |
c_it_name |
capture input terminal name |
c_it_ch_name |
capture input first channel name |
c_ot_name |
capture output terminal name |
c_fu_vol_name |
capture mute/volume functional unit name |
c_terminal_type |
code of the capture terminal type |
p_terminal_type |
code of the playback terminal type |
/config/usb-gadget/gadget/functions/uvc.name |
Defined on file configfs-usb-gadget-uvc
UVC function directory
streaming_maxburst |
0..15 (ss only) |
streaming_maxpacket |
1..1023 (fs), 1..3072 (hs/ss) |
streaming_interval |
1..16 |
function_name |
string [32] |
/config/usb-gadget/gadget/functions/uvc.name/control |
Defined on file configfs-usb-gadget-uvc
Control descriptors
All attributes read only except enable_interrupt_ep:
bInterfaceNumber |
USB interface number for this streaming interface |
enable_interrupt_ep |
flag to enable the interrupt endpoint for the VC interface |
/config/usb-gadget/gadget/functions/uvc.name/control/class |
Defined on file configfs-usb-gadget-uvc
Class descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/class/fs |
Defined on file configfs-usb-gadget-uvc
Full speed control class descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/class/ss |
Defined on file configfs-usb-gadget-uvc
Super speed control class descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/extensions |
Defined on file configfs-usb-gadget-uvc
Extension unit descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/extensions/name |
Defined on file configfs-usb-gadget-uvc
Extension Unit (XU) Descriptor
bLength, bUnitID and iExtension are read-only. All others are read-write.
bLength |
size of the descriptor in bytes |
bUnitID |
non-zero ID of this unit |
guidExtensionCode |
Vendor-specific code identifying the XU |
bNumControls |
number of controls in this XU |
bNrInPins |
number of input pins for this unit |
baSourceID |
list of the IDs of the units or terminals to which this XU is connected |
bControlSize |
size of the bmControls field in bytes |
bmControls |
list of bitmaps detailing which vendor specific controls are supported |
iExtension |
index of a string descriptor that describes this extension unit |
/config/usb-gadget/gadget/functions/uvc.name/control/header |
Defined on file configfs-usb-gadget-uvc
Control header descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/header/name |
Defined on file configfs-usb-gadget-uvc
Specific control header descriptors
dwClockFrequency bcdUVC
/config/usb-gadget/gadget/functions/uvc.name/control/processing |
Defined on file configfs-usb-gadget-uvc
Processing unit descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/processing/default |
Defined on file configfs-usb-gadget-uvc
Default processing unit descriptors
All attributes read only except bmControls, which is read/write:
iProcessing |
index of string descriptor |
bmControls |
bitmap specifying which controls are supported for the video stream |
wMaxMultiplier |
maximum digital magnification x100 |
bSourceID |
id of the terminal to which this unit is connected |
bUnitID |
a non-zero id of this unit |
/config/usb-gadget/gadget/functions/uvc.name/control/terminal |
Defined on file configfs-usb-gadget-uvc
Terminal descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera |
Defined on file configfs-usb-gadget-uvc
Camera terminal descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera/default |
Defined on file configfs-usb-gadget-uvc
Default camera terminal descriptors
All attributes read only except bmControls, which is read/write:
bmControls |
bitmap specifying which controls are supported for the video stream |
wOcularFocalLength |
the value of Locular |
wObjectiveFocalLengthMax |
the value of Lmin |
wObjectiveFocalLengthMin |
the value of Lmax |
iTerminal |
index of string descriptor |
bAssocTerminal |
id of the output terminal to which this terminal is connected |
wTerminalType |
terminal type |
bTerminalID |
a non-zero id of this terminal |
/config/usb-gadget/gadget/functions/uvc.name/control/terminal/output |
Defined on file configfs-usb-gadget-uvc
Output terminal descriptors
/config/usb-gadget/gadget/functions/uvc.name/control/terminal/output/default |
Defined on file configfs-usb-gadget-uvc
Default output terminal descriptors
All attributes read only except bSourceID:
iTerminal |
index of string descriptor |
bSourceID |
id of the terminal to which this terminal is connected |
bAssocTerminal |
id of the input terminal to which this output terminal is associated |
wTerminalType |
terminal type |
bTerminalID |
a non-zero id of this terminal |
/config/usb-gadget/gadget/functions/uvc.name/streaming |
Defined on file configfs-usb-gadget-uvc
Streaming descriptors
All attributes read only:
bInterfaceNumber |
USB interface number for this streaming interface |
/config/usb-gadget/gadget/functions/uvc.name/streaming/class |
Defined on file configfs-usb-gadget-uvc
Streaming class descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/class/fs |
Defined on file configfs-usb-gadget-uvc
Full speed streaming class descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/class/hs |
Defined on file configfs-usb-gadget-uvc
High speed streaming class descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/class/ss |
Defined on file configfs-usb-gadget-uvc
Super speed streaming class descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching |
Defined on file configfs-usb-gadget-uvc
Color matching descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching/default |
Defined on file configfs-usb-gadget-uvc
Default color matching descriptors
All attributes read/write:
bMatrixCoefficients |
matrix used to compute luma and chroma values from the color primaries |
bTransferCharacteristics |
optoelectronic transfer characteristic of the source picture, also called the gamma function |
bColorPrimaries |
color primaries and the reference white |
/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching/name |
Defined on file configfs-usb-gadget-uvc
Additional color matching descriptors
All attributes read/write:
bMatrixCoefficients |
matrix used to compute luma and chroma values from the color primaries |
bTransferCharacteristics |
optoelectronic transfer characteristic of the source picture, also called the gamma function |
bColorPrimaries |
color primaries and the reference white |
/config/usb-gadget/gadget/functions/uvc.name/streaming/framebased |
Defined on file configfs-usb-gadget-uvc
Framebased format descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/framebased/name |
Defined on file configfs-usb-gadget-uvc
Specific framebased format descriptors
bFormatIndex |
unique id for this format descriptor; only defined after parent header is linked into the streaming class; read-only |
bmaControls |
this format’s data for bmaControls in the streaming header |
bmInterlaceFlags |
specifies interlace information, read-only |
bAspectRatioY |
the X dimension of the picture aspect ratio, read-only |
bAspectRatioX |
the Y dimension of the picture aspect ratio, read-only |
bDefaultFrameIndex |
optimum frame index for this stream |
bBitsPerPixel |
number of bits per pixel used to specify color in the decoded video frame |
guidFormat |
globally unique id used to identify stream-encoding format |
/config/usb-gadget/gadget/functions/uvc.name/streaming/framebased/name/name |
Defined on file configfs-usb-gadget-uvc
Specific framebased frame descriptors
bFrameIndex |
unique id for this framedescriptor; only defined after parent format is linked into the streaming header; read-only |
dwFrameInterval |
indicates how frame interval can be programmed; a number of values separated by newline can be specified |
dwDefaultFrameInterval |
the frame interval the device would like to use as default |
dwBytesPerLine |
Specifies the number of bytes per line of video for packed fixed frame size formats, allowing the receiver to perform stride alignment of the video. If the bVariableSize value (above) is TRUE (1), or if the format does not permit such alignment, this value shall be set to zero (0). |
dwMaxBitRate |
the maximum bit rate at the shortest frame interval in bps |
dwMinBitRate |
the minimum bit rate at the longest frame interval in bps |
wHeight |
height of decoded bitmap frame in px |
wWidth |
width of decoded bitmam frame in px |
bmCapabilities |
still image support, fixed frame-rate support |
/config/usb-gadget/gadget/functions/uvc.name/streaming/header |
Defined on file configfs-usb-gadget-uvc
Streaming header descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/header/name |
Defined on file configfs-usb-gadget-uvc
Specific streaming header descriptors
All attributes read only:
bTriggerUsage |
how the host software will respond to a hardware trigger interrupt event |
bTriggerSupport |
flag specifying if hardware triggering is supported |
bStillCaptureMethod |
method of still image capture supported |
bTerminalLink |
id of the output terminal to which the video endpoint of this interface is connected |
bmInfo |
capabilities of this video streaming interface |
/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg |
Defined on file configfs-usb-gadget-uvc
MJPEG format descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg/name |
Defined on file configfs-usb-gadget-uvc
Specific MJPEG format descriptors
All attributes read only, except bmaControls and bDefaultFrameIndex:
bFormatIndex |
unique id for this format descriptor; only defined after parent header is linked into the streaming class; read-only |
bmaControls |
this format’s data for bmaControls in the streaming header |
bmInterlaceFlags |
specifies interlace information, read-only |
bAspectRatioY |
the X dimension of the picture aspect ratio, read-only |
bAspectRatioX |
the Y dimension of the picture aspect ratio, read-only |
bmFlags |
characteristics of this format, read-only |
bDefaultFrameIndex |
optimum frame index for this stream |
/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg/name/name |
Defined on file configfs-usb-gadget-uvc
Specific MJPEG frame descriptors
bFrameIndex |
unique id for this framedescriptor; only defined after parent format is linked into the streaming header; read-only |
dwFrameInterval |
indicates how frame interval can be programmed; a number of values separated by newline can be specified |
dwDefaultFrameInterval |
the frame interval the device would like to use as default |
dwMaxVideoFrameBufferSize |
the maximum number of bytes the compressor will produce for a video frame or still image |
dwMaxBitRate |
the maximum bit rate at the shortest frame interval in bps |
dwMinBitRate |
the minimum bit rate at the longest frame interval in bps |
wHeight |
height of decoded bitmap frame in px |
wWidth |
width of decoded bitmam frame in px |
bmCapabilities |
still image support, fixed frame-rate support |
/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed |
Defined on file configfs-usb-gadget-uvc
Uncompressed format descriptors
/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed/name |
Defined on file configfs-usb-gadget-uvc
Specific uncompressed format descriptors
bFormatIndex |
unique id for this format descriptor; only defined after parent header is linked into the streaming class; read-only |
bmaControls |
this format’s data for bmaControls in the streaming header |
bmInterlaceFlags |
specifies interlace information, read-only |
bAspectRatioY |
the X dimension of the picture aspect ratio, read-only |
bAspectRatioX |
the Y dimension of the picture aspect ratio, read-only |
bDefaultFrameIndex |
optimum frame index for this stream |
bBitsPerPixel |
number of bits per pixel used to specify color in the decoded video frame |
guidFormat |
globally unique id used to identify stream-encoding format |
/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed/name/name |
Defined on file configfs-usb-gadget-uvc
Specific uncompressed frame descriptors
bFrameIndex |
unique id for this framedescriptor; only defined after parent format is linked into the streaming header; read-only |
dwFrameInterval |
indicates how frame interval can be programmed; a number of values separated by newline can be specified |
dwDefaultFrameInterval |
the frame interval the device would like to use as default |
dwMaxVideoFrameBufferSize |
the maximum number of bytes the compressor will produce for a video frame or still image |
dwMaxBitRate |
the maximum bit rate at the shortest frame interval in bps |
dwMinBitRate |
the minimum bit rate at the longest frame interval in bps |
wHeight |
height of decoded bitmap frame in px |
wWidth |
width of decoded bitmam frame in px |
bmCapabilities |
still image support, fixed frame-rate support |
/config/usb-gadget/gadget/os_desc |
Defined on file configfs-usb-gadget
This group contains “OS String” extension handling attributes.
use |
flag turning “OS Descriptors” support on/off |
b_vendor_code |
one-byte value used for custom per-device and per-interface requests |
qw_sign |
an identifier to be reported as “OS String” proper |
/config/usb-gadget/gadget/strings |
Defined on file configfs-usb-gadget
This group contains subdirectories for language-specific strings for this gadget.
/config/usb-gadget/gadget/strings/language |
Defined on file configfs-usb-gadget
The attributes:
serialnumber |
gadget’s serial number (string) |
product |
gadget’s product description |
manufacturer |
gadget’s manufacturer description |
/config/usb-gadget/gadget/webusb |
Defined on file configfs-usb-gadget
This group contains “WebUSB” extension handling attributes.
use |
flag turning “WebUSB” support on/off |
bcdVersion |
bcd WebUSB specification version number |
bVendorCode |
one-byte value used for custom per-device |
landingPage |
UTF-8 encoded URL of the device’s landing page |
Symbols under /dev/gpiochip¶
/dev/gpiochip[0-9]+ |
Defined on file gpio-cdev
The character device files /dev/gpiochip* are the interface between GPIO chips and userspace.
The ioctl(2)-based ABI is defined in [include/uapi]<linux/gpio.h> and documented in GPIO Character Device Userspace API.
The following file operations are supported:
- open(2)
Currently the only useful flags are O_RDWR.
- ioctl(2)
Initiate various actions.
See GPIO Character Device Userspace API for a description of all ioctls.
- close(2)
Stops and free up the I/O contexts that was associated with the file descriptor.
Users: TBD
Symbols under /dev/kmsg¶
/dev/kmsg |
Defined on file dev-kmsg
The /dev/kmsg character device node provides userspace access to the kernel’s printk buffer.
Injecting messages:
Every write() to the opened device node places a log entry in the kernel’s printk buffer.
The logged line can be prefixed with a <N> syslog prefix, which carries the syslog priority and facility. The single decimal prefix number is composed of the 3 lowest bits being the syslog priority and the next 8 bits the syslog facility number.
If no prefix is given, the priority number is the default kernel log priority and the facility number is set to LOG_USER (1). It is not possible to inject messages from userspace with the facility number LOG_KERN (0), to make sure that the origin of the messages can always be reliably determined.
Accessing the buffer:
Every read() from the opened device node receives one record of the kernel’s printk buffer.
The first read() directly following an open() always returns first message in the buffer; there is no kernel-internal persistent state; many readers can concurrently open the device and read from it, without affecting other readers.
Every read() will receive the next available record. If no more records are available read() will block, or if O_NONBLOCK is used -EAGAIN returned.
Messages in the record ring buffer get overwritten as whole, there are never partial messages received by read().
In case messages get overwritten in the circular buffer while the device is kept open, the next read() will return -EPIPE, and the seek position be updated to the next available record. Subsequent reads() will return available records again.
Unlike the classic syslog() interface, the 64 bit record sequence numbers allow to calculate the amount of lost messages, in case the buffer gets overwritten. And they allow to reconnect to the buffer and reconstruct the read position if needed, without limiting the interface to a single reader.
The device supports seek with the following parameters:
- SEEK_SET, 0
seek to the first entry in the buffer
- SEEK_END, 0
seek after the last entry in the buffer
- SEEK_DATA, 0
seek after the last record available at the time the last SYSLOG_ACTION_CLEAR was issued.
Other seek operations or offsets are not supported because of the special behavior this device has. The device allows to read or write only whole variable length messages (records) that are stored in a ring buffer.
Because of the non-standard behavior also the error values are non-standard. -ESPIPE is returned for non-zero offset. -EINVAL is returned for other operations, e.g. SEEK_CUR. This behavior and values are historical and could not be modified without the risk of breaking userspace.
The output format consists of a prefix carrying the syslog prefix including priority and facility, the 64 bit message sequence number and the monotonic timestamp in microseconds, and a flag field. All fields are separated by a ‘,’.
Future extensions might add more comma separated values before the terminating ‘;’. Unknown fields and values should be gracefully ignored.
The human readable text string starts directly after the ‘;’ and is terminated by a ‘n’. Untrusted values derived from hardware or other facilities are printed, therefore all non-printable characters and ‘' itself in the log message are escaped by “x00” C-style hex encoding.
A line starting with ‘ ‘, is a continuation line, adding key/value pairs to the log message, which provide the machine readable context of the message, for reliable processing in userspace.
Example:
7,160,424069,-;pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] (ignored)
SUBSYSTEM=acpi
DEVICE=+acpi:PNP0A03:00
6,339,5140900,-;NET: Registered protocol family 10
30,340,5690716,-;udevd[80]: starting version 181
The DEVICE= key uniquely identifies devices the following way:
b12:8
block dev_t
c127:3
char dev_t
n8
netdev ifindex
+sound:card0
subsystem:devname
The flags field carries ‘-’ by default. A ‘c’ indicates a fragment of a line. Note, that these hints about continuation lines are not necessarily correct, and the stream could be interleaved with unrelated messages, but merging the lines in the output usually produces better human readable results. A similar logic is used internally when messages are printed to the console, /proc/kmsg or the syslog() syscall.
By default, kernel tries to avoid fragments by concatenating when it can and fragments are rare; however, when extended console support is enabled, the in-kernel concatenation is disabled and /dev/kmsg output will contain more fragments. If the log consumer performs concatenation, the end result should be the same. In the future, the in-kernel concatenation may be removed entirely and /dev/kmsg users are recommended to implement fragment handling.
Users: dmesg(1), userspace kernel log consumers
Symbols under /dev/rtcX¶
/dev/rtcX |
Defined on file rtc-cdev
The ioctl interface to drivers for real-time clocks (RTCs). Following actions are supported:
RTC_RD_TIME, RTC_SET_TIME: Read or set the RTC time. Time format is a Gregorian calendar date and 24 hour wall clock time.
RTC_AIE_ON, RTC_AIE_OFF: Enable or disable the alarm interrupt for RTCs that support alarms
RTC_ALM_READ, RTC_ALM_SET: Read or set the alarm time for RTCs that support alarms. Can be set upto 24 hours in the future. Requires a separate RTC_AIE_ON call to enable the alarm interrupt. (Prefer to use RTC_WKALM_*)
RTC_WKALM_RD, RTC_WKALM_SET: For RTCs that support a more powerful interface, which can issue alarms beyond 24 hours and enable IRQs in the same request.
RTC_PIE_ON, RTC_PIE_OFF: Enable or disable the periodic interrupt for RTCs that support periodic interrupts.
RTC_UIE_ON, RTC_UIE_OFF: Enable or disable the update interrupt for RTCs that support it.
RTC_IRQP_READ, RTC_IRQP_SET: Read or set the frequency for periodic interrupts for RTCs that support periodic interrupts. Requires a separate RTC_PIE_ON call to enable the periodic interrupts.
RTC_VL_READ: Read the voltage inputs status of the RTC when supported. The value is a bit field of RTC_VL_*, giving the status of the main and backup voltages.
RTC_VL_CLEAR: Clear the voltage status of the RTC. Some RTCs need user interaction when the backup power provider is replaced or charged to be able to clear the status.
The ioctl() calls supported by the older /dev/rtc interface are also supported by the newer RTC class framework. However, because the chips and systems are not standardized, some PC/AT functionality might not be provided. And in the same way, some newer features -- including those enabled by ACPI -- are exposed by the RTC class framework, but can’t be supported by the older driver.
Symbols under /dev/wmi¶
/dev/wmi/dell-smbios |
Defined on file dell-smbios-wmi
Perform SMBIOS calls on supported Dell machines. through the Dell ACPI-WMI interface.
IOCTL’s and buffer formats are defined in: <uapi/linux/wmi.h>
To perform an SMBIOS call from userspace, you’ll need to first determine the minimum size of the calling interface buffer for your machine. Platforms that contain larger buffers can return larger objects from the system firmware. Commonly this size is either 4k or 32k.
To determine the size of the buffer read() a u64 dword from the WMI character device /dev/wmi/dell-smbios.
After you’ve determined the minimum size of the calling interface buffer, you can allocate a structure that represents the structure documented above.
In the ‘length’ object store the size of the buffer you determined above and allocated.
In this buffer object, prepare as necessary for the SMBIOS call you’re interested in. Typically SMBIOS buffers have “class”, “select”, and “input” defined to values that coincide with the data you are interested in. Documenting class/select/input values is outside of the scope of this documentation. Check with the libsmbios project for further documentation on these values.
Run the call by using ioctl() as described in the header.
The output will be returned in the buffer object.
Be sure to free up your allocated object.
Symbols under /kvd¶
/kvd/ |
Defined on file devlink-resource-mlxsw
The main database in the Spectrum device is a centralized KVD database used for many of the tables used to configure the chip including L2 FDB, L3 LPM, ECMP and more. The KVD is divided into two sections, the first is hash-based table and the second is a linear access table. The division between the linear and hash-based sections is static and require reload before the changes take effect.
Symbols under /kvd/hash_double¶
/kvd/hash_double |
Defined on file devlink-resource-mlxsw
The hash based section of the KVD is managed by the switch device. Used in case the key is larger than 64 bit.
Symbols under /kvd/hash_single¶
/kvd/hash_single |
Defined on file devlink-resource-mlxsw
The hash based section of the KVD is managed by the switch device. Used in case the key size is smaller or equal to 64bit.
Symbols under /kvd/linear¶
/kvd/linear |
Defined on file devlink-resource-mlxsw
The linear section of the KVD is managed by software as a flat memory accessed using an index.
Symbols under /proc¶
/proc/*/attr/current |
Defined on file procfs-attr-current
The current security information used by a Linux security module (LSM) that is active on the system. The details of permissions required to read from this interface and hence obtain the security state of the task identified is LSM dependent. A process cannot write to this interface unless it refers to itself. The other details of permissions required to write to this interface and hence change the security state of the task identified are LSM dependent. The format of the data used by this interface is LSM dependent. SELinux, Smack and AppArmor provide this interface.
Users: SELinux user-space Smack user-space AppArmor user-space
/proc/*/attr/exec |
Defined on file procfs-attr-exec
The security information to be used on the process by a Linux security module (LSM) active on the system after a subsequent exec() call. The details of permissions required to read from this interface and hence obtain the security state of the task identified is LSM dependent. A process cannot write to this interface unless it refers to itself. The other details of permissions required to write to this interface and hence change the security state of the task identified are LSM dependent. The format of the data used by this interface is LSM dependent. SELinux and AppArmor provide this interface.
Users: SELinux user-space AppArmor user-space
/proc/*/attr/prev |
Defined on file procfs-attr-prev
The security information used on the process by a Linux security module (LSM) active on the system prior to the most recent exec() call. The details of permissions required to read from this interface is LSM dependent. A process cannot write to this interface unless it refers to itself. The other details of permissions required to write to this interface are LSM dependent. The format of the data used by this interface is LSM dependent. SELinux and AppArmor provide this interface.
Users: SELinux user-space AppArmor user-space
Symbols under /proc/diskstats¶
/proc/diskstats |
Defined on file procfs-diskstats
The /proc/diskstats file displays the I/O statistics of block devices. Each line contains the following 14 fields:
1 |
major number |
2 |
minor number |
3 |
device name |
4 |
reads completed successfully |
5 |
reads merged |
6 |
sectors read |
7 |
time spent reading (ms) |
8 |
writes completed |
9 |
writes merged |
10 |
sectors written |
11 |
time spent writing (ms) |
12 |
I/Os currently in progress |
13 |
time spent doing I/Os (ms) |
14 |
weighted time spent doing I/Os (ms) |
Kernel 4.18+ appends four more fields for discard tracking putting the total at 18:
15 |
discards completed successfully |
16 |
discards merged |
17 |
sectors discarded |
18 |
time spent discarding |
Kernel 5.5+ appends two more fields for flush requests:
19 |
flush requests completed successfully |
20 |
time spent flushing |
For more details refer to I/O statistics fields
Symbols under /proc/pid¶
/proc/pid/smaps_rollup |
Defined on file procfs-smaps_rollup
This file provides pre-summed memory information for a process. The format is almost identical to /proc/pid/smaps, except instead of an entry for each VMA in a process, smaps_rollup has a single entry (tagged “[rollup]”) for which each field is the sum of the corresponding fields from all the maps in /proc/pid/smaps. Additionally, the fields Pss_Anon, Pss_File and Pss_Shmem are not present in /proc/pid/smaps. These fields represent the sum of the Pss field of each type (anon, file, shmem). For more details, see The /proc Filesystem and the procfs man page.
Typical output looks like this:
00100000-ff709000 ---p 00000000 00:00 0 [rollup]
Size: 1192 kB
KernelPageSize: 4 kB
MMUPageSize: 4 kB
Rss: 884 kB
Pss: 385 kB
Pss_Dirty: 68 kB
Pss_Anon: 301 kB
Pss_File: 80 kB
Pss_Shmem: 4 kB
Shared_Clean: 696 kB
Shared_Dirty: 0 kB
Private_Clean: 120 kB
Private_Dirty: 68 kB
Referenced: 884 kB
Anonymous: 68 kB
LazyFree: 0 kB
AnonHugePages: 0 kB
ShmemPmdMapped: 0 kB
Shared_Hugetlb: 0 kB
Private_Hugetlb: 0 kB
Swap: 0 kB
SwapPss: 0 kB
Locked: 385 kB
Symbols under /sys¶
/sys/.../<device>/<UUID>/ |
Defined on file sysfs-bus-vfio-mdev
This directory represents device directory of mediated device. It contains all the attributes related to mediated device.
/sys/.../<device>/<UUID>/mdev_type |
Defined on file sysfs-bus-vfio-mdev
This is symbolic link pointing to supported type, <type-id> directory of which this mediated device is created.
/sys/.../<device>/<UUID>/remove |
Defined on file sysfs-bus-vfio-mdev
Writing ‘1’ to this file destroys the mediated device. The vendor driver can fail the remove() callback if that device is active and the vendor driver doesn’t support hot unplug. Example:
# echo 1 > /sys/bus/mdev/devices/<UUID>/remove
/sys/.../<device>/mdev_supported_types/ |
Defined on file sysfs-bus-vfio-mdev
This directory contains list of directories of currently supported mediated device types and their details for <device>. Supported type attributes are defined by the vendor driver who registers with Mediated device framework. Each supported type is a directory whose name is created by adding the device driver string as a prefix to the string provided by the vendor driver.
/sys/.../<device>/mdev_supported_types/<type-id>/ |
Defined on file sysfs-bus-vfio-mdev
This directory gives details of supported type, like name, description, available_instances, device_api etc. ‘device_api’ and ‘available_instances’ are mandatory attributes to be provided by vendor driver. ‘name’, ‘description’ and other vendor driver specific attributes are optional.
/sys/.../<device>/vfio-dev/vfioX/ |
Defined on file sysfs-devices-vfio-dev
This directory is created when the device is bound to a
vfio driver. The layout under this directory matches what
exists for a standard ‘struct device
’. ‘X’ is a unique
index marking this device in vfio.
/sys/.../events/illuminance_threshY_falling_value |
/sys/.../events/illuminance_threshY_raising_value |
Defined on file sysfs-bus-iio-light-lm3533-als
Specifies the value of threshold that the device is comparing against for the events enabled by in_illuminance0_thresh_either_en (0..255), where Y in 0..3.
Note that threshY_falling must be less than or equal to threshY_raising.
These thresholds correspond to the eight zone-boundary registers (boundaryY_{low,high}) and define the five light zones.
/sys/.../events/in_accel_gesture_doubletap_tap2_min_delay |
Defined on file sysfs-bus-iio
Specifies the minimum quiet time in seconds between the two taps of a double tap.
/sys/.../events/in_accel_gesture_doubletap_tap2_min_delay_available |
Defined on file sysfs-bus-iio
Lists all available delay values between two taps in the double tap. Units in seconds.
/sys/.../events/in_accel_gesture_singletap_en |
/sys/.../events/in_accel_gesture_doubletap_en |
Defined on file sysfs-bus-iio
Device generates an event on a single or double tap.
/sys/.../events/in_accel_gesture_singletap_reset_timeout |
/sys/.../events/in_accel_gesture_doubletap_reset_timeout |
Defined on file sysfs-bus-iio
Specifies the timeout value in seconds for the tap detector to not to look for another tap event after the event as occurred. Basically the minimum quiet time between the two single-tap’s or two double-tap’s.
/sys/.../events/in_accel_gesture_singletap_value |
/sys/.../events/in_accel_gesture_doubletap_value |
Defined on file sysfs-bus-iio
Specifies the threshold value that the device is comparing against to generate the tap gesture event. The lower threshold value increases the sensitivity of tap detection. Units and the exact meaning of value are device-specific.
/sys/.../events/in_accel_gesture_tap_maxtomin_time |
Defined on file sysfs-bus-iio
Specifies the maximum time difference allowed between upper and lower peak of tap to consider it as the valid tap event. Units in seconds.
/sys/.../events/in_accel_gesture_tap_maxtomin_time_available |
Defined on file sysfs-bus-iio
Lists all available time values between upper peak to lower peak. Units in seconds.
/sys/.../events/in_accel_gesture_tap_reset_timeout_available |
Defined on file sysfs-bus-iio
Lists all available tap reset timeout values. Units in seconds.
/sys/.../events/in_accel_gesture_tap_value_available |
Defined on file sysfs-bus-iio
Lists all available threshold values which can be used to modify the sensitivity of the tap detection.
/sys/.../events/in_accel_gesture_tap_wait_dur |
Defined on file sysfs-bus-iio
Timeout value in seconds for tap gesture confirmation.
/sys/.../events/in_accel_gesture_tap_wait_dur_available |
Defined on file sysfs-bus-iio
List of available timeout value for tap gesture confirmation.
/sys/.../events/in_accel_gesture_tap_wait_timeout |
Defined on file sysfs-bus-iio
Enable tap gesture confirmation with timeout.
/sys/.../events/in_accel_raw_mag_value |
/sys/.../events/in_accel_x_raw_mag_rising_value |
/sys/.../events/in_accel_y_raw_mag_rising_value |
/sys/.../events/in_accel_z_raw_mag_rising_value |
Defined on file sysfs-bus-iio
The value to which the magnitude of the channel is compared. If number or direction is not specified, applies to all channels of this type.
/sys/.../events/in_accel_scale |
/sys/.../events/in_accel_peak_scale |
/sys/.../events/in_anglvel_scale |
/sys/.../events/in_magn_scale |
/sys/.../events/in_rot_from_north_magnetic_scale |
/sys/.../events/in_rot_from_north_true_scale |
/sys/.../events/in_voltage_scale |
/sys/.../events/in_voltage_supply_scale |
/sys/.../events/in_temp_scale |
/sys/.../events/in_illuminance_scale |
/sys/.../events/in_proximity_scale |
Defined on file sysfs-bus-iio
Specifies the conversion factor from the standard units to device specific units used to set the event trigger threshold.
/sys/.../events/in_accel_thresh_rising_high_pass_filter_3db |
/sys/.../events/in_anglvel_thresh_rising_high_pass_filter_3db |
/sys/.../events/in_magn_thresh_rising_high_pass_filter_3db |
Defined on file sysfs-bus-iio
If a high pass filter can be applied to the event generation this property gives its 3db frequency in Hz. A value of zero disables the filter.
/sys/.../events/in_accel_thresh_rising_low_pass_filter_3db |
/sys/.../events/in_anglvel_thresh_rising_low_pass_filter_3db |
/sys/.../events/in_magn_thresh_rising_low_pass_filter_3db |
Defined on file sysfs-bus-iio
If a low pass filter can be applied to the event generation this property gives its 3db frequency in Hz. A value of zero disables the filter.
/sys/.../events/in_accel_thresh_rising_value |
/sys/.../events/in_accel_thresh_falling_value |
/sys/.../events/in_accel_x_raw_thresh_rising_value |
/sys/.../events/in_accel_x_raw_thresh_falling_value |
/sys/.../events/in_accel_y_raw_thresh_rising_value |
/sys/.../events/in_accel_y_raw_thresh_falling_value |
/sys/.../events/in_accel_z_raw_thresh_rising_value |
/sys/.../events/in_accel_z_raw_thresh_falling_value |
/sys/.../events/in_anglvel_x_raw_thresh_rising_value |
/sys/.../events/in_anglvel_x_raw_thresh_falling_value |
/sys/.../events/in_anglvel_y_raw_thresh_rising_value |
/sys/.../events/in_anglvel_y_raw_thresh_falling_value |
/sys/.../events/in_anglvel_z_raw_thresh_rising_value |
/sys/.../events/in_anglvel_z_raw_thresh_falling_value |
/sys/.../events/in_magn_x_raw_thresh_rising_value |
/sys/.../events/in_magn_x_raw_thresh_falling_value |
/sys/.../events/in_magn_y_raw_thresh_rising_value |
/sys/.../events/in_magn_y_raw_thresh_falling_value |
/sys/.../events/in_magn_z_raw_thresh_rising_value |
/sys/.../events/in_magn_z_raw_thresh_falling_value |
/sys/.../events/in_rot_from_north_magnetic_raw_thresh_rising_value |
/sys/.../events/in_rot_from_north_magnetic_raw_thresh_falling_value |
/sys/.../events/in_rot_from_north_true_raw_thresh_rising_value |
/sys/.../events/in_rot_from_north_true_raw_thresh_falling_value |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_rising_value |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_falling_value |
/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_rising_value |
/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_falling_value |
/sys/.../events/in_voltageY_supply_raw_thresh_rising_value |
/sys/.../events/in_voltageY_supply_raw_thresh_falling_value |
/sys/.../events/in_voltageY_raw_thresh_rising_value |
/sys/.../events/in_voltageY_raw_thresh_falling_value |
/sys/.../events/in_tempY_raw_thresh_rising_value |
/sys/.../events/in_tempY_raw_thresh_falling_value |
/sys/.../events/in_illuminance0_thresh_falling_value |
/sys/.../events/in_illuminance0_thresh_rising_value |
/sys/.../events/in_proximity0_thresh_falling_value |
/sys/.../events/in_proximity0_thresh_rising_value |
/sys/.../events/in_illuminance_thresh_rising_value |
/sys/.../events/in_illuminance_thresh_falling_value |
/sys/.../events/in_capacitanceY_thresh_rising_value |
/sys/.../events/in_capacitanceY_thresh_falling_value |
/sys/.../events/in_capacitanceY_thresh_adaptive_rising_value |
/sys/.../events/in_capacitanceY_thresh_falling_rising_value |
Defined on file sysfs-bus-iio
Specifies the value of threshold that the device is comparing against for the events enabled by <type>Y[_name]_thresh[_rising|falling]_en.
If separate attributes exist for the two directions, but direction is not specified for this attribute, then a single threshold value applies to both directions.
The raw or input element of the name indicates whether the value is in raw device units or in processed units (as _raw and _input do on sysfs direct channel read attributes).
/sys/.../events/in_accel_x_raw_roc_rising_value |
/sys/.../events/in_accel_x_raw_roc_falling_value |
/sys/.../events/in_accel_y_raw_roc_rising_value |
/sys/.../events/in_accel_y_raw_roc_falling_value |
/sys/.../events/in_accel_z_raw_roc_rising_value |
/sys/.../events/in_accel_z_raw_roc_falling_value |
/sys/.../events/in_anglvel_x_raw_roc_rising_value |
/sys/.../events/in_anglvel_x_raw_roc_falling_value |
/sys/.../events/in_anglvel_y_raw_roc_rising_value |
/sys/.../events/in_anglvel_y_raw_roc_falling_value |
/sys/.../events/in_anglvel_z_raw_roc_rising_value |
/sys/.../events/in_anglvel_z_raw_roc_falling_value |
/sys/.../events/in_magn_x_raw_roc_rising_value |
/sys/.../events/in_magn_x_raw_roc_falling_value |
/sys/.../events/in_magn_y_raw_roc_rising_value |
/sys/.../events/in_magn_y_raw_roc_falling_value |
/sys/.../events/in_magn_z_raw_roc_rising_value |
/sys/.../events/in_magn_z_raw_roc_falling_value |
/sys/.../events/in_rot_from_north_magnetic_raw_roc_rising_value |
/sys/.../events/in_rot_from_north_magnetic_raw_roc_falling_value |
/sys/.../events/in_rot_from_north_true_raw_roc_rising_value |
/sys/.../events/in_rot_from_north_true_raw_roc_falling_value |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_rising_value |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_falling_value |
/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_rising_value |
/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_falling_value |
/sys/.../events/in_voltageY_supply_raw_roc_rising_value |
/sys/.../events/in_voltageY_supply_raw_roc_falling_value |
/sys/.../events/in_voltageY_raw_roc_rising_value |
/sys/.../events/in_voltageY_raw_roc_falling_value |
/sys/.../events/in_tempY_raw_roc_rising_value |
/sys/.../events/in_tempY_raw_roc_falling_value |
Defined on file sysfs-bus-iio
Specifies the value of rate of change threshold that the device is comparing against for the events enabled by <type>[Y][_name]_roc[_rising|falling]_en.
If separate attributes exist for the two directions, but direction is not specified for this attribute, then a single threshold value applies to both directions. The raw or input element of the name indicates whether the value is in raw device units or in processed units (as _raw and _input do on sysfs direct channel read attributes).
/sys/.../events/in_accel_x_thresh_rising_hysteresis |
/sys/.../events/in_accel_x_thresh_falling_hysteresis |
/sys/.../events/in_accel_x_thresh_either_hysteresis |
/sys/.../events/in_accel_y_thresh_rising_hysteresis |
/sys/.../events/in_accel_y_thresh_falling_hysteresis |
/sys/.../events/in_accel_y_thresh_either_hysteresis |
/sys/.../events/in_accel_z_thresh_rising_hysteresis |
/sys/.../events/in_accel_z_thresh_falling_hysteresis |
/sys/.../events/in_accel_z_thresh_either_hysteresis |
/sys/.../events/in_anglvel_x_thresh_rising_hysteresis |
/sys/.../events/in_anglvel_x_thresh_falling_hysteresis |
/sys/.../events/in_anglvel_x_thresh_either_hysteresis |
/sys/.../events/in_anglvel_y_thresh_rising_hysteresis |
/sys/.../events/in_anglvel_y_thresh_falling_hysteresis |
/sys/.../events/in_anglvel_y_thresh_either_hysteresis |
/sys/.../events/in_anglvel_z_thresh_rising_hysteresis |
/sys/.../events/in_anglvel_z_thresh_falling_hysteresis |
/sys/.../events/in_anglvel_z_thresh_either_hysteresis |
/sys/.../events/in_magn_x_thresh_rising_hysteresis |
/sys/.../events/in_magn_x_thresh_falling_hysteresis |
/sys/.../events/in_magn_x_thresh_either_hysteresis |
/sys/.../events/in_magn_y_thresh_rising_hysteresis |
/sys/.../events/in_magn_y_thresh_falling_hysteresis |
/sys/.../events/in_magn_y_thresh_either_hysteresis |
/sys/.../events/in_magn_z_thresh_rising_hysteresis |
/sys/.../events/in_magn_z_thresh_falling_hysteresis |
/sys/.../events/in_magn_z_thresh_either_hysteresis |
/sys/.../events/in_rot_from_north_magnetic_thresh_rising_hysteresis |
/sys/.../events/in_rot_from_north_magnetic_thresh_falling_hysteresis |
/sys/.../events/in_rot_from_north_magnetic_thresh_either_hysteresis |
/sys/.../events/in_rot_from_north_true_thresh_rising_hysteresis |
/sys/.../events/in_rot_from_north_true_thresh_falling_hysteresis |
/sys/.../events/in_rot_from_north_true_thresh_either_hysteresis |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_hysteresis |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_hysteresis |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_either_hysteresis |
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_hysteresis |
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_hysteresis |
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_either_hysteresis |
/sys/.../events/in_voltageY_thresh_rising_hysteresis |
/sys/.../events/in_voltageY_thresh_falling_hysteresis |
/sys/.../events/in_voltageY_thresh_either_hysteresis |
/sys/.../events/in_tempY_thresh_rising_hysteresis |
/sys/.../events/in_tempY_thresh_falling_hysteresis |
/sys/.../events/in_tempY_thresh_either_hysteresis |
/sys/.../events/in_illuminance0_thresh_falling_hysteresis |
/sys/.../events/in_illuminance0_thresh_rising_hysteresis |
/sys/.../events/in_illuminance0_thresh_either_hysteresis |
/sys/.../events/in_proximity0_thresh_falling_hysteresis |
/sys/.../events/in_proximity0_thresh_rising_hysteresis |
/sys/.../events/in_proximity0_thresh_either_hysteresis |
Defined on file sysfs-bus-iio
Specifies the hysteresis of threshold that the device is comparing against for the events enabled by <type>Y[_name]_thresh[_(rising|falling)]_hysteresis. If separate attributes exist for the two directions, but direction is not specified for this attribute, then a single hysteresis value applies to both directions.
For falling events the hysteresis is added to the _value attribute for this event to get the upper threshold for when the event goes back to normal, for rising events the hysteresis is subtracted from the _value attribute. E.g. if in_voltage0_raw_thresh_rising_value is set to 1200 and in_voltage0_raw_thresh_rising_hysteresis is set to 50. The event will get activated once in_voltage0_raw goes above 1200 and will become deactivated again once the value falls below 1150.
/sys/.../events/in_accel_x_thresh_rising_period |
/sys/.../events/in_accel_x_thresh_falling_period |
/sys/.../events/in_accel_x_roc_rising_period |
/sys/.../events/in_accel_x_roc_falling_period |
/sys/.../events/in_accel_y_thresh_rising_period |
/sys/.../events/in_accel_y_thresh_falling_period |
/sys/.../events/in_accel_y_roc_rising_period |
/sys/.../events/in_accel_y_roc_falling_period |
/sys/.../events/in_accel_z_thresh_rising_period |
/sys/.../events/in_accel_z_thresh_falling_period |
/sys/.../events/in_accel_z_roc_rising_period |
/sys/.../events/in_accel_z_roc_falling_period |
/sys/.../events/in_anglvel_x_thresh_rising_period |
/sys/.../events/in_anglvel_x_thresh_falling_period |
/sys/.../events/in_anglvel_x_roc_rising_period |
/sys/.../events/in_anglvel_x_roc_falling_period |
/sys/.../events/in_anglvel_y_thresh_rising_period |
/sys/.../events/in_anglvel_y_thresh_falling_period |
/sys/.../events/in_anglvel_y_roc_rising_period |
/sys/.../events/in_anglvel_y_roc_falling_period |
/sys/.../events/in_anglvel_z_thresh_rising_period |
/sys/.../events/in_anglvel_z_thresh_falling_period |
/sys/.../events/in_anglvel_z_roc_rising_period |
/sys/.../events/in_anglvel_z_roc_falling_period |
/sys/.../events/in_magn_x_thresh_rising_period |
/sys/.../events/in_magn_x_thresh_falling_period |
/sys/.../events/in_magn_x_roc_rising_period |
/sys/.../events/in_magn_x_roc_falling_period |
/sys/.../events/in_magn_y_thresh_rising_period |
/sys/.../events/in_magn_y_thresh_falling_period |
/sys/.../events/in_magn_y_roc_rising_period |
/sys/.../events/in_magn_y_roc_falling_period |
/sys/.../events/in_magn_z_thresh_rising_period |
/sys/.../events/in_magn_z_thresh_falling_period |
/sys/.../events/in_magn_z_roc_rising_period |
/sys/.../events/in_magn_z_roc_falling_period |
/sys/.../events/in_rot_from_north_magnetic_thresh_rising_period |
/sys/.../events/in_rot_from_north_magnetic_thresh_falling_period |
/sys/.../events/in_rot_from_north_magnetic_roc_rising_period |
/sys/.../events/in_rot_from_north_magnetic_roc_falling_period |
/sys/.../events/in_rot_from_north_true_thresh_rising_period |
/sys/.../events/in_rot_from_north_true_thresh_falling_period |
/sys/.../events/in_rot_from_north_true_roc_rising_period |
/sys/.../events/in_rot_from_north_true_roc_falling_period |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_period |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_period |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_rising_period |
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_falling_period |
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_period |
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_period |
/sys/.../events/in_rot_from_north_true_tilt_comp_roc_rising_period |
/sys/.../events/in_rot_from_north_true_tilt_comp_roc_falling_period |
/sys/.../events/in_voltageY_supply_thresh_rising_period |
/sys/.../events/in_voltageY_supply_thresh_falling_period |
/sys/.../events/in_voltageY_supply_roc_rising_period |
/sys/.../events/in_voltageY_supply_roc_falling_period |
/sys/.../events/in_voltageY_thresh_rising_period |
/sys/.../events/in_voltageY_thresh_falling_period |
/sys/.../events/in_voltageY_roc_rising_period |
/sys/.../events/in_voltageY_roc_falling_period |
/sys/.../events/in_tempY_thresh_rising_period |
/sys/.../events/in_tempY_thresh_falling_period |
/sys/.../events/in_tempY_roc_rising_period |
/sys/.../events/in_tempY_roc_falling_period |
/sys/.../events/in_accel_x&y&z_mag_falling_period |
/sys/.../events/in_intensity0_thresh_period |
/sys/.../events/in_proximity0_thresh_period |
/sys/.../events/in_activity_still_thresh_rising_period |
/sys/.../events/in_activity_still_thresh_falling_period |
/sys/.../events/in_activity_walking_thresh_rising_period |
/sys/.../events/in_activity_walking_thresh_falling_period |
/sys/.../events/in_activity_jogging_thresh_rising_period |
/sys/.../events/in_activity_jogging_thresh_falling_period |
/sys/.../events/in_activity_running_thresh_rising_period |
/sys/.../events/in_activity_running_thresh_falling_period |
/sys/.../events/in_illuminance_thresh_either_period |
Defined on file sysfs-bus-iio
Period of time (in seconds) for which the condition must be met before an event is generated. If direction is not specified then this period applies to both directions.
/sys/.../events/in_activity_still_thresh_rising_en |
/sys/.../events/in_activity_still_thresh_falling_en |
/sys/.../events/in_activity_walking_thresh_rising_en |
/sys/.../events/in_activity_walking_thresh_falling_en |
/sys/.../events/in_activity_jogging_thresh_rising_en |
/sys/.../events/in_activity_jogging_thresh_falling_en |
/sys/.../events/in_activity_running_thresh_rising_en |
/sys/.../events/in_activity_running_thresh_falling_en |
Defined on file sysfs-bus-iio
Enables or disables activity events. Depending on direction an event is generated when sensor ENTERS or LEAVES a given state.
/sys/.../events/in_activity_still_thresh_rising_value |
/sys/.../events/in_activity_still_thresh_falling_value |
/sys/.../events/in_activity_walking_thresh_rising_value |
/sys/.../events/in_activity_walking_thresh_falling_value |
/sys/.../events/in_activity_jogging_thresh_rising_value |
/sys/.../events/in_activity_jogging_thresh_falling_value |
/sys/.../events/in_activity_running_thresh_rising_value |
/sys/.../events/in_activity_running_thresh_falling_value |
Defined on file sysfs-bus-iio
Confidence value (in units as percentage) to be used for deciding when an event should be generated. E.g for running: If the confidence value reported by the sensor is greater than in_activity_running_thresh_rising_value then the sensor ENTERS running state. Conversely, if the confidence value reported by the sensor is lower than in_activity_running_thresh_falling_value then the sensor is LEAVING running state.
/sys/.../events/in_capacitanceY_adaptive_thresh_rising_en |
/sys/.../events/in_capacitanceY_adaptive_thresh_falling_en |
Defined on file sysfs-bus-iio
Adaptive thresholds are similar to normal fixed thresholds but the value is expressed as an offset from a value which provides a low frequency approximation of the channel itself. Thus these detect if a rapid change occurs in the specified direction which crosses tracking value + offset. Tracking value calculation is devices specific.
/sys/.../events/in_illuminance0_threshY_hysteresis |
Defined on file sysfs-bus-iio-light-lm3533-als
Get the hysteresis for thresholds Y, that is, threshY_hysteresis = threshY_raising - threshY_falling
/sys/.../events/in_illuminance0_thresh_either_en |
Defined on file sysfs-bus-iio-light-lm3533-als
Event generated when channel passes one of the four thresholds in each direction (rising|falling) and a zone change occurs. The corresponding light zone can be read from in_illuminance0_zone.
/sys/.../events/in_proximity_thresh_either_runningcount |
Defined on file sysfs-bus-iio
Number of conditions that must occur, during a running period, before an event is generated.
/sys/.../events/in_proximity_thresh_either_runningperiod |
Defined on file sysfs-bus-iio
A running period of time (in seconds) for which in_proximity_thresh_either_runningcount amount of conditions must occur before an event is generated. If direction is not specified then this period applies to both directions.
/sys/.../events/in_steps_change_en |
Defined on file sysfs-bus-iio
Event generated when channel passes a threshold on the absolute change in value. E.g. for steps: a step change event is generated each time the user takes N steps, where N is set using in_steps_change_value.
/sys/.../events/in_steps_change_value |
Defined on file sysfs-bus-iio
Specifies the value of change threshold that the device is comparing against for the events enabled by <type>[Y][_name]_roc[_rising|falling|]_en. E.g. for steps: if set to 3, a step change event will be generated every 3 steps.
/sys/.../iio:deviceX/bufferY/in_accel_type |
/sys/.../iio:deviceX/bufferY/in_deltaangl_type |
/sys/.../iio:deviceX/bufferY/in_deltavelocity_type |
/sys/.../iio:deviceX/bufferY/in_anglvel_type |
/sys/.../iio:deviceX/bufferY/in_magn_type |
/sys/.../iio:deviceX/bufferY/in_incli_type |
/sys/.../iio:deviceX/bufferY/in_voltageY_type |
/sys/.../iio:deviceX/bufferY/in_voltage_type |
/sys/.../iio:deviceX/bufferY/in_voltageY_supply_type |
/sys/.../iio:deviceX/bufferY/in_voltageY_i_type |
/sys/.../iio:deviceX/bufferY/in_voltageY_q_type |
/sys/.../iio:deviceX/bufferY/in_voltage_i_type |
/sys/.../iio:deviceX/bufferY/in_voltage_q_type |
/sys/.../iio:deviceX/bufferY/in_timestamp_type |
/sys/.../iio:deviceX/bufferY/in_pressureY_type |
/sys/.../iio:deviceX/bufferY/in_pressure_type |
/sys/.../iio:deviceX/bufferY/in_rot_quaternion_type |
/sys/.../iio:deviceX/bufferY/in_proximity_type |
Defined on file sysfs-bus-iio
Description of the scan element data storage within the buffer and hence the form in which it is read from user-space. Form is [be|le]:[s|u]bits/storagebits[>>shift]. be or le specifies big or little endian. s or u specifies if signed (2’s complement) or unsigned. bits is the number of bits of data and storagebits is the space (after padding) that it occupies in the buffer. shift if specified, is the shift that needs to be applied prior to masking out unused bits. Some devices put their data in the middle of the transferred elements with additional information on both sides. Note that some devices will have additional information in the unused bits so to get a clean value, the bits value must be used to mask the buffer output value appropriately. The storagebits value also specifies the data alignment. So s48/64>>2 will be a signed 48 bit integer stored in a 64 bit location aligned to a 64 bit boundary. To obtain the clean value, shift right 2 and apply a mask to zero the top 16 bits of the result. For other storage combinations this attribute will be extended appropriately.
/sys/.../iio:deviceX/bufferY/in_accel_x_en |
/sys/.../iio:deviceX/bufferY/in_accel_y_en |
/sys/.../iio:deviceX/bufferY/in_accel_z_en |
/sys/.../iio:deviceX/bufferY/in_deltaangl_x_en |
/sys/.../iio:deviceX/bufferY/in_deltaangl_y_en |
/sys/.../iio:deviceX/bufferY/in_deltaangl_z_en |
/sys/.../iio:deviceX/bufferY/in_deltavelocity_x_en |
/sys/.../iio:deviceX/bufferY/in_deltavelocity_y_en |
/sys/.../iio:deviceX/bufferY/in_deltavelocity_z_en |
/sys/.../iio:deviceX/bufferY/in_anglvel_x_en |
/sys/.../iio:deviceX/bufferY/in_anglvel_y_en |
/sys/.../iio:deviceX/bufferY/in_anglvel_z_en |
/sys/.../iio:deviceX/bufferY/in_magn_x_en |
/sys/.../iio:deviceX/bufferY/in_magn_y_en |
/sys/.../iio:deviceX/bufferY/in_magn_z_en |
/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_en |
/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_en |
/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_en |
/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_en |
/sys/.../iio:deviceX/bufferY/in_timestamp_en |
/sys/.../iio:deviceX/bufferY/in_voltageY_supply_en |
/sys/.../iio:deviceX/bufferY/in_voltageY_en |
/sys/.../iio:deviceX/bufferY/in_voltageY-voltageZ_en |
/sys/.../iio:deviceX/bufferY/in_voltageY_i_en |
/sys/.../iio:deviceX/bufferY/in_voltageY_q_en |
/sys/.../iio:deviceX/bufferY/in_voltage_i_en |
/sys/.../iio:deviceX/bufferY/in_voltage_q_en |
/sys/.../iio:deviceX/bufferY/in_incli_x_en |
/sys/.../iio:deviceX/bufferY/in_incli_y_en |
/sys/.../iio:deviceX/bufferY/in_pressureY_en |
/sys/.../iio:deviceX/bufferY/in_pressure_en |
/sys/.../iio:deviceX/bufferY/in_rot_quaternion_en |
/sys/.../iio:deviceX/bufferY/in_proximity_en |
Defined on file sysfs-bus-iio
Scan element control for triggered data capture.
/sys/.../iio:deviceX/bufferY/in_voltageY_index |
/sys/.../iio:deviceX/bufferY/in_voltageY_supply_index |
/sys/.../iio:deviceX/bufferY/in_voltageY_i_index |
/sys/.../iio:deviceX/bufferY/in_voltageY_q_index |
/sys/.../iio:deviceX/bufferY/in_voltage_i_index |
/sys/.../iio:deviceX/bufferY/in_voltage_q_index |
/sys/.../iio:deviceX/bufferY/in_accel_x_index |
/sys/.../iio:deviceX/bufferY/in_accel_y_index |
/sys/.../iio:deviceX/bufferY/in_accel_z_index |
/sys/.../iio:deviceX/bufferY/in_deltaangl_x_index |
/sys/.../iio:deviceX/bufferY/in_deltaangl_y_index |
/sys/.../iio:deviceX/bufferY/in_deltaangl_z_index |
/sys/.../iio:deviceX/bufferY/in_deltavelocity_x_index |
/sys/.../iio:deviceX/bufferY/in_deltavelocity_y_index |
/sys/.../iio:deviceX/bufferY/in_deltavelocity_z_index |
/sys/.../iio:deviceX/bufferY/in_anglvel_x_index |
/sys/.../iio:deviceX/bufferY/in_anglvel_y_index |
/sys/.../iio:deviceX/bufferY/in_anglvel_z_index |
/sys/.../iio:deviceX/bufferY/in_magn_x_index |
/sys/.../iio:deviceX/bufferY/in_magn_y_index |
/sys/.../iio:deviceX/bufferY/in_magn_z_index |
/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_index |
/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_index |
/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_index |
/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_index |
/sys/.../iio:deviceX/bufferY/in_incli_x_index |
/sys/.../iio:deviceX/bufferY/in_incli_y_index |
/sys/.../iio:deviceX/bufferY/in_timestamp_index |
/sys/.../iio:deviceX/bufferY/in_pressureY_index |
/sys/.../iio:deviceX/bufferY/in_pressure_index |
/sys/.../iio:deviceX/bufferY/in_rot_quaternion_index |
/sys/.../iio:deviceX/bufferY/in_proximity_index |
Defined on file sysfs-bus-iio
A single positive integer specifying the position of this scan element in the buffer. Note these are not dependent on what is enabled and may not be contiguous. Thus for user-space to establish the full layout these must be used in conjunction with all _en attributes to establish which channels are present, and the relevant _type attributes to establish the data storage format.
/sys/.../iio:deviceX/events/in_accel_mag_en |
/sys/.../iio:deviceX/events/in_accel_mag_rising_en |
/sys/.../iio:deviceX/events/in_accel_mag_falling_en |
/sys/.../iio:deviceX/events/in_accel_x_mag_en |
/sys/.../iio:deviceX/events/in_accel_x_mag_rising_en |
/sys/.../iio:deviceX/events/in_accel_x_mag_falling_en |
/sys/.../iio:deviceX/events/in_accel_y_mag_en |
/sys/.../iio:deviceX/events/in_accel_y_mag_rising_en |
/sys/.../iio:deviceX/events/in_accel_y_mag_falling_en |
/sys/.../iio:deviceX/events/in_accel_z_mag_en |
/sys/.../iio:deviceX/events/in_accel_z_mag_rising_en |
/sys/.../iio:deviceX/events/in_accel_z_mag_falling_en |
/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_rising_en |
/sys/.../iio:deviceX/events/in_accel_x&y&z_mag_falling_en |
Defined on file sysfs-bus-iio
Similar to in_accel_x_thresh[_rising|_falling]_en, but here the magnitude of the channel is compared to the threshold, not its signed value.
/sys/.../iio:deviceX/events/in_accel_mag_referenced_en |
/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_en |
/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_en |
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_en |
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_en |
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_en |
Defined on file sysfs-bus-iio
Similar to in_accel_mag[_y][_rising|_falling]_en, but the event value is relative to a reference magnitude. The reference magnitude includes the graviational acceleration.
/sys/.../iio:deviceX/events/in_accel_mag_referenced_value |
/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_value |
/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_value |
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_value |
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_value |
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_value |
Defined on file sysfs-bus-iio
The value to which the reference magnitude of the channel is compared. If the axis is not specified, it applies to all channels of this type.
/sys/.../iio:deviceX/events/in_accel_x_roc_rising_en |
/sys/.../iio:deviceX/events/in_accel_x_roc_falling_en |
/sys/.../iio:deviceX/events/in_accel_y_roc_rising_en |
/sys/.../iio:deviceX/events/in_accel_y_roc_falling_en |
/sys/.../iio:deviceX/events/in_accel_z_roc_rising_en |
/sys/.../iio:deviceX/events/in_accel_z_roc_falling_en |
/sys/.../iio:deviceX/events/in_anglvel_x_roc_rising_en |
/sys/.../iio:deviceX/events/in_anglvel_x_roc_falling_en |
/sys/.../iio:deviceX/events/in_anglvel_y_roc_rising_en |
/sys/.../iio:deviceX/events/in_anglvel_y_roc_falling_en |
/sys/.../iio:deviceX/events/in_anglvel_z_roc_rising_en |
/sys/.../iio:deviceX/events/in_anglvel_z_roc_falling_en |
/sys/.../iio:deviceX/events/in_magn_x_roc_rising_en |
/sys/.../iio:deviceX/events/in_magn_x_roc_falling_en |
/sys/.../iio:deviceX/events/in_magn_y_roc_rising_en |
/sys/.../iio:deviceX/events/in_magn_y_roc_falling_en |
/sys/.../iio:deviceX/events/in_magn_z_roc_rising_en |
/sys/.../iio:deviceX/events/in_magn_z_roc_falling_en |
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_rising_en |
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_falling_en |
/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_rising_en |
/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_falling_en |
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_rising_en |
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_falling_en |
/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_rising_en |
/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_falling_en |
/sys/.../iio:deviceX/events/in_voltageY_supply_roc_rising_en |
/sys/.../iio:deviceX/events/in_voltageY_supply_roc_falling_en |
/sys/.../iio:deviceX/events/in_voltageY_roc_rising_en |
/sys/.../iio:deviceX/events/in_voltageY_roc_falling_en |
/sys/.../iio:deviceX/events/in_tempY_roc_rising_en |
/sys/.../iio:deviceX/events/in_tempY_roc_falling_en |
Defined on file sysfs-bus-iio
Event generated when channel passes a threshold on the rate of change (1st differential) in the specified (_rising|_falling) direction. If the direction is not specified, then either the device will report an event which ever direction a single threshold value is passed in (e.g. <type>[Y][_name]_<raw|input>_roc_value) or <type>[Y][_name]_<raw|input>_roc_rising_value and <type>[Y][_name]_<raw|input>_roc_falling_value may take different values, but the device can only enable both rate of change thresholds or neither.
Note the driver will assume the last p events requested are to be enabled where p is however many it supports (which may vary depending on the exact set requested. So if you want to be sure you have set what you think you have, check the contents of these attributes after everything is configured. Drivers may have to buffer any parameters so that they are consistent when a given event type is enabled a future point (and not those for whatever event was previously enabled).
/sys/.../iio:deviceX/events/in_accel_x_thresh_rising_en |
/sys/.../iio:deviceX/events/in_accel_x_thresh_falling_en |
/sys/.../iio:deviceX/events/in_accel_y_thresh_rising_en |
/sys/.../iio:deviceX/events/in_accel_y_thresh_falling_en |
/sys/.../iio:deviceX/events/in_accel_z_thresh_rising_en |
/sys/.../iio:deviceX/events/in_accel_z_thresh_falling_en |
/sys/.../iio:deviceX/events/in_anglvel_x_thresh_rising_en |
/sys/.../iio:deviceX/events/in_anglvel_x_thresh_falling_en |
/sys/.../iio:deviceX/events/in_anglvel_y_thresh_rising_en |
/sys/.../iio:deviceX/events/in_anglvel_y_thresh_falling_en |
/sys/.../iio:deviceX/events/in_anglvel_z_thresh_rising_en |
/sys/.../iio:deviceX/events/in_anglvel_z_thresh_falling_en |
/sys/.../iio:deviceX/events/in_magn_x_thresh_rising_en |
/sys/.../iio:deviceX/events/in_magn_x_thresh_falling_en |
/sys/.../iio:deviceX/events/in_magn_y_thresh_rising_en |
/sys/.../iio:deviceX/events/in_magn_y_thresh_falling_en |
/sys/.../iio:deviceX/events/in_magn_z_thresh_rising_en |
/sys/.../iio:deviceX/events/in_magn_z_thresh_falling_en |
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_rising_en |
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_falling_en |
/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_rising_en |
/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_falling_en |
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_en |
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_en |
/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_rising_en |
/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_falling_en |
/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_rising_en |
/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_falling_en |
/sys/.../iio:deviceX/events/in_voltageY_thresh_rising_en |
/sys/.../iio:deviceX/events/in_voltageY_thresh_falling_en |
/sys/.../iio:deviceX/events/in_voltageY_thresh_either_en |
/sys/.../iio:deviceX/events/in_tempY_thresh_rising_en |
/sys/.../iio:deviceX/events/in_tempY_thresh_falling_en |
/sys/.../iio:deviceX/events/in_capacitanceY_thresh_rising_en |
/sys/.../iio:deviceX/events/in_capacitanceY_thresh_falling_en |
Defined on file sysfs-bus-iio
Event generated when channel passes a threshold in the specified (_rising|_falling) direction. If the direction is not specified, then either the device will report an event which ever direction a single threshold value is passed in (e.g. <type>[Y][_name]_<raw|input>_thresh_value) or <type>[Y][_name]_<raw|input>_thresh_rising_value and <type>[Y][_name]_<raw|input>_thresh_falling_value may take different values, but the device can only enable both thresholds or neither.
Note the driver will assume the last p events requested are to be enabled where p is how many it supports (which may vary depending on the exact set requested. So if you want to be sure you have set what you think you have, check the contents of these attributes after everything is configured. Drivers may have to buffer any parameters so that they are consistent when a given event type is enabled at a future point (and not those for whatever event was previously enabled).
/sys/.../iio:deviceX/in_accelX_power_mode |
Defined on file sysfs-bus-iio
Specifies the chip power mode. low_noise: reduce noise level from ADC, low_power: enable low current consumption. For a list of available output power modes read in_accel_power_mode_available.
/sys/.../iio:deviceX/in_activity_still_input |
/sys/.../iio:deviceX/in_activity_walking_input |
/sys/.../iio:deviceX/in_activity_jogging_input |
/sys/.../iio:deviceX/in_activity_running_input |
Defined on file sysfs-bus-iio
This attribute is used to read the confidence for an activity expressed in units as percentage.
/sys/.../iio:deviceX/in_anglvel_z_quadrature_correction_raw |
Defined on file sysfs-bus-iio
This attribute is used to read the amount of quadrature error present in the device at a given time.
/sys/.../iio:deviceX/in_attention_input |
Defined on file sysfs-bus-iio
Value representing the user’s attention to the system expressed in units as percentage. This usually means if the user is looking at the screen or not.
/sys/.../iio:deviceX/in_capacitableY_calibbias_calibration |
/sys/.../iio:deviceX/in_capacitableY_calibscale_calibration |
Defined on file sysfs-bus-iio-cdc-ad7746
Write 1 to trigger a calibration of the calibbias or calibscale. For calibscale, a full scale capacitance should be connected to the capacitance input and a calibscale_calibration then started. For calibbias see the device datasheet section on “capacitive system offset calibration”.
/sys/.../iio:deviceX/in_capacitanceY-capacitanceZ_raw |
Defined on file sysfs-bus-iio
Raw differential capacitance measurement equivalent to channel Y - channel Z where these channel numbers apply to the physically equivalent inputs when non differential readings are separately available. In differential only parts, then all that is required is a consistent labeling. Units after application of scale and offset are nanofarads.
/sys/.../iio:deviceX/in_capacitanceY-capacitanceZ_zeropoint |
Defined on file sysfs-bus-iio
For differential channels, this an offset that is applied equally to both inputs. As the reading is of the difference between the two inputs, this should not be applied to the _raw reading by userspace (unlike _offset) and unlike calibbias it does not affect the differential value measured because the effect of _zeropoint cancels out across the two inputs that make up the differential pair. It’s purpose is to bring the individual signals, before the differential is measured, within the measurement range of the device. The naming is chosen because if the separate inputs that make the differential pair are drawn on a graph in their _raw units, this is the value that the zero point on the measurement axis represents. It is expressed with the same scaling as _raw.
/sys/.../iio:deviceX/in_distance_input |
/sys/.../iio:deviceX/in_distance_raw |
Defined on file sysfs-bus-iio
This attribute is used to read the measured distance to an object or the distance covered by the user since the last reboot while activated. Units after application of scale are meters.
/sys/.../iio:deviceX/in_energy_en |
/sys/.../iio:deviceX/in_distance_en |
/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_en |
/sys/.../iio:deviceX/in_steps_en |
Defined on file sysfs-bus-iio
Activates a device feature that runs in firmware/hardware. E.g. for steps: the pedometer saves power while not used; when activated, it will count the steps taken by the user in firmware and export them through in_steps_input.
/sys/.../iio:deviceX/in_energy_input |
/sys/.../iio:deviceX/in_energy_raw |
Defined on file sysfs-bus-iio
This attribute is used to read the energy value reported by the device (e.g.: human activity sensors report energy burnt by the user). Units after application of scale are Joules.
/sys/.../iio:deviceX/in_illuminance_input |
/sys/.../iio:deviceX/in_illuminance_raw |
/sys/.../iio:deviceX/in_illuminanceY_input |
/sys/.../iio:deviceX/in_illuminanceY_raw |
/sys/.../iio:deviceX/in_illuminanceY_mean_raw |
/sys/.../iio:deviceX/in_illuminance_ir_raw |
/sys/.../iio:deviceX/in_illuminance_clear_raw |
Defined on file sysfs-bus-iio
Illuminance measurement, units after application of scale and offset are lux.
/sys/.../iio:deviceX/in_intensityY_raw |
/sys/.../iio:deviceX/in_intensityY_ir_raw |
/sys/.../iio:deviceX/in_intensityY_both_raw |
/sys/.../iio:deviceX/in_intensityY_uv_raw |
/sys/.../iio:deviceX/in_intensityY_uva_raw |
/sys/.../iio:deviceX/in_intensityY_uvb_raw |
/sys/.../iio:deviceX/in_intensityY_duv_raw |
Defined on file sysfs-bus-iio
Unit-less light intensity. Modifiers both and ir indicate that measurements contain visible and infrared light components or just infrared light, respectively. Modifier uv indicates that measurements contain ultraviolet light components. Modifiers uva, uvb and duv indicate that measurements contain A, B or deep (C) ultraviolet light components respectively.
/sys/.../iio:deviceX/in_intensity_integration_time |
/sys/.../iio:deviceX/in_intensity_red_integration_time |
/sys/.../iio:deviceX/in_intensity_green_integration_time |
/sys/.../iio:deviceX/in_intensity_blue_integration_time |
/sys/.../iio:deviceX/in_intensity_clear_integration_time |
/sys/.../iio:deviceX/in_illuminance_integration_time |
Defined on file sysfs-bus-iio
This attribute is used to get/set the integration time in seconds. If shared across all channels of a given type, <type>_integration_time is used.
/sys/.../iio:deviceX/in_proximity_raw |
/sys/.../iio:deviceX/in_proximity_input |
/sys/.../iio:deviceX/in_proximityY_raw |
Defined on file sysfs-bus-iio
Proximity measurement indicating that some object is near the sensor, usually by observing reflectivity of infrared or ultrasound emitted.
Often these sensors are unit less and as such conversion to SI units is not possible. Higher proximity measurements indicate closer objects, and vice versa. Units after application of scale and offset are meters.
/sys/.../iio:deviceX/in_shunt_resistor |
/sys/.../iio:deviceX/in_current_shunt_resistor |
/sys/.../iio:deviceX/in_power_shunt_resistor |
Defined on file sysfs-bus-iio
The value of current sense resistor in Ohms.
/sys/.../iio:deviceX/in_steps_debounce_count |
Defined on file sysfs-bus-iio
Specifies the number of steps that must occur within in_steps_filter_debounce_time for the pedometer to decide the consumer is making steps.
/sys/.../iio:deviceX/in_steps_debounce_time |
Defined on file sysfs-bus-iio
Specifies number of seconds in which we compute the steps that occur in order to decide if the consumer is making steps.
/sys/.../iio:deviceX/in_steps_input |
Defined on file sysfs-bus-iio
This attribute is used to read the number of steps taken by the user since the last reboot while activated.
/sys/.../iio:deviceX/in_uvindex_input |
Defined on file sysfs-bus-iio
UV light intensity index measuring the human skin’s response to different wavelength of sunlight weighted according to the standardised CIE Erythemal Action Spectrum. UV index values range from 0 (low) to >=11 (extreme).
/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_input |
/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_raw |
Defined on file sysfs-bus-iio
This attribute is used to read the current speed value of the user (which is the norm or magnitude of the velocity vector). Units after application of scale are m/s.
/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_integration_time |
Defined on file sysfs-bus-iio
Number of seconds in which to compute speed.
/sys/.../iio:deviceX/out_voltageY_powerdown_mode_available |
/sys/.../iio:deviceX/out_voltage_powerdown_mode_available |
/sys/.../iio:deviceX/out_altvoltageY_powerdown_mode_available |
/sys/.../iio:deviceX/out_altvoltage_powerdown_mode_available |
Defined on file sysfs-bus-iio
Lists all available output power down modes. If Y is not present the mode is shared across all outputs.
/sys/.../iio:deviceX/scan_elements/in_accel_type_available |
Defined on file sysfs-bus-iio
If the type parameter can take one of a small set of values, this attribute lists them.
/sys/.../in_accel_filter_high_pass_3db_frequency |
/sys/.../in_anglvel_filter_high_pass_3db_frequency |
/sys/.../in_magn_filter_high_pass_3db_frequency |
Defined on file sysfs-bus-iio
If a known or controllable high pass filter is applied to the underlying data channel, then this parameter gives the 3dB frequency of the filter in Hz.
/sys/.../in_accel_filter_low_pass_3db_frequency |
/sys/.../in_magn_filter_low_pass_3db_frequency |
/sys/.../in_anglvel_filter_low_pass_3db_frequency |
Defined on file sysfs-bus-iio
If a known or controllable low pass filter is applied to the underlying data channel, then this parameter gives the 3dB frequency of the filter in Hz.
/sys/.../in_capacitanceY_adaptive_thresh_rising_timeout |
/sys/.../in_capacitanceY_adaptive_thresh_falling_timeout |
Defined on file sysfs-bus-iio
When adaptive thresholds are used, the tracking signal may adjust too slowly to step changes in the raw signal. Thus these specify the time in seconds for which the difference between the slow tracking signal and the raw signal is allowed to remain out-of-range before a reset event occurs in which the tracking signal is made equal to the raw signal, allowing slow tracking to resume and the adaptive threshold event detection to function as expected.
/sys/.../mdev_supported_types/<type-id>/available_instances |
Defined on file sysfs-bus-vfio-mdev
Reading this attribute will show the number of mediated devices of type <type-id> that can be created. This is a readonly file.
Users:
Userspace applications interested in creating mediated device of that type. Userspace application should check the number of available instances could be created before creating mediated device of this type.
/sys/.../mdev_supported_types/<type-id>/create |
Defined on file sysfs-bus-vfio-mdev
Writing UUID to this file will create mediated device of type <type-id> for parent device <device>. This is a write-only file. For example:
# echo "83b8f4f2-509f-382f-3c1e-e6bfe0fa1001" > \
/sys/devices/foo/mdev_supported_types/foo-1/create
/sys/.../mdev_supported_types/<type-id>/description |
Defined on file sysfs-bus-vfio-mdev
Reading this attribute will show description of the type of mediated device that will get created of type <type-id>. This is optional attribute. For example: “2 heads, 512M FB, 2560x1600 maximum resolution”
Users:
Userspace applications interested in knowing the details of a particular <type-id> that can help in understanding the features provided by that type of mediated device.
/sys/.../mdev_supported_types/<type-id>/device_api |
Defined on file sysfs-bus-vfio-mdev
Reading this attribute will show VFIO device API supported by this type. For example, “vfio-pci” for a PCI device, “vfio-platform” for platform device.
/sys/.../mdev_supported_types/<type-id>/devices/ |
Defined on file sysfs-bus-vfio-mdev
This directory contains symbolic links pointing to mdev devices sysfs entries which are created of this <type-id>.
/sys/.../mdev_supported_types/<type-id>/name |
Defined on file sysfs-bus-vfio-mdev
Reading this attribute will show human readable name of the mediated device that will get created of type <type-id>. This is optional attribute. For example: “Grid M60-0Q”
Users:
Userspace applications interested in knowing the name of a particular <type-id> that can help in understanding the type of mediated device.
/sys/.../uevent |
Defined on file sysfs-uevent
Enable passing additional variables for synthetic uevents that are generated by writing /sys/.../uevent file.
Recognized extended format is:
ACTION [UUID [KEY=VALUE ...]
The ACTION is compulsory - it is the name of the uevent
action (add
, change
, remove
). There is no change
compared to previous functionality here. The rest of the
extended format is optional.
You need to pass UUID first before any KEY=VALUE pairs.
The UUID must be in xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
format where ‘x’ is a hex digit. The UUID is considered to be
a transaction identifier so it’s possible to use the same UUID
value for one or more synthetic uevents in which case we
logically group these uevents together for any userspace
listeners. The UUID value appears in uevent as
SYNTH_UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
environment
variable.
If UUID is not passed in, the generated synthetic uevent gains
SYNTH_UUID=0
environment variable automatically.
The KEY=VALUE pairs can contain alphanumeric characters only.
It’s possible to define zero or more pairs - each pair is then
delimited by a space character ‘ ‘. Each pair appears in
synthetic uevent as SYNTH_ARG_KEY=VALUE
. That means the KEY
name gains SYNTH_ARG_
prefix to avoid possible collisions
with existing variables.
Example of valid sequence written to the uevent file:
add fe4d7c9d-b8c6-4a70-9ef1-3d8a58d18eed A=1 B=abc
This generates synthetic uevent including these variables:
ACTION=add
SYNTH_ARG_A=1
SYNTH_ARG_B=abc
SYNTH_UUID=fe4d7c9d-b8c6-4a70-9ef1-3d8a58d18eed
Users:
udev, userspace tools generating synthetic uevents
Symbols under /sys/block¶
/sys/block/*/device/cdl_enable |
Defined on file sysfs-block-device
(RW) For a device supporting the command duration limits feature, write to the file to turn on or off the feature. By default this feature is turned off. Writing “1” to this file enables the use of command duration limits for read and write commands in the kernel and turns on the feature on the device. Writing “0” disables the feature.
/sys/block/*/device/cdl_supported |
Defined on file sysfs-block-device
(RO) Indicates if the device supports the command duration limits feature found in some ATA and SCSI devices.
/sys/block/*/device/ncq_prio_enable |
Defined on file sysfs-block-device
(RW) Write to the file to turn on or off the SATA NCQ (native command queueing) priority support. By default this feature is turned off. If the device does not support the SATA NCQ priority feature, writing “1” to this file results in an error (see ncq_prio_supported).
/sys/block/*/device/ncq_prio_supported |
Defined on file sysfs-block-device
(RO) Indicates if the device supports the SATA NCQ (native command queueing) priority feature.
/sys/block/*/device/sas_ncq_prio_enable |
Defined on file sysfs-block-device
(RW) This is the equivalent of the ncq_prio_enable attribute file for SATA devices connected to a SAS host-bus-adapter (HBA) implementing support for the SATA NCQ priority feature. This file does not exist if the HBA driver does not implement support for the SATA NCQ priority feature, regardless of the device support for this feature (see sas_ncq_prio_supported).
/sys/block/*/device/sas_ncq_prio_supported |
Defined on file sysfs-block-device
(RO) This is the equivalent of the ncq_prio_supported attribute file for SATA devices connected to a SAS host-bus-adapter (HBA) implementing support for the SATA NCQ priority feature. This file does not exist if the HBA driver does not implement support for the SATA NCQ priority feature, regardless of the device support for this feature.
/sys/block/*/device/sw_activity |
Defined on file sysfs-block-device
(RW) Used by drivers which support software controlled activity LEDs.
It has the following valid values:
0 |
OFF - the LED is not activated on activity |
1 |
BLINK_ON - the LED blinks on every 10ms when activity is detected. |
2 |
BLINK_OFF - the LED is on when idle, and blinks off every 10ms when activity is detected. |
Note that the user must turn sw_activity OFF it they wish to control the activity LED via the em_message file.
/sys/block/*/device/unload_heads |
Defined on file sysfs-block-device
(RW) Hard disk shock protection
Writing an integer value to this file will take the heads of the respective drive off the platter and block all I/O operations for the specified number of milliseconds.
If the device does not support the unload heads feature, access is denied with -EOPNOTSUPP.
The maximal value accepted for a timeout is 30000 milliseconds.
A previously set timeout can be cancelled and disk can resume normal operation immediately by specifying a timeout of 0.
Some hard drives only comply with an earlier version of the ATA standard, but support the unload feature nonetheless. There is no safe way Linux can detect these devices, so this is not enabled by default. If it is known that your device does support the unload feature, then you can tell the kernel to enable it by writing -1. It can be disabled again by writing -2.
Values below -2 are rejected with -EINVAL
For more information, see Hard disk shock protection
/sys/block/<device>/iosched/target_latency |
Defined on file sysfs-cfq-target-latency
The /sys/block/<device>/iosched/target_latency only exists when the user sets cfq to /sys/block/<device>/scheduler. It contains an estimated latency time for the cfq. cfq will use it to calculate the time slice used for every task.
/sys/block/<disk>/bcache/btree_cache_size |
Defined on file sysfs-block-bcache
Number of btree buckets/nodes that are currently cached in memory; cache dynamically grows and shrinks in response to memory pressure from the rest of the system.
/sys/block/<disk>/bcache/btree_written |
Defined on file sysfs-block-bcache
For a cache, sum of all btree writes in human readable units.
/sys/block/<disk>/bcache/bucket_size |
Defined on file sysfs-block-bcache
For a cache, bucket size in human readable units, as set at cache creation time; should match the erase block size of the SSD for optimal performance.
/sys/block/<disk>/bcache/bypassed |
Defined on file sysfs-block-bcache
Sum of all reads and writes that have bypassed the cache (due to the sequential cutoff). Expressed as bytes in human readable units.
/sys/block/<disk>/bcache/cache |
Defined on file sysfs-block-bcache
For a backing device that has cache, a symlink to the bcache/ dir of that cache.
/sys/block/<disk>/bcache/cache_hit_ratio |
Defined on file sysfs-block-bcache
For backing devices: cache hits as a percentage.
/sys/block/<disk>/bcache/cache_hits |
Defined on file sysfs-block-bcache
For backing devices: integer number of full cache hits, counted per bio. A partial cache hit counts as a miss.
/sys/block/<disk>/bcache/cache_misses |
Defined on file sysfs-block-bcache
For backing devices: integer number of cache misses.
/sys/block/<disk>/bcache/clear_stats |
Defined on file sysfs-block-bcache
Writing to this file resets all the statistics for the device.
/sys/block/<disk>/bcache/discard |
Defined on file sysfs-block-bcache
For a cache, a boolean allowing discard/TRIM to be turned off or back on if the device supports it.
/sys/block/<disk>/bcache/nbuckets |
Defined on file sysfs-block-bcache
For a cache, the number of usable buckets.
/sys/block/<disk>/bcache/sequential_cutoff |
Defined on file sysfs-block-bcache
For backing devices: Threshold past which sequential IO will skip the cache. Read and written as bytes in human readable units (i.e. echo 10M > sequntial_cutoff).
/sys/block/<disk>/bcache/synchronous |
Defined on file sysfs-block-bcache
For a cache, a boolean that allows synchronous mode to be switched on and off. In synchronous mode all writes are ordered such that the cache can reliably recover from unclean shutdown; if disabled bcache will not generally wait for writes to complete but if the cache is not shut down cleanly all data will be discarded from the cache. Should not be turned off with writeback caching enabled.
/sys/block/<disk>/bcache/tree_depth |
Defined on file sysfs-block-bcache
For a cache, height of the btree excluding leaf nodes (i.e. a one node tree will have a depth of 0).
/sys/block/<disk>/bcache/unregister |
Defined on file sysfs-block-bcache
A write to this file causes the backing device or cache to be unregistered. If a backing device had dirty data in the cache, writeback mode is automatically disabled and all dirty data is flushed before the device is unregistered. Caches unregister all associated backing devices before unregistering themselves.
/sys/block/<disk>/bcache/writeback |
Defined on file sysfs-block-bcache
For backing devices: When on, writeback caching is enabled and writes will be buffered in the cache. When off, caching is in writethrough mode; reads and writes will be added to the cache but no write buffering will take place.
/sys/block/<disk>/bcache/writeback_delay |
Defined on file sysfs-block-bcache
For backing devices: In writeback mode, when dirty data is written to the cache and the cache held no dirty data for that backing device, writeback from cache to backing device starts after this delay, expressed as an integer number of seconds.
/sys/block/<disk>/bcache/writeback_percent |
Defined on file sysfs-block-bcache
For backing devices: If nonzero, writeback from cache to backing device only takes place when more than this percentage of the cache is used, allowing more write coalescing to take place and reducing total number of writes sent to the backing device. Integer between 0 and 40.
/sys/block/<disk>/bcache/writeback_running |
Defined on file sysfs-block-bcache
For backing devices: when off, dirty data will not be written from the cache to the backing device. The cache will still be used to buffer writes until it is mostly full, at which point writes transparently revert to writethrough mode. Intended only for benchmarking/testing.
/sys/block/<disk>/bcache/written |
Defined on file sysfs-block-bcache
For a cache, total amount of data in human readable units written to the cache, excluding all metadata.
/sys/block/dm-<num>/dm/name |
Defined on file sysfs-block-dm
Device-mapper device name. Read-only string containing mapped device name.
Users: util-linux, device-mapper udev rules
/sys/block/dm-<num>/dm/rq_based_seq_io_merge_deadline |
Defined on file sysfs-block-dm
Allow control over how long a request that is a reasonable merge candidate can be queued on the request queue. The resolution of this deadline is in microseconds (ranging from 1 to 100000 usecs). Setting this attribute to 0 (the default) will disable request-based DM’s merge heuristic and associated extra accounting. This attribute is not applicable to bio-based DM devices so it will only ever report 0 for them.
/sys/block/dm-<num>/dm/suspended |
Defined on file sysfs-block-dm
Device-mapper device suspend state. Contains the value 1 while the device is suspended. Otherwise it contains 0. Read-only attribute.
Users: util-linux, device-mapper udev rules
/sys/block/dm-<num>/dm/use_blk_mq |
Defined on file sysfs-block-dm
Request-based Device-mapper blk-mq I/O path mode. Contains the value 1 if the device is using blk-mq. Otherwise it contains 0. Read-only attribute.
/sys/block/dm-<num>/dm/uuid |
Defined on file sysfs-block-dm
Device-mapper device UUID. Read-only string containing DM-UUID or empty string if DM-UUID is not set.
Users: util-linux, device-mapper udev rules
/sys/block/etherd*/firmware-version |
Defined on file sysfs-block-aoe
(RO) Version of the firmware in the target.
/sys/block/etherd*/mac |
Defined on file sysfs-block-aoe
(RO) The ethernet address of the remote Ata over Ethernet (AoE) device.
/sys/block/etherd*/netif |
Defined on file sysfs-block-aoe
(RO) The names of the network interfaces on the localhost (comma separated) through which we are communicating with the remote AoE device.
/sys/block/etherd*/payload |
Defined on file sysfs-block-aoe
(RO) The amount of user data transferred (in bytes) inside each AoE command on the network, network headers excluded.
/sys/block/etherd*/state |
Defined on file sysfs-block-aoe
(RO) Device status. The state attribute is “up” when the device is ready for I/O and “down” if detected but unusable. The “down,closewait” state shows that the device is still open and cannot come up again until it has been closed. The “up,kickme” state means that the driver wants to send more commands to the target but found out there were already the max number of commands waiting for a response. It will retry again after being kicked by the periodic timer handler routine.
/sys/block/loopX/loop/autoclear |
Defined on file sysfs-block-loop
(RO) Shows if the device is in autoclear mode or not ( “1” or “0”). Autoclear (if set) indicates that the loopback device will self-distruct after last close.
/sys/block/loopX/loop/backing_file |
Defined on file sysfs-block-loop
(RO) The path of the backing file that the loop device maps its data blocks to.
/sys/block/loopX/loop/dio |
Defined on file sysfs-block-loop
(RO) Shows if direct IO is being used to access backing file or not (“1 or “0”).
/sys/block/loopX/loop/offset |
Defined on file sysfs-block-loop
(RO) Start offset (in bytes).
/sys/block/loopX/loop/partscan |
Defined on file sysfs-block-loop
(RO) Shows if automatic partition scanning is enabled for the device or not (“1” or “0”). This can be requested individually per loop device during its setup by setting LO_FLAGS_PARTSCAN in in the ioctl request. By default, no partition tables are scanned.
/sys/block/loopX/loop/sizelimit |
Defined on file sysfs-block-loop
(RO) The size (in bytes) that the block device maps, starting from the offset.
/sys/block/rnbd<N>/rnbd/access_mode |
Defined on file sysfs-block-rnbd
Contains the device access mode: ro, rw or migration.
/sys/block/rnbd<N>/rnbd/mapping_path |
Defined on file sysfs-block-rnbd
Contains the path that was passed as “device_path” to the map_device operation.
/sys/block/rnbd<N>/rnbd/nr_poll_queues |
Defined on file sysfs-block-rnbd
Contains the number of poll-mode queues
/sys/block/rnbd<N>/rnbd/remap_device |
Defined on file sysfs-block-rnbd
Remap the disconnected device if the session is not destroyed yet.
/sys/block/rnbd<N>/rnbd/resize |
Defined on file sysfs-block-rnbd
Write the number of sectors to change the size of the disk.
/sys/block/rnbd<N>/rnbd/session |
Defined on file sysfs-block-rnbd
RNBD uses RTRS session to transport the data between client and server. The entry “session” contains the name of the session, that was used to establish the RTRS session. It’s the same name that was passed as server parameter to the map_device entry.
/sys/block/rnbd<N>/rnbd/state |
Defined on file sysfs-block-rnbd
The file contains the current state of the block device. The state file returns “open” when the device is successfully mapped from the server and accepting I/O requests. When the connection to the server gets disconnected in case of an error (e.g. link failure), the state file returns “closed” and all I/O requests submitted to it will fail with -EIO.
/sys/block/rnbd<N>/rnbd/unmap_device |
Defined on file sysfs-block-rnbd
To unmap a volume, “normal” or “force” has to be written to: /sys/block/rnbd<N>/rnbd/unmap_device
When “normal” is used, the operation will fail with EBUSY if any process is using the device. When “force” is used, the device is also unmapped when device is in use. All I/Os that are in progress will fail.
Example:
# echo "normal" > /sys/block/rnbd0/rnbd/unmap_device
/sys/block/rssd*/status |
Defined on file sysfs-block-rssd
This is a read-only file. Indicates the status of the device.
/sys/block/zram<id>/algorithm_params |
Defined on file sysfs-block-zram
The algorithm_params file is write-only and is used to setup compression algorithm parameters.
/sys/block/zram<id>/backing_dev |
Defined on file sysfs-block-zram
The backing_dev file is read-write and set up backing device for zram to write incompressible pages. For using, user should enable CONFIG_ZRAM_WRITEBACK.
/sys/block/zram<id>/bd_stat |
Defined on file sysfs-block-zram
The bd_stat file is read-only and represents backing device’s statistics (bd_count, bd_reads, bd_writes) in a format similar to block layer statistics file format.
/sys/block/zram<id>/comp_algorithm |
Defined on file sysfs-block-zram
The comp_algorithm file is read-write and lets to show available and selected compression algorithms, change compression algorithm selection.
/sys/block/zram<id>/compact |
Defined on file sysfs-block-zram
The compact file is write-only and trigger compaction for allocator zrm uses. The allocator moves some objects so that it could free fragment space.
/sys/block/zram<id>/debug_stat |
Defined on file sysfs-block-zram
The debug_stat file is read-only and represents various device’s debugging info useful for kernel developers. Its format is not documented intentionally and may change anytime without any notice.
/sys/block/zram<id>/disksize |
Defined on file sysfs-block-zram
The disksize file is read-write and specifies the disk size which represents the limit on the uncompressed worth of data that can be stored in this disk. Unit: bytes
/sys/block/zram<id>/idle |
Defined on file sysfs-block-zram
idle file is write-only and mark zram slot as idle. If system has mounted debugfs, user can see which slots are idle via /sys/kernel/debug/zram/zram<id>/block_state
/sys/block/zram<id>/initstate |
Defined on file sysfs-block-zram
The initstate file is read-only and shows the initialization state of the device.
/sys/block/zram<id>/io_stat |
Defined on file sysfs-block-zram
The io_stat file is read-only and accumulates device’s I/O statistics not accounted by block layer. For example, failed_reads, failed_writes, etc. File format is similar to block layer statistics file format.
/sys/block/zram<id>/max_comp_streams |
Defined on file sysfs-block-zram
The max_comp_streams file is read-write and specifies the number of backend’s zcomp_strm compression streams (number of concurrent compress operations).
/sys/block/zram<id>/mem_limit |
Defined on file sysfs-block-zram
The mem_limit file is write-only and specifies the maximum amount of memory ZRAM can use to store the compressed data. The limit could be changed in run time and “0” means disable the limit. No limit is the initial state. Unit: bytes
/sys/block/zram<id>/mem_used_max |
Defined on file sysfs-block-zram
The mem_used_max file is write-only and is used to reset the counter of maximum memory zram have consumed to store compressed data. For resetting the value, you should write “0”. Otherwise, you could see -EINVAL. Unit: bytes
/sys/block/zram<id>/mm_stat |
Defined on file sysfs-block-zram
The mm_stat file is read-only and represents device’s mm statistics (orig_data_size, compr_data_size, etc.) in a format similar to block layer statistics file format.
/sys/block/zram<id>/recomp_algorithm |
Defined on file sysfs-block-zram
The recomp_algorithm file is read-write and allows to set or show secondary compression algorithms.
/sys/block/zram<id>/recompress |
Defined on file sysfs-block-zram
The recompress file is write-only and triggers re-compression with secondary compression algorithms.
/sys/block/zram<id>/reset |
Defined on file sysfs-block-zram
The reset file is write-only and allows resetting the device. The reset operation frees all the memory associated with this device.
/sys/block/zram<id>/writeback |
Defined on file sysfs-block-zram
The writeback file is write-only and trigger idle and/or huge page writeback to backing device.
/sys/block/zram<id>/writeback_limit |
Defined on file sysfs-block-zram
The writeback_limit file is read-write and specifies the maximum amount of writeback ZRAM can do. The limit could be changed in run time.
/sys/block/zram<id>/writeback_limit_enable |
Defined on file sysfs-block-zram
The writeback_limit_enable file is read-write and specifies eanbe of writeback_limit feature. “1” means eable the feature. No limit “0” is the initial state.
Symbols under /sys/bus¶
/sys/bus/*/drivers/ufshcd/*/auto_hibern8 |
Defined on file sysfs-driver-ufs
This file contains the auto-hibernate idle timer setting of a UFS host controller. A value of ‘0’ means auto-hibernate is not enabled. Otherwise the value is the number of microseconds of idle time before the UFS host controller will autonomously put the link into hibernate state. That will save power at the expense of increased latency. Note that the hardware supports 10-bit values with a power-of-ten multiplier which allows a maximum value of 102300000. Refer to the UFS Host Controller Interface specification for more details.
/sys/bus/.../drivers/intel-m10-bmc/.../bmc_version |
Defined on file sysfs-driver-intel-m10-bmc
Read only. Returns the hardware build version of Intel MAX10 BMC chip. Format: “0x%x”.
/sys/bus/.../drivers/intel-m10-bmc/.../bmcfw_version |
Defined on file sysfs-driver-intel-m10-bmc
Read only. Returns the firmware version of Intel MAX10 BMC chip. Format: “0x%x”.
/sys/bus/.../drivers/intel-m10-bmc/.../mac_address |
Defined on file sysfs-driver-intel-m10-bmc
Read only. Returns the first MAC address in a block of sequential MAC addresses assigned to the board that is managed by the Intel MAX10 BMC. It is stored in FLASH storage and is mirrored in the MAX10 BMC register space. Format: “%02x:%02x:%02x:%02x:%02x:%02x”.
/sys/bus/.../drivers/intel-m10-bmc/.../mac_count |
Defined on file sysfs-driver-intel-m10-bmc
Read only. Returns the number of sequential MAC addresses assigned to the board managed by the Intel MAX10 BMC. This value is stored in FLASH and is mirrored in the MAX10 BMC register space. Format: “%u”.
/sys/bus/acpi/devices/.../adr |
Defined on file sysfs-bus-acpi
This attribute contains the output of the device object’s _ADR control method, which is present for ACPI device objects representing devices having standard enumeration algorithms, such as PCI.
/sys/bus/acpi/devices/.../description |
Defined on file sysfs-bus-acpi
This attribute contains the output of the device object’s _STR control method, if present.
/sys/bus/acpi/devices/.../eject |
Defined on file sysfs-bus-acpi
Writing 1 to this attribute will trigger hot removal of this device object. This file exists for every device object that has _EJ0 method.
/sys/bus/acpi/devices/.../hid |
Defined on file sysfs-bus-acpi
This attribute indicates the hardware ID (_HID) of the device object. For example, PNP0103. This file is present for device objects having the _HID control method.
/sys/bus/acpi/devices/.../hrv |
Defined on file sysfs-bus-acpi
(RO) Allows users to read the hardware version of non-PCI hardware, if the _HRV control method is present. It is mostly useful for non-PCI devices because lspci can list the hardware version for PCI devices.
/sys/bus/acpi/devices/.../modalias |
Defined on file sysfs-bus-acpi
This attribute indicates the PNP IDs of the device object. That is acpi:HHHHHHHH:[CCCCCCC:]. Where each HHHHHHHH or CCCCCCCC contains device object’s PNPID (_HID or _CID).
/sys/bus/acpi/devices/.../path |
Defined on file sysfs-bus-acpi
This attribute indicates the full path of ACPI namespace object associated with the device object. For example, _SB_.PCI0.
This file is not present for device objects representing fixed ACPI hardware features (like power and sleep buttons).
/sys/bus/acpi/devices/.../status |
Defined on file sysfs-bus-acpi
(RO) Returns the ACPI device status: enabled, disabled or functioning or present, if the method _STA is present.
The return value is a decimal integer representing the device’s status bitmap:
Bit [0] |
Set if the device is present. |
Bit [1] |
Set if the device is enabled and decoding its resources. |
Bit [2] |
Set if the device should be shown in the UI. |
Bit [3] |
Set if the device is functioning properly (cleared if device failed its diagnostics). |
Bit [4] |
Set if the battery is present. |
Bits [31:5] |
Reserved (must be cleared) |
If bit [0] is clear, then bit 1 must also be clear (a device that is not present cannot be enabled).
Bit 0 can be clear (not present) with bit [3] set (device is functional). This case is used to indicate a valid device for which no device driver should be loaded.
More special cases are covered in the ACPI specification.
/sys/bus/acpi/devices/.../uid |
Defined on file sysfs-bus-acpi
This attribute contains the output of the device object’s _UID control method, if present.
/sys/bus/acpi/intel-rapid-start/wakeup_events |
Defined on file sysfs-driver-intel-rapid-start
An integer representing a set of wakeup events as follows: 1: Wake to enter hibernation when the wakeup timer expires 2: Wake to enter hibernation when the battery reaches a critical level
These values are ORed together. For example, a value of 3 indicates that the system will wake to enter hibernation when either the wakeup timer expires or the battery reaches a critical level.
/sys/bus/acpi/intel-rapid-start/wakeup_time |
Defined on file sysfs-driver-intel-rapid-start
An integer representing the length of time the system will remain asleep before waking up to enter hibernation. This value is in minutes.
/sys/bus/amba/devices/.../driver_override |
Defined on file sysfs-bus-amba
This file allows the driver for a device to be specified which will override standard OF, ACPI, ID table, and name matching. When specified, only a driver with a name matching the value written to driver_override will have an opportunity to bind to the device. The override is specified by writing a string to the driver_override file (echo vfio-amba > driver_override) and may be cleared with an empty string (echo > driver_override). This returns the device to standard matching rules binding. Writing to driver_override does not automatically unbind the device from its current driver or make any attempt to automatically load the specified driver. If no driver with a matching name is currently loaded in the kernel, the device will not bind to any driver. This also allows devices to opt-out of driver binding using a driver_override name such as “none”. Only a single driver may be specified in the override, there is no support for parsing delimiters.
/sys/bus/auxiliary/devices/.../irqs/ |
Defined on file sysfs-bus-auxiliary
The /sys/devices/.../irqs directory contains a variable set of files, with each file is named as irq number similar to PCI PF or VF’s irq number located in msi_irqs directory. These irq files are added and removed dynamically when an IRQ is requested and freed respectively for the PCI SF.
/sys/bus/auxiliary/devices/intel_vsec.sdsi.X |
Defined on file sysfs-driver-intel_sdsi
This directory contains interface files for accessing Intel On Demand (formerly Software Defined Silicon or SDSi) features on a CPU. X represents the socket instance (though not the socket ID). The socket ID is determined by reading the registers file and decoding it per the specification.
Some files communicate with On Demand hardware through a mailbox. Should the operation fail, one of the following error codes may be returned:
Error Code |
Cause |
---|---|
EIO |
General mailbox failure. Log may indicate cause. |
EBUSY |
Mailbox is owned by another agent. |
EPERM |
On Demand capability is not enabled in hardware. |
EPROTO |
Failure in mailbox protocol detected by driver. See log for details. |
EOVERFLOW |
For provision commands, the size of the data exceeds what may be written. |
ESPIPE |
Seeking is not allowed. |
ETIMEDOUT |
Failure to complete mailbox transaction in time. |
/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/guid |
Defined on file sysfs-driver-intel_sdsi
(RO) The GUID for the registers file. The GUID identifies the layout of the registers file in this directory. Information about the register layouts for a particular GUID is available at http://github.com/intel/intel-sdsi
/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/meter_certificate |
Defined on file sysfs-driver-intel_sdsi
(RO) Used to read back the current meter certificate for the CPU from Intel On Demand hardware. The meter certificate contains utilization metrics of On Demand enabled features. Mailbox command.
/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/provision_akc |
Defined on file sysfs-driver-intel_sdsi
(WO) Used to write an Authentication Key Certificate (AKC) to the On Demand NVRAM for the CPU. The AKC is used to authenticate a Capability Activation Payload. Mailbox command.
/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/provision_cap |
Defined on file sysfs-driver-intel_sdsi
(WO) Used to write a Capability Activation Payload (CAP) to the On Demand NVRAM for the CPU. CAPs are used to activate a given CPU feature. A CAP is validated by On Demand hardware using a previously provisioned AKC file. Upon successful authentication, the CPU configuration is updated. A cold reboot is required to fully activate the feature. Mailbox command.
/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/registers |
Defined on file sysfs-driver-intel_sdsi
(RO) Contains information needed by applications to provision a CPU and monitor status information. The layout of this file is determined by the GUID in this directory. Information about the layout for a particular GUID is available at http://github.com/intel/intel-sdsi
/sys/bus/auxiliary/devices/intel_vsec.sdsi.X/state_certificate |
Defined on file sysfs-driver-intel_sdsi
(RO) Used to read back the current state certificate for the CPU from On Demand hardware. The state certificate contains information about the current licenses on the CPU. Mailbox command.
/sys/bus/bcma/devices/.../class |
Defined on file sysfs-bus-bcma
Each BCMA core is identified by few fields, including class it belongs to. See include/linux/bcma/bcma.h for possible values.
/sys/bus/bcma/devices/.../id |
Defined on file sysfs-bus-bcma
There are a few types of BCMA cores, they can be identified by id field.
/sys/bus/bcma/devices/.../manuf |
Defined on file sysfs-bus-bcma
Each BCMA core has its manufacturer id. See include/linux/bcma/bcma.h for possible values.
/sys/bus/bcma/devices/.../rev |
Defined on file sysfs-bus-bcma
BCMA cores of the same type can still slightly differ depending on their revision. Use it for detailed programming.
/sys/bus/cdx/devices/.../class |
Defined on file sysfs-bus-cdx
This file contains the class of the CDX device, in hexadecimal. Class is 24 bit identifier specifies the functionality of the device.
/sys/bus/cdx/devices/.../device |
Defined on file sysfs-bus-cdx
Device ID for this CDX device, in hexadecimal. Device ID is 16 bit identifier to identify a device type within the range of a device manufacturer. Combination of Vendor ID and Device ID identifies a device.
/sys/bus/cdx/devices/.../enable |
Defined on file sysfs-bus-cdx
CDX bus should be disabled before updating the devices in FPGA. Writing n/0/off will attempt to disable the CDX bus and. writing y/1/on will attempt to enable the CDX bus. Reading this file gives the current state of the bus, 1 for enabled and 0 for disabled.
For example:
# echo 1 > /sys/bus/cdx/.../enable
/sys/bus/cdx/devices/.../modalias |
Defined on file sysfs-bus-cdx
This attribute indicates the CDX ID of the device. That is in the format: cdx:vXXXXdXXXXsvXXXXsdXXXXcXXXXXX, where:
vXXXX contains the vendor ID;
dXXXX contains the device ID;
svXXXX contains the subsystem vendor ID;
sdXXXX contains the subsystem device ID;
cXXXXXX contains the device class.
/sys/bus/cdx/devices/.../remove |
Defined on file sysfs-bus-cdx
Writing y/1/on to this file removes the corresponding device from the CDX bus. If the device is to be reconfigured reconfigured in the Hardware, the device can be removed, so that the device driver does not access the device while it is being reconfigured.
For example:
# echo 1 > /sys/bus/cdx/devices/.../remove
/sys/bus/cdx/devices/.../reset |
Defined on file sysfs-bus-cdx
Writing y/1/on to this file resets the CDX device or all devices on the bus. On resetting the device, the corresponding driver is notified twice, once before the device is being reset, and again after the reset has been complete.
For example:
# echo 1 > /sys/bus/cdx/.../reset
/sys/bus/cdx/devices/.../resource<N> |
Defined on file sysfs-bus-cdx
The resource binary file contains the content of the memory regions. These files can be m’maped from userspace.
/sys/bus/cdx/devices/.../revision |
Defined on file sysfs-bus-cdx
This file contains the revision field of the CDX device, in hexadecimal. Revision is 8 bit revision identifier of the device.
/sys/bus/cdx/devices/.../subsystem_device |
Defined on file sysfs-bus-cdx
Subsystem Device ID for this CDX device, in hexadecimal Subsystem Device ID is 16 bit identifier specific to the card manufacturer.
/sys/bus/cdx/devices/.../subsystem_vendor |
Defined on file sysfs-bus-cdx
Subsystem Vendor ID for this CDX device, in hexadecimal. Subsystem Vendor ID is 16 bit identifier specific to the card manufacturer.
/sys/bus/cdx/devices/.../vendor |
Defined on file sysfs-bus-cdx
Vendor ID for this CDX device, in hexadecimal. Vendor ID is 16 bit identifier which is specific to the device manufacturer. Combination of Vendor ID and Device ID identifies a device.
/sys/bus/cdx/rescan |
Defined on file sysfs-bus-cdx
Writing y/1/on to this file will cause rescan of the bus and devices on the CDX bus. Any new devices are scanned and added to the list of Linux devices and any devices removed are also deleted from Linux.
For example:
# echo 1 > /sys/bus/cdx/rescan
/sys/bus/coreboot |
Defined on file sysfs-bus-coreboot
The coreboot bus provides a variety of virtual devices used to access data structures created by the Coreboot BIOS.
/sys/bus/coreboot/devices/cbmem-<id> |
Defined on file sysfs-bus-coreboot
CBMEM is a downwards-growing memory region created by Coreboot,
and contains tagged data structures to be shared with payloads
in the boot process and the OS. Each CBMEM entry is given a
directory in /sys/bus/coreboot/devices based on its id.
A list of ids known to Coreboot can be found in the coreboot
source tree at
src/commonlib/bsd/include/commonlib/bsd/cbmem_id.h
.
/sys/bus/coreboot/devices/cbmem-<id>/address |
Defined on file sysfs-bus-coreboot
This is the physical memory address that the CBMEM entry’s data
begins at, in hexadecimal (e.g., 0x76ffe000
).
/sys/bus/coreboot/devices/cbmem-<id>/mem |
Defined on file sysfs-bus-coreboot
A file exposing read/write access to the entry’s data. Note that this file does not support mmap(), as coreboot does not guarantee that the data will be page-aligned.
The mode of this file is 0600. While there shouldn’t be anything security-sensitive contained in CBMEM, read access requires root privileges given this is exposing a small subset of physical memory.
/sys/bus/coreboot/devices/cbmem-<id>/size |
Defined on file sysfs-bus-coreboot
This is the size of the CBMEM entry’s data, in hexadecimal
(e.g., 0x1234
).
/sys/bus/coresight/devices/<cti-name>/channels/chan_clear |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Deactivate a single channel.
/sys/bus/coresight/devices/<cti-name>/channels/chan_free |
Defined on file sysfs-bus-coresight-devices-cti
(Read) show channels with no attached trigger signals.
/sys/bus/coresight/devices/<cti-name>/channels/chan_gate_disable |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Disable CTIGATE for single channel.
/sys/bus/coresight/devices/<cti-name>/channels/chan_gate_enable |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Enable CTIGATE for single channel (Write) or list enabled channels through the gate (R).
/sys/bus/coresight/devices/<cti-name>/channels/chan_inuse |
Defined on file sysfs-bus-coresight-devices-cti
(Read) show channels with at least one attached trigger signal.
/sys/bus/coresight/devices/<cti-name>/channels/chan_pulse |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Pulse a single channel - activate for a single clock cycle.
/sys/bus/coresight/devices/<cti-name>/channels/chan_set |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Activate a single channel.
/sys/bus/coresight/devices/<cti-name>/channels/chan_xtrigs_in |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Read to see input triggers connected to selected view channel.
/sys/bus/coresight/devices/<cti-name>/channels/chan_xtrigs_out |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Read to see output triggers connected to selected view channel.
/sys/bus/coresight/devices/<cti-name>/channels/chan_xtrigs_reset |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Clear all channel / trigger programming.
/sys/bus/coresight/devices/<cti-name>/channels/chan_xtrigs_sel |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Write channel number to select a channel to view, read to see selected channel number.
/sys/bus/coresight/devices/<cti-name>/channels/trig_filter_enable |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Enable or disable trigger output signal filtering.
/sys/bus/coresight/devices/<cti-name>/channels/trigin_attach |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Attach a CTI input trigger to a CTM channel.
/sys/bus/coresight/devices/<cti-name>/channels/trigin_detach |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Detach a CTI input trigger from a CTM channel.
/sys/bus/coresight/devices/<cti-name>/channels/trigout_attach |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Attach a CTI output trigger to a CTM channel.
/sys/bus/coresight/devices/<cti-name>/channels/trigout_detach |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Detach a CTI output trigger from a CTM channel.
/sys/bus/coresight/devices/<cti-name>/channels/trigout_filtered |
Defined on file sysfs-bus-coresight-devices-cti
(Read) List of output triggers filtered across all connections.
/sys/bus/coresight/devices/<cti-name>/ctmid |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Display the associated CTM ID
/sys/bus/coresight/devices/<cti-name>/enable |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Enable/Disable the CTI hardware.
/sys/bus/coresight/devices/<cti-name>/nr_trigger_cons |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Number of devices connected to triggers on this CTI
/sys/bus/coresight/devices/<cti-name>/powered |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Indicate if the CTI hardware is powered.
/sys/bus/coresight/devices/<cti-name>/regs/appclear |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Write APPCLEAR register to deactivate channel.
/sys/bus/coresight/devices/<cti-name>/regs/apppulse |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Write APPPULSE to pulse a channel active for one clock cycle.
/sys/bus/coresight/devices/<cti-name>/regs/appset |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Set CTIAPPSET register to activate channel. Read back to determine current value of register.
/sys/bus/coresight/devices/<cti-name>/regs/asicctl |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Read or write ASICCTL register.
/sys/bus/coresight/devices/<cti-name>/regs/chinstatus |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Read current status of channel inputs.
/sys/bus/coresight/devices/<cti-name>/regs/choutstatus |
Defined on file sysfs-bus-coresight-devices-cti
(Read) read current status of channel outputs.
/sys/bus/coresight/devices/<cti-name>/regs/gate |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Read or write CTIGATE register.
/sys/bus/coresight/devices/<cti-name>/regs/inen |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Read or write the CTIINEN register selected by inout_sel.
/sys/bus/coresight/devices/<cti-name>/regs/inout_sel |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Select the index for inen and outen registers.
/sys/bus/coresight/devices/<cti-name>/regs/intack |
Defined on file sysfs-bus-coresight-devices-cti
(Write) Write the INTACK register.
/sys/bus/coresight/devices/<cti-name>/regs/outen |
Defined on file sysfs-bus-coresight-devices-cti
(RW) Read or write the CTIOUTEN register selected by inout_sel.
/sys/bus/coresight/devices/<cti-name>/regs/triginstatus |
Defined on file sysfs-bus-coresight-devices-cti
(Read) read current status of input trigger signals
/sys/bus/coresight/devices/<cti-name>/regs/trigoutstatus |
Defined on file sysfs-bus-coresight-devices-cti
(Read) read current status of output trigger signals.
/sys/bus/coresight/devices/<cti-name>/triggers<N>/in_signals |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Input trigger signals from connected device <N>
/sys/bus/coresight/devices/<cti-name>/triggers<N>/in_types |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Functional types for the input trigger signals from connected device <N>
/sys/bus/coresight/devices/<cti-name>/triggers<N>/name |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Name of connected device <N>
/sys/bus/coresight/devices/<cti-name>/triggers<N>/out_signals |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Output trigger signals to connected device <N>
/sys/bus/coresight/devices/<cti-name>/triggers<N>/out_types |
Defined on file sysfs-bus-coresight-devices-cti
(Read) Functional types for the output trigger signals to connected device <N>
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_acctype |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with @addr_idx. Specifies characteristics about the address comparator being configure, for example the access type, the kind of instruction to trace, processor context ID to trigger on, etc. Individual fields in the access type register may vary on the version of the trace entity.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_idx |
Defined on file sysfs-bus-coresight-devices-etm3x
Select which address comparator or pair (of comparators) to work with.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_range |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with @addr_idx. Specifies the range of addresses to trigger on. Inclusion or exclusion is specified in the corresponding access type register.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_single |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with @addr_idx. Specifies the single address to trigger on, highly influenced by the configuration options of the corresponding access type register.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_start |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with @addr_idx. Specifies the single address to start tracing on, highly influenced by the configuration options of the corresponding access type register.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_stop |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with @addr_idx. Specifies the single address to stop tracing on, highly influenced by the configuration options of the corresponding access type register.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cntr_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with cntr_idx, give access to the counter event register.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cntr_idx |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Specifies the counter to work on.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cntr_rld_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with cntr_idx, give access to the counter reload event register.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cntr_rld_val |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with cntr_idx, give access to the counter reload value register.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cntr_val |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used in conjunction with cntr_idx, give access to the counter value register.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cpu |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Holds the cpu number this tracer is affined to.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/ctxid_idx |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Specifies the index of the context ID register to be selected.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/ctxid_mask |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Mask to apply to all the context ID comparator.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/ctxid_pid |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Used with the ctxid_idx, specify with context ID to trigger on.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/curr_seq_state |
Defined on file sysfs-bus-coresight-devices-etm3x
(Read) Holds the current state of the sequencer.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/enable_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Defines which event triggers a trace.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/enable_source |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Enable/disable tracing on this specific trace entiry. Enabling a source implies the source has been configured properly and a sink has been identidifed for it. The path of coresight components linking the source to the sink is configured and managed automatically by the coresight framework.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/etmsr |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Gives access to the ETM status register, which holds programming information and status on certains events.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/fifofull_level |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Number of byte left in the fifo before considering it full. Depending on the tracer’s version, can also hold threshold for data suppression.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmccer |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM Configuration Code Extension register (0x1e8). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmccr |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM Configuration Code register (0x004). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmcr |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM Main Control register (0x000). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmidr |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM ID register (0x1e4). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmscr |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM System Configuration register (0x014). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmtecr1 |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM Enable Control #1 register (0x024). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmtecr2 |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM Enable Control #2 register (0x01c). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmteevr |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM Trace Enable Event register (0x020). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmtraceidr |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM Trace ID register (0x200). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmtsscr |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Print the content of the ETM Trace Start/Stop Control register (0x018). The value is read directly from the HW.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mode |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Interface with the driver’s ‘mode’ field, controlling various aspect of the trace entity such as time stamping, context ID size and cycle accurate tracing. Driver specific and bound to change depending on the driver.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/nr_addr_cmp |
Defined on file sysfs-bus-coresight-devices-etm3x
(Read) Provides the number of address comparators pairs accessible on a trace unit, as specified by bit 3:0 of register ETMCCR.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/nr_cntr |
Defined on file sysfs-bus-coresight-devices-etm3x
(Read) Provides the number of counters accessible on a trace unit, as specified by bit 15:13 of register ETMCCR.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/nr_ctxid_cmp |
Defined on file sysfs-bus-coresight-devices-etm3x
(Read) Provides the number of context ID comparator available on a trace unit, as specified by bit 25:24 of register ETMCCR.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/reset |
Defined on file sysfs-bus-coresight-devices-etm3x
(Write) Cancels all configuration on a trace unit and set it back to its boot configuration.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_12_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Defines the event that causes the sequencer to transition from state 1 to state 2.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_13_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Defines the event that causes the sequencer to transition from state 1 to state 3.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_21_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Defines the event that causes the sequencer to transition from state 2 to state 1.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_23_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Defines the event that causes the sequencer to transition from state 2 to state 3.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_31_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Defines the event that causes the sequencer to transition from state 3 to state 1.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_32_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Defines the event that causes the sequencer to transition from state 3 to state 2.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/sync_freq |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Holds the trace synchronization frequency value - must be programmed with the various implementation behavior in mind.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/timestamp_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Defines an event that requests the insertion of a timestamp into the trace stream.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/traceid |
Defined on file sysfs-bus-coresight-devices-etm3x
(RO) Holds the trace ID that will appear in the trace stream coming from this trace entity.
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/trigger_event |
Defined on file sysfs-bus-coresight-devices-etm3x
(RW) Define the event that controls the trigger.
/sys/bus/coresight/devices/<memory_map>.etb/enable_sink |
Defined on file sysfs-bus-coresight-devices-etb10
(RW) Add/remove a sink from a trace path. There can be multiple source for a single sink.
ex:
echo 1 > /sys/bus/coresight/devices/20010000.etb/enable_sink
/sys/bus/coresight/devices/<memory_map>.etb/mgmt/ctl |
Defined on file sysfs-bus-coresight-devices-etb10
(Read) Shows the value held by the ETB Control register. The value is read directly from HW register CTL, 0x020.
/sys/bus/coresight/devices/<memory_map>.etb/mgmt/ffcr |
Defined on file sysfs-bus-coresight-devices-etb10
(Read) Shows the value held by the ETB Formatter and Flush Control register. The value is read directly from HW register FFCR, 0x304.
/sys/bus/coresight/devices/<memory_map>.etb/mgmt/ffsr |
Defined on file sysfs-bus-coresight-devices-etb10
(Read) Shows the value held by the ETB Formatter and Flush Status register. The value is read directly from HW register FFSR, 0x300.
/sys/bus/coresight/devices/<memory_map>.etb/mgmt/rdp |
Defined on file sysfs-bus-coresight-devices-etb10
(Read) Defines the depth, in words, of the trace RAM in powers of 2. The value is read directly from HW register RDP, 0x004.
/sys/bus/coresight/devices/<memory_map>.etb/mgmt/rrp |
Defined on file sysfs-bus-coresight-devices-etb10
(Read) Shows the value held by the ETB RAM Read Pointer register that is used to read entries from the Trace RAM over the APB interface. The value is read directly from HW register RRP, 0x014.
/sys/bus/coresight/devices/<memory_map>.etb/mgmt/rwp |
Defined on file sysfs-bus-coresight-devices-etb10
(Read) Shows the value held by the ETB RAM Write Pointer register that is used to sets the write pointer to write entries from the CoreSight bus into the Trace RAM. The value is read directly from HW register RWP, 0x018.
/sys/bus/coresight/devices/<memory_map>.etb/mgmt/sts |
Defined on file sysfs-bus-coresight-devices-etb10
(Read) Shows the value held by the ETB status register. The value is read directly from HW register STS, 0x00C.
/sys/bus/coresight/devices/<memory_map>.etb/mgmt/trg |
Defined on file sysfs-bus-coresight-devices-etb10
(Read) Similar to “trigger_cntr” above except that this value is read directly from HW register TRG, 0x01C.
/sys/bus/coresight/devices/<memory_map>.etb/trigger_cntr |
Defined on file sysfs-bus-coresight-devices-etb10
(RW) Disables write access to the Trace RAM by stopping the formatter after a defined number of words have been stored following the trigger event. The number of 32-bit words written into the Trace RAM following the trigger event is equal to the value stored in this register+1 (from ARM ETB-TRM).
/sys/bus/coresight/devices/<memory_map>.funnel/funnel_ctrl |
Defined on file sysfs-bus-coresight-devices-funnel
(RW) Enables the slave ports and defines the hold time of the slave ports.
/sys/bus/coresight/devices/<memory_map>.funnel/priority |
Defined on file sysfs-bus-coresight-devices-funnel
(RW) Defines input port priority order.
/sys/bus/coresight/devices/<memory_map>.stm/enable_source |
Defined on file sysfs-bus-coresight-devices-stm
(RW) Enable/disable tracing on this specific trace macrocell. Enabling the trace macrocell implies it has been configured properly and a sink has been identified for it. The path of coresight components linking the source to the sink is configured and managed automatically by the coresight framework.
/sys/bus/coresight/devices/<memory_map>.stm/hwevent_enable |
Defined on file sysfs-bus-coresight-devices-stm
(RW) Provides access to the HW event enable register, used in conjunction with HW event bank select register.
/sys/bus/coresight/devices/<memory_map>.stm/hwevent_select |
Defined on file sysfs-bus-coresight-devices-stm
(RW) Gives access to the HW event block select register (STMHEBSR) in order to configure up to 256 channels. Used in conjunction with “hwevent_enable” register as described above.
/sys/bus/coresight/devices/<memory_map>.stm/port_enable |
Defined on file sysfs-bus-coresight-devices-stm
(RW) Provides access to the stimulus port enable register (STMSPER). Used in conjunction with “port_select” described below.
/sys/bus/coresight/devices/<memory_map>.stm/port_select |
Defined on file sysfs-bus-coresight-devices-stm
(RW) Used to determine which bank of stimulus port bit in register STMSPER (see above) apply to.
/sys/bus/coresight/devices/<memory_map>.stm/status |
Defined on file sysfs-bus-coresight-devices-stm
(Read) List various control and status registers. The specific layout and content is driver specific.
/sys/bus/coresight/devices/<memory_map>.stm/traceid |
Defined on file sysfs-bus-coresight-devices-stm
(RW) Holds the trace ID that will appear in the trace stream coming from this trace entity.
/sys/bus/coresight/devices/<memory_map>.tmc/buf_mode_preferred |
Defined on file sysfs-bus-coresight-devices-tmc
(RW) Current Coresight TMC-ETR buffer mode selected. But user could only provide a mode which is supported for a given ETR device. This file is available only for TMC ETR devices.
/sys/bus/coresight/devices/<memory_map>.tmc/buf_modes_available |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Shows all supported Coresight TMC-ETR buffer modes available for the users to configure explicitly. This file is available only for TMC ETR devices.
/sys/bus/coresight/devices/<memory_map>.tmc/buffer_size |
Defined on file sysfs-bus-coresight-devices-tmc
(RW) Size of the trace buffer for TMC-ETR when used in SYSFS mode. Writable only for TMC-ETR configurations. The value should be aligned to the kernel pagesize.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/ctl |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Shows the value held by the TMC Control register. The value is read directly from HW register CTL, 0x020.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/devid |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Indicates the capabilities of the Coresight TMC. The value is read directly from the DEVID register, 0xFC8,
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/ffcr |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Shows the value held by the TMC Formatter and Flush Control register. The value is read directly from HW register FFCR, 0x304.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/ffsr |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Shows the value held by the TMC Formatter and Flush Status register. The value is read directly from HW register FFSR, 0x300.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/mode |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Shows the value held by the TMC Mode register, which indicate the mode the device has been configured to enact. The The value is read directly from the MODE register, 0x028.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/rrp |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Shows the value held by the TMC RAM Read Pointer register that is used to read entries from the Trace RAM over the APB interface. The value is read directly from HW register RRP, 0x014.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/rsz |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Defines the size, in 32-bit words, of the local RAM buffer. The value is read directly from HW register RSZ, 0x004.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/rwp |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Shows the value held by the TMC RAM Write Pointer register that is used to sets the write pointer to write entries from the CoreSight bus into the Trace RAM. The value is read directly from HW register RWP, 0x018.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/sts |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Shows the value held by the TMC status register. The value is read directly from HW register STS, 0x00C.
/sys/bus/coresight/devices/<memory_map>.tmc/mgmt/trg |
Defined on file sysfs-bus-coresight-devices-tmc
(Read) Similar to “trigger_cntr” above except that this value is read directly from HW register TRG, 0x01C.
/sys/bus/coresight/devices/<memory_map>.tmc/trigger_cntr |
Defined on file sysfs-bus-coresight-devices-tmc
(RW) Disables write access to the Trace RAM by stopping the formatter after a defined number of words have been stored following the trigger event. Additional interface for this driver are expected to be added as it matures.
/sys/bus/coresight/devices/<tpdm-name>/cmb_mode |
Defined on file sysfs-bus-coresight-devices-tpdm
(Write) Set the data collection mode of CMB tpdm. Continuous change creates CMB data set elements on every CMBCLK edge. Trace-on-change creates CMB data set elements only when a new data set element differs in value from the previous element in a CMB data set.
Accepts only one of the 2 values - 0 or 1. 0 : Continuous CMB collection mode. 1 : Trace-on-change CMB collection mode.
/sys/bus/coresight/devices/<tpdm-name>/cmb_msr/msr[0:31] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the MSR(mux select register) for the CMB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/cmb_patt/enable_ts |
Defined on file sysfs-bus-coresight-devices-tpdm
(Write) Set the pattern timestamp of CMB tpdm. Read the pattern timestamp of CMB tpdm.
Accepts only one of the 2 values - 0 or 1. 0 : Disable CMB pattern timestamp. 1 : Enable CMB pattern timestamp.
/sys/bus/coresight/devices/<tpdm-name>/cmb_trig_patt/xpmr[0:1] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the mask of the trigger pattern for the CMB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/cmb_trig_patt/xpr[0:1] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the value of the trigger pattern for the CMB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/cmb_trig_ts |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the trigger timestamp of the CMB for tpdm.
Accepts only one of the 2 values - 0 or 1. 0 : Set the CMB trigger type to false 1 : Set the CMB trigger type to true
/sys/bus/coresight/devices/<tpdm-name>/cmb_ts_all |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Read or write the status of timestamp upon all interface. Only value 0 and 1 can be written to this node. Set this node to 1 to request timestamp to all trace packet. Accepts only one of the 2 values - 0 or 1. 0 : Disable the timestamp of all trace packets. 1 : Enable the timestamp of all trace packets.
/sys/bus/coresight/devices/<tpdm-name>/dsb_edge/ctrl_idx |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the index number of the edge detection for the DSB subunit TPDM. Since there are at most 256 edge detections, this value ranges from 0 to 255.
/sys/bus/coresight/devices/<tpdm-name>/dsb_edge/ctrl_mask |
Defined on file sysfs-bus-coresight-devices-tpdm
Write a data to mask the edge detection corresponding to the index number. Before writing data to this sysfs file, “ctrl_idx” should be written first to configure the index number of the edge detection which needs to be masked.
Accepts only one of the 2 values - 0 or 1.
/sys/bus/coresight/devices/<tpdm-name>/dsb_edge/ctrl_val |
Defined on file sysfs-bus-coresight-devices-tpdm
Write a data to control the edge detection corresponding to the index number. Before writing data to this sysfs file, “ctrl_idx” should be written first to configure the index number of the edge detection which needs to be controlled.
Accepts only one of the following values. 0 - Rising edge detection 1 - Falling edge detection 2 - Rising and falling edge detection (toggle detection)
/sys/bus/coresight/devices/<tpdm-name>/dsb_edge/edcmr[0:7] |
Defined on file sysfs-bus-coresight-devices-tpdm
Read a set of the edge control mask of the DSB in TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_edge/edcr[0:15] |
Defined on file sysfs-bus-coresight-devices-tpdm
Read a set of the edge control value of the DSB in TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_mode |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the programming mode of the DSB for tpdm.
Accepts the value needs to be greater than 0. What data bits do is listed below. Bit[0:1] : Test mode control bit for choosing the inputs. Bit[3] : Set to 0 for low performance mode. Set to 1 for high performance mode. Bit[4:8] : Select byte lane for high performance mode.
/sys/bus/coresight/devices/<tpdm-name>/dsb_msr/msr[0:31] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the MSR(mux select register) for the DSB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_patt/enable_ts |
Defined on file sysfs-bus-coresight-devices-tpdm
(Write) Set the pattern timestamp of DSB tpdm. Read the pattern timestamp of DSB tpdm.
Accepts only one of the 2 values - 0 or 1. 0 : Disable DSB pattern timestamp. 1 : Enable DSB pattern timestamp.
/sys/bus/coresight/devices/<tpdm-name>/dsb_patt/set_type |
Defined on file sysfs-bus-coresight-devices-tpdm
(Write) Set the pattern type of DSB tpdm. Read the pattern type of DSB tpdm.
Accepts only one of the 2 values - 0 or 1. 0 : Set the DSB pattern type to value. 1 : Set the DSB pattern type to toggle.
/sys/bus/coresight/devices/<tpdm-name>/dsb_patt/tpmr[0:1] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the mask of the pattern for the CMB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_patt/tpmr[0:7] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the mask of the pattern for the DSB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_patt/tpr[0:1] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the value of the pattern for the CMB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_patt/tpr[0:7] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the value of the pattern for the DSB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_trig_patt/xpmr[0:7] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the mask of the trigger pattern for the DSB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_trig_patt/xpr[0:7] |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the value of the trigger pattern for the DSB subunit TPDM.
/sys/bus/coresight/devices/<tpdm-name>/dsb_trig_ts |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the trigger timestamp of the DSB for tpdm.
Accepts only one of the 2 values - 0 or 1. 0 : Set the DSB trigger type to false 1 : Set the DSB trigger type to true
/sys/bus/coresight/devices/<tpdm-name>/dsb_trig_type |
Defined on file sysfs-bus-coresight-devices-tpdm
(RW) Set/Get the trigger type of the DSB for tpdm.
Accepts only one of the 2 values - 0 or 1. 0 : Set the DSB trigger type to false 1 : Set the DSB trigger type to true
/sys/bus/coresight/devices/<tpdm-name>/integration_test |
Defined on file sysfs-bus-coresight-devices-tpdm
(Write) Run integration test for tpdm. Integration test will generate test data for tpdm. It can help to make sure that the trace path is enabled and the link configurations are fine.
Accepts only one of the 2 values - 1 or 2. 1 : Generate 64 bits data 2 : Generate 32 bits data
/sys/bus/coresight/devices/<tpdm-name>/reset_dataset |
Defined on file sysfs-bus-coresight-devices-tpdm
(Write) Reset the dataset of the tpdm.
Accepts only one value - 1. 1 : Reset the dataset of the tpdm
/sys/bus/coresight/devices/etm<N>/addr_cmp_view |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the current settings for the selected address comparator.
/sys/bus/coresight/devices/etm<N>/addr_exlevel_s_ns |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Set the Exception Level matching bits for secure and non-secure exception levels.
/sys/bus/coresight/devices/etm<N>/addr_idx |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Select which address comparator or pair (of comparators) to work with.
/sys/bus/coresight/devices/etm<N>/addr_instdatatype |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls what type of comparison the trace unit performs.
/sys/bus/coresight/devices/etm<N>/addr_range |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Used to setup address range comparator values.
/sys/bus/coresight/devices/etm<N>/addr_single |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Used to setup single address comparator values.
/sys/bus/coresight/devices/etm<N>/bb_ctrl |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls which regions in the memory map are enabled to use branch broadcasting.
/sys/bus/coresight/devices/etm<N>/cntr_ctrl |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls the operation of the selected counter.
/sys/bus/coresight/devices/etm<N>/cntr_idx |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Select which counter unit to work with.
/sys/bus/coresight/devices/etm<N>/cntr_val |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) This sets or returns the current count value of the specific counter.
/sys/bus/coresight/devices/etm<N>/cntrldvr |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) This sets or returns the reload count value of the specific counter.
/sys/bus/coresight/devices/etm<N>/cpu |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) The CPU this tracing entity is associated with.
/sys/bus/coresight/devices/etm<N>/ctxid_idx |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Select which context ID comparator to work with.
/sys/bus/coresight/devices/etm<N>/ctxid_masks |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Mask for all 8 context ID comparator value registers (if implemented).
/sys/bus/coresight/devices/etm<N>/ctxid_pid |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Get/Set the context ID comparator value to trigger on.
/sys/bus/coresight/devices/etm<N>/cyc_threshold |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Sets the threshold value for cycle counting.
/sys/bus/coresight/devices/etm<N>/enable_source |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Enable/disable tracing on this specific trace entiry. Enabling a source implies the source has been configured properly and a sink has been identidifed for it. The path of coresight components linking the source to the sink is configured and managed automatically by the coresight framework.
/sys/bus/coresight/devices/etm<N>/event |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls the tracing of arbitrary events from bank 0 to 3.
/sys/bus/coresight/devices/etm<N>/event_instren |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls the behavior of the events in bank 0 to 3.
/sys/bus/coresight/devices/etm<N>/event_ts |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls the insertion of global timestamps in the trace streams.
/sys/bus/coresight/devices/etm<N>/event_vinst |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls instruction trace filtering.
/sys/bus/coresight/devices/etm<N>/mgmt/trcauthstatus |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Authentication Status Register (0xFB8). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcconfig |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the trace configuration register (0x010) as currently set by SW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcdevarch |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Device Architecture Register (offset 0xFBC). The value is taken directly read from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcdevid |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Device ID Register (0xFC8). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcdevtype |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Device Type Register (0xFCC). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trclsr |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the SW Lock Status Register (0xFB4). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcoslsr |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the OS Lock Status Register (0x304). The value it taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcpdcr |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Power Down Control Register (0x310). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcpdsr |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Power Down Status Register (0x314). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcpidr0 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Peripheral ID0 Register (0xFE0). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcpidr1 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Peripheral ID1 Register (0xFE4). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcpidr2 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Peripheral ID2 Register (0xFE8). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trcpidr3 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the Peripheral ID3 Register (0xFEC). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/mgmt/trctraceid |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the content of the trace ID register (0x040).
/sys/bus/coresight/devices/etm<N>/mode |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls various modes supported by this ETM, for example P0 instruction tracing, branch broadcast, cycle counting and context ID tracing.
/sys/bus/coresight/devices/etm<N>/nr_addr_cmp |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates the number of address comparator pairs that are available for tracing.
/sys/bus/coresight/devices/etm<N>/nr_cntr |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates the number of counters that are available for tracing.
/sys/bus/coresight/devices/etm<N>/nr_ext_inp |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates how many external inputs are implemented.
/sys/bus/coresight/devices/etm<N>/nr_pe_cmp |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates the number of PE comparator inputs that are available for tracing.
/sys/bus/coresight/devices/etm<N>/nr_resource |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates the number of resource selection pairs that are available for tracing.
/sys/bus/coresight/devices/etm<N>/nr_ss_cmp |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates the number of single-shot comparator controls that are available for tracing.
/sys/bus/coresight/devices/etm<N>/nrseqstate |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates the number of sequencer states that are implemented.
/sys/bus/coresight/devices/etm<N>/ns_exlevel_vinst |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) In non-secure state, each bit controls whether instruction tracing is enabled for the corresponding exception level.
/sys/bus/coresight/devices/etm<N>/numcidc |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates the number of Context ID comparators that are available for tracing.
/sys/bus/coresight/devices/etm<N>/numvmidc |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Indicates the number of VMID comparators that are available for tracing.
/sys/bus/coresight/devices/etm<N>/pe |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls which PE to trace.
/sys/bus/coresight/devices/etm<N>/res_ctrl |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls the selection of the resources in the trace unit.
/sys/bus/coresight/devices/etm<N>/res_idx |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Select which resource selection unit to work with.
/sys/bus/coresight/devices/etm<N>/reset |
Defined on file sysfs-bus-coresight-devices-etm4x
(Write) Cancels all configuration on a trace unit and set it back to its boot configuration.
/sys/bus/coresight/devices/etm<N>/s_exlevel_vinst |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) In Secure state, each bit controls whether instruction tracing is enabled for the corresponding exception level.
/sys/bus/coresight/devices/etm<N>/seq_event |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Moves the sequencer state to a specific state.
/sys/bus/coresight/devices/etm<N>/seq_idx |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Select which sequensor.
/sys/bus/coresight/devices/etm<N>/seq_reset_event |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Moves the sequencer to state 0 when a programmed event occurs.
/sys/bus/coresight/devices/etm<N>/seq_state |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Use this to set, or read, the sequencer state.
/sys/bus/coresight/devices/etm<N>/sshot_ctrl |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Access the selected single shot control register.
/sys/bus/coresight/devices/etm<N>/sshot_idx |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Select the single shot control register to access.
/sys/bus/coresight/devices/etm<N>/sshot_pe_ctrl |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Access the selected single show PE comparator control register.
/sys/bus/coresight/devices/etm<N>/sshot_status |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Print the current value of the selected single shot status register.
/sys/bus/coresight/devices/etm<N>/syncfreq |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Controls how often trace synchronization requests occur.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr0 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the tracing capabilities of the trace unit (0x1E0). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr1 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the tracing capabilities of the trace unit (0x1E4). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr10 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the number of P1 right-hand keys that the trace unit can use (0x188). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr11 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the number of special P1 right-hand keys that the trace unit can use (0x18C). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr12 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the number of conditional P1 right-hand keys that the trace unit can use (0x190). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr13 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the number of special conditional P1 right-hand keys that the trace unit can use (0x194). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr2 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the maximum size of the data value, data address, VMID, context ID and instruction address in the trace unit (0x1E8). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr3 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the value associated with various resources available to the trace unit. See the Trace Macrocell architecture specification for more details (0x1E8). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr4 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns how many resources the trace unit supports (0x1F0). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr5 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns how many resources the trace unit supports (0x1F4). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr8 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the maximum speculation depth of the instruction trace stream. (0x180). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/trcidr/trcidr9 |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) Returns the number of P0 right-hand keys that the trace unit can use (0x184). The value is taken directly from the HW.
/sys/bus/coresight/devices/etm<N>/ts_source |
Defined on file sysfs-bus-coresight-devices-etm4x
(Read) When FEAT_TRF is implemented, value of TRFCR_ELx.TS used for trace session. Otherwise -1 indicates an unknown time source. Check trcidr0.tssize to see if a global timestamp is available.
/sys/bus/coresight/devices/etm<N>/vinst_pe_cmp_start_stop |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Access the start stop control register for PE input comparators.
/sys/bus/coresight/devices/etm<N>/vmid_idx |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Select which virtual machine ID comparator to work with.
/sys/bus/coresight/devices/etm<N>/vmid_masks |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Mask for all 8 virtual machine ID comparator value registers (if implemented).
/sys/bus/coresight/devices/etm<N>/vmid_val |
Defined on file sysfs-bus-coresight-devices-etm4x
(RW) Get/Set the virtual machine ID comparator value to trigger on.
/sys/bus/coresight/devices/trbe<cpu>/align |
Defined on file sysfs-bus-coresight-devices-trbe
(Read) Shows the TRBE write pointer alignment. This value is fetched from the TRBIDR register.
/sys/bus/coresight/devices/trbe<cpu>/flag |
Defined on file sysfs-bus-coresight-devices-trbe
(Read) Shows if TRBE updates in the memory are with access and dirty flag updates as well. This value is fetched from the TRBIDR register.
/sys/bus/coresight/devices/ultra_smb<N>/enable_sink |
Defined on file sysfs-bus-coresight-devices-ultra_smb
(RW) Add/remove a SMB device from a trace path. There can be multiple sources for a single SMB device.
/sys/bus/coresight/devices/ultra_smb<N>/mgmt/buf_size |
Defined on file sysfs-bus-coresight-devices-ultra_smb
(RO) Shows the buffer size of each UltraSoc SMB device.
/sys/bus/coresight/devices/ultra_smb<N>/mgmt/buf_status |
Defined on file sysfs-bus-coresight-devices-ultra_smb
(RO) Shows the value of UltraSoc SMB status register. BIT(0) is zero means buffer is empty.
/sys/bus/coresight/devices/ultra_smb<N>/mgmt/read_pos |
Defined on file sysfs-bus-coresight-devices-ultra_smb
(RO) Shows the value of UltraSoc SMB Read Pointer register.
/sys/bus/coresight/devices/ultra_smb<N>/mgmt/write_pos |
Defined on file sysfs-bus-coresight-devices-ultra_smb
(RO) Shows the value of UltraSoc SMB Write Pointer register.
/sys/bus/counter/devices/counterX/cascade_counts_enable |
Defined on file sysfs-bus-counter
Indicates the cascading of Counts on Counter X.
Valid attribute values are boolean.
/sys/bus/counter/devices/counterX/cascade_counts_enable_component_id |
/sys/bus/counter/devices/counterX/external_input_phase_clock_select_component_id |
/sys/bus/counter/devices/counterX/countY/capture_component_id |
/sys/bus/counter/devices/counterX/countY/ceiling_component_id |
/sys/bus/counter/devices/counterX/countY/floor_component_id |
/sys/bus/counter/devices/counterX/countY/count_mode_component_id |
/sys/bus/counter/devices/counterX/countY/direction_component_id |
/sys/bus/counter/devices/counterX/countY/enable_component_id |
/sys/bus/counter/devices/counterX/countY/error_noise_component_id |
/sys/bus/counter/devices/counterX/countY/prescaler_component_id |
/sys/bus/counter/devices/counterX/countY/preset_component_id |
/sys/bus/counter/devices/counterX/countY/preset_enable_component_id |
/sys/bus/counter/devices/counterX/countY/signalZ_action_component_id |
/sys/bus/counter/devices/counterX/countY/num_overflows_component_id |
/sys/bus/counter/devices/counterX/signalY/cable_fault_component_id |
/sys/bus/counter/devices/counterX/signalY/cable_fault_enable_component_id |
/sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler_component_id |
/sys/bus/counter/devices/counterX/signalY/index_polarity_component_id |
/sys/bus/counter/devices/counterX/signalY/polarity_component_id |
/sys/bus/counter/devices/counterX/signalY/synchronous_mode_component_id |
/sys/bus/counter/devices/counterX/signalY/frequency_component_id |
Defined on file sysfs-bus-counter
Read-only attribute that indicates the component ID of the respective extension or Synapse.
/sys/bus/counter/devices/counterX/countY/capture |
Defined on file sysfs-bus-counter
Historical capture of the Count Y count data.
/sys/bus/counter/devices/counterX/countY/ceiling |
Defined on file sysfs-bus-counter
Count value ceiling for Count Y. This is the upper limit for the respective counter.
/sys/bus/counter/devices/counterX/countY/count |
Defined on file sysfs-bus-counter
Count data of Count Y represented as a string.
/sys/bus/counter/devices/counterX/countY/count_mode |
Defined on file sysfs-bus-counter
Count mode for channel Y. The ceiling and floor values for Count Y are used by the count mode where required. The following count modes are available:
- normal:
Counting is continuous in either direction.
- range limit:
An upper or lower limit is set, mimicking limit switches in the mechanical counterpart. The upper limit is set to the Count Y ceiling value, while the lower limit is set to the Count Y floor value. The counter freezes at count = ceiling when counting up, and at count = floor when counting down. At either of these limits, the counting is resumed only when the count direction is reversed.
- non-recycle:
The counter is disabled whenever a counter overflow or underflow takes place. The counter is re-enabled when a new count value is loaded to the counter via a preset operation or direct write.
- modulo-n:
A count value boundary is set between the Count Y floor value and the Count Y ceiling value. The counter is reset to the Count Y floor value at count = ceiling when counting up, while the counter is set to the Count Y ceiling value at count = floor when counting down; the counter does not freeze at the boundary points, but counts continuously throughout.
- interrupt on terminal count:
The output signal is initially low, and will remain low until the counter reaches zero. The output signal then goes high and remains high until a new preset value is set.
- hardware retriggerable one-shot:
The output signal is initially high. The output signal will go low by a trigger input signal, and will remain low until the counter reaches zero. The output will then go high and remain high until the next trigger. A trigger results in loading the counter to the preset value and setting the output signal low, thus starting the one-shot pulse.
- rate generator:
The output signal is initially high. When the counter has decremented to 1, the output signal goes low for one clock pulse. The output signal then goes high again, the counter is reloaded to the preset value, and the process repeats in a periodic manner as such.
- square wave mode:
The output signal is initially high.
If the initial count is even, the counter is decremented by two on succeeding clock pulses. When the count expires, the output signal changes value and the counter is reloaded to the preset value. The process repeats in periodic manner as such.
If the initial count is odd, the initial count minus one (an even number) is loaded and then is decremented by two on succeeding clock pulses. One clock pulse after the count expires, the output signal goes low and the counter is reloaded to the preset value minus one. Succeeding clock pulses decrement the count by two. When the count expires, the output goes high again and the counter is reloaded to the preset value minus one. The process repeats in a periodic manner as such.
- software triggered strobe:
The output signal is initially high. When the count expires, the output will go low for one clock pulse and then go high again. The counting sequence is “triggered” by setting the preset value.
- hardware triggered strobe:
The output signal is initially high. Counting is started by a trigger input signal. When the count expires, the output signal will go low for one clock pulse and then go high again. A trigger results in loading the counter to the preset value.
/sys/bus/counter/devices/counterX/countY/count_mode_available |
/sys/bus/counter/devices/counterX/countY/error_noise_available |
/sys/bus/counter/devices/counterX/countY/function_available |
/sys/bus/counter/devices/counterX/countY/prescaler_available |
/sys/bus/counter/devices/counterX/countY/signalZ_action_available |
Defined on file sysfs-bus-counter
Discrete set of available values for the respective Count Y configuration are listed in this file. Values are delimited by newline characters.
/sys/bus/counter/devices/counterX/countY/direction |
Defined on file sysfs-bus-counter
Read-only attribute that indicates the count direction of Count Y. Two count directions are available: forward and backward.
Some counter devices are able to determine the direction of their counting. For example, quadrature encoding counters can determine the direction of movement by evaluating the leading phase of the respective A and B quadrature encoding signals. This attribute exposes such count directions.
/sys/bus/counter/devices/counterX/countY/enable |
Defined on file sysfs-bus-counter
Whether channel Y counter is enabled. Valid attribute values are boolean.
This attribute is intended to serve as a pause/unpause mechanism for Count Y. Suppose a counter device is used to count the total movement of a conveyor belt: this attribute allows an operator to temporarily pause the counter, service the conveyor belt, and then finally unpause the counter to continue where it had left off.
/sys/bus/counter/devices/counterX/countY/error_noise |
Defined on file sysfs-bus-counter
Read-only attribute that indicates whether excessive noise is present at the channel Y counter inputs.
/sys/bus/counter/devices/counterX/countY/floor |
Defined on file sysfs-bus-counter
Count value floor for Count Y. This is the lower limit for the respective counter.
/sys/bus/counter/devices/counterX/countY/function |
Defined on file sysfs-bus-counter
Count function mode of Count Y; count function evaluation is triggered by conditions specified by the Count Y signalZ_action attributes. The following count functions are available:
- increase:
Accumulated count is incremented.
- decrease:
Accumulated count is decremented.
- pulse-direction:
Rising edges on signal A updates the respective count. The input level of signal B determines direction.
- quadrature x1 a:
If direction is forward, rising edges on quadrature pair signal A updates the respective count; if the direction is backward, falling edges on quadrature pair signal A updates the respective count. Quadrature encoding determines the direction.
- quadrature x1 b:
If direction is forward, rising edges on quadrature pair signal B updates the respective count; if the direction is backward, falling edges on quadrature pair signal B updates the respective count. Quadrature encoding determines the direction.
- quadrature x2 a:
Any state transition on quadrature pair signal A updates the respective count. Quadrature encoding determines the direction.
- quadrature x2 b:
Any state transition on quadrature pair signal B updates the respective count. Quadrature encoding determines the direction.
- quadrature x4:
Any state transition on either quadrature pair signals updates the respective count. Quadrature encoding determines the direction.
/sys/bus/counter/devices/counterX/countY/name |
Defined on file sysfs-bus-counter
Read-only attribute that indicates the device-specific name of Count Y. If possible, this should match the name of the respective channel as it appears in the device datasheet.
/sys/bus/counter/devices/counterX/countY/num_overflows |
Defined on file sysfs-bus-counter
This attribute indicates the number of overflows of count Y.
/sys/bus/counter/devices/counterX/countY/prescaler |
Defined on file sysfs-bus-counter
Configure the prescaler value associated with Count Y. On the FlexTimer, the counter clock source passes through a prescaler (i.e. a counter). This acts like a clock divider.
/sys/bus/counter/devices/counterX/countY/preset |
Defined on file sysfs-bus-counter
If the counter device supports preset registers -- registers used to load counter channels to a set count upon device-defined preset operation trigger events -- the preset count for channel Y is provided by this attribute.
/sys/bus/counter/devices/counterX/countY/preset_enable |
Defined on file sysfs-bus-counter
Whether channel Y counter preset operation is enabled. Valid attribute values are boolean.
/sys/bus/counter/devices/counterX/countY/signalZ_action |
Defined on file sysfs-bus-counter
Action mode of Count Y for Signal Z. This attribute indicates the condition of Signal Z that triggers the count function evaluation for Count Y. The following action modes are available:
- none:
Signal does not trigger the count function. In Pulse-Direction count function mode, this Signal is evaluated as Direction.
- rising edge:
Low state transitions to high state.
- falling edge:
High state transitions to low state.
- both edges:
Any state transition.
/sys/bus/counter/devices/counterX/countY/spike_filter_ns |
Defined on file sysfs-bus-counter
If the counter device supports programmable spike filter this attribute indicates the value in nanoseconds where noise pulses shorter or equal to configured value are ignored. Value 0 means filter is disabled.
/sys/bus/counter/devices/counterX/events_queue_size |
Defined on file sysfs-bus-counter
Size of the Counter events queue in number of struct counter_event data structures. The number of elements will be rounded-up to a power of 2.
/sys/bus/counter/devices/counterX/external_input_phase_clock_select |
Defined on file sysfs-bus-counter
Selects the external clock pin for phase counting mode of Counter X.
- MTCLKA-MTCLKB:
MTCLKA and MTCLKB pins are selected for the external phase clock.
- MTCLKC-MTCLKD:
MTCLKC and MTCLKD pins are selected for the external phase clock.
/sys/bus/counter/devices/counterX/external_input_phase_clock_select_available |
Defined on file sysfs-bus-counter
Discrete set of available values for the respective device configuration are listed in this file.
/sys/bus/counter/devices/counterX/name |
Defined on file sysfs-bus-counter
Read-only attribute that indicates the device-specific name of the Counter. This should match the name of the device as it appears in its respective datasheet.
/sys/bus/counter/devices/counterX/num_counts |
Defined on file sysfs-bus-counter
Read-only attribute that indicates the total number of Counts belonging to the Counter.
/sys/bus/counter/devices/counterX/num_signals |
Defined on file sysfs-bus-counter
Read-only attribute that indicates the total number of Signals belonging to the Counter.
/sys/bus/counter/devices/counterX/signalY/cable_fault |
Defined on file sysfs-bus-counter
Read-only attribute that indicates whether a differential encoder cable fault (not connected or loose wires) is detected for the respective channel of Signal Y. Valid attribute values are boolean. Detection must first be enabled via the corresponding cable_fault_enable attribute.
/sys/bus/counter/devices/counterX/signalY/cable_fault_enable |
Defined on file sysfs-bus-counter
Whether detection of differential encoder cable faults for the respective channel of Signal Y is enabled. Valid attribute values are boolean.
/sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler |
Defined on file sysfs-bus-counter
Filter clock factor for input Signal Y. This prescaler value affects the inputs of both quadrature pair signals.
/sys/bus/counter/devices/counterX/signalY/frequency |
Defined on file sysfs-bus-counter
Read-only attribute that indicates the signal Y frequency, in Hz.
/sys/bus/counter/devices/counterX/signalY/index_polarity |
Defined on file sysfs-bus-counter
Active level of index input Signal Y; irrelevant in non-synchronous load mode.
/sys/bus/counter/devices/counterX/signalY/index_polarity_available |
/sys/bus/counter/devices/counterX/signalY/synchronous_mode_available |
Defined on file sysfs-bus-counter
Discrete set of available values for the respective Signal Y configuration are listed in this file.
/sys/bus/counter/devices/counterX/signalY/name |
Defined on file sysfs-bus-counter
Read-only attribute that indicates the device-specific name of Signal Y. If possible, this should match the name of the respective signal as it appears in the device datasheet.
/sys/bus/counter/devices/counterX/signalY/polarity |
Defined on file sysfs-bus-counter
Active level of Signal Y. The following polarity values are available:
- positive:
Signal high state considered active level (rising edge).
- negative:
Signal low state considered active level (falling edge).
/sys/bus/counter/devices/counterX/signalY/signal |
Defined on file sysfs-bus-counter
Signal level state of Signal Y. The following signal level states are available:
- low:
Low level state.
- high:
High level state.
/sys/bus/counter/devices/counterX/signalY/synchronous_mode |
Defined on file sysfs-bus-counter
Configure the counter associated with Signal Y for non-synchronous or synchronous load mode. Synchronous load mode cannot be selected in non-quadrature (Pulse-Direction) clock mode.
- non-synchronous:
A logic low level is the active level at this index input. The index function (as enabled via preset_enable) is performed directly on the active level of the index input.
- synchronous:
Intended for interfacing with encoder Index output in quadrature clock mode. The active level is configured via index_polarity. The index function (as enabled via preset_enable) is performed synchronously with the quadrature clock on the active level of the index input.
/sys/bus/css/devices/.../driver_override |
Defined on file sysfs-bus-css
This file allows the driver for a device to be specified. When specified, only a driver with a name matching the value written to driver_override will have an opportunity to bind to the device. The override is specified by writing a string to the driver_override file (echo vfio-ccw > driver_override) and may be cleared with an empty string (echo > driver_override). This returns the device to standard matching rules binding. Writing to driver_override does not automatically unbind the device from its current driver or make any attempt to automatically load the specified driver. If no driver with a matching name is currently loaded in the kernel, the device will not bind to any driver. This also allows devices to opt-out of driver binding using a driver_override name such as “none”. Only a single driver may be specified in the override, there is no support for parsing delimiters.
Note that unlike the mechanism of the same name for pci, this file does not allow to override basic matching rules. I.e., the driver must still match the subchannel type of the device.
/sys/bus/css/devices/.../modalias |
Defined on file sysfs-bus-css
Contains the module alias as reported with uevents. It is of the format css:t<type> and present for all subchannel types.
/sys/bus/css/devices/.../type |
Defined on file sysfs-bus-css
Contains the subchannel type, as reported by the hardware. This attribute is present for all subchannel types.
/sys/bus/css/drivers/io_subchannel/.../chpids |
Defined on file sysfs-bus-css
Contains the ids of the channel paths used by this subchannel, as reported by the channel subsystem during subchannel recognition.
Note: This is an I/O-subchannel specific attribute.
Users: s390-tools, HAL
/sys/bus/css/drivers/io_subchannel/.../pimpampom |
Defined on file sysfs-bus-css
Contains the PIM/PAM/POM values, as reported by the channel subsystem when last queried by the common I/O layer (this implies that this attribute is not necessarily in sync with the values current in the channel subsystem).
Note: This is an I/O-subchannel specific attribute.
Users: s390-tools, HAL
/sys/bus/cxl/devices/*/devtype |
Defined on file sysfs-bus-cxl
(RO) CXL device objects export the devtype attribute which mirrors the same value communicated in the DEVTYPE environment variable for uevents for devices on the “cxl” bus.
/sys/bus/cxl/devices/*/modalias |
Defined on file sysfs-bus-cxl
(RO) CXL device objects export the modalias attribute which mirrors the same value communicated in the MODALIAS environment variable for uevents for devices on the “cxl” bus.
/sys/bus/cxl/devices/decoderX.Y |
Defined on file sysfs-bus-cxl
(RO) CXL decoder objects are enumerated from either a platform firmware description, or a CXL HDM decoder register set in a PCIe device (see CXL 2.0 section 8.2.5.12 CXL HDM Decoder Capability Structure). The ‘X’ in decoderX.Y represents the cxl_port container of this decoder, and ‘Y’ represents the instance id of a given decoder resource.
/sys/bus/cxl/devices/decoderX.Y/cap_{pmem,ram,type2,type3} |
Defined on file sysfs-bus-cxl
(RO) When a CXL decoder is of devtype “cxl_decoder_root”, it represents a fixed memory window identified by platform firmware. A fixed window may only support a subset of memory types. The ‘cap_*’ attributes indicate whether persistent memory, volatile memory, accelerator memory, and / or expander memory may be mapped behind this decoder’s memory window.
/sys/bus/cxl/devices/decoderX.Y/create_{pmem,ram}_region |
Defined on file sysfs-bus-cxl
(RW) Write a string in the form ‘regionZ’ to start the process of defining a new persistent, or volatile memory region (interleave-set) within the decode range bounded by root decoder ‘decoderX.Y’. The value written must match the current value returned from reading this attribute. An atomic compare exchange operation is done on write to assign the requested id to a region and allocate the region-id for the next creation attempt. EBUSY is returned if the region name written does not match the current cached value.
/sys/bus/cxl/devices/decoderX.Y/delete_region |
Defined on file sysfs-bus-cxl
(WO) Write a string in the form ‘regionZ’ to delete that region, provided it is currently idle / not bound to a driver.
/sys/bus/cxl/devices/decoderX.Y/dpa_resource |
Defined on file sysfs-bus-cxl
(RO) When a CXL decoder is of devtype “cxl_decoder_endpoint”, and its ‘dpa_size’ attribute is non-zero, this attribute indicates the device physical address (DPA) base address of the allocation.
/sys/bus/cxl/devices/decoderX.Y/dpa_size |
Defined on file sysfs-bus-cxl
(RW) When a CXL decoder is of devtype “cxl_decoder_endpoint” it translates from a host physical address range, to a device local address range. The range, base address plus length in bytes, of DPA allocated to this decoder is conveyed in these 2 attributes. Allocations can be mutated as long as the decoder is in the disabled state. A write to ‘dpa_size’ releases the previous DPA allocation and then attempts to allocate from the free capacity in the device partition referred to by ‘decoderX.Y/mode’. Allocate and free requests can only be performed on the highest instance number disabled decoder with non-zero size. I.e. allocations are enforced to occur in increasing ‘decoderX.Y/id’ order and frees are enforced to occur in decreasing ‘decoderX.Y/id’ order.
/sys/bus/cxl/devices/decoderX.Y/interleave_granularity |
Defined on file sysfs-bus-cxl
(RO) The number of consecutive bytes of host physical address space this decoder claims at address N before the decode rotates to the next target in the interleave at address N + interleave_granularity (assuming N is aligned to interleave_granularity).
/sys/bus/cxl/devices/decoderX.Y/interleave_ways |
Defined on file sysfs-bus-cxl
(RO) The number of targets across which this decoder’s host physical address (HPA) memory range is interleaved. The device maps every Nth block of HPA (of size == ‘interleave_granularity’) to consecutive DPA addresses. The decoder’s position in the interleave is determined by the device’s (endpoint or switch) switch ancestry. For root decoders their interleave is specified by platform firmware and they only specify a downstream target order for host bridges.
/sys/bus/cxl/devices/decoderX.Y/locked |
Defined on file sysfs-bus-cxl
(RO) CXL HDM decoders have the capability to lock the configuration until the next device reset. For decoders of devtype “cxl_decoder_root” there is no standard facility to unlock them. For decoders of devtype “cxl_decoder_switch” a secondary bus reset, of the PCIe bridge that provides the bus for this decoders uport, unlocks / resets the decoder.
/sys/bus/cxl/devices/decoderX.Y/mode |
Defined on file sysfs-bus-cxl
(RW) When a CXL decoder is of devtype “cxl_decoder_endpoint” it translates from a host physical address range, to a device local address range. Device-local address ranges are further split into a ‘ram’ (volatile memory) range and ‘pmem’ (persistent memory) range. The ‘mode’ attribute emits one of ‘ram’, ‘pmem’, ‘mixed’, or ‘none’. The ‘mixed’ indication is for error cases when a decoder straddles the volatile/persistent partition boundary, and ‘none’ indicates the decoder is not actively decoding, or no DPA allocation policy has been set.
‘mode’ can be written, when the decoder is in the ‘disabled’ state, with either ‘ram’ or ‘pmem’ to set the boundaries for the next allocation.
/sys/bus/cxl/devices/decoderX.Y/qos_class |
Defined on file sysfs-bus-cxl
(RO) For CXL host platforms that support “QoS Telemmetry” this root-decoder-only attribute conveys a platform specific cookie that identifies a QoS performance class for the CXL Window. This class-id can be compared against a similar “qos_class” published for each memory-type that an endpoint supports. While it is not required that endpoints map their local memory-class to a matching platform class, mismatches are not recommended and there are platform specific side-effects that may result.
/sys/bus/cxl/devices/decoderX.Y/target_list |
Defined on file sysfs-bus-cxl
(RO) Display a comma separated list of the current decoder target configuration. The list is ordered by the current configured interleave order of the decoder’s dport instances. Each entry in the list is a dport id.
/sys/bus/cxl/devices/decoderX.Y/target_type |
Defined on file sysfs-bus-cxl
(RO) When a CXL decoder is of devtype “cxl_decoder_switch”, it can optionally decode either accelerator memory (type-2) or expander memory (type-3). The ‘target_type’ attribute indicates the current setting which may dynamically change based on what memory regions are activated in this decode hierarchy.
/sys/bus/cxl/devices/decoderX.Y/{start,size} |
Defined on file sysfs-bus-cxl
(RO) The ‘start’ and ‘size’ attributes together convey the physical address base and number of bytes mapped in the decoder’s decode window. For decoders of devtype “cxl_decoder_root” the address range is fixed. For decoders of devtype “cxl_decoder_switch” the address is bounded by the decode range of the cxl_port ancestor of the decoder’s cxl_port, and dynamically updates based on the active memory regions in that address space.
/sys/bus/cxl/devices/endpointX/CDAT |
Defined on file sysfs-bus-cxl
(RO) If this sysfs entry is not present no DOE mailbox was found to support CDAT data. If it is present and the length of the data is 0 reading the CDAT data failed. Otherwise the CDAT data is reported.
/sys/bus/cxl/devices/memX/firmware/ |
Defined on file sysfs-bus-cxl
(RW) Firmware uploader mechanism. The different files under this directory can be used to upload and activate new firmware for CXL devices. The interfaces under this are documented in sysfs-class-firmware.
/sys/bus/cxl/devices/memX/firmware_version |
Defined on file sysfs-bus-cxl
(RO) “FW Revision” string as reported by the Identify Memory Device Output Payload in the CXL-2.0 specification.
/sys/bus/cxl/devices/memX/numa_node |
Defined on file sysfs-bus-cxl
(RO) If NUMA is enabled and the platform has affinitized the host PCI device for this memory device, emit the CPU node affinity for this device.
/sys/bus/cxl/devices/memX/pmem/qos_class |
Defined on file sysfs-bus-cxl
(RO) For CXL host platforms that support “QoS Telemmetry” this attribute conveys a comma delimited list of platform specific cookies that identifies a QoS performance class for the persistent partition of the CXL mem device. These class-ids can be compared against a similar “qos_class” published for a root decoder. While it is not required that the endpoints map their local memory-class to a matching platform class, mismatches are not recommended and there are platform specific performance related side-effects that may result. First class-id is displayed.
/sys/bus/cxl/devices/memX/pmem/size |
Defined on file sysfs-bus-cxl
(RO) “Persistent Only Capacity” as bytes. Represents the identically named field in the Identify Memory Device Output Payload in the CXL-2.0 specification.
/sys/bus/cxl/devices/memX/ram/qos_class |
Defined on file sysfs-bus-cxl
(RO) For CXL host platforms that support “QoS Telemmetry” this attribute conveys a comma delimited list of platform specific cookies that identifies a QoS performance class for the volatile partition of the CXL mem device. These class-ids can be compared against a similar “qos_class” published for a root decoder. While it is not required that the endpoints map their local memory-class to a matching platform class, mismatches are not recommended and there are platform specific performance related side-effects that may result. First class-id is displayed.
/sys/bus/cxl/devices/memX/ram/size |
Defined on file sysfs-bus-cxl
(RO) “Volatile Only Capacity” as bytes. Represents the identically named field in the Identify Memory Device Output Payload in the CXL-2.0 specification.
/sys/bus/cxl/devices/memX/security/sanitize |
Defined on file sysfs-bus-cxl
(WO) Write a boolean ‘true’ string value to this attribute to sanitize the device to securely re-purpose or decommission it. This is done by ensuring that all user data and meta-data, whether it resides in persistent capacity, volatile capacity, or the LSA, is made permanently unavailable by whatever means is appropriate for the media type. This functionality requires the device to be disabled, that is, not actively decoding any HPA ranges. This permits avoiding explicit global CPU cache management, relying instead for it to be done when a region transitions between software programmed and hardware committed states. If this file is not present, then there is no hardware support for the operation.
What /sys/bus/cxl/devices/memX/security/erase (WO) Write a boolean ‘true’ string value to this attribute to secure erase user data by changing the media encryption keys for all user data areas of the device. This functionality requires the device to be disabled, that is, not actively decoding any HPA ranges. This permits avoiding explicit global CPU cache management, relying instead for it to be done when a region transitions between software programmed and hardware committed states. If this file is not present, then there is no hardware support for the operation.
/sys/bus/cxl/devices/memX/security/state |
Defined on file sysfs-bus-cxl
(RO) Reading this file will display the CXL security state for that device. Such states can be: ‘disabled’, ‘sanitize’, when a sanitization is currently underway; or those available only for persistent memory: ‘locked’, ‘unlocked’ or ‘frozen’. This sysfs entry is select/poll capable from userspace to notify upon completion of a sanitize operation.
/sys/bus/cxl/devices/memX/serial |
Defined on file sysfs-bus-cxl
(RO) 64-bit serial number per the PCIe Device Serial Number capability. Mandatory for CXL devices, see CXL 2.0 8.1.12.2 Memory Device PCIe Capabilities and Extended Capabilities.
/sys/bus/cxl/devices/memX/trigger_poison_list |
Defined on file sysfs-bus-cxl
(WO) When a boolean ‘true’ is written to this attribute the memdev driver retrieves the poison list from the device. The list consists of addresses that are poisoned, or would result in poison if accessed, and the source of the poison. This attribute is only visible for devices supporting the capability. The retrieved errors are logged as kernel events when cxl_poison event tracing is enabled.
/sys/bus/cxl/devices/portX/decoders_committed |
Defined on file sysfs-bus-cxl
(RO) A memory device is considered active when any of its decoders are in the “committed” state (See CXL 3.0 8.2.4.19.7 CXL HDM Decoder n Control Register). Hotplug and destructive operations like “sanitize” are blocked while device is actively decoding a Host Physical Address range. Note that this number may be elevated without any regionX objects active or even enumerated, as this may be due to decoders established by platform firwmare or a previous kernel (kexec).
/sys/bus/cxl/devices/portX/dportY |
Defined on file sysfs-bus-cxl
(RO) CXL port objects are enumerated from either a platform firmware device (ACPI0017 and ACPI0016) or PCIe switch upstream port with CXL component registers. The ‘dportY’ symlink identifies one or more downstream ports that the upstream port may target in its decode of CXL memory resources. The ‘Y’ integer reflects the hardware port unique-id used in the hardware decoder target list.
/sys/bus/cxl/devices/portX/uport |
Defined on file sysfs-bus-cxl
(RO) CXL port objects are enumerated from either a platform firmware device (ACPI0017 and ACPI0016) or PCIe switch upstream port with CXL component registers. The ‘uport’ symlink connects the CXL portX object to the device that published the CXL port capability.
/sys/bus/cxl/devices/regionZ/accessY/read_bandwidth |
Defined on file sysfs-bus-cxl
(RO) The aggregated read or write bandwidth of the region. The number is the accumulated read or write bandwidth of all CXL memory devices that contributes to the region in MB/s. It is identical data that should appear in /sys/devices/system/node/nodeX/accessY/initiators/read_bandwidth or /sys/devices/system/node/nodeX/accessY/initiators/write_bandwidth. See stable/sysfs-devices-node. access0 provides the number to the closest initiator and access1 provides the number to the closest CPU.
/sys/bus/cxl/devices/regionZ/accessY/read_latency |
Defined on file sysfs-bus-cxl
(RO) The read or write latency of the region. The number is the worst read or write latency of all CXL memory devices that contributes to the region in nanoseconds. It is identical data that should appear in /sys/devices/system/node/nodeX/accessY/initiators/read_latency or /sys/devices/system/node/nodeX/accessY/initiators/write_latency. See stable/sysfs-devices-node. access0 provides the number to the closest initiator and access1 provides the number to the closest CPU.
/sys/bus/cxl/devices/regionZ/commit |
Defined on file sysfs-bus-cxl
(RW) Write a boolean ‘true’ string value to this attribute to trigger the region to transition from the software programmed state to the actively decoding in hardware state. The commit operation in addition to validating that the region is in proper configured state, validates that the decoders are being committed in spec mandated order (last committed decoder id + 1), and checks that the hardware accepts the commit request. Reading this value indicates whether the region is committed or not.
/sys/bus/cxl/devices/regionZ/interleave_granularity |
Defined on file sysfs-bus-cxl
(RW) Set the number of consecutive bytes each device in the interleave set will claim. The possible interleave granularity values are determined by the CXL spec and the participating devices.
/sys/bus/cxl/devices/regionZ/interleave_ways |
Defined on file sysfs-bus-cxl
(RW) Configures the number of devices participating in the region is set by writing this value. Each device will provide 1/interleave_ways of storage for the region.
/sys/bus/cxl/devices/regionZ/mode |
Defined on file sysfs-bus-cxl
(RO) The mode of a region is established at region creation time and dictates the mode of the endpoint decoder that comprise the region. For more details on the possible modes see /sys/bus/cxl/devices/decoderX.Y/mode
/sys/bus/cxl/devices/regionZ/resource |
Defined on file sysfs-bus-cxl
(RO) A region is a contiguous partition of a CXL root decoder address space. Region capacity is allocated by writing to the size attribute, the resulting physical address space determined by the driver is reflected here. It is therefore not useful to read this before writing a value to the size attribute.
/sys/bus/cxl/devices/regionZ/size |
Defined on file sysfs-bus-cxl
(RW) System physical address space to be consumed by the region. When written trigger the driver to allocate space out of the parent root decoder’s address space. When read the size of the address space is reported and should match the span of the region’s resource attribute. Size shall be set after the interleave configuration parameters. Once set it cannot be changed, only freed by writing 0. The kernel makes no guarantees that data is maintained over an address space freeing event, and there is no guarantee that a free followed by an allocate results in the same address being allocated.
/sys/bus/cxl/devices/regionZ/target[0..N] |
Defined on file sysfs-bus-cxl
(RW) Write an endpoint decoder object name to ‘targetX’ where X is the intended position of the endpoint device in the region interleave and N is the ‘interleave_ways’ setting for the region. ENXIO is returned if the write results in an impossible to map decode scenario, like the endpoint is unreachable at that position relative to the root decoder interleave. EBUSY is returned if the position in the region is already occupied, or if the region is not in a state to accept interleave configuration changes. EINVAL is returned if the object name is not an endpoint decoder. Once all positions have been successfully written a final validation for decode conflicts is performed before activating the region.
/sys/bus/cxl/devices/regionZ/uuid |
Defined on file sysfs-bus-cxl
(RW) Write a unique identifier for the region. This field must be set for persistent regions and it must not conflict with the UUID of another region. For volatile ram regions this attribute is a read-only empty string.
/sys/bus/cxl/devices/{port,endpoint}X/parent_dport |
Defined on file sysfs-bus-cxl
(RO) CXL port objects are instantiated for each upstream port in a CXL/PCIe switch, and for each endpoint to map the corresponding memory device into the CXL port hierarchy. When a descendant CXL port (switch or endpoint) is enumerated it is useful to know which ‘dport’ object in the parent CXL port routes to this descendant. The ‘parent_dport’ symlink points to the device representing the downstream port of a CXL switch that routes to {port,endpoint}X.
/sys/bus/cxl/flush |
Defined on file sysfs-bus-cxl
(WO) If userspace manually unbinds a port the kernel schedules all descendant memdevs for unbind. Writing ‘1’ to this attribute flushes that work.
/sys/bus/dax/devices/daxX.Y/align |
Defined on file sysfs-bus-dax
(RW) Provides a way to specify an alignment for a dax device. Values allowed are constrained by the physical address ranges that back the dax device, and also by arch requirements.
/sys/bus/dax/devices/daxX.Y/mapping |
Defined on file sysfs-bus-dax
(WO) Provides a way to allocate a mapping range under a dax device. Specified in the format <start>-<end>.
/sys/bus/dax/devices/daxX.Y/mapping[0..N]/start |
/sys/bus/dax/devices/daxX.Y/mapping[0..N]/end |
/sys/bus/dax/devices/daxX.Y/mapping[0..N]/page_offset |
Defined on file sysfs-bus-dax
(RO) A dax device may have multiple constituent discontiguous address ranges. These are represented by the different ‘mappingX’ subdirectories. The ‘start’ attribute indicates the start physical address for the given range. The ‘end’ attribute indicates the end physical address for the given range. The ‘page_offset’ attribute indicates the offset of the current range in the dax device.
/sys/bus/dax/devices/daxX.Y/memmap_on_memory |
Defined on file sysfs-bus-dax
(RW) Control the memmap_on_memory setting if the dax device were to be hotplugged as system memory. This determines whether the ‘altmap’ for the hotplugged memory will be placed on the device being hotplugged (memmap_on_memory=1) or if it will be placed on regular memory (memmap_on_memory=0). This attribute must be set before the device is handed over to the ‘kmem’ driver (i.e. hotplugged into system-ram). Additionally, this depends on CONFIG_MHP_MEMMAP_ON_MEMORY, and a globally enabled memmap_on_memory parameter for memory_hotplug. This is typically set on the kernel command line - memory_hotplug.memmap_on_memory set to ‘true’ or ‘force’.”
/sys/bus/dax/devices/daxX.Y/numa_node |
Defined on file sysfs-bus-dax
(RO) If NUMA is enabled and the platform has affinitized the backing device for this dax device, emit the CPU node affinity for this device.
/sys/bus/dax/devices/daxX.Y/resource |
Defined on file sysfs-bus-dax
(RO) The resource attribute indicates the starting physical address of a dax device. In case of a device with multiple constituent ranges, it indicates the starting address of the first range.
/sys/bus/dax/devices/daxX.Y/size |
Defined on file sysfs-bus-dax
(RW) The size attribute indicates the total size of a dax device. For creating subdivided dax devices, or for resizing an existing device, the new size can be written to this as part of the reconfiguration process.
/sys/bus/dax/devices/daxX.Y/target_node |
Defined on file sysfs-bus-dax
(RO) The target-node attribute is the Linux numa-node that a device-dax instance may create when it is online. Prior to being online the device’s ‘numa_node’ property reflects the closest online cpu node which is the typical expectation of a device ‘numa_node’. Once it is online it becomes its own distinct numa node.
/sys/bus/dfl/devices/dfl_dev.X/feature_id |
Defined on file sysfs-bus-dfl
Read-only. It returns feature identifier local to its DFL FIU type.
Format: 0x%x
/sys/bus/dfl/devices/dfl_dev.X/fec_mode |
Defined on file sysfs-bus-dfl-devices-n3000-nios
Read-only. Returns the FEC mode of the 25G links of the ethernet retimers configured by Nios firmware. “rs” for Reed Solomon FEC, “kr” for Fire Code FEC, “no” for NO FEC. “not supported” if the FEC mode setting is not supported, this happens when the Nios firmware version major < 3, or no link is configured to 25G. Format: string
/sys/bus/dfl/devices/dfl_dev.X/infX_cal_fail |
Defined on file sysfs-bus-dfl-devices-emif
Read-only. It indicates if the calibration failed on this memory interface. “1” for calibration failure, “0” for OK. Format: %u
/sys/bus/dfl/devices/dfl_dev.X/infX_clear |
Defined on file sysfs-bus-dfl-devices-emif
Write-only. Writing “1” to this file will zero out all memory data in this memory interface. Writing of other values is invalid. Format: %u
/sys/bus/dfl/devices/dfl_dev.X/infX_init_done |
Defined on file sysfs-bus-dfl-devices-emif
Read-only. It indicates if the initialization completed on this memory interface. “1” for initialization complete, “0” for not yet. Format: %u
/sys/bus/dfl/devices/dfl_dev.X/nios_fw_version |
Defined on file sysfs-bus-dfl-devices-n3000-nios
Read-only. Returns the version of the Nios firmware in the FPGA. Its format is “major.minor.patch”. Format: %x.%x.%x
/sys/bus/dfl/devices/dfl_dev.X/retimer_A_mode |
Defined on file sysfs-bus-dfl-devices-n3000-nios
Read-only. Returns the enumeration value of the working mode of the retimer A configured by the Nios firmware. The value is read out from shared registers filled by the Nios firmware. Now the values could be:
“0”: Reset
“1”: 4x10G
“2”: 4x25G
“3”: 2x25G
“4”: 2x25G+2x10G
“5”: 1x25G
If the Nios firmware is updated in future to support more retimer modes, more enumeration value is expected. Format: 0x%x
/sys/bus/dfl/devices/dfl_dev.X/retimer_B_mode |
Defined on file sysfs-bus-dfl-devices-n3000-nios
Read-only. Returns the enumeration value of the working mode of the retimer B configured by the Nios firmware. The value format is the same as retimer_A_mode.
/sys/bus/dfl/devices/dfl_dev.X/type |
Defined on file sysfs-bus-dfl
Read-only. It returns type of DFL FIU of the device. Now DFL supports 2 FIU types, 0 for FME, 1 for PORT.
Format: 0x%x
/sys/bus/drivers/corsair/<dev>/current_profile |
Defined on file sysfs-driver-hid-corsair
Get/set the current selected profile. Values are from 1 to 3.
/sys/bus/drivers/corsair/<dev>/macro_mode |
Defined on file sysfs-driver-hid-corsair
Get/set the current playback mode. “SW” for software mode where G-keys triggers their regular key codes. “HW” for hardware playback mode where the G-keys play their macro from the on-board memory.
/sys/bus/event_source/devices/<dev>/caps |
Defined on file sysfs-bus-event_source-devices-caps
Attribute group to describe the capabilities exposed for a particular pmu. Each attribute of this group can expose information specific to a PMU, say pmu_name, so that userspace can understand some of the feature which the platform specific PMU supports.
One of the example available capability in supported platform like Intel is pmu_name, which exposes underlying CPU name known to the PMU driver.
Example output in powerpc: grep . /sys/bus/event_source/devices/cpu/caps/* /sys/bus/event_source/devices/cpu/caps/pmu_name:POWER9
The “branch_counter_nr” in the supported platform exposes the maximum number of counters which can be shown in the u64 counters of PERF_SAMPLE_BRANCH_COUNTERS, while the “branch_counter_width” exposes the width of each counter. Both of them can be used by the perf tool to parse the logged counters in each branch.
/sys/bus/event_source/devices/<dev>/format |
Defined on file sysfs-bus-event_source-devices-format
Attribute group to describe the magic bits that go into perf_event_attr::config[012] for a particular pmu. Each attribute of this group defines the ‘hardware’ bitmask we want to export, so that userspace can deal with sane name/value pairs.
Userspace must be prepared for the possibility that attributes define overlapping bit ranges. For example:
attr1 = 'config:0-23'
attr2 = 'config:0-7'
attr3 = 'config:12-35'
Example: ‘config1:1,6-10,44’ Defines contents of attribute that occupies bits 1,6-10,44 of perf_event_attr::config1.
/sys/bus/event_source/devices/<pmu>/events/<event> |
Defined on file sysfs-bus-event_source-devices-events
Per-pmu performance monitoring events specific to the running system
Each file (except for some of those with a ‘.’ in them, ‘.unit’ and ‘.scale’) in the ‘events’ directory describes a single performance monitoring event supported by the <pmu>. The name of the file is the name of the event.
As performance monitoring event names are case insensitive in the perf tool, the perf tool only looks for lower or upper case event names in sysfs to avoid scanning the directory. It is therefore required the name of the event here is either lower or upper case.
File contents:
<term>[=<value>][,<term>[=<value>]]...
Where <term> is one of the terms listed under /sys/bus/event_source/devices/<pmu>/format/ and <value> is a number is base-16 format with a ‘0x’ prefix (lowercase only). If a <term> is specified alone (without an assigned value), it is implied that 0x1 is assigned to that <term>.
Examples (each of these lines would be in a separate file):
event=0x2abc event=0x423,inv,cmask=0x3 domain=0x1,offset=0x8,starting_index=0xffff domain=0x1,offset=0x8,core=?
Each of the assignments indicates a value to be assigned to a particular set of bits (as defined by the format file corresponding to the <term>) in the perf_event structure passed to the perf_open syscall.
In the case of the last example, a value replacing “?” would need to be provided by the user selecting the particular event. This is referred to as “event parameterization”. Event parameters have the format ‘param=?’.
/sys/bus/event_source/devices/<pmu>/events/<event>.scale |
Defined on file sysfs-bus-event_source-devices-events
Perf event scaling factors
A string representing a floating point value expressed in scientific notation to be multiplied by the event count received from the kernel to match the unit specified in the <event>.unit file.
Example:
2.3283064365386962890625e-10
This is provided to avoid performing floating point arithmetic in the kernel.
/sys/bus/event_source/devices/<pmu>/events/<event>.unit |
Defined on file sysfs-bus-event_source-devices-events
Perf event units
A string specifying the English plural numerical unit that <event> (once multiplied by <event>.scale) represents.
Example:
Joules
/sys/bus/event_source/devices/dfl_fmeX/cpumask |
Defined on file sysfs-bus-event_source-devices-dfl_fme
Read-only. This file always returns cpu which the PMU is bound for access to all fme pmu performance monitoring events.
/sys/bus/event_source/devices/dfl_fmeX/events |
Defined on file sysfs-bus-event_source-devices-dfl_fme
Read-only. Attribute group to describe performance monitoring events specific to fme. Each attribute in this group describes a single performance monitoring event supported by this fme pmu. The name of the file is the name of the event. (See ABI/testing/sysfs-bus-event_source-devices-events).
All supported performance monitoring events are listed below.
Basic events (evtype=0x00):
clock = "event=0x00,evtype=0x00,portid=0xff"
Cache events (evtype=0x01):
cache_read_hit = "event=0x00,evtype=0x01,portid=0xff"
cache_read_miss = "event=0x01,evtype=0x01,portid=0xff"
cache_write_hit = "event=0x02,evtype=0x01,portid=0xff"
cache_write_miss = "event=0x03,evtype=0x01,portid=0xff"
cache_hold_request = "event=0x05,evtype=0x01,portid=0xff"
cache_data_write_port_contention =
"event=0x06,evtype=0x01,portid=0xff"
cache_tag_write_port_contention =
"event=0x07,evtype=0x01,portid=0xff"
cache_tx_req_stall = "event=0x08,evtype=0x01,portid=0xff"
cache_rx_req_stall = "event=0x09,evtype=0x01,portid=0xff"
cache_eviction = "event=0x0a,evtype=0x01,portid=0xff"
Fabric events (evtype=0x02):
fab_pcie0_read = "event=0x00,evtype=0x02,portid=0xff"
fab_pcie0_write = "event=0x01,evtype=0x02,portid=0xff"
fab_pcie1_read = "event=0x02,evtype=0x02,portid=0xff"
fab_pcie1_write = "event=0x03,evtype=0x02,portid=0xff"
fab_upi_read = "event=0x04,evtype=0x02,portid=0xff"
fab_upi_write = "event=0x05,evtype=0x02,portid=0xff"
fab_mmio_read = "event=0x06,evtype=0x02,portid=0xff"
fab_mmio_write = "event=0x07,evtype=0x02,portid=0xff"
fab_port_pcie0_read = "event=0x00,evtype=0x02,portid=?"
fab_port_pcie0_write = "event=0x01,evtype=0x02,portid=?"
fab_port_pcie1_read = "event=0x02,evtype=0x02,portid=?"
fab_port_pcie1_write = "event=0x03,evtype=0x02,portid=?"
fab_port_upi_read = "event=0x04,evtype=0x02,portid=?"
fab_port_upi_write = "event=0x05,evtype=0x02,portid=?"
fab_port_mmio_read = "event=0x06,evtype=0x02,portid=?"
fab_port_mmio_write = "event=0x07,evtype=0x02,portid=?"
VTD events (evtype=0x03):
vtd_port_read_transaction = "event=0x00,evtype=0x03,portid=?"
vtd_port_write_transaction = "event=0x01,evtype=0x03,portid=?"
vtd_port_devtlb_read_hit = "event=0x02,evtype=0x03,portid=?"
vtd_port_devtlb_write_hit = "event=0x03,evtype=0x03,portid=?"
vtd_port_devtlb_4k_fill = "event=0x04,evtype=0x03,portid=?"
vtd_port_devtlb_2m_fill = "event=0x05,evtype=0x03,portid=?"
vtd_port_devtlb_1g_fill = "event=0x06,evtype=0x03,portid=?"
VTD SIP events (evtype=0x04):
vtd_sip_iotlb_4k_hit = "event=0x00,evtype=0x04,portid=0xff"
vtd_sip_iotlb_2m_hit = "event=0x01,evtype=0x04,portid=0xff"
vtd_sip_iotlb_1g_hit = "event=0x02,evtype=0x04,portid=0xff"
vtd_sip_slpwc_l3_hit = "event=0x03,evtype=0x04,portid=0xff"
vtd_sip_slpwc_l4_hit = "event=0x04,evtype=0x04,portid=0xff"
vtd_sip_rcc_hit = "event=0x05,evtype=0x04,portid=0xff"
vtd_sip_iotlb_4k_miss = "event=0x06,evtype=0x04,portid=0xff"
vtd_sip_iotlb_2m_miss = "event=0x07,evtype=0x04,portid=0xff"
vtd_sip_iotlb_1g_miss = "event=0x08,evtype=0x04,portid=0xff"
vtd_sip_slpwc_l3_miss = "event=0x09,evtype=0x04,portid=0xff"
vtd_sip_slpwc_l4_miss = "event=0x0a,evtype=0x04,portid=0xff"
vtd_sip_rcc_miss = "event=0x0b,evtype=0x04,portid=0xff"
/sys/bus/event_source/devices/dfl_fmeX/format |
Defined on file sysfs-bus-event_source-devices-dfl_fme
Read-only. Attribute group to describe the magic bits that go into perf_event_attr.config for a particular pmu. (See ABI/testing/sysfs-bus-event_source-devices-format).
Each attribute under this group defines a bit range of the perf_event_attr.config. All supported attributes are listed below:
event = "config:0-11" - event ID
evtype = "config:12-15" - event type
portid = "config:16-23" - event source
For example:
fab_mmio_read = "event=0x06,evtype=0x02,portid=0xff"
It shows this fab_mmio_read is a fabric type (0x02) event with 0x06 local event id for overall monitoring (portid=0xff).
/sys/bus/event_source/devices/dmar*/cpumask |
Defined on file sysfs-bus-event_source-devices-iommu
Read-only. This file always returns the CPU to which the IOMMU pmu is bound for access to all IOMMU pmu performance monitoring events.
/sys/bus/event_source/devices/dmar*/format |
Defined on file sysfs-bus-event_source-devices-iommu
Read-only. Attribute group to describe the magic bits that go into perf_event_attr.config, perf_event_attr.config1 or perf_event_attr.config2 for the IOMMU pmu. (See also ABI/testing/sysfs-bus-event_source-devices-format).
Each attribute in this group defines a bit range in perf_event_attr.config, perf_event_attr.config1, or perf_event_attr.config2. All supported attributes are listed below (See the VT-d Spec 4.0 for possible attribute values):
event = "config:0-27" - event ID
event_group = "config:28-31" - event group ID
filter_requester_en = "config1:0" - Enable Requester ID filter
filter_domain_en = "config1:1" - Enable Domain ID filter
filter_pasid_en = "config1:2" - Enable PASID filter
filter_ats_en = "config1:3" - Enable Address Type filter
filter_page_table_en= "config1:4" - Enable Page Table Level filter
filter_requester_id = "config1:16-31" - Requester ID filter
filter_domain = "config1:32-47" - Domain ID filter
filter_pasid = "config2:0-21" - PASID filter
filter_ats = "config2:24-28" - Address Type filter
filter_page_table = "config2:32-36" - Page Table Level filter
/sys/bus/event_source/devices/dsa*/cpumask |
Defined on file sysfs-bus-event_source-devices-dsa
Read-only. This file always returns the cpu to which the IDXD DSA pmu is bound for access to all dsa pmu performance monitoring events.
/sys/bus/event_source/devices/dsa*/format |
Defined on file sysfs-bus-event_source-devices-dsa
Read-only. Attribute group to describe the magic bits that go into perf_event_attr.config or perf_event_attr.config1 for the IDXD DSA pmu. (See also ABI/testing/sysfs-bus-event_source-devices-format).
Each attribute in this group defines a bit range in perf_event_attr.config or perf_event_attr.config1. All supported attributes are listed below (See the IDXD DSA Spec for possible attribute values):
event_category = "config:0-3" - event category
event = "config:4-31" - event ID
filter_wq = "config1:0-31" - workqueue filter
filter_tc = "config1:32-39" - traffic class filter
filter_pgsz = "config1:40-43" - page size filter
filter_sz = "config1:44-51" - transfer size filter
filter_eng = "config1:52-59" - engine filter
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
This directory contains files for tuning the PCIe link parameters(events). Each file is named after the event of the PCIe link.
See HiSilicon PCIe Tune and Trace device for more information.
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/qos_tx_cpl |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(RW) Controls the weight of Tx completion TLPs, which influence the proportion of outbound completion TLPs on the PCIe link. The available tune data is [0, 1, 2]. Writing a negative value will return an error, and out of range values will be converted to 2. The value indicates a probable level of the event.
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/qos_tx_np |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(RW) Controls the weight of Tx non-posted TLPs, which influence the proportion of outbound non-posted TLPs on the PCIe link. The available tune data is [0, 1, 2]. Writing a negative value will return an error, and out of range values will be converted to 2. The value indicates a probable level of the event.
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/qos_tx_p |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(RW) Controls the weight of Tx posted TLPs, which influence the proportion of outbound posted TLPs on the PCIe link. The available tune data is [0, 1, 2]. Writing a negative value will return an error, and out of range values will be converted to 2. The value indicates a probable level of the event.
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/rx_alloc_buf_level |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(RW) Control the allocated buffer watermark for inbound packets. The packets will be stored in the buffer first and then transmitted either when the watermark reached or when timed out. The available tune data is [0, 1, 2]. Writing a negative value will return an error, and out of range values will be converted to 2. The value indicates a probable level of the event.
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/tx_alloc_buf_level |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(RW) Control the allocated buffer watermark of outbound packets. The packets will be stored in the buffer first and then transmitted either when the watermark reached or when timed out. The available tune data is [0, 1, 2]. Writing a negative value will return an error, and out of range values will be converted to 2. The value indicates a probable level of the event.
/sys/bus/event_source/devices/hv_24x7/event_descs/<event-name> |
Defined on file sysfs-bus-event_source-devices-hv_24x7
Provides the description of a particular event as provided by the firmware. If firmware does not provide a description, no file will be created.
Note that the event-name lacks the domain suffix appended for events in the events/ dir.
/sys/bus/event_source/devices/hv_24x7/event_long_descs/<event-name> |
Defined on file sysfs-bus-event_source-devices-hv_24x7
Provides the “long” description of a particular event as provided by the firmware. If firmware does not provide a description, no file will be created.
Note that the event-name lacks the domain suffix appended for events in the events/ dir.
/sys/bus/event_source/devices/hv_24x7/format |
Defined on file sysfs-bus-event_source-devices-hv_24x7
Read-only. Attribute group to describe the magic bits that go into perf_event_attr.config for a particular pmu. (See ABI/testing/sysfs-bus-event_source-devices-format).
Each attribute under this group defines a bit range of the perf_event_attr.config. All supported attributes are listed below:
chip = "config:16-31"
core = "config:16-31"
domain = "config:0-3"
lpar = "config:0-15"
offset = "config:32-63"
vcpu = "config:16-31"
For example:
PM_PB_CYC = "domain=1,offset=0x80,chip=?,lpar=0x0"
In this event, ‘?’ after chip specifies that this value will be provided by user while running this event.
/sys/bus/event_source/devices/hv_24x7/interface/catalog |
Defined on file sysfs-bus-event_source-devices-hv_24x7
Provides access to the binary “24x7 catalog” provided by the hypervisor on POWER7 and 8 systems. This catalog lists events available from the powerpc “hv_24x7” pmu. Its format is documented here: https://raw.githubusercontent.com/jmesmon/catalog-24x7/master/hv-24x7-catalog.h
/sys/bus/event_source/devices/hv_24x7/interface/catalog_length |
Defined on file sysfs-bus-event_source-devices-hv_24x7
A number equal to the length in bytes of the catalog. This is also extractable from the provided binary “catalog” sysfs entry.
/sys/bus/event_source/devices/hv_24x7/interface/catalog_version |
Defined on file sysfs-bus-event_source-devices-hv_24x7
Exposes the “version” field of the 24x7 catalog. This is also extractable from the provided binary “catalog” sysfs entry.
/sys/bus/event_source/devices/hv_gpci/format |
Defined on file sysfs-bus-event_source-devices-hv_gpci
Read-only. Attribute group to describe the magic bits that go into perf_event_attr.config for a particular pmu. (See ABI/testing/sysfs-bus-event_source-devices-format).
Each attribute under this group defines a bit range of the perf_event_attr.config. All supported attributes are listed below:
counter_info_version = "config:16-23"
length = "config:24-31"
partition_id = "config:32-63"
request = "config:0-31"
sibling_part_id = "config:32-63"
hw_chip_id = "config:32-63"
offset = "config:32-63"
phys_processor_idx = "config:32-63"
secondary_index = "config:0-15"
starting_index = "config:32-63"
For example:
processor_core_utilization_instructions_completed = "request=0x94,
phys_processor_idx=?,counter_info_version=0x8,
length=8,offset=0x18"
In this event, ‘?’ after phys_processor_idx specifies this value this value will be provided by user while running this event.
/sys/bus/event_source/devices/hv_gpci/interface/collect_privileged |
Defined on file sysfs-bus-event_source-devices-hv_gpci
‘0’ if the hypervisor is configured to forbid access to event counters being accumulated by other guests and to physical domain event counters.
‘1’ if that access is allowed.
/sys/bus/event_source/devices/hv_gpci/interface/expanded |
Defined on file sysfs-bus-event_source-devices-hv_gpci
0 or 1. Indicates whether we have access to “EXPANDED” events (listed in arch/powerpc/perf/hv-gpci.h).
/sys/bus/event_source/devices/hv_gpci/interface/ga |
Defined on file sysfs-bus-event_source-devices-hv_gpci
0 or 1. Indicates whether we have access to “GA” events (listed in arch/powerpc/perf/hv-gpci.h).
/sys/bus/event_source/devices/hv_gpci/interface/kernel_version |
Defined on file sysfs-bus-event_source-devices-hv_gpci
A number indicating the latest version of the gpci interface that the kernel is aware of.
/sys/bus/event_source/devices/hv_gpci/interface/lab |
Defined on file sysfs-bus-event_source-devices-hv_gpci
0 or 1. Indicates whether we have access to “LAB” events (listed in arch/powerpc/perf/hv-gpci.h).
/sys/bus/event_source/devices/hv_gpci/interface/version |
Defined on file sysfs-bus-event_source-devices-hv_gpci
A number indicating the version of the gpci interface that the hypervisor reports supporting.
/sys/bus/event_source/devices/nmemX/cpumask |
Defined on file sysfs-bus-nvdimm
(RO) This sysfs file exposes the cpumask which is designated to to retrieve nvdimm pmu event counter data.
/sys/bus/event_source/devices/nmemX/events |
Defined on file sysfs-bus-nvdimm
(RO) Attribute group to describe performance monitoring events for the nvdimm memory device. Each attribute in this group describes a single performance monitoring event supported by this nvdimm pmu. The name of the file is the name of the event. (See ABI/testing/sysfs-bus-event_source-devices-events). A listing of the events supported by a given nvdimm provider type can be found in Documentation/driver-api/nvdimm/$provider.
/sys/bus/event_source/devices/nmemX/format |
Defined on file sysfs-bus-nvdimm
(RO) Attribute group to describe the magic bits that go into perf_event_attr.config for a particular pmu. (See ABI/testing/sysfs-bus-event_source-devices-format).
Each attribute under this group defines a bit range of the perf_event_attr.config. Supported attribute is listed below:
event = "config:0-4" - event ID
For example:
ctl_res_cnt = "event=0x1"
/sys/bus/event_source/devices/uncore_*/alias |
Defined on file sysfs-bus-event_source-devices-uncore
Read-only. An attribute to describe the alias name of the uncore PMU if an alias exists on some platforms. The ‘perf(1)’ tool should treat both names the same. They both can be used to access the uncore PMU.
Example:
$ cat /sys/devices/uncore_cha_2/alias uncore_type_0_2
/sys/bus/event_source/devices/vpa_pmu/events |
Defined on file sysfs-bus-event_source-devices-vpa-pmu
Read-only. Attribute group to describe performance monitoring events for the Virtual Processor Area events. Each attribute in this group describes a single performance monitoring event supported by vpa_pmu. The name of the file is the name of the event (See ABI/testing/sysfs-bus-event_source-devices-events).
/sys/bus/event_source/devices/vpa_pmu/format |
Defined on file sysfs-bus-event_source-devices-vpa-pmu
Read-only. Attribute group to describe the magic bits that go into perf_event_attr.config for a particular pmu. (See ABI/testing/sysfs-bus-event_source-devices-format).
Each attribute under this group defines a bit range of the perf_event_attr.config. Supported attribute are listed below:
event = "config:0-31" - event ID
For example:
l1_to_l2_lat = "event=0x1"
/sys/bus/fcoe/ |
Defined on file sysfs-bus-fcoe
The FCoE bus. Attributes in this directory are control interfaces.
Attributes:
- ctlr_create:
‘FCoE Controller’ instance creation interface. Writing an <ifname> to this file will allocate and populate sysfs with a fcoe_ctlr_device (ctlr_X). The user can then configure any per-port settings and finally write to the fcoe_ctlr_device’s ‘start’ attribute to begin the kernel’s discovery and login process.
- ctlr_destroy:
‘FCoE Controller’ instance removal interface. Writing a fcoe_ctlr_device’s sysfs name to this file will log the fcoe_ctlr_device out of the fabric or otherwise connected FCoE devices. It will also free all kernel memory allocated for this fcoe_ctlr_device and any structures associated with it, this includes the scsi_host.
/sys/bus/fcoe/devices/ctlr_X |
Defined on file sysfs-bus-fcoe
‘FCoE Controller’ instances on the fcoe bus. The FCoE Controller now has a three stage creation process. 1) Write interface name to ctlr_create 2) Configure the FCoE Controller (ctlr_X) 3) Enable the FCoE Controller to begin discovery and login. The FCoE Controller is destroyed by writing its name, i.e. ctlr_X to the ctlr_delete file.
Attributes:
- fcf_dev_loss_tmo:
Device loss timeout period (see below). Changing this value will change the dev_loss_tmo for all FCFs discovered by this controller.
- mode:
Display or change the FCoE Controller’s mode. Possible modes are ‘Fabric’ and ‘VN2VN’. If a FCoE Controller is started in ‘Fabric’ mode then FIP FCF discovery is initiated and ultimately a fabric login is attempted. If a FCoE Controller is started in ‘VN2VN’ mode then FIP VN2VN discovery and login is performed. A FCoE Controller only supports one mode at a time.
- enabled:
Whether an FCoE controller is enabled or disabled. 0 if disabled, 1 if enabled. Writing either 0 or 1 to this file will enable or disable the FCoE controller.
- lesb/link_fail:
Link Error Status Block (LESB) link failure count.
- lesb/vlink_fail:
Link Error Status Block (LESB) virtual link failure count.
- lesb/miss_fka:
Link Error Status Block (LESB) missed FCoE Initialization Protocol (FIP) Keep-Alives (FKA).
- lesb/symb_err:
Link Error Status Block (LESB) symbolic error count.
- lesb/err_block:
Link Error Status Block (LESB) block error count.
- lesb/fcs_error:
Link Error Status Block (LESB) Fibre Channel Services error count.
Notes: ctlr_X (global increment starting at 0)
/sys/bus/fcoe/devices/fcf_X |
Defined on file sysfs-bus-fcoe
‘FCoE FCF’ instances on the fcoe bus. A FCF is a Fibre Channel Forwarder, which is a FCoE switch that can accept FCoE (Ethernet) packets, unpack them, and forward the embedded Fibre Channel frames into a FC fabric. It can also take outbound FC frames and pack them in Ethernet packets to be sent to their destination on the Ethernet segment.
Attributes:
- fabric_name:
Identifies the fabric that the FCF services.
- switch_name:
Identifies the FCF.
- priority:
The switch’s priority amongst other FCFs on the same fabric.
- selected:
1 indicates that the switch has been selected for use; 0 indicates that the switch will not be used.
- fc_map:
The Fibre Channel MAP
- vfid:
The Virtual Fabric ID
- mac:
The FCF’s MAC address
- fka_period:
The FIP Keep-Alive period
fabric_state: The internal kernel state
“Unknown” - Initialization value
“Disconnected” - No link to the FCF/fabric
“Connected” - Host is connected to the FCF
“Deleted” - FCF is being removed from the system
dev_loss_tmo: The device loss timeout period for this FCF.
- Notes: A device loss infrastructure similar to the FC Transport’s
is present in fcoe_sysfs. It is nice to have so that a link flapping adapter doesn’t continually advance the count used to identify the discovered FCF. FCFs will exist in a “Disconnected” state until either the timer expires and the FCF becomes “Deleted” or the FCF is rediscovered and becomes “Connected.”
Users: The first user of this interface will be the fcoeadm application, which is commonly packaged in the fcoe-utils package.
/sys/bus/fsi/devices/XX.XX.00:06/sbefifoX/timeout |
Defined on file sysfs-bus-fsi-devices-sbefifo
Indicates whether or not this SBE device has experienced a timeout; i.e. the SBE did not respond within the time allotted by the driver. A value of 1 indicates that a timeout has occurred and no transfers have completed since the timeout. A value of 0 indicates that no timeout has occurred, or if one has, more recent transfers have completed successfully.
/sys/bus/fsl-mc/drivers/.../bind |
Defined on file sysfs-bus-fsl-mc
Writing a device location to this file will cause the driver to attempt to bind to the device found at this location. The format for the location is Object.Id and is the same as found in /sys/bus/fsl-mc/devices/.
For example:
# echo dpni.2 > /sys/bus/fsl-mc/drivers/fsl_dpaa2_eth/bind
/sys/bus/fsl-mc/drivers/.../unbind |
Defined on file sysfs-bus-fsl-mc
Writing a device location to this file will cause the driver to attempt to unbind from the device found at this location. The format for the location is Object.Id and is the same as found in /sys/bus/fsl-mc/devices/.
For example:
# echo dpni.2 > /sys/bus/fsl-mc/drivers/fsl_dpaa2_eth/unbind
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/speed |
Defined on file sysfs-driver-wacom
The /sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/speed file controls reporting speed of Wacom bluetooth tablet. Reading from this file returns 1 if tablet reports in high speed mode or 0 otherwise. Writing to this file one of these values switches reporting speed.
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/button<n>_rawimg |
Defined on file sysfs-driver-wacom
When writing a 1024 byte raw image in Wacom Intuos 4 interleaving format to the file, the image shows up on Button N of the device. The image is a 64x32 pixel 4-bit gray image. The 1024 byte binary is split up into 16x 64 byte chunks. Each 64 byte chunk encodes the image data for two consecutive lines on the display. The low nibble of each byte contains the first line, and the high nibble contains the second line. When the Wacom Intuos 4 is connected over Bluetooth, the image has to contain 256 bytes (64x32 px 1 bit colour). The format is also scrambled, like in the USB mode, and it can be summarized by converting:
76543210 into GECA6420.
HGFEDCBA HFDB7531
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/buttons_luminance |
Defined on file sysfs-driver-wacom
Writing to this file sets the overall luminance level (0..15) of all eight button OLED displays.
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/led |
Defined on file sysfs-driver-wacom
Attribute group for control of the status LEDs and the OLEDs. This attribute group is only available for Intuos 4 M, L, and XL (with LEDs and OLEDs), Intuos 4 WL, Intuos 5 (LEDs only), Intuos Pro (LEDs only) and Cintiq 21UX2 and Cintiq 24HD (LEDs only). Therefore its presence implicitly signifies the presence of said LEDs and OLEDs on the tablet device.
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status0_luminance |
Defined on file sysfs-driver-wacom
<obsoleted by the LED class API now exported by the driver> Writing to this file sets the status LED luminance (1..127) when the stylus does not touch the tablet surface, and no button is pressed on the stylus. This luminance level is normally lower than the level when a button is pressed.
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status1_luminance |
Defined on file sysfs-driver-wacom
<obsoleted by the LED class API now exported by the driver> Writing to this file sets the status LED luminance (1..127) when the stylus touches the tablet surface, or any button is pressed on the stylus.
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status_led0_select |
Defined on file sysfs-driver-wacom
<obsoleted by the LED class API now exported by the driver> Writing to this file sets which one of the four (for Intuos 4 and Intuos 5) or of the right four (for Cintiq 21UX2 and Cintiq 24HD) status LEDs is active (0..3). The other three LEDs on the same side are always inactive.
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status_led1_select |
Defined on file sysfs-driver-wacom
<obsoleted by the LED class API now exported by the driver> Writing to this file sets which one of the left four (for Cintiq 21UX2 and Cintiq 24HD) status LEDs is active (0..3). The other three LEDs on the left are always inactive.
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_remote/<serial_number>/remote_mode |
Defined on file sysfs-driver-wacom
<obsoleted by the LED class API now exported by the driver> Reading from this file reports the mode status of the remote as indicated by the LED lights on the device. If no reports have been received from the paired device, reading from this file will report ‘-1’. The mode is read-only and cannot be set through the driver.
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_remote/unpair_remote |
Defined on file sysfs-driver-wacom
Writing the character sequence ‘*’ followed by a newline to this file will delete all of the current pairings on the device. Other character sequences are reserved. This file is write only.
/sys/bus/hid/drivers/hid-corsair-void/<dev>/fw_version_headset |
Defined on file sysfs-driver-hid-corsair-void
- The firmware version of the headset
Returns -ENODATA if no version was reported
/sys/bus/hid/drivers/hid-corsair-void/<dev>/fw_version_receiver |
Defined on file sysfs-driver-hid-corsair-void
The firmware version of the receiver
/sys/bus/hid/drivers/hid-corsair-void/<dev>/microphone_up |
Defined on file sysfs-driver-hid-corsair-void
- Get the physical position of the microphone
1 -> Microphone up
0 -> Microphone down
/sys/bus/hid/drivers/hid-corsair-void/<dev>/send_alert |
Defined on file sysfs-driver-hid-corsair-void
Play a built-in notification from the headset (0 / 1)
/sys/bus/hid/drivers/hid-corsair-void/<dev>/set_sidetone |
Defined on file sysfs-driver-hid-corsair-void
Set the sidetone volume (0 - sidetone_max)
/sys/bus/hid/drivers/hid-corsair-void/<dev>/sidetone_max |
Defined on file sysfs-driver-hid-corsair-void
Report the maximum sidetone volume
/sys/bus/hid/drivers/logitech-hidpp-device/<dev>/builtin_power_supply |
Defined on file sysfs-driver-hid-logitech-hidpp
Presence of this file indicates that HID++ driver is capable of handling battery properties in the kernel. This way, upower can add a udev rule to decide whether or not it should use the internal unifying support or the generic kernel one.
/sys/bus/hid/drivers/logitech-hidpp-device/<dev>/range |
Defined on file sysfs-driver-hid-logitech-hidpp
(RW) This attribute controls the amount of ‘turn’ permitted in Logitech G920 wheel. Reading from the file shows the current range of the steering wheel. Writing a value within the min and max boundary sets the range of the wheel.
/sys/bus/hid/drivers/logitech/<dev>/alternate_modes |
Defined on file sysfs-driver-hid-logitech-lg4ff
Displays a set of alternate modes supported by a wheel. Each mode is listed as follows:
Tag: Mode Name
Currently active mode is marked with an asterisk. List also contains an abstract item “native” which always denotes the native mode of the wheel. Echoing the mode tag switches the wheel into the corresponding mode. Depending on the exact model of the wheel not all listed modes might always be selectable. If a wheel cannot be switched into the desired mode, -EINVAL is returned accompanied with an explanatory message in the kernel log. This entry is not created for devices that have only one mode.
Currently supported mode switches:
Driving Force Pro:
DF-EX --> DFP
G25:
DF-EX --> DFP --> G25
G27:
DF-EX <*> DFP <-> G25 <-> G27
DF-EX <*--------> G25 <-> G27
DF-EX <*----------------> G27
G29:
DF-EX <*> DFP <-> G25 <-> G27 <-> G29
DF-EX <*--------> G25 <-> G27 <-> G29
DF-EX <*----------------> G27 <-> G29
DF-EX <*------------------------> G29
DFGT:
DF-EX <*> DFP <-> DFGT
DF-EX <*--------> DFGT
hid_logitech module must be loaded with lg4ff_no_autoswitch=1 parameter set in order for the switch to DF-EX mode to work.
/sys/bus/hid/drivers/logitech/<dev>/combine_pedals |
Defined on file sysfs-driver-hid-logitech-lg4ff
Controls whether a combined value of accelerator and brake is reported on the Y axis of the controller. Useful for older games which can do not work with separate accelerator/brake axis. Off (‘0’) by default, enabled by setting ‘1’.
/sys/bus/hid/drivers/logitech/<dev>/range |
Defined on file sysfs-driver-hid-logitech-lg4ff
Display minimum, maximum and current range of the steering wheel. Writing a value within min and max boundaries sets the range of the wheel.
/sys/bus/hid/drivers/logitech/<dev>/real_id |
Defined on file sysfs-driver-hid-logitech-lg4ff
Displays the real model of the wheel regardless of any alternate mode the wheel might be switched to. It is a read-only value. This entry is not created for devices that have only one mode.
/sys/bus/hid/drivers/ntrig/<dev>/activate_slack |
Defined on file sysfs-driver-hid-ntrig
(RW) Number of contact frames ignored before acknowledging the start of activity (activating touch).
/sys/bus/hid/drivers/ntrig/<dev>/activation_width |
/sys/bus/hid/drivers/ntrig/<dev>/activation_height |
Defined on file sysfs-driver-hid-ntrig
Threholds to override activation slack.
activation_width |
(RW) Width threshold to immediately start processing touch events. |
activation_height |
(RW) Height threshold to immediately start processing touch events. |
/sys/bus/hid/drivers/ntrig/<dev>/decativate_slack |
Defined on file sysfs-driver-hid-ntrig
(RW) Number of empty (no contact) frames ignored before acknowledging the end of activity (deactivating touch).
When the last finger is removed from the device, it sends a number of empty frames. By holding off on deactivation for a few frames false erroneous disconnects can be tolerated, where the sensor may mistakenly not detect a finger that is still present.
/sys/bus/hid/drivers/ntrig/<dev>/min_width |
/sys/bus/hid/drivers/ntrig/<dev>/min_height |
Defined on file sysfs-driver-hid-ntrig
Minimum size contact accepted.
min_width |
(RW) Minimum touch contact width to decide activation and activity. |
min_height |
(RW) Minimum touch contact height to decide activation and activity. |
/sys/bus/hid/drivers/ntrig/<dev>/sensor_logical_width |
/sys/bus/hid/drivers/ntrig/<dev>/sensor_logical_height |
Defined on file sysfs-driver-hid-ntrig
(RO) The range for positions reported during activity.
/sys/bus/hid/drivers/ntrig/<dev>/sensor_physical_width |
/sys/bus/hid/drivers/ntrig/<dev>/sensor_physical_height |
Defined on file sysfs-driver-hid-ntrig
(RO) These are internal ranges not used for normal events but useful for tuning.
/sys/bus/hid/drivers/prodikeys/.../channel |
Defined on file sysfs-driver-hid-prodikeys
Allows control (via software) the midi channel to which that the pc-midi keyboard will output.midi data. Range: 0..15 Type: Read/write
/sys/bus/hid/drivers/prodikeys/.../octave |
Defined on file sysfs-driver-hid-prodikeys
Controls the octave shift modifier in the pc-midi driver. The octave can be shifted via software up/down 2 octaves. 0 means the no ocatve shift. Range: -2..2 (minus 2 to plus 2) Type: Read/Write
/sys/bus/hid/drivers/prodikeys/.../sustain |
Defined on file sysfs-driver-hid-prodikeys
Allows control (via software) the sustain duration of a note held by the pc-midi driver. 0 means sustain mode is disabled. Range: 0..5000 (milliseconds) Type: Read/write
/sys/bus/hid/drivers/wiimote/<dev>/bboard_calib |
Defined on file sysfs-driver-hid-wiimote
This attribute is only provided if the device was detected as a balance board. It provides a single line with 3 calibration values for all 4 sensors. The values are separated by colons and are each 2 bytes long (encoded as 4 digit hexadecimal value). First, 0kg values for all 4 sensors are written, followed by the 17kg values for all 4 sensors and last the 34kg values for all 4 sensors.
Calibration data is already applied by the kernel to all input values but may be used by user-space to perform other transformations.
/sys/bus/hid/drivers/wiimote/<dev>/devtype |
Defined on file sysfs-driver-hid-wiimote
While a device is initialized by the wiimote driver, we perform a device detection and signal a “change” uevent after it is done. This file shows the detected device type. “pending” means that the detection is still ongoing, “unknown” means, that the device couldn’t be detected or loaded. “generic” means, that the device couldn’t be detected but supports basic Wii Remote features and can be used. Other strings for each device-type are available and may be added if new device-specific detections are added. Currently supported are:
gen10:
First Wii Remote generation
gen20:
Second Wii Remote Plus generation (builtin MP)
balanceboard:
Wii Balance Board
/sys/bus/hid/drivers/wiimote/<dev>/extension |
Defined on file sysfs-driver-hid-wiimote
This file contains the currently connected and initialized extensions. It can be one of: none, motionp, nunchuck, classic, motionp+nunchuck, motionp+classic motionp is the official Nintendo Motion+ extension, nunchuck is the official Nintendo Nunchuck extension and classic is the Nintendo Classic Controller extension. The motionp extension can be combined with the other two.
Starting with kernel-version 3.11 Motion Plus hotplugging is supported and if detected, it’s no longer reported as static extension. You will get uevent notifications for the motion-plus device then.
/sys/bus/hid/drivers/wiimote/<dev>/led1 |
/sys/bus/hid/drivers/wiimote/<dev>/led2 |
/sys/bus/hid/drivers/wiimote/<dev>/led3 |
/sys/bus/hid/drivers/wiimote/<dev>/led4 |
Defined on file sysfs-driver-hid-wiimote
Make it possible to set/get current led state. Reading from it returns 0 if led is off and 1 if it is on. Writing 0 to it disables the led, writing 1 enables it.
/sys/bus/hid/drivers/wiimote/<dev>/pro_calib |
Defined on file sysfs-driver-hid-wiimote
This attribute is only provided if the device was detected as a pro-controller. It provides a single line with 4 calibration values for all 4 analog sticks. Format is: “x1:y1 x2:y2”. Data is prefixed with a +/-. Each value is a signed 16bit number. Data is encoded as decimal numbers and specifies the offsets of the analog sticks of the pro-controller.
Calibration data is already applied by the kernel to all input values but may be used by user-space to perform other transformations.
Calibration data is detected by the kernel during device setup. You can write “scann” into this file to re-trigger calibration. You can also write data directly in the form “x1:y1 x2:y2” to set the calibration values manually.
/sys/bus/hsi |
Defined on file sysfs-bus-hsi
High Speed Synchronous Serial Interface (HSI) is a serial interface mainly used for connecting application engines (APE) with cellular modem engines (CMT) in cellular handsets. The bus will be populated with devices (hsi_clients) representing the protocols available in the system. Bus drivers implement those protocols.
/sys/bus/hsi/devices/.../modalias |
Defined on file sysfs-bus-hsi
Stores the same MODALIAS value emitted by uevent Format: hsi:<hsi_client device name>
/sys/bus/i2c/.../idle_state |
Defined on file sysfs-bus-i2c-devices-pca954x
Value that exists only for mux devices that can be written to control the behaviour of the multiplexer on idle. Possible values:
-2 |
disconnect on idle, i.e. deselect the last used channel, which is useful when there is a device with an address that conflicts with another device on another mux on the same parent bus. |
-1 |
leave the mux as-is, which is the most optimal setting in terms of I2C operations and is the default mode. |
0..<nchans> |
set the mux to a predetermined channel, which is useful if there is one channel that is used almost always, and you want to reduce the latency for normal operations after rare transactions on other channels |
/sys/bus/i2c/devices/.../bd9571mwv-regulator.*.auto/backup_mode |
Defined on file sysfs-driver-bd9571mwv-regulator
Read/write the current state of DDR Backup Mode, which controls if DDR power rails will be kept powered during system suspend. (“on”/”1” = enabled, “off”/”0” = disabled). Two types of power switches (or control signals) can be used:
With a momentary power switch (or pulse signal), DDR Backup Mode is enabled by default when available, as the PMIC will be configured only during system suspend.
With a toggle power switch (or level signal), the following steps must be followed exactly:
Configure PMIC for backup mode, to change the role of the accessory power switch from a power switch to a wake-up switch,
Switch accessory power switch off, to prepare for system suspend, which is a manual step not controlled by software,
Suspend system,
Switch accessory power switch on, to resume the system.
DDR Backup Mode must be explicitly enabled by the user, to invoke step 1.
See also Documentation/devicetree/bindings/mfd/rohm,bd9571mwv.yaml.
Users: User space applications for embedded boards equipped with a BD9571MWV PMIC.
/sys/bus/i2c/devices/.../calibration |
Defined on file sysfs-bus-i2c-devices-hm6352
Sets the calibration on or off (1 = on, 0 = off). See the chip data sheet.
/sys/bus/i2c/devices/.../device |
Defined on file sysfs-bus-i2c-devices-fsa9480
show what device is attached
NONE |
no device |
USB |
USB device is attached |
UART |
UART is attached |
CHARGER |
Charger is attached |
JIG |
JIG is attached |
/sys/bus/i2c/devices/.../heading0_input |
Defined on file sysfs-bus-i2c-devices-hm6352
Reports the current heading from the compass as a floating point value in degrees.
/sys/bus/i2c/devices/.../output_hvled[n] |
Defined on file sysfs-bus-i2c-devices-lm3533
Set the controlling backlight device for high-voltage current sink HVLED[n] (n = 1, 2) (0, 1).
/sys/bus/i2c/devices/.../output_lvled[n] |
Defined on file sysfs-bus-i2c-devices-lm3533
Set the controlling led device for low-voltage current sink LVLED[n] (n = 1..5) (0..3).
/sys/bus/i2c/devices/.../power_state |
Defined on file sysfs-bus-i2c-devices-hm6352
Sets the power state of the device. 0 sets the device into sleep mode, 1 wakes it up.
/sys/bus/i2c/devices/.../switch |
Defined on file sysfs-bus-i2c-devices-fsa9480
show or set the state of manual switch
VAUDIO |
switch to VAUDIO path |
UART |
switch to UART path |
AUDIO |
switch to AUDIO path |
DHOST |
switch to DHOST path |
AUTO |
switch automatically by device |
/sys/bus/i2c/devices/.../trickle_charge_bypass |
Defined on file sysfs-bus-i2c-devices-bq32k
Attribute for enable/disable the trickle charge bypass The trickle_charge_bypass attribute allows the userspace to enable/disable the Trickle charge FET bypass.
/sys/bus/i2c/devices/<mcu_device>/board_revision |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RO) Contains board revision number.
Only available if board information is burned in the MCU (older revisions have board information burned in the ATSHA204-A chip).
Format: %u.
/sys/bus/i2c/devices/<mcu_device>/first_mac_address |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RO) Contains device first MAC address. Each Turris Omnia is allocated 3 MAC addresses. The two additional addresses are computed from the first one by incrementing it.
Only available if board information is burned in the MCU (older revisions have board information burned in the ATSHA204-A chip).
Format: %pM.
/sys/bus/i2c/devices/<mcu_device>/front_button_mode |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RW) The front button on the Turris Omnia router can be configured either to change the intensity of all the LEDs on the front panel, or to send the press event to the CPU as an interrupt.
- This file switches between these two modes:
mcu
makes the button press event be handled by the MCU to change the LEDs panel intensity.cpu
makes the button press event be handled by the CPU.
Format: %s.
/sys/bus/i2c/devices/<mcu_device>/front_button_poweron |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RW) Newer versions of the microcontroller firmware of the Turris Omnia router support powering off the router into true low power mode. The router can be powered on by pressing the front button.
This file configures whether front button power on is enabled.
This file is present only if the power off feature is supported by the firmware.
Format: %i.
/sys/bus/i2c/devices/<mcu_device>/fw_features |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RO) Newer versions of the microcontroller firmware report the features they support. These can be read from this file. If the MCU firmware is too old, this file reads 0x0.
Format: 0x%x.
/sys/bus/i2c/devices/<mcu_device>/fw_version_hash_application |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RO) Contains the version hash (commit hash) of the application part of the microcontroller firmware.
Format: %s.
/sys/bus/i2c/devices/<mcu_device>/fw_version_hash_bootloader |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RO) Contains the version hash (commit hash) of the bootloader part of the microcontroller firmware.
Format: %s.
/sys/bus/i2c/devices/<mcu_device>/mcu_type |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RO) Contains the microcontroller type (STM32, GD32, MKL).
Format: %s.
/sys/bus/i2c/devices/<mcu_device>/reset_selector |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RO) Contains the selected factory reset level, determined by how long the rear reset button was held by the user during board reset.
Format: %i.
/sys/bus/i2c/devices/<mcu_device>/serial_number |
Defined on file sysfs-bus-i2c-devices-turris-omnia-mcu
(RO) Contains the 64-bit board serial number in hexadecimal format.
Only available if board information is burned in the MCU (older revisions have board information burned in the ATSHA204-A chip).
Format: %016X.
/sys/bus/i2c/devices/xxx/fw_version |
Defined on file sysfs-driver-input-exc3000
Reports the firmware version provided by the touchscreen, for example “00_T6” on a EXC80H60
Access: Read
Valid values: Represented as string
/sys/bus/i2c/devices/xxx/model |
Defined on file sysfs-driver-input-exc3000
Reports the model identification provided by the touchscreen, for example “Orion_1320” on a EXC80H60
Access: Read
Valid values: Represented as string
/sys/bus/i2c/devices/xxx/type |
Defined on file sysfs-driver-input-exc3000
Reports the type identification provided by the touchscreen, for example “PCAP82H80 Series”
Access: Read
Valid values: Represented as string
/sys/bus/i2c/drivers/ucsi_ccg/.../do_flash |
Defined on file sysfs-driver-ucsi-ccg
Tell the driver for Cypress CCGx Type-C controller to attempt firmware upgrade by writing [Yy1] to the file.
/sys/bus/i3c/devices/<bus-id>-<device-pid> |
Defined on file sysfs-bus-i3c
These directories are just symbolic links to /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>.
/sys/bus/i3c/devices/i3c-<bus-id> |
Defined on file sysfs-bus-i3c
An I3C bus. This directory will contain one sub-directory per I3C device present on the bus.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid> |
Defined on file sysfs-bus-i3c
An I3C device present on I3C bus identified by <bus-id>. Note that all devices are represented including the master driving the bus.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/bcr |
Defined on file sysfs-bus-i3c
BCR stands for Bus Characteristics Register and express the device capabilities in term of speed, maximum read/write length, etc. See the I3C specification for more details.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dcr |
Defined on file sysfs-bus-i3c
DCR stands for Device Characteristics Register and express the device capabilities in term of exposed features. See the I3C specification for more details.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dynamic_address |
Defined on file sysfs-bus-i3c
Dynamic address assigned to device <bus-id>-<device-pid>. This address may change if the bus is re-initialized.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/hdrcap |
Defined on file sysfs-bus-i3c
Expose the HDR (High Data Rate) capabilities of a device. Returns a list of supported HDR mode, each element is separated by space. Modes can be “hdr-ddr”, “hdr-tsp” and “hdr-tsl”.
See the I3C specification for more details about these HDR modes.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/pid |
Defined on file sysfs-bus-i3c
PID stands for Provisioned ID and is used to uniquely identify a device on a bus. This PID contains information about the vendor, the part and an instance ID so that several devices of the same type can be connected on the same bus. See the I3C specification for more details.
/sys/bus/i3c/devices/i3c-<bus-id>/bcr |
Defined on file sysfs-bus-i3c
BCR stands for Bus Characteristics Register and express the device capabilities in term of speed, maximum read/write length, etc. See the I3C specification for more details. This entry describes the BCR of the master controller driving the bus.
/sys/bus/i3c/devices/i3c-<bus-id>/current_master |
Defined on file sysfs-bus-i3c
Expose the master that owns the bus (<bus-id>-<master-pid>) at the time this file is read. Note that bus ownership can change overtime, so there’s no guarantee that when the read() call returns, the value returned is still valid.
/sys/bus/i3c/devices/i3c-<bus-id>/dcr |
Defined on file sysfs-bus-i3c
DCR stands for Device Characteristics Register and express the device capabilities in term of exposed features. See the I3C specification for more details. This entry describes the DCR of the master controller driving the bus.
/sys/bus/i3c/devices/i3c-<bus-id>/dynamic_address |
Defined on file sysfs-bus-i3c
Dynamic address assigned to the master controller. This address may change if the bus is re-initialized.
/sys/bus/i3c/devices/i3c-<bus-id>/hdrcap |
Defined on file sysfs-bus-i3c
Expose the HDR (High Data Rate) capabilities of a device. Returns a list of supported HDR mode, each element is separated by space. Modes can be “hdr-ddr”, “hdr-tsp” and “hdr-tsl”. See the I3C specification for more details about these HDR modes.
This entry describes the HDRCAP of the master controller driving the bus.
/sys/bus/i3c/devices/i3c-<bus-id>/hotjoin |
Defined on file sysfs-bus-i3c
I3C’s Hot-Join mechanism allows an I3C Device to inform the Active Controller that a newly-joined Target is present on the I3C Bus and is ready to receive a Dynamic Address, in order to become fully functional on the Bus. Hot-Join is used when the Target is mounted on the same I3C bus and remains depowered until needed or until the Target is physically inserted into the I3C bus
This entry allows to enable or disable Hot-join of the Current Controller driving the bus.
/sys/bus/i3c/devices/i3c-<bus-id>/i2c_scl_frequency |
Defined on file sysfs-bus-i3c
The frequency (expressed in Hz) of the SCL signal when operating in I2C mode.
/sys/bus/i3c/devices/i3c-<bus-id>/i3c_scl_frequency |
Defined on file sysfs-bus-i3c
The frequency (expressed in Hz) of the SCL signal when operating in I3C SDR mode.
/sys/bus/i3c/devices/i3c-<bus-id>/mode |
Defined on file sysfs-bus-i3c
I3C bus mode. Can be “pure”, “mixed-fast” or “mixed-slow”. See the I3C specification for a detailed description of what each of these modes implies.
/sys/bus/i3c/devices/i3c-<bus-id>/pid |
Defined on file sysfs-bus-i3c
PID stands for Provisioned ID and is used to uniquely identify a device on a bus. This PID contains information about the vendor, the part and an instance ID so that several devices of the same type can be connected on the same bus. See the I3C specification for more details. This entry describes the PID of the master controller driving the bus.
/sys/bus/iio/devices/device[n]/in_illuminance0_calibrate |
Defined on file sysfs-bus-iio-light-tsl2772
Causes an internal calibration of the als gain trim value which is later used in calculating illuminance in lux.
/sys/bus/iio/devices/device[n]/in_illuminance_calibrate |
Defined on file sysfs-bus-iio-light-tsl2583
This property causes an internal calibration of the als gain trim value which is later used in calculating illuminance in lux.
/sys/bus/iio/devices/device[n]/in_illuminance_input_target |
Defined on file sysfs-bus-iio-light-tsl2583
This property is the known externally illuminance (in lux). It is used in the process of calibrating the device accuracy.
/sys/bus/iio/devices/device[n]/in_illuminance_lux_table |
Defined on file sysfs-bus-iio-light-tsl2583
This property gets/sets the table of coefficients used in calculating illuminance in lux.
/sys/bus/iio/devices/device[n]/in_proximity0_calibrate |
Defined on file sysfs-bus-iio-light-tsl2772
Causes a recalculation and adjustment to the proximity_thresh_rising_value.
/sys/bus/iio/devices/iio:device*/buffer/hwfifo_timeout |
Defined on file sysfs-bus-iio
A read/write property to provide capability to delay reporting of samples till a timeout is reached. This allows host processors to sleep, while the sensor is storing samples in its internal fifo. The maximum timeout in seconds can be specified by setting hwfifo_timeout.The current delay can be read by reading hwfifo_timeout. A value of 0 means that there is no timeout.
/sys/bus/iio/devices/iio:deviceX |
Defined on file sysfs-bus-iio
Hardware chip or device accessed by one communication port. Corresponds to a grouping of sensor channels. X is the IIO index of the device.
/sys/bus/iio/devices/iio:deviceX/ac_excitation_en |
Defined on file sysfs-bus-iio-adc-ad7192
This attribute, if available, is used to enable the AC excitation mode found on some converters. In ac excitation mode, the polarity of the excitation voltage is reversed on alternate cycles, to eliminate DC errors.
/sys/bus/iio/devices/iio:deviceX/auto_zeroing_mux_enable |
Defined on file sysfs-bus-iio-adc-mcp3564
This attribute is used to enable the analog input multiplexer auto-zeroing algorithm (the input multiplexer and the ADC include an offset cancellation algorithm that cancels the offset contribution of the ADC). When the offset cancellation algorithm is enabled, ADC takes two conversions, one with the differential input as VIN+/VIN-, one with VIN+/VIN- inverted. In this case the conversion time is multiplied by two compared to the default case where the algorithm is disabled. This technique allows the cancellation of the ADC offset error and the achievement of ultra-low offset without any digital calibration. The resulting offset is the residue of the difference between the two conversions, which is on the order of magnitude of the noise floor. This offset is effectively canceled at every conversion, so the residual offset error temperature drift is extremely low. Write ‘1’ to enable it, write ‘0’ to disable it.
/sys/bus/iio/devices/iio:deviceX/auto_zeroing_ref_enable |
Defined on file sysfs-bus-iio-adc-mcp3564
This attribute is used to enable the chopping algorithm for the internal voltage reference buffer. This setting has no effect when external voltage reference is selected. Internal voltage reference buffer injects a certain quantity of 1/f noise into the system that can be modulated with the incoming input signals and can limit the SNR performance at higher Oversampling Ratio values (over 256). To overcome this limitation, the buffer includes an auto-zeroing algorithm that greatly reduces (cancels out) the 1/f noise and cancels the offset value of the reference buffer. As a result, the SNR of the system is not affected by this 1/f noise component of the reference buffer, even at maximum oversampling ratio values. Write ‘1’ to enable it, write ‘0’ to disable it.
/sys/bus/iio/devices/iio:deviceX/battery_low |
Defined on file sysfs-bus-iio-meas-spec
Reading returns either ‘1’ or ‘0’. ‘1’ means that the battery level supplied to sensor is below 2.25V. This ABI is available for tsys02d, htu21, ms8607
/sys/bus/iio/devices/iio:deviceX/boost_current_gain |
Defined on file sysfs-bus-iio-adc-mcp3564
This attribute is used to set the gain of the biasing current circuit of the Delta-Sigma modulator. The different BOOST settings are applied to the entire modulator circuit, including the voltage reference buffers.
/sys/bus/iio/devices/iio:deviceX/boost_current_gain_available |
Defined on file sysfs-bus-iio-adc-mcp3564
Reading returns a list with the possible gain values for the current biasing circuit of the Delta-Sigma modulator.
/sys/bus/iio/devices/iio:deviceX/bridge_switch_en |
Defined on file sysfs-bus-iio-adc-ad7192
This attribute, if available, is used to close or open the bridge power down switch found on some converters. In bridge applications, such as strain gauges and load cells, the bridge itself consumes the majority of the current in the system. To minimize the current consumption of the system, the bridge can be disconnected (when it is not being used using the bridge_switch_en attribute.
/sys/bus/iio/devices/iio:deviceX/buffer |
Defined on file sysfs-bus-iio
Directory of attributes relating to the buffer for the device.
/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_enabled |
Defined on file sysfs-bus-iio
A read-only boolean value that indicates if the hardware fifo is currently enabled or disabled. If the device does not have a hardware fifo this entry is not present. The hardware fifo is enabled when the buffer is enabled if the current hardware fifo watermark level is set and other current device settings allows it (e.g. if a trigger is set that samples data differently that the hardware fifo does then hardware fifo will not enabled).
If the hardware fifo is enabled and the level of the hardware fifo reaches the hardware fifo watermark level the device will flush its hardware fifo to the device buffer. Doing a non blocking read on the device when no samples are present in the device buffer will also force a flush.
When the hardware fifo is enabled there is no need to use a trigger to use buffer mode since the watermark settings guarantees that the hardware fifo is flushed to the device buffer.
/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark |
Defined on file sysfs-bus-iio
Read-only entry that contains a single integer specifying the current watermark level for the hardware fifo. If the device does not have a hardware fifo this entry is not present. The watermark level for the hardware fifo is set by the driver based on the value set by the user in buffer/watermark but taking into account hardware limitations (e.g. most hardware buffers are limited to 32-64 samples, some hardware buffers watermarks are fixed or have minimum levels). A value of 0 means that the hardware watermark is unset.
/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_available |
Defined on file sysfs-bus-iio
A list of positive integers specifying the available watermark levels for the hardware fifo. This entry is optional and if it is not present it means that all the values between hwfifo_watermark_min and hwfifo_watermark_max are supported.
If the user sets buffer/watermark to a value greater than hwfifo_watermak_min but not equal to any of the values in this list, the driver will chose an appropriate value for the hardware fifo watermark level.
/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_max |
Defined on file sysfs-bus-iio
A single positive integer specifying the maximum watermark level for the hardware fifo of this device. If the device does not have a hardware fifo this entry is not present.
If the user sets buffer/watermark to a value greater than this one, then the hardware watermark will be capped at this value.
/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_min |
Defined on file sysfs-bus-iio
A single positive integer specifying the minimum watermark level for the hardware fifo of this device. If the device does not have a hardware fifo this entry is not present.
If the user sets buffer/watermark to a value less than this one, then the hardware watermark will remain unset.
/sys/bus/iio/devices/iio:deviceX/buffer/length_align_bytes |
Defined on file sysfs-bus-iio-dma-buffer
DMA buffers tend to have a alignment requirement for the buffers. If this alignment requirement is not met samples might be dropped from the buffer.
This property reports the alignment requirements in bytes. This means that the buffer size in bytes needs to be a integer multiple of the number reported by this file.
The alignment requirements in number of sample sets will depend on the enabled channels and the bytes per channel. This means that the alignment requirement in samples sets might change depending on which and how many channels are enabled. Whereas the alignment requirement reported in bytes by this property will remain static and does not depend on which channels are enabled.
/sys/bus/iio/devices/iio:deviceX/bufferY |
Defined on file sysfs-bus-iio
Directory containing interfaces for elements that will be captured for a single triggered sample set in the buffer.
Since kernel 5.11 the scan_elements attributes are merged into the bufferY directory, to be configurable per buffer.
/sys/bus/iio/devices/iio:deviceX/bufferY/data_available |
Defined on file sysfs-bus-iio
A read-only value indicating the bytes of data available in the buffer. In the case of an output buffer, this indicates the amount of empty space available to write data to. In the case of an input buffer, this indicates the amount of data available for reading.
/sys/bus/iio/devices/iio:deviceX/bufferY/enable |
Defined on file sysfs-bus-iio
Actually start the buffer capture up. Will start trigger if first device and appropriate.
Note that it might be impossible to configure other attributes, (e.g.: events, scale, sampling rate) if they impact the currently active buffer capture session.
/sys/bus/iio/devices/iio:deviceX/bufferY/length |
Defined on file sysfs-bus-iio
Number of scans contained by the buffer.
/sys/bus/iio/devices/iio:deviceX/bufferY/watermark |
Defined on file sysfs-bus-iio
A single positive integer specifying the maximum number of scan elements to wait for.
Poll will block until the watermark is reached.
Blocking read will wait until the minimum between the requested read amount or the low water mark is available.
Non-blocking read will retrieve the available samples from the buffer even if there are less samples then watermark level. This allows the application to block on poll with a timeout and read the available samples after the timeout expires and thus have a maximum delay guarantee.
/sys/bus/iio/devices/iio:deviceX/calibrate |
Defined on file sysfs-bus-iio-cros-ec
Writing ‘1’ will perform a FOC (Fast Online Calibration). The corresponding calibration offsets can be read from *_calibbias entries.
/sys/bus/iio/devices/iio:deviceX/calibration_auto_enable |
Defined on file sysfs-bus-iio
Some sensors have the ability to apply auto calibration at runtime. For example, it may be necessary to compensate for contaminant build-up in a measurement chamber or optical element deterioration that would otherwise lead to sensor drift.
Writing 1 or 0 to this attribute will respectively activate or deactivate this auto calibration function.
Upon reading, the current status is returned.
/sys/bus/iio/devices/iio:deviceX/calibration_data |
Defined on file sysfs-bus-iio-bno055
Reports the binary calibration data blob for the IMU sensors.
/sys/bus/iio/devices/iio:deviceX/calibration_forced_value |
Defined on file sysfs-bus-iio
Some sensors have the ability to apply a manual calibration using a known measurement value, perhaps obtained from an external reference device.
Writing a value to this function will force such a calibration change. For the scd30 the value should be from the range [400 1 2000].
Note for the scd30 that a valid value may only be obtained once it is has been written. Until then any read back of this value should be ignored. As for the scd4x an error will be returned immediately if the manual calibration has failed.
/sys/bus/iio/devices/iio:deviceX/calibration_forced_value_available |
Defined on file sysfs-bus-iio
Available range for the forced calibration value, expressed as:
a range specified as “[min step max]”
/sys/bus/iio/devices/iio:deviceX/cleaning_period |
Defined on file sysfs-bus-iio-sps30
Sensor is capable of triggering self cleaning periodically. Period can be changed by writing a new value here. Upon reading the current one is returned. Units are seconds.
Writing 0 disables periodical self cleaning entirely.
/sys/bus/iio/devices/iio:deviceX/cleaning_period_available |
Defined on file sysfs-bus-iio-sps30
The range of available values in seconds represented as the minimum value, the step and the maximum value, all enclosed in square brackets.
/sys/bus/iio/devices/iio:deviceX/current_timestamp_clock |
Defined on file sysfs-bus-iio
String identifying current posix clock used to timestamp buffered samples and events for device X.
/sys/bus/iio/devices/iio:deviceX/error_status |
Defined on file sysfs-bus-iio-chemical-sunrise-co2
Reading returns the current chip error status.
/sys/bus/iio/devices/iio:deviceX/error_status_available |
Defined on file sysfs-bus-iio-chemical-sunrise-co2
Reading returns the list of possible chip error status. Available options are: - ‘error_fatal’: Analog front-end initialization error - ‘error_i2c’: Read/write to non-existing register - ‘error_algorithm’: Corrupted parameters - ‘error_calibration’: Calibration has failed - ‘error_self_diagnostic’: Internal interface failure - ‘error_out_of_range’: Measured concentration out of scale - ‘error_memory’: Error during memory operations - ‘error_no_measurement’: Cleared at first measurement - ‘error_low_voltage’: Sensor regulated voltage too low - ‘error_measurement_timeout’: Unable to complete measurement
/sys/bus/iio/devices/iio:deviceX/events |
Defined on file sysfs-bus-iio
Configuration of which hardware generated events are passed up to user-space.
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltage0_mag_rising_reset_max |
Defined on file sysfs-bus-iio-resolver-ad2s1210
Reading returns the current Degradation of Signal Reset Maximum Threshold value in millivolts. Writing sets the value.
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltage0_mag_rising_reset_max_available |
Defined on file sysfs-bus-iio-resolver-ad2s1210
Reading returns the allowable voltage range for in_altvoltage0_mag_rising_reset_max.
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltage0_mag_rising_reset_min |
Defined on file sysfs-bus-iio-resolver-ad2s1210
Reading returns the current Degradation of Signal Reset Minimum Threshold value in millivolts. Writing sets the value.
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltage0_mag_rising_reset_min_available |
Defined on file sysfs-bus-iio-resolver-ad2s1210
Reading returns the allowable voltage range for in_altvoltage0_mag_rising_reset_min.
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_either_label |
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_rising_label |
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_falling_label |
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_rising_label |
/sys/bus/iio/devices/iio:deviceX/events/in_anglvelY_mag_rising_label |
/sys/bus/iio/devices/iio:deviceX/events/in_anglY_thresh_rising_label |
/sys/bus/iio/devices/iio:deviceX/events/in_phaseY_mag_rising_label |
Defined on file sysfs-bus-iio
Optional symbolic label to a device channel event. If a label is defined for this event add that to the event specific attributes. This is useful for userspace to be able to better identify an individual event.
/sys/bus/iio/devices/iio:deviceX/events/in_illuminance_period_available |
Defined on file sysfs-bus-iio
List of valid periods (in seconds) for which the light intensity must be above the threshold level before interrupt is asserted.
/sys/bus/iio/devices/iio:deviceX/events/in_voltageY_thresh_falling_value |
Defined on file sysfs-bus-iio-adc-hi8435
Channel Y low voltage threshold. If sensor input voltage goes lower then this value then the threshold falling event is pushed. Depending on in_voltageY_sensing_mode the low voltage threshold is separately set for “GND-Open” and “Supply-Open” modes. Channels 0..31 have common low threshold values, but could have different sensing_modes.
The low voltage threshold range is between 2..21V. Hysteresis between low and high thresholds can not be lower then 2 and can not be odd.
If falling threshold results hysteresis to odd value then rising threshold is automatically subtracted by one.
/sys/bus/iio/devices/iio:deviceX/events/in_voltageY_thresh_rising_value |
Defined on file sysfs-bus-iio-adc-hi8435
Channel Y high voltage threshold. If sensor input voltage goes higher then this value then the threshold rising event is pushed. Depending on in_voltageY_sensing_mode the high voltage threshold is separately set for “GND-Open” and “Supply-Open” modes.
Channels 0..31 have common high threshold values, but could have different sensing_modes.
The high voltage threshold range is between 3..22V. Hysteresis between low and high thresholds can not be lower then 2 and can not be odd.
If rising threshold results hysteresis to odd value then falling threshold is automatically appended by one.
/sys/bus/iio/devices/iio:deviceX/fault_oc |
Defined on file sysfs-bus-iio-thermocouple
Open-circuit fault. The detection of open-circuit faults, such as those caused by broken thermocouple wires. Reading returns ‘1’ if fault, ‘0’ otherwise.
/sys/bus/iio/devices/iio:deviceX/fault_ovuv |
Defined on file sysfs-bus-iio-thermocouple
Overvoltage or Undervoltage Input Fault. The internal circuitry is protected from excessive voltages applied to the thermocouple cables. The device can also detect if such a condition occurs.
Reading returns ‘1’ if input voltage is negative or greater than VDD, otherwise ‘0’.
/sys/bus/iio/devices/iio:deviceX/filter_mode |
Defined on file sysfs-bus-iio-filter-admv8818
This attribute configures the filter mode. Reading returns the actual mode.
/sys/bus/iio/devices/iio:deviceX/filter_mode_available |
Defined on file sysfs-bus-iio-filter-admv8818
Reading this returns the valid values that can be written to the filter_mode attribute:
auto -> Adjust bandpass filter to track changes in input clock rate.
manual -> disable/unregister the clock rate notifier / input clock tracking.
- bypass -> bypass low pass filter, high pass filter and disable/unregister
the clock rate notifier
/sys/bus/iio/devices/iio:deviceX/filter_type_available |
/sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_filter_mode_available |
Defined on file sysfs-bus-iio
Reading returns a list with the possible filter modes. Options for the attribute:
“sinc3” - The digital sinc3 filter. Moderate 1st conversion time. Good noise performance.
“sinc4” - Sinc 4. Excellent noise performance. Long 1st conversion time.
“sinc5” - The digital sinc5 filter. Excellent noise performance
“sinc4+sinc1” - Sinc4 + averaging by 8. Low 1st conversion time.
“sinc3+rej60” - Sinc3 + 60Hz rejection.
“sinc3+sinc1” - Sinc3 + averaging by 8. Low 1st conversion time.
“sinc3+pf1” - Sinc3 + device specific Post Filter 1.
“sinc3+pf2” - Sinc3 + device specific Post Filter 2.
“sinc3+pf3” - Sinc3 + device specific Post Filter 3.
“sinc3+pf4” - Sinc3 + device specific Post Filter 4.
/sys/bus/iio/devices/iio:deviceX/fusion_enable |
Defined on file sysfs-bus-iio-bno055
Can be 1 or 0. Enables/disables the “sensor fusion” (a.k.a. NDOF) HW function.
/sys/bus/iio/devices/iio:deviceX/heater_enable |
Defined on file sysfs-bus-iio
‘1’ (enable) or ‘0’ (disable) specifying the enable of heater function. Same reading values apply.
This ABI is especially applicable for humidity sensors to heatup the device and get rid of any condensation in some humidity environment
/sys/bus/iio/devices/iio:deviceX/id |
Defined on file sysfs-bus-iio-cros-ec
This attribute is exposed by the CrOS EC sensors driver and represents the sensor ID as exposed by the EC. This ID is used by the Android sensor service hardware abstraction layer (sensor HAL) through the Android container on ChromeOS.
/sys/bus/iio/devices/iio:deviceX/in_X_mean_raw |
Defined on file sysfs-bus-iio
Averaged raw measurement from channel X. The number of values used for averaging is device specific. The converting rules for normal raw values also applies to the averaged raw values.
/sys/bus/iio/devices/iio:deviceX/in_accel_calibbias_available |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_calibbias_available |
/sys/bus/iio/devices/iio:deviceX/in_temp_calibbias_available |
/sys/bus/iio/devices/iio:deviceX/in_proximity_calibbias_available |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibbias_available |
/sys/bus/iio/devices/iio:deviceX/out_voltageY_calibbias_available |
Defined on file sysfs-bus-iio
Available values of calibbias. Maybe expressed as either of:
a small discrete set of values like “0 2 4 6 8”
a range specified as “[min step max]”
/sys/bus/iio/devices/iio:deviceX/in_accel_calibration_auto_status |
Defined on file sysfs-bus-iio-bno055
Reports the autocalibration status for the accelerometer sensor. Can be 0 (calibration non even enabled) or 1 to 5 where the greater the number, the better the calibration status.
/sys/bus/iio/devices/iio:deviceX/in_accel_linear_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_accel_linear_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_accel_linear_z_raw |
Defined on file sysfs-bus-iio
As per in_accel_X_raw attributes, but minus the acceleration due to gravity.
/sys/bus/iio/devices/iio:deviceX/in_accel_offset |
/sys/bus/iio/devices/iio:deviceX/in_accel_x_offset |
/sys/bus/iio/devices/iio:deviceX/in_accel_y_offset |
/sys/bus/iio/devices/iio:deviceX/in_accel_z_offset |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_offset |
/sys/bus/iio/devices/iio:deviceX/in_voltage_offset |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_offset |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_offset |
/sys/bus/iio/devices/iio:deviceX/in_voltage_q_offset |
/sys/bus/iio/devices/iio:deviceX/in_voltage_i_offset |
/sys/bus/iio/devices/iio:deviceX/in_currentY_offset |
/sys/bus/iio/devices/iio:deviceX/in_current_offset |
/sys/bus/iio/devices/iio:deviceX/in_currentY_i_offset |
/sys/bus/iio/devices/iio:deviceX/in_currentY_q_offset |
/sys/bus/iio/devices/iio:deviceX/in_current_q_offset |
/sys/bus/iio/devices/iio:deviceX/in_current_i_offset |
/sys/bus/iio/devices/iio:deviceX/in_tempY_offset |
/sys/bus/iio/devices/iio:deviceX/in_temp_offset |
/sys/bus/iio/devices/iio:deviceX/in_pressureY_offset |
/sys/bus/iio/devices/iio:deviceX/in_pressure_offset |
/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_offset |
/sys/bus/iio/devices/iio:deviceX/in_magn_offset |
/sys/bus/iio/devices/iio:deviceX/in_rot_offset |
/sys/bus/iio/devices/iio:deviceX/in_angl_offset |
/sys/bus/iio/devices/iio:deviceX/in_capacitanceX_offset |
Defined on file sysfs-bus-iio
If known for a device, offset to be added to <type>[Y]_raw prior to scaling by <type>[Y]_scale in order to obtain value in the <type> units as specified in <type>[Y]_raw documentation. Not present if the offset is always 0 or unknown. If Y or axis <x|y|z> is not present, then the offset applies to all in channels of <type>. May be writable if a variable offset can be applied on the device. Note that this is different to calibbias which is for devices (or drivers) that apply offsets to compensate for variation between different instances of the part, typically adjusted by using some hardware supported calibration procedure. Calibbias is applied internally, offset is applied in userspace to the _raw output.
/sys/bus/iio/devices/iio:deviceX/in_accel_power_mode |
Defined on file sysfs-bus-iio-inv_icm42600
Accelerometer power mode. Setting this attribute will set the requested power mode to use if the ODR support it. If ODR support only 1 mode, power mode will be enforced. Reading this attribute will return the current accelerometer power mode if the sensor is on, or the requested value if the sensor is off. The value between real and requested value can be different for ODR supporting only 1 mode.
/sys/bus/iio/devices/iio:deviceX/in_accel_power_mode_available |
Defined on file sysfs-bus-iio-inv_icm42600
List of available accelerometer power modes that can be set in in_accel_power_mode attribute.
/sys/bus/iio/devices/iio:deviceX/in_accel_raw_range |
Defined on file sysfs-bus-iio-bno055
Raw (unscaled) range for acceleration readings. Unit after application of scale is m/s^2. Note that this doesn’t affects the scale (which should be used when changing the maximum and minimum readable value affects also the reading scaling factor).
/sys/bus/iio/devices/iio:deviceX/in_accel_raw_range_available |
Defined on file sysfs-bus-iio-bno055
List of allowed values for in_accel_raw_range attribute
/sys/bus/iio/devices/iio:deviceX/in_accel_scale_available |
/sys/.../iio:deviceX/in_anglvel_scale_available |
/sys/.../iio:deviceX/in_magn_scale_available |
/sys/.../iio:deviceX/in_illuminance_scale_available |
/sys/.../iio:deviceX/in_intensity_scale_available |
/sys/.../iio:deviceX/in_proximity_scale_available |
/sys/.../iio:deviceX/in_voltageX_scale_available |
/sys/.../iio:deviceX/in_voltage-voltage_scale_available |
/sys/.../iio:deviceX/out_voltageX_scale_available |
/sys/.../iio:deviceX/out_altvoltageX_scale_available |
/sys/.../iio:deviceX/in_capacitance_scale_available |
/sys/.../iio:deviceX/in_pressure_scale_available |
/sys/.../iio:deviceX/in_pressureY_scale_available |
Defined on file sysfs-bus-iio
If a discrete set of scale values is available, they are listed in this attribute. Unlike illumination, multiplying intensity by intensity_scale does not yield value with any standardized unit.
/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_i_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_q_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_capacitance_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_illuminance_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_intensityY_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_magn_x_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_magn_y_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_magn_z_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_pressure_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_proximity_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_resistance_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_temp_calibbias |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibbias |
/sys/bus/iio/devices/iio:deviceX/out_currentY_calibbias |
/sys/bus/iio/devices/iio:deviceX/out_voltageY_calibbias |
Defined on file sysfs-bus-iio
Hardware applied calibration offset (assumed to fix production inaccuracies). icm42600: For this device values are real physical offsets expressed in SI units (m/s^2 for accelerometers and rad/s for gyroscope)/
/sys/bus/iio/devices/iio:deviceX/in_accel_x_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_accel_y_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_accel_z_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_altvoltage_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_capacitance_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_illuminance_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_intensity_both_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_intensity_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_intensity_ir_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_magn_x_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_magn_y_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_magn_z_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_pressure_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_pressureY_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_voltage_i_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_voltage_q_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_calibscale |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale |
/sys/bus/iio/devices/iio:deviceX/out_currentY_calibscale |
/sys/bus/iio/devices/iio:deviceX/out_voltageY_calibscale |
Defined on file sysfs-bus-iio
Hardware applied calibration scale factor (assumed to fix production inaccuracies). If shared across all channels, <type>_calibscale is used.
/sys/bus/iio/devices/iio:deviceX/in_accel_x_peak_raw |
/sys/bus/iio/devices/iio:deviceX/in_accel_y_peak_raw |
/sys/bus/iio/devices/iio:deviceX/in_accel_z_peak_raw |
/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_peak_raw |
/sys/bus/iio/devices/iio:deviceX/in_temp_peak_raw |
Defined on file sysfs-bus-iio
Highest value since some reset condition. These attributes allow access to this and are otherwise the direct equivalent of the <type>Y[_name]_raw attributes.
/sys/bus/iio/devices/iio:deviceX/in_accel_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_accel_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_accel_z_raw |
Defined on file sysfs-bus-iio
Acceleration in direction x, y or z (may be arbitrarily assigned but should match other such assignments on device). Has all of the equivalent parameters as per voltageY. Units after application of scale and offset are m/s^2.
/sys/bus/iio/devices/iio:deviceX/in_accel_xyz_squared_peak_raw |
Defined on file sysfs-bus-iio
A computed peak value based on the sum squared magnitude of the underlying value in the specified directions.
/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender_available |
/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender_available |
/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender_available |
/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender_available |
Defined on file sysfs-bus-iio
Lists all available gender values (e.g.: male, female).
/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender |
/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender |
/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender |
/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender |
Defined on file sysfs-bus-iio
Gender of the user (e.g.: male, female) used by some pedometers to compute the stride length, distance, speed and activity type.
/sys/bus/iio/devices/iio:deviceX/in_activity_calibheight |
/sys/bus/iio/devices/iio:deviceX/in_energy_calibheight |
/sys/bus/iio/devices/iio:deviceX/in_distance_calibheight |
/sys/bus/iio/devices/iio:deviceX/in_velocity_calibheight |
Defined on file sysfs-bus-iio
Height of the user (in meters) used by some pedometers to compute the stride length, distance, speed and activity type.
/sys/bus/iio/devices/iio:deviceX/in_allow_async_readout |
Defined on file sysfs-bus-iio-ina2xx-adc
By default (value ‘0’), the capture thread checks for the Conversion Ready Flag to being set prior to committing a new value to the sample buffer. This synchronizes the in-chip conversion rate with the in-driver readout rate at the cost of an additional register read.
Writing ‘1’ will remove the polling for the Conversion Ready Flags to save the additional i2c transaction, which will improve the bandwidth available for reading data. However, samples can be occasionally skipped or repeated, depending on the beat between the capture and conversion rates.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage0-1_i_calibphase |
Defined on file sysfs-bus-iio-frequency-admv1013
Read/write unscaled value for the Local Oscillatior path quadrature I phase shift.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage0-1_q_calibphase |
Defined on file sysfs-bus-iio-frequency-admv1013
Read/write unscaled value for the Local Oscillatior path quadrature Q phase shift.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage0_i_calibbias |
Defined on file sysfs-bus-iio-frequency-admv1013
Read/write value for the Local Oscillatior Feedthrough Offset Calibration I Positive side.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage0_i_calibscale_coarse |
Defined on file sysfs-bus-iio-frequency-admv1014
Read/write value for the digital attenuator gain (IF_I) with coarse steps.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage0_i_calibscale_fine |
Defined on file sysfs-bus-iio-frequency-admv1014
Read/write value for the digital attenuator gain (IF_I) with fine steps.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage0_q_calibbias |
Defined on file sysfs-bus-iio-frequency-admv1013
Read/write value for the Local Oscillatior Feedthrough Offset Calibration Q Positive side.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage0_q_calibscale_coarse |
Defined on file sysfs-bus-iio-frequency-admv1014
Read/write value for the digital attenuator gain (IF_Q) with coarse steps.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage0_q_calibscale_fine |
Defined on file sysfs-bus-iio-frequency-admv1014
Read/write value for the digital attenuator gain (IF_Q) with fine steps.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage1_i_calibbias |
Defined on file sysfs-bus-iio-frequency-admv1013
Read/write raw value for the Local Oscillatior Feedthrough Offset Calibration I Negative side.
/sys/bus/iio/devices/iio:deviceX/in_altvoltage1_q_calibbias |
Defined on file sysfs-bus-iio-frequency-admv1013
Read/write raw value for the Local Oscillatior Feedthrough Offset Calibration Q Negative side.
/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_compare_interval |
Defined on file sysfs-bus-iio-adc-envelope-detector
Number of milliseconds to wait for the comparator in each step of the binary search for the input peak level. Needs to relate to the frequency of the input signal.
/sys/bus/iio/devices/iio:deviceX/in_altvoltageY_invert |
Defined on file sysfs-bus-iio-adc-envelope-detector
The DAC is used to find the peak level of an alternating voltage input signal by a binary search using the output of a comparator wired to an interrupt pin. Like so:
_
| \
input +------>-------|+ \
| \
.-------. | }---.
| | | / |
| dac|-->--|- / |
| | |_/ |
| | |
| | |
| irq|------<-------'
| |
'-------'
The boolean invert attribute (0/1) should be set when the input signal is centered around the maximum value of the dac instead of zero. The envelope detector will search from below in this case and will also invert the result.
The edge/level of the interrupt is also switched to its opposite value.
/sys/bus/iio/devices/iio:deviceX/in_anglY_label |
Defined on file sysfs-bus-iio
Optional symbolic label for channel Y. For Intel hid hinge sensor, the label values are: hinge, keyboard, screen. It means the three channels each correspond respectively to hinge angle, keyboard angle, and screen angle.
/sys/bus/iio/devices/iio:deviceX/in_angl_raw |
/sys/bus/iio/devices/iio:deviceX/in_anglY_raw |
Defined on file sysfs-bus-iio
Angle of rotation. Units after application of scale and offset are radians.
/sys/bus/iio/devices/iio:deviceX/in_anglvel_raw_range |
Defined on file sysfs-bus-iio-bno055
Range for angular velocity readings in radians per second. Note that this does not affects the scale (which should be used when changing the maximum and minimum readable value affects also the reading scaling factor).
/sys/bus/iio/devices/iio:deviceX/in_anglvel_raw_range_available |
Defined on file sysfs-bus-iio-bno055
List of allowed values for in_anglvel_raw_range attribute
/sys/bus/iio/devices/iio:deviceX/in_anglvel_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_z_raw |
Defined on file sysfs-bus-iio
Angular velocity about axis x, y or z (may be arbitrarily assigned). Has all the equivalent parameters as per voltageY. Units after application of scale and offset are radians per second.
/sys/bus/iio/devices/iio:deviceX/in_capacitanceY_raw |
Defined on file sysfs-bus-iio
Raw capacitance measurement from channel Y. Units after application of scale and offset are nanofarads.
/sys/bus/iio/devices/iio:deviceX/in_chromaticity_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_chromaticity_y_raw |
Defined on file sysfs-bus-iio
The x and y light color coordinate on the CIE 1931 chromaticity diagram.
/sys/bus/iio/devices/iio:deviceX/in_colortemp_raw |
Defined on file sysfs-bus-iio
Represents light color temperature, which measures light color temperature in Kelvin.
/sys/bus/iio/devices/iio:deviceX/in_concentration_VOC_short_raw |
Defined on file sysfs-bus-iio-chemical-vz89x
Get the raw calibration VOC value from the sensor. This value has little application outside of calibration.
/sys/bus/iio/devices/iio:deviceX/in_concentration_co2_calibration_background |
Defined on file sysfs-bus-iio-chemical-sunrise-co2
Writing ‘1’ triggers a ‘Background’ calibration cycle.
/sys/bus/iio/devices/iio:deviceX/in_concentration_co2_calibration_factory |
Defined on file sysfs-bus-iio-chemical-sunrise-co2
Writing ‘1’ triggers a ‘Factory’ calibration cycle.
/sys/bus/iio/devices/iio:deviceX/in_concentration_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentrationX_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentration_co2_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentrationX_co2_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentration_ethanol_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentrationX_ethanol_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentration_h2_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentrationX_h2_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentration_o2_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentrationX_o2_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentration_voc_raw |
/sys/bus/iio/devices/iio:deviceX/in_concentrationX_voc_raw |
Defined on file sysfs-bus-iio
Raw (unscaled no offset etc.) reading of a substance. Units after application of scale and offset are percents.
/sys/bus/iio/devices/iio:deviceX/in_conversion_mode |
Defined on file sysfs-bus-iio-vf610
Specifies the hardware conversion mode used. The three available modes are “normal”, “high-speed” and “low-power”, where the last is the default mode.
/sys/bus/iio/devices/iio:deviceX/in_count0_enable_mode |
Defined on file sysfs-bus-iio-timer-stm32
Configure the device counter enable modes, in all case counting direction is set by in_count0_count_direction attribute and the counter is clocked by the internal clock.
- always:
Counter is always ON.
- gated:
Counting is enabled when connected trigger signal level is high else counting is disabled.
- triggered:
Counting is enabled on rising edge of the connected trigger, and remains enabled for the duration of this selected mode.
/sys/bus/iio/devices/iio:deviceX/in_count0_preset |
Defined on file sysfs-bus-iio-timer-stm32
Reading returns the current preset value. Writing sets the preset value. When counting up the counter starts from 0 and fires an event when reach preset value. When counting down the counter start from preset value and fire event when reach 0.
/sys/bus/iio/devices/iio:deviceX/in_count0_trigger_mode |
Defined on file sysfs-bus-iio-timer-stm32
Configure the device counter trigger mode counting direction is set by in_count0_count_direction attribute and the counter is clocked by the connected trigger rising edges.
/sys/bus/iio/devices/iio:deviceX/in_countY_count_direction |
Defined on file sysfs-bus-iio
This interface is deprecated; please use the Counter subsystem.
Raw counter device counters direction for channel Y.
/sys/bus/iio/devices/iio:deviceX/in_countY_raw |
Defined on file sysfs-bus-iio
This interface is deprecated; please use the Counter subsystem.
Raw counter device counts from channel Y. For quadrature counters, multiplication by an available [Y]_scale results in the counts of a single quadrature signal phase from channel Y.
/sys/bus/iio/devices/iio:deviceX/in_count_count_direction_available |
Defined on file sysfs-bus-iio
This interface is deprecated; please use the Counter subsystem.
A list of possible counting directions which are:
“up” : counter device is increasing.
“down”: counter device is decreasing.
/sys/bus/iio/devices/iio:deviceX/in_count_enable_mode_available |
Defined on file sysfs-bus-iio-timer-stm32
Reading returns the list possible enable modes.
/sys/bus/iio/devices/iio:deviceX/in_count_trigger_mode_available |
Defined on file sysfs-bus-iio-timer-stm32
Reading returns the list possible trigger modes.
/sys/bus/iio/devices/iio:deviceX/in_current5_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 IBUS ADC Calculating with scale and offset returns voltage in uA
/sys/bus/iio/devices/iio:deviceX/in_current6_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 IBAT ADC Calculating with scale and offset returns voltage in uA
/sys/bus/iio/devices/iio:deviceX/in_current7_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 CHG_VDDP ADC Calculating with scale and offset returns voltage in uV
/sys/bus/iio/devices/iio:deviceX/in_currentX_raw |
/sys/bus/iio/devices/iio:deviceX/in_currentX_i_raw |
/sys/bus/iio/devices/iio:deviceX/in_currentX_q_raw |
Defined on file sysfs-bus-iio
Raw current measurement from channel X. Units are in milliamps after application of scale and offset. If no offset or scale is present, output should be considered as processed with the unit in milliamps.
Channels with ‘i’ and ‘q’ modifiers always exist in pairs and both channels refer to the same signal. The ‘i’ channel contains the in-phase component of the signal while the ‘q’ channel contains the quadrature component.
/sys/bus/iio/devices/iio:deviceX/in_currentY_raw |
/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_raw |
Defined on file sysfs-bus-iio
Raw (unscaled no bias removal etc.) current measurement from channel Y. In special cases where the channel does not correspond to externally available input one of the named versions may be used. The number must always be specified and unique to allow association with event codes. Units after application of scale and offset are milliamps.
/sys/bus/iio/devices/iio:deviceX/in_deltaangl_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_deltaangl_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_deltaangl_z_raw |
Defined on file sysfs-bus-iio
Angular displacement between two consecutive samples on x, y or z (may be arbitrarily assigned but should match other such assignments on device). In order to compute the total angular displacement during a desired period of time, the application should sum-up the delta angle samples acquired during that time. Units after application of scale and offset are radians.
/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_z_raw |
Defined on file sysfs-bus-iio
The linear velocity change between two consecutive samples on x, y or z (may be arbitrarily assigned but should match other such assignments on device). In order to compute the total linear velocity change during a desired period of time, the application should sum-up the delta velocity samples acquired during that time. Units after application of scale and offset are meters per second.
/sys/bus/iio/devices/iio:deviceX/in_electricalconductivity_raw |
Defined on file sysfs-bus-iio
Raw (unscaled no offset etc.) electric conductivity reading. Units after application of scale and offset are siemens per meter.
/sys/bus/iio/devices/iio:deviceX/in_energy_calibweight |
Defined on file sysfs-bus-iio
Weight of the user (in kg). It is needed by some pedometers to compute the calories burnt by the user.
/sys/bus/iio/devices/iio:deviceX/in_filter_notch_center_frequency |
Defined on file sysfs-bus-iio
Center frequency in Hz for a notch filter. Used i.e. for line noise suppression.
/sys/bus/iio/devices/iio:deviceX/in_gravity_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_gravity_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_gravity_z_raw |
Defined on file sysfs-bus-iio
Gravity in direction x, y or z (may be arbitrarily assigned but should match other such assignments on device). Units after application of scale and offset are m/s^2.
/sys/bus/iio/devices/iio:deviceX/in_gyro_calibration_auto_status |
Defined on file sysfs-bus-iio-bno055
Reports the autocalibration status for the gyroscope sensor. Can be 0 (calibration non even enabled) or 1 to 5 where the greater the number, the better the calibration status.
/sys/bus/iio/devices/iio:deviceX/in_gyro_matrix |
/sys/bus/iio/devices/iio:deviceX/in_accel_matrix |
/sys/bus/iio/devices/iio:deviceX/in_magn_matrix |
Defined on file sysfs-bus-iio-mpu6050
This is mounting matrix for motion sensors. Mounting matrix is a 3x3 unitary matrix. A typical mounting matrix would look like [0, 1, 0; 1, 0, 0; 0, 0, -1]. Using this information, it would be easy to tell the relative positions among sensors as well as their positions relative to the board that holds these sensors. Identity matrix [1, 0, 0; 0, 1, 0; 0, 0, 1] means sensor chip and device are perfectly aligned with each other. All axes are exactly the same.
/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_input |
Defined on file sysfs-bus-iio
Scaled humidity measurement in milli percent.
/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_raw |
Defined on file sysfs-bus-iio
Raw humidity measurement of air. Units after application of scale and offset are milli percent.
/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_trough_raw |
/sys/bus/iio/devices/iio:deviceX/in_temp_trough_raw |
Defined on file sysfs-bus-iio
Lowest value since some reset condition. These attributes allow access to this and are otherwise the direct equivalent of the <type>Y[_name]_raw attributes.
/sys/bus/iio/devices/iio:deviceX/in_illuminance0_zone |
Defined on file sysfs-bus-iio-light-lm3533-als
Get the current light zone (0..4) as defined by the in_illuminance0_threshY_{falling,rising} thresholds.
/sys/bus/iio/devices/iio:deviceX/in_illuminanceY_calibscale_available |
/sys/bus/iio/devices/iio:deviceX/in_intensityY_calibscale_available |
/sys/bus/iio/devices/iio:deviceX/in_proximityY_calibscale_available |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale_available |
Defined on file sysfs-bus-iio
Available values of calibscale. Maybe expressed as either of:
a small discrete set of values like “1 8 16”
a range specified as “[min step max]”
If shared across all channels, <type>_calibscale_available is used.
/sys/bus/iio/devices/iio:deviceX/in_illuminance_hysteresis_relative |
/sys/bus/iio/devices/iio:deviceX/in_intensity_hysteresis_relative |
Defined on file sysfs-bus-iio
Specify the percent for light sensor relative to the channel absolute value that a data field should change before an event is generated. Units are a percentage of the prior reading.
/sys/bus/iio/devices/iio:deviceX/in_incli_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_incli_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_incli_z_raw |
Defined on file sysfs-bus-iio
Inclination raw reading about axis x, y or z (may be arbitrarily assigned). Data converted by application of offset and scale to degrees.
/sys/bus/iio/devices/iio:deviceX/in_indexY_raw |
Defined on file sysfs-bus-iio
This interface is deprecated; please use the Counter subsystem.
Raw counter device index value from channel Y. This attribute provides an absolute positional reference (e.g. a pulse once per revolution) which may be used to home positional systems as required.
/sys/bus/iio/devices/iio:deviceX/in_intensityY_offset |
Defined on file sysfs-bus-iio-health-afe440x
Get and set the offset cancellation DAC setting for these stages. The values are expressed in 5-bit sign-magnitude.
/sys/bus/iio/devices/iio:deviceX/in_intensityY_raw |
Defined on file sysfs-bus-iio-health-afe440x
Get measured values from the ADC for these stages. Y is the specific stage number corresponding to datasheet stage names as follows:
1 |
LED2 |
2 |
ALED2/LED3 |
3 |
LED1 |
4 |
ALED1/LED4 |
Note that channels 5 and 6 represent LED2-ALED2 and LED1-ALED1 respectively which simply helper channels containing the calculated difference in the value of stage 1 - 2 and 3 - 4. The values are expressed in 24-bit twos complement. The LED current for the stage is controlled via out_currentY_raw.
/sys/bus/iio/devices/iio:deviceX/in_intensityY_resistance |
/sys/bus/iio/devices/iio:deviceX/in_intensityY_capacitance |
Defined on file sysfs-bus-iio-health-afe440x
Get and set the resistance and the capacitance settings for the Transimpedance Amplifier during the associated stage.
/sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain_available |
Defined on file sysfs-bus-iio
Lists all available hardware applied gain factors. Shared across all channels.
/sys/bus/iio/devices/iio:deviceX/in_intensity_ir_large_raw |
Defined on file sysfs-bus-iio-light-si1133
Unit-less infrared intensity. The intensity is measured from 4 dark photodiodes. “large” indicate the surface area capturing infrared.
/sys/bus/iio/devices/iio:deviceX/in_intensity_ir_small_raw |
Defined on file sysfs-bus-iio-light-si1133
Unit-less infrared intensity. The intensity is measured from 1 dark photodiode. “small” indicate the surface area capturing infrared.
/sys/bus/iio/devices/iio:deviceX/in_intensity_large_raw |
Defined on file sysfs-bus-iio-light-si1133
Unit-less light intensity with more diodes.
/sys/bus/iio/devices/iio:deviceX/in_intensity_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_intensity_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_intensity_z_raw |
Defined on file sysfs-bus-iio
Unscaled light intensity according to CIE 1931/DIN 5033 color space. Units after application of scale are nano nanowatts per square meter.
/sys/bus/iio/devices/iio:deviceX/in_magn_calibration_auto_status |
Defined on file sysfs-bus-iio-bno055
Reports the autocalibration status for the magnetometer sensor. Can be 0 (calibration non even enabled) or 1 to 5 where the greater the number, the better the calibration status.
/sys/bus/iio/devices/iio:deviceX/in_magn_calibration_fast_enable |
Defined on file sysfs-bus-iio-bno055
Can be 1 or 0. Enables/disables the “Fast Magnetometer Calibration” HW function.
/sys/bus/iio/devices/iio:deviceX/in_magn_x_oversampling_ratio |
/sys/bus/iio/devices/iio:deviceX/in_magn_y_oversampling_ratio |
/sys/bus/iio/devices/iio:deviceX/in_magn_z_oversampling_ratio |
Defined on file sysfs-bus-iio
Hardware applied number of measurements for acquiring one data point. The HW will do <type>[_name]_oversampling_ratio measurements and return the average value as output data. Each value resulted from <type>[_name]_oversampling_ratio measurements is considered as one sample for <type>[_name]_sampling_frequency.
/sys/bus/iio/devices/iio:deviceX/in_magn_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_magn_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_magn_z_raw |
Defined on file sysfs-bus-iio
Magnetic field along axis x, y or z (may be arbitrarily assigned). Data converted by application of offset then scale to Gauss.
/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm1_input |
/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm1_input |
/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm2p5_input |
/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm2p5_input |
/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm4_input |
/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm4_input |
/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm10_input |
/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm10_input |
Defined on file sysfs-bus-iio
Mass concentration reading of particulate matter in ug / m3. pmX consists of particles with aerodynamic diameter less or equal to X micrometers.
/sys/bus/iio/devices/iio:deviceX/in_ph_raw |
Defined on file sysfs-bus-iio
Raw (unscaled no offset etc.) pH reading of a substance as a negative base-10 logarithm of hydrodium ions in a litre of water.
/sys/bus/iio/devices/iio:deviceX/in_phaseY_raw |
Defined on file sysfs-bus-iio
Raw (unscaled) phase difference reading from channel Y. Units after application of scale and offset are radians.
/sys/bus/iio/devices/iio:deviceX/in_positionrelative_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_positionrelative_y_raw |
Defined on file sysfs-bus-iio
Relative position in direction x or y on a pad (may be arbitrarily assigned but should match other such assignments on device). Units after application of scale and offset are milli percents from the pad’s size in both directions. Should be calibrated by the consumer.
/sys/bus/iio/devices/iio:deviceX/in_powerY_raw |
Defined on file sysfs-bus-iio
Raw (unscaled no bias removal etc.) power measurement from channel Y. The number must always be specified and unique to allow association with event codes. Units after application of scale and offset are milliwatts.
/sys/bus/iio/devices/iio:deviceX/in_pressureY_input |
/sys/bus/iio/devices/iio:deviceX/in_pressure_input |
Defined on file sysfs-bus-iio
Scaled pressure measurement from channel Y, in kilopascal.
/sys/bus/iio/devices/iio:deviceX/in_pressureY_raw |
/sys/bus/iio/devices/iio:deviceX/in_pressure_raw |
Defined on file sysfs-bus-iio
Raw pressure measurement from channel Y. Units after application of scale and offset are kilopascal.
/sys/bus/iio/devices/iio:deviceX/in_proximity0_agc_gain |
/sys/bus/iio/devices/iio:deviceX/in_proximity0_agc_gain_bias |
Defined on file sysfs-bus-iio-isl29501
This sensor has an automatic gain control (agc) loop which sets the analog signal levels at an optimum level by controlling programmable gain amplifiers. The criteria for optimal gain is determined by the sensor.
Return the actual gain value as an integer in [0; 65536] range when read from.
The agc gain read when measuring crosstalk shall be written into in_proximity0_agc_gain_bias.
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calib_phase_temp_a |
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calib_phase_temp_b |
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calib_phase_light_a |
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calib_phase_light_b |
Defined on file sysfs-bus-iio-isl29501
The sensor is able to perform correction of distance measurements due to changing temperature and ambient light conditions. It can be programmed to correct for a second order error polynomial.
Phase data has to be collected when temperature and ambient light are modulated independently.
Then a least squares curve fit to a second order polynomial has to be generated from the data. The resultant curves have the form ax^2 + bx + c.
From those two curves, a and b coefficients shall be stored in in_proximity0_calib_phase_temp_a and in_proximity0_calib_phase_temp_b for temperature and in in_proximity0_calib_phase_light_a and in_proximity0_calib_phase_light_b for ambient light.
Those values must be integer in [0; 8355840] range.
Finally, the c constant is set by the sensor internally.
The value stored in sensor is displayed when read from.
/sys/bus/iio/devices/iio:deviceX/in_proximity3_comb_raw |
Defined on file sysfs-bus-iio-sx9310
Proximity measurement indicating that some object is near the combined sensor. The combined sensor presents proximity measurements constructed by hardware by combining measurements taken from a given set of physical sensors.
/sys/bus/iio/devices/iio:deviceX/in_proximity<id>_setup |
Defined on file sysfs-bus-iio-sx9324
SX9324 has 3 inputs, CS0, CS1 and CS2. Hardware layout defines if the input is
not connected (HZ),
grounded (GD),
connected to an antenna where it can act as a base (DS - data shield), or measured input (MI).
The sensor rotates measurement across 4 phases (PH0, PH1, PH2, PH3), where the inputs are configured and then measured.
By default, during the first phase, [PH0], CS0 is measured, while CS1 and CS2 are used as shields. cat in_proximity0_setup returns “MI,DS,DS”. [PH1], CS1 is measured, CS0 and CS2 are shield: cat in_proximity1_setup returns “DS,MI,DS”. [PH2], CS2 is measured, CS0 and CS1 are shield: cat in_proximity1_setup returns “DS,DS,MI”. [PH3], CS1 and CS2 are measured (combo mode): cat in_proximity1_setup returns “DS,MI,MI”.
Note, these are the chip default. Hardware layout will most likely dictate different output. The entry is read-only.
/sys/bus/iio/devices/iio:deviceX/in_proximity_input |
Defined on file sysfs-bus-iio-proximity-as3935
Get the current distance in meters of storm (1km steps) 1000-40000 = distance in meters
What /sys/bus/iio/devices/iio:deviceX/noise_level_tripped When 1 the noise level is over the trip level and not reporting valid data
/sys/bus/iio/devices/iio:deviceX/in_proximity_nearlevel |
Defined on file sysfs-bus-iio-proximity
Near level for proximity sensors. This is a single integer value that tells user space when an object should be considered close to the device. If the value read from the sensor is above or equal to the value in this file an object should typically be considered near.
/sys/bus/iio/devices/iio:deviceX/in_resistance_raw |
/sys/bus/iio/devices/iio:deviceX/in_resistanceX_raw |
/sys/bus/iio/devices/iio:deviceX/out_resistance_raw |
/sys/bus/iio/devices/iio:deviceX/out_resistanceX_raw |
Defined on file sysfs-bus-iio
Raw (unscaled no offset etc.) resistance reading. Units after application of scale and offset are ohms.
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_raw |
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_raw |
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_raw |
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_raw |
Defined on file sysfs-bus-iio
Raw value of rotation from true/magnetic north measured with or without compensation from tilt sensors.
/sys/bus/iio/devices/iio:deviceX/in_rot_quaternion_raw |
Defined on file sysfs-bus-iio
Raw value of quaternion components using a format x y z w. Here x, y, and z component represents the axis about which a rotation will occur and w component represents the amount of rotation.
/sys/bus/iio/devices/iio:deviceX/in_rot_yaw_raw |
/sys/bus/iio/devices/iio:deviceX/in_rot_pitch_raw |
/sys/bus/iio/devices/iio:deviceX/in_rot_roll_raw |
Defined on file sysfs-bus-iio
Raw (unscaled) euler angles readings. Units after application of scale are deg.
/sys/bus/iio/devices/iio:deviceX/in_shunt_resistorY |
Defined on file sysfs-bus-iio-adc-pac1934
The value of the shunt resistor may be known only at runtime and set by a client application. This attribute allows to set its value in micro-ohms. X is the IIO index of the device. Y is the channel number. The value is used to calculate current, power and accumulated energy.
/sys/bus/iio/devices/iio:deviceX/in_temp8_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 IC junction temperature Calculating with scale and offset returns temperature in degree
/sys/bus/iio/devices/iio:deviceX/in_tempY_input |
/sys/bus/iio/devices/iio:deviceX/in_temp_input |
Defined on file sysfs-bus-iio
Scaled temperature measurement in milli degrees Celsius.
/sys/bus/iio/devices/iio:deviceX/in_temp_calibemissivity |
/sys/bus/iio/devices/iio:deviceX/in_tempX_calibemissivity |
/sys/bus/iio/devices/iio:deviceX/in_temp_object_calibemissivity |
/sys/bus/iio/devices/iio:deviceX/in_tempX_object_calibemissivity |
Defined on file sysfs-bus-iio
The emissivity ratio of the surface in the field of view of the contactless temperature sensor. Emissivity varies from 0 to 1, with 1 being the emissivity of a black body.
/sys/bus/iio/devices/iio:deviceX/in_temp_object_calibambient |
/sys/bus/iio/devices/iio:deviceX/in_tempX_object_calibambient |
Defined on file sysfs-bus-iio
Calibrated ambient temperature for object temperature calculation in milli degrees Celsius.
/sys/bus/iio/devices/iio:deviceX/in_temp_raw |
/sys/bus/iio/devices/iio:deviceX/in_tempX_raw |
/sys/bus/iio/devices/iio:deviceX/in_temp_x_raw |
/sys/bus/iio/devices/iio:deviceX/in_temp_y_raw |
/sys/bus/iio/devices/iio:deviceX/in_temp_ambient_raw |
/sys/bus/iio/devices/iio:deviceX/in_temp_object_raw |
Defined on file sysfs-bus-iio
Raw (unscaled no bias removal etc.) temperature measurement. If an axis is specified it generally means that the temperature sensor is associated with one part of a compound device (e.g. a gyroscope axis). The ambient and object modifiers distinguish between ambient (reference) and distant temperature for contact- less measurements. Units after application of scale and offset are milli degrees Celsius.
/sys/bus/iio/devices/iio:deviceX/in_temp_thermocouple_type |
Defined on file sysfs-bus-iio
One of the following thermocouple types: B, E, J, K, N, R, S, T.
/sys/bus/iio/devices/iio:deviceX/in_voltage0_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 USBID ADC which connected to connector ID pin. Calculating with scale and offset returns voltage in uV
/sys/bus/iio/devices/iio:deviceX/in_voltage10_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 TS ADC Calculating with scale and offset returns voltage in uV
/sys/bus/iio/devices/iio:deviceX/in_voltage1_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 VBUS ADC with lower accuracy(+-75mA) higher measure range(1~22mV) Calculating with scale and offset returns voltage in uV
/sys/bus/iio/devices/iio:deviceX/in_voltage2-voltage2_shorted_raw |
Defined on file sysfs-bus-iio-adc-ad7192
Measure voltage from AIN2 pin connected to AIN(+) and AIN(-) shorted.
/sys/bus/iio/devices/iio:deviceX/in_voltage2_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 VBUS ADC with higher accuracy(+-30mA) lower measure range(1~9.76V) Calculating with scale and offset returns voltage in uV
/sys/bus/iio/devices/iio:deviceX/in_voltage3_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 VSYS ADC Calculating with scale and offset returns voltage in uV
/sys/bus/iio/devices/iio:deviceX/in_voltage4_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 VBAT ADC Calculating with scale and offset returns voltage in uV
/sys/bus/iio/devices/iio:deviceX/in_voltage9_raw |
Defined on file sysfs-bus-iio-adc-mt6360
Indicated MT6360 VREF_TS ADC Calculating with scale and offset returns voltage in uV
/sys/bus/iio/devices/iio:deviceX/in_voltageX_sampling_frequency |
/sys/bus/iio/devices/iio:deviceX/in_powerY_sampling_frequency |
/sys/bus/iio/devices/iio:deviceX/in_currentZ_sampling_frequency |
Defined on file sysfs-bus-iio
Some devices have separate controls of sampling frequency for individual channels. If multiple channels are enabled in a scan, then the sampling_frequency of the scan may be computed from the per channel sampling frequencies.
/sys/bus/iio/devices/iio:deviceX/in_voltageY-voltageZ_balance_switch_en |
Defined on file sysfs-bus-iio-adc-ad7280a
Used to enable an output for balancing cells for time controlled via in_voltage_Y-voltageZ_balance_switch_timer.
/sys/bus/iio/devices/iio:deviceX/in_voltageY-voltageZ_balance_switch_timer |
Defined on file sysfs-bus-iio-adc-ad7280a
Time in seconds for which balance switch will be turned on. Multiple of 71.5 seconds.
/sys/bus/iio/devices/iio:deviceX/in_voltageY-voltageZ_raw |
Defined on file sysfs-bus-iio
Raw (unscaled) differential voltage measurement equivalent to channel Y - channel Z where these channel numbers apply to the physically equivalent inputs when non differential readings are separately available. In differential only parts, then all that is required is a consistent labeling. Units after application of scale and offset are millivolts.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_dither_enable |
Defined on file sysfs-bus-iio-dac-ad5766
Dither enable. Write 1 to enable dither or 0 to disable it.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_dither_invert |
Defined on file sysfs-bus-iio-dac-ad5766
Inverts the dither applied to the selected DAC channel. Dither is not inverted by default. Write “1” to invert dither.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_dither_scale |
Defined on file sysfs-bus-iio-dac-ad5766
Scales the dither before it is applied to the selected channel.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_dither_scale_available |
Defined on file sysfs-bus-iio-dac-ad5766
Returns possible scalings available for the current channel.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_dither_source |
Defined on file sysfs-bus-iio-dac-ad5766
Selects dither source applied to the selected channel. Write “0” to select N0 source, write “1” to select N1 source.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_label |
/sys/bus/iio/devices/iio:deviceX/out_voltageY_label |
Defined on file sysfs-bus-iio
Optional symbolic label to a device channel. If a label is defined for this channel add that to the channel specific attributes. This is useful for userspace to be able to better identify an individual channel.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_raw |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_raw |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_raw |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_raw |
Defined on file sysfs-bus-iio
Raw (unscaled no bias removal etc.) voltage measurement from channel Y. In special cases where the channel does not correspond to externally available input one of the named versions may be used. The number must always be specified and unique to allow association with event codes. Units after application of scale and offset are millivolts.
Channels with ‘i’ and ‘q’ modifiers always exist in pairs and both channels refer to the same signal. The ‘i’ channel contains the in-phase component of the signal while the ‘q’ channel contains the quadrature component.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_scale |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_i_scale |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_q_scale |
/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_scale |
/sys/bus/iio/devices/iio:deviceX/in_voltage_scale |
/sys/bus/iio/devices/iio:deviceX/in_voltage_i_scale |
/sys/bus/iio/devices/iio:deviceX/in_voltage_q_scale |
/sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_scale |
/sys/bus/iio/devices/iio:deviceX/out_voltageY_scale |
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale |
/sys/bus/iio/devices/iio:deviceX/in_currentY_scale |
/sys/bus/iio/devices/iio:deviceX/in_currentY_supply_scale |
/sys/bus/iio/devices/iio:deviceX/in_current_scale |
/sys/bus/iio/devices/iio:deviceX/in_currentY_i_scale |
/sys/bus/iio/devices/iio:deviceX/in_currentY_q_scale |
/sys/bus/iio/devices/iio:deviceX/in_current_i_scale |
/sys/bus/iio/devices/iio:deviceX/in_current_q_scale |
/sys/bus/iio/devices/iio:deviceX/in_accel_scale |
/sys/bus/iio/devices/iio:deviceX/in_accel_peak_scale |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_scale |
/sys/bus/iio/devices/iio:deviceX/in_energy_scale |
/sys/bus/iio/devices/iio:deviceX/in_distance_scale |
/sys/bus/iio/devices/iio:deviceX/in_magn_scale |
/sys/bus/iio/devices/iio:deviceX/in_magn_x_scale |
/sys/bus/iio/devices/iio:deviceX/in_magn_y_scale |
/sys/bus/iio/devices/iio:deviceX/in_magn_z_scale |
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_scale |
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_scale |
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_scale |
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_scale |
/sys/bus/iio/devices/iio:deviceX/in_pressureY_scale |
/sys/bus/iio/devices/iio:deviceX/in_pressure_scale |
/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_scale |
/sys/bus/iio/devices/iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_scale |
/sys/bus/iio/devices/iio:deviceX/in_illuminance_scale |
/sys/bus/iio/devices/iio:deviceX/in_countY_scale |
/sys/bus/iio/devices/iio:deviceX/in_deltaangl_scale |
/sys/bus/iio/devices/iio:deviceX/in_deltavelocity_scale |
/sys/bus/iio/devices/iio:deviceX/in_angl_scale |
/sys/bus/iio/devices/iio:deviceX/in_intensity_x_scale |
/sys/bus/iio/devices/iio:deviceX/in_intensity_y_scale |
/sys/bus/iio/devices/iio:deviceX/in_intensity_z_scale |
/sys/bus/iio/devices/iio:deviceX/in_concentration_co2_scale |
Defined on file sysfs-bus-iio
If known for a device, scale to be applied to <type>Y[_name]_raw post addition of <type>[Y][_name]_offset in order to obtain the measured value in <type> units as specified in <type>[Y][_name]_raw documentation. If shared across all in channels then Y and <x|y|z> are not present and the value is called <type>[Y][_name]_scale. The peak modifier means this value is applied to <type>Y[_name]_peak_raw values.
/sys/bus/iio/devices/iio:deviceX/in_voltageY_sensing_mode |
Defined on file sysfs-bus-iio-adc-hi8435
Program sensor type for threshold detector inputs. Could be either “GND-Open” or “Supply-Open” mode. Y is a threshold detector input channel. Channels 0..7, 8..15, 16..23 and 24..31 has common sensor types.
/sys/bus/iio/devices/iio:deviceX/in_voltage_filterY_notch_center |
Defined on file sysfs-bus-iio-adc-max11410
Center frequency of the notch filter in Hz.
/sys/bus/iio/devices/iio:deviceX/in_voltage_filterY_notch_en |
Defined on file sysfs-bus-iio-adc-max11410
Enable or disable a notch filter.
/sys/bus/iio/devices/iio:deviceX/in_voltage_spi_clk_freq |
Defined on file sysfs-bus-iio-dfsdm-adc-stm32
For audio purpose only.
Used by audio driver to set/get the spi input frequency.
This is mandatory if DFSDM is slave on SPI bus, to provide information on the SPI clock frequency during runtime Notice that the SPI frequency should be a multiple of sample frequency to ensure the precision.
if DFSDM input is SPI master:
Reading SPI clkout frequency, error on writing
If DFSDM input is SPI Slave:
Reading returns value previously set. Writing value before starting conversions.
/sys/bus/iio/devices/iio:deviceX/in_voltagex_sys_calibration |
Defined on file sysfs-bus-iio-adc-ad7192
Initiates the system calibration procedure. This is done on a single channel at a time. Write ‘1’ to start the calibration.
/sys/bus/iio/devices/iio:deviceX/in_voltagex_sys_calibration_mode |
Defined on file sysfs-bus-iio-adc-ad7192
Sets up the calibration mode used in the system calibration procedure. Reading returns the current calibration mode. Writing sets the system calibration mode.
/sys/bus/iio/devices/iio:deviceX/in_voltagex_sys_calibration_mode_available |
Defined on file sysfs-bus-iio-adc-ad7192
Reading returns a list with the possible calibration modes. There are two available options: “zero_scale” - calibrate to zero scale “full_scale” - calibrate to full scale
/sys/bus/iio/devices/iio:deviceX/label |
Defined on file sysfs-bus-iio
Optional symbolic label for a device. This is useful for userspace to be able to better identify an individual device.
The contents of the label are free-form, but there are some standardized uses:
For proximity sensors which give the proximity (of a person) to a certain wlan or wwan antenna the following standardized labels are used:
“proximity-wifi”
“proximity-lte”
“proximity-wifi-lte”
“proximity-wifi-left”
“proximity-wifi-right”
These are used to indicate to userspace that these proximity sensors may be used to tune transmit power to ensure that Specific Absorption Rate (SAR) limits are honored. The “-left” and “-right” labels are for devices with multiple antennas.
In some laptops/tablets the standardized proximity sensor labels instead indicate proximity to a specific part of the device:
“proximity-palmrest” indicates proximity to the keyboard’s palmrest
“proximity-palmrest-left” indicates proximity to the left part of the palmrest
“proximity-palmrest-right” indicates proximity to the right part of the palmrest
“proximity-lap” indicates the device is being used on someone’s lap
Note “proximity-lap” is special in that its value may be calculated by firmware from other sensor readings, rather then being a raw sensor reading.
For accelerometers used in 2-in-1s with 360° (yoga-style) hinges, which have an accelerometer in both their base and their display, the following standardized labels are used:
“accel-base”
“accel-display”
For devices where an accelerometer is housed in the swivel camera subassembly (for AR application), the following standardized label is used:
“accel-camera”
/sys/bus/iio/devices/iio:deviceX/location |
Defined on file sysfs-bus-iio-cros-ec
This attribute returns a string with the physical location where the motion sensor is placed. For example, in a laptop a motion sensor can be located on the base or on the lid. Current valid values are ‘base’ and ‘lid’.
/sys/bus/iio/devices/iio:deviceX/meas_conf |
/sys/bus/iio/devices/iio:deviceX/meas_conf_available |
Defined on file sysfs-bus-iio-magnetometer-hmc5843
Current configuration and available configurations for the bias current.
normal |
Normal measurement configurations (default) |
positivebias |
Positive bias configuration |
negativebias |
Negative bias configuration |
disabled |
Only available on HMC5983. Disables magnetic sensor and enables temperature sensor. |
- Note:
The effect of this configuration may vary according to the device. For exact documentation check the device’s datasheet.
/sys/bus/iio/devices/iio:deviceX/mount_matrix |
/sys/bus/iio/devices/iio:deviceX/in_mount_matrix |
/sys/bus/iio/devices/iio:deviceX/out_mount_matrix |
/sys/bus/iio/devices/iio:deviceX/in_anglvel_mount_matrix |
/sys/bus/iio/devices/iio:deviceX/in_accel_mount_matrix |
Defined on file sysfs-bus-iio
Mounting matrix for IIO sensors. This is a rotation matrix which informs userspace about sensor chip’s placement relative to the main hardware it is mounted on.
Main hardware placement is defined according to the local reference frame related to the physical quantity the sensor measures.
Given that the rotation matrix is defined in a board specific way (platform data and / or device-tree), the main hardware reference frame definition is left to the implementor’s choice (see below for a magnetometer example).
Applications should apply this rotation matrix to samples so that when main hardware reference frame is aligned onto local reference frame, then sensor chip reference frame is also perfectly aligned with it.
Matrix is a 3x3 unitary matrix and typically looks like [0, 1, 0; 1, 0, 0; 0, 0, -1]. Identity matrix [1, 0, 0; 0, 1, 0; 0, 0, 1] means sensor chip and main hardware are perfectly aligned with each other.
For example, a mounting matrix for a magnetometer sensor informs userspace about sensor chip’s ORIENTATION relative to the main hardware.
More specifically, main hardware orientation is defined with respect to the LOCAL EARTH GEOMAGNETIC REFERENCE FRAME where :
Y is in the ground plane and positive towards magnetic North ;
X is in the ground plane, perpendicular to the North axis and positive towards the East ;
Z is perpendicular to the ground plane and positive upwards.
An implementor might consider that for a hand-held device, a ‘natural’ orientation would be ‘front facing camera at the top’. The main hardware reference frame could then be described as :
Y is in the plane of the screen and is positive towards the top of the screen ;
X is in the plane of the screen, perpendicular to Y axis, and positive towards the right hand side of the screen ;
Z is perpendicular to the screen plane and positive out of the screen.
Another example for a quadrotor UAV might be :
Y is in the plane of the propellers and positive towards the front-view camera;
X is in the plane of the propellers, perpendicular to Y axis, and positive towards the starboard side of the UAV ;
Z is perpendicular to propellers plane and positive upwards.
/sys/bus/iio/devices/iio:deviceX/name |
Defined on file sysfs-bus-iio
Description of the physical chip / device for device X. Typically a part number.
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency |
Defined on file sysfs-bus-iio
Output frequency for channel Y in Hz. The number must always be specified and unique if the output corresponds to a single channel. Some drivers have additional constraints: ADF4371 has an integrated VCO with fundamendal output frequency ranging from 4000000000 Hz 8000000000 Hz.
- out_altvoltage0_frequency:
A divide by 1, 2, 4, 8, 16, 32 or circuit generates frequencies from 62500000 Hz to 8000000000 Hz.
- out_altvoltage1_frequency:
This channel duplicates the channel 0 frequency
- out_altvoltage2_frequency:
A frequency doubler generates frequencies from 8000000000 Hz to 16000000000 Hz.
- out_altvoltage3_frequency:
A frequency quadrupler generates frequencies from 16000000000 Hz to 32000000000 Hz.
Note: writes to one of the channels will affect the frequency of all the other channels, since it involves changing the VCO fundamental output frequency.
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_increment |
Defined on file sysfs-bus-iio-impedance-analyzer-ad5933
Frequency increment in Hz (step size) between consecutive frequency points along the sweep.
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_points |
Defined on file sysfs-bus-iio-impedance-analyzer-ad5933
Number of frequency points (steps) in the frequency sweep. This value, in conjunction with the out_altvoltageY_frequency_start and the out_altvoltageY_frequency_increment, determines the frequency sweep range for the sweep operation.
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_resolution |
Defined on file sysfs-bus-iio-frequency-adf4350
Stores channel Y frequency resolution/channel spacing in Hz. The value given directly influences the MODULUS used by the fractional-N PLL. It is assumed that the algorithm that is used to compute the various dividers, is able to generate proper values for multiples of channel spacing.
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency_start |
Defined on file sysfs-bus-iio-impedance-analyzer-ad5933
Frequency sweep start frequency in Hz.
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_name |
Defined on file sysfs-bus-iio-frequency-adf4371
Reading returns the datasheet name for channel Y:
out_altvoltage0_name: RF8x
out_altvoltage1_name: RFAUX8x
out_altvoltage2_name: RF16x
out_altvoltage3_name: RF32x
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_phase |
Defined on file sysfs-bus-iio
Phase in radians of one frequency/clock output Y (out_altvoltageY) relative to another frequency/clock output (out_altvoltageZ) of the device X. The number must always be specified and unique if the output corresponds to a single channel.
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_refin_frequency |
Defined on file sysfs-bus-iio-frequency-adf4350
Sets channel Y REFin frequency in Hz. In some clock chained applications, the reference frequency used by the PLL may change during runtime. This attribute allows the user to adjust the reference frequency accordingly. The value written has no effect until out_altvoltageY_frequency is updated. Consider to use out_altvoltageY_powerdown to power down the PLL and its RFOut buffers during REFin changes.
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_settling_cycles |
Defined on file sysfs-bus-iio-impedance-analyzer-ad5933
Number of output excitation cycles (settling time cycles) that are allowed to pass through the unknown impedance, after each frequency increment, and before the ADC is triggered to perform a conversion sequence of the response signal.
/sys/bus/iio/devices/iio:deviceX/out_conversion_mode |
Defined on file sysfs-bus-iio-vf610
Specifies the hardware conversion mode used within DAC. The two available modes are “high-power” and “low-power”, where “low-power” mode is the default mode.
/sys/bus/iio/devices/iio:deviceX/out_currentY_currentZ_raw |
Defined on file sysfs-bus-iio-light-lm3533-als
Set the output current for channel out_currentY when in zone Z (0..255), where Y in 0..2 and Z in 0..4.
These values correspond to the ALS-mapper target registers for ALS-mapper Y + 1.
Note that out_currentY_raw provides the current for the current zone.
/sys/bus/iio/devices/iio:deviceX/out_currentY_raw |
Defined on file sysfs-bus-iio
Set/get output current for channel Y. Units after application of scale and offset are milliamps. For some devices current channels are used to specify current supplied to elements used in taking a measurement of a different type. E.g. LED currents.
/sys/bus/iio/devices/iio:deviceX/out_currentY_rawN |
Defined on file sysfs-bus-iio-dac
This attribute has the same meaning as out_currentY_raw. It is specific to toggle enabled channels and refers to the DAC output code in INPUT_N (_rawN), where N is the integer value of the symbol. The same scale and offset as in out_currentY_raw applies.
/sys/bus/iio/devices/iio:deviceX/out_currentY_symbol |
Defined on file sysfs-bus-iio-dac
Performs a SW switch to a predefined output symbol. This attribute is specific to toggle enabled channels and allows switching between multiple predefined symbols. Each symbol corresponds to a different output, denoted as out_currentY_rawN, where N is the integer value of the symbol. Writing an integer value N will select out_currentY_rawN.
/sys/bus/iio/devices/iio:deviceX/out_currentY_toggle_en |
Defined on file sysfs-bus-iio-dac
Toggle enable. Write 1 to enable toggle or 0 to disable it. This is useful when one wants to change the DAC output codes. For autonomous toggling, the way it should be done is:
disable toggle operation;
change out_currentY_rawN, where N is the integer value of the symbol;
enable toggle operation.
/sys/bus/iio/devices/iio:deviceX/out_current_heater_raw |
/sys/bus/iio/devices/iio:deviceX/out_current_heater_raw_available |
Defined on file sysfs-bus-iio-humidity
Controls the heater device within the humidity sensor to get rid of excess condensation.
In some devices, this is just a switch in which case 0 = OFF, and 1 = ON.
/sys/bus/iio/devices/iio:deviceX/out_humidityrelative_raw |
Defined on file sysfs-bus-iio-chemical-sgp40
Set the relative humidity. This value is sent to the sensor for humidity compensation. Default value: 50000 (50 % relative humidity)
/sys/bus/iio/devices/iio:deviceX/out_resistance_raw_available |
Defined on file sysfs-bus-iio-potentiometer-mcp4531
The range of available values represented as the minimum value, the step and the maximum value, all enclosed in square brackets. Example: [0 1 256]
/sys/bus/iio/devices/iio:deviceX/out_temp_raw |
Defined on file sysfs-bus-iio-chemical-sgp40
Set the temperature. This value is sent to the sensor for temperature compensation. Default value: 25000 (25 °C)
/sys/bus/iio/devices/iio:deviceX/out_voltageY&Z_raw |
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY&Z_raw |
Defined on file sysfs-bus-iio
Raw (unscaled, no bias etc.) output voltage for an aggregate of channel Y, channel Z, etc. This interface is available in cases where a single output sets the value for multiple channels simultaneously.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_dither_en |
Defined on file sysfs-bus-iio-dac-ltc2688
Dither enable. Write 1 to enable dither or 0 to disable it. This is useful for changing the dither parameters. They way it should be done is:
disable dither operation;
change dither parameters (eg: frequency, phase...);
enabled dither operation
/sys/bus/iio/devices/iio:deviceX/out_voltageY_dither_frequency |
Defined on file sysfs-bus-iio-dac-ltc2688
Sets the dither signal frequency. Units are in Hz.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_dither_frequency_available |
Defined on file sysfs-bus-iio-dac-ltc2688
Returns the available values for the dither frequency.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_dither_offset |
Defined on file sysfs-bus-iio-dac-ltc2688
Offset applied to out_voltageY_dither_raw. Read only attribute always set to 0.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_dither_phase |
Defined on file sysfs-bus-iio-dac-ltc2688
Sets the dither signal phase. Units are in Radians.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_dither_phase_available |
Defined on file sysfs-bus-iio-dac-ltc2688
Returns the available values for the dither phase.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_dither_raw |
Defined on file sysfs-bus-iio-dac-ltc2688
This raw, unscaled value refers to the dither signal amplitude. The same scale as in out_voltageY_raw applies. However, the offset might be different as it’s always 0 for this attribute.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_dither_raw_available |
Defined on file sysfs-bus-iio-dac-ltc2688
Available range for dither raw amplitude values.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain |
/sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain |
/sys/bus/iio/devices/iio:deviceX/in_intensity_red_hardwaregain |
/sys/bus/iio/devices/iio:deviceX/in_intensity_green_hardwaregain |
/sys/bus/iio/devices/iio:deviceX/in_intensity_blue_hardwaregain |
/sys/bus/iio/devices/iio:deviceX/in_intensity_clear_hardwaregain |
Defined on file sysfs-bus-iio
Hardware applied gain factor. If shared across all channels, <type>_hardwaregain is used.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_operating_mode |
Defined on file sysfs-bus-iio-ad9739a
DAC operating mode. One of the following modes can be selected:
normal: This is DAC normal mode.
- mixed-mode: In this mode the output is effectively chopped at
the DAC sample rate. This has the effect of reducing the power of the fundamental signal while increasing the power of the images centered around the DAC sample rate, thus improving the output power of these images.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_operating_mode_available |
Defined on file sysfs-bus-iio-ad9739a
Available operating modes.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown_mode |
/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown_mode |
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown_mode |
/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown_mode |
Defined on file sysfs-bus-iio
Specifies the output powerdown mode. DAC output stage is disconnected from the amplifier and 1kohm_to_gnd: connected to ground via an 1kOhm resistor, 2.5kohm_to_gnd: connected to ground via a 2.5kOhm resistor, 6kohm_to_gnd: connected to ground via a 6kOhm resistor, 20kohm_to_gnd: connected to ground via a 20kOhm resistor, 42kohm_to_gnd: connected to ground via a 42kOhm resistor, 90kohm_to_gnd: connected to ground via a 90kOhm resistor, 100kohm_to_gnd: connected to ground via an 100kOhm resistor, 125kohm_to_gnd: connected to ground via an 125kOhm resistor, 500kohm_to_gnd: connected to ground via a 500kOhm resistor, 640kohm_to_gnd: connected to ground via a 640kOhm resistor, three_state: left floating. For a list of available output power down options read outX_powerdown_mode_available. If Y is not present the mode is shared across all outputs.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown |
/sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown |
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown |
/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown |
Defined on file sysfs-bus-iio
Writing 1 causes output Y to enter the power down mode specified by the corresponding outY_powerdown_mode. DAC output stage is disconnected from the amplifier. Clearing returns to normal operation. Y may be suppressed if all outputs are controlled together.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_rawN |
Defined on file sysfs-bus-iio-dac
This attribute has the same meaning as out_currentY_raw. It is specific to toggle enabled channels and refers to the DAC output code in INPUT_N (_rawN), where N is the integer value of the symbol. The same scale and offset as in out_currentY_raw applies.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_raw_available |
Defined on file sysfs-bus-iio-dac-dpot-dac
The range of available values represented as the minimum value, the step and the maximum value, all enclosed in square brackets. Example: [0 1 256]
/sys/bus/iio/devices/iio:deviceX/out_voltageY_raw |
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_raw |
Defined on file sysfs-bus-iio
Raw (unscaled, no bias etc.) output voltage for channel Y. The number must always be specified and unique if the output corresponds to a single channel. While DAC like devices typically use out_voltage, a continuous frequency generating device, such as a DDS or PLL should use out_altvoltage.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_symbol |
Defined on file sysfs-bus-iio-dac
Performs a SW switch to a predefined output symbol. This attribute is specific to toggle enabled channels and allows switching between multiple predefined symbols. Each symbol corresponds to a different output, denoted as out_voltageY_rawN, where N is the integer value of the symbol. Writing an integer value N will select out_voltageY_rawN.
/sys/bus/iio/devices/iio:deviceX/out_voltageY_toggle_en |
Defined on file sysfs-bus-iio-dac
Toggle enable. Write 1 to enable toggle or 0 to disable it. This is useful when one wants to change the DAC output codes. For autonomous toggling, the way it should be done is:
disable toggle operation;
change out_voltageY_rawN, where N is the integer value of the symbol;
enable toggle operation.
/sys/bus/iio/devices/iio:deviceX/oversampling_ratio |
Defined on file sysfs-bus-iio
Hardware dependent ADC oversampling. Controls the sampling ratio of the digital filter if available.
/sys/bus/iio/devices/iio:deviceX/oversampling_ratio_available |
Defined on file sysfs-bus-iio
Hardware dependent values supported by the oversampling filter.
/sys/bus/iio/devices/iio:deviceX/pll2_feedback_clk_present |
/sys/bus/iio/devices/iio:deviceX/pll2_reference_clk_present |
/sys/bus/iio/devices/iio:deviceX/pll1_reference_clk_a_present |
/sys/bus/iio/devices/iio:deviceX/pll1_reference_clk_b_present |
/sys/bus/iio/devices/iio:deviceX/pll1_reference_clk_test_present |
/sys/bus/iio/devices/iio:deviceX/vcxo_clk_present |
Defined on file sysfs-bus-iio-frequency-ad9523
Reading returns either ‘1’ or ‘0’.
‘1’ means that the clock in question is present.
‘0’ means that the clock is missing.
/sys/bus/iio/devices/iio:deviceX/pllY_locked |
Defined on file sysfs-bus-iio-frequency-ad9523
Reading returns either ‘1’ or ‘0’. ‘1’ means that the pllY is locked.
/sys/bus/iio/devices/iio:deviceX/proximity_on_chip_ambient_infrared_suppression |
Defined on file sysfs-bus-iio-light-isl29018
From ISL29018 Data Sheet (FN6619.4, Oct 8, 2012) regarding the infrared suppression:
Scheme 0, makes full n (4, 8, 12, 16) bits (unsigned) proximity detection. The range of Scheme 0 proximity count is from 0 to 2^n. Logic 1 of this bit, Scheme 1, makes n-1 (3, 7, 11, 15) bits (2’s complementary) proximity_less_ambient detection. The range of Scheme 1 proximity count is from -2^(n-1) to 2^(n-1). The sign bit is extended for resolutions less than 16. While Scheme 0 has wider dynamic range, Scheme 1 proximity detection is less affected by the ambient IR noise variation.
0 |
Sensing IR from LED and ambient |
1 |
Sensing IR from LED with ambient IR rejection |
/sys/bus/iio/devices/iio:deviceX/sampling_frequency_available |
/sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency_available |
/sys/bus/iio/devices/iio:deviceX/in_proximity_sampling_frequency_available |
/sys/.../iio:deviceX/buffer/sampling_frequency_available |
/sys/bus/iio/devices/triggerX/sampling_frequency_available |
Defined on file sysfs-bus-iio
When the internal sampling clock can only take a specific set of frequencies, we can specify the available values with:
a small discrete set of values like “0 2 4 6 8”
a range with minimum, step and maximum frequencies like “[min step max]”
/sys/bus/iio/devices/iio:deviceX/sampling_frequency |
/sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency |
/sys/bus/iio/devices/iio:deviceX/buffer/sampling_frequency |
/sys/bus/iio/devices/triggerX/sampling_frequency |
Defined on file sysfs-bus-iio
Some devices have internal clocks. This parameter sets the resulting sampling frequency. In many devices this parameter has an effect on input filters etc. rather than simply controlling when the input is sampled. As this affects data ready triggers, hardware buffers and the sysfs direct access interfaces, it may be found in any of the relevant directories. If it affects all of the above then it is to be found in the base device directory.
The stm32-timer-trigger has the additional characteristic that a sampling_frequency of 0 is defined to stop sampling.
/sys/bus/iio/devices/iio:deviceX/sensor_max_range |
Defined on file sysfs-bus-iio-distance-srf08
Show or set the maximum range between the sensor and the first object echoed in meters. Default value is 6.020. This setting limits the time the driver is waiting for a echo.
Showing the range of available values is represented as the minimum value, the step and the maximum value, all enclosed in square brackets.
Example:
[0.043 0.043 11.008]
/sys/bus/iio/devices/iio:deviceX/sensor_sensitivity |
Defined on file sysfs-bus-iio-proximity
Proximity sensors sometimes have a controllable amplifier on the signal from which time of flight measurements are taken. The appropriate values to take is dependent on both the sensor and its operating environment: * as3935 (0-31 range) 18 = indoors (default) 14 = outdoors
/sys/bus/iio/devices/iio:deviceX/serialnumber |
Defined on file sysfs-bus-iio
An example format is 16-bytes, 2-digits-per-byte, HEX-string representing the sensor unique ID number.
/sys/bus/iio/devices/iio:deviceX/start_cleaning |
Defined on file sysfs-bus-iio-sps30
Writing 1 starts sensor self cleaning. Internal fan accelerates to its maximum speed and keeps spinning for about 10 seconds in order to blow out accumulated dust.
/sys/bus/iio/devices/iio:deviceX/store_eeprom |
Defined on file sysfs-bus-iio
Writing ‘1’ stores the current device configuration into on-chip EEPROM. After power-up or chip reset the device will automatically load the saved configuration.
/sys/bus/iio/devices/iio:deviceX/sync_dividers |
Defined on file sysfs-bus-iio-frequency-ad9523
Writing ‘1’ triggers the clock distribution synchronization functionality. All dividers are reset and the channels start with their predefined phase offsets (out_altvoltageY_phase). Writing this file has the effect as driving the external /SYNC pin low.
/sys/bus/iio/devices/iio:deviceX/sys_calibration_auto_status |
Defined on file sysfs-bus-iio-bno055
Reports the status for the IMU overall autocalibration. Can be 0 (calibration non even enabled) or 1 to 5 where the greater the number, the better the calibration status.
/sys/bus/iio/devices/iio:deviceX/trigger/current_trigger |
Defined on file sysfs-bus-iio
The name of the trigger source being used, as per string given in /sys/class/iio/triggerY/name.
/sys/bus/iio/devices/iio_sysfs_trigger/add_trigger |
Defined on file sysfs-bus-iio-trigger-sysfs
This attribute is provided by the iio-trig-sysfs stand-alone driver and it is used to activate the creation of a new trigger. In order to achieve this, one should write a positive integer into the associated file, which will serve as the id of the trigger. If the trigger with the specified id is already present in the system, an invalid argument message will be returned.
/sys/bus/iio/devices/iio_sysfs_trigger/remove_trigger |
Defined on file sysfs-bus-iio-trigger-sysfs
This attribute is used to unregister and delete a previously created trigger from the list of available triggers. In order to achieve this, one should write a positive integer into the associated file, representing the id of the trigger that needs to be removed. If the trigger can’t be found, an invalid argument message will be returned to the user.
/sys/bus/iio/devices/triggerX |
Defined on file sysfs-bus-iio
An event driven driver of data capture to an in kernel buffer. May be provided by a device driver that also has an IIO device based on hardware generated events (e.g. data ready) or provided by a separate driver for other hardware (e.g. periodic timer, GPIO or high resolution timer).
Contains trigger type specific elements. These do not generalize well and hence are not documented in this file. X is the IIO index of the trigger.
/sys/bus/iio/devices/triggerX/master_mode |
Defined on file sysfs-bus-iio-timer-stm32
Reading returns the current master modes. Writing set the master mode
/sys/bus/iio/devices/triggerX/master_mode_available |
Defined on file sysfs-bus-iio-timer-stm32
Reading returns the list possible master modes which are:
- “reset”
The UG bit from the TIMx_EGR register is used as trigger output (TRGO).
- “enable”
The Counter Enable signal CNT_EN is used as trigger output.
- “update”
The update event is selected as trigger output. For instance a master timer can then be used as a prescaler for a slave timer.
- “compare_pulse”
The trigger output send a positive pulse when the CC1IF flag is to be set.
- “OC1REF”
OC1REF signal is used as trigger output.
- “OC2REF”
OC2REF signal is used as trigger output.
- “OC3REF”
OC3REF signal is used as trigger output.
- “OC4REF”
OC4REF signal is used as trigger output.
Additional modes (on TRGO2 only):
- “OC5REF”
OC5REF signal is used as trigger output.
- “OC6REF”
OC6REF signal is used as trigger output.
- “compare_pulse_OC4REF”:
OC4REF rising or falling edges generate pulses.
- “compare_pulse_OC6REF”:
OC6REF rising or falling edges generate pulses.
- “compare_pulse_OC4REF_r_or_OC6REF_r”:
OC4REF or OC6REF rising edges generate pulses.
- “compare_pulse_OC4REF_r_or_OC6REF_f”:
OC4REF rising or OC6REF falling edges generate pulses.
- “compare_pulse_OC5REF_r_or_OC6REF_r”:
OC5REF or OC6REF rising edges generate pulses.
- “compare_pulse_OC5REF_r_or_OC6REF_f”:
OC5REF rising or OC6REF falling edges generate pulses.
+-----------+ +-------------+ +---------+
| Prescaler +-> | Counter | +-> | Master | TRGO(2)
+-----------+ +--+--------+-+ |-> | Control +-->
| | || +---------+
+--v--------+-+ OCxREF || +---------+
| Chx compare +----------> | Output | ChX
+-----------+-+ | | Control +-->
. | | +---------+
. | | .
+-----------v-+ OC6REF | .
| Ch6 compare +---------+>
+-------------+
Example with: “compare_pulse_OC4REF_r_or_OC6REF_r”:
X
X X
X . . X
X . . X
X . . X
count X . . . . X
. . . .
. . . .
+---------------+
OC4REF | . . |
+-+ . . +-+
. +---+ .
OC6REF . | | .
+-------+ +-------+
+-+ +-+
TRGO2 | | | |
+-+ +---+ +---------+
/sys/bus/iio/devices/triggerX/name |
Defined on file sysfs-bus-iio-trigger-sysfs
The name attribute holds a description string for the current trigger. In order to associate the trigger with an IIO device one should write this name string to /sys/bus/iio/devices/iio:deviceY/trigger/current_trigger.
/sys/bus/iio/devices/triggerX/name = "adxl372-devX-peak" |
Defined on file sysfs-bus-iio-accel-adxl372
The adxl372 accelerometer kernel module provides an additional trigger, which sets the device in a mode in which it will record only the peak acceleration sensed over the set period of time in the events sysfs.
/sys/bus/iio/devices/triggerX/name = "bmc150_accel-any-motion-devX" |
Defined on file sysfs-bus-iio-accel-bmc150
The BMC150 accelerometer kernel module provides an additional trigger, which sets driver in a mode, where data is pushed to the buffer only when there is any motion.
/sys/bus/iio/devices/triggerX/name = "bmg160-any-motion-devX" |
Defined on file sysfs-bus-iio-gyro-bmg160
The BMG160 gyro kernel module provides an additional trigger, which sets driver in a mode, where data is pushed to the buffer only when there is any motion.
/sys/bus/iio/devices/triggerX/trigger_now |
Defined on file sysfs-bus-iio-trigger-sysfs
This file is provided by the iio-trig-sysfs stand-alone trigger driver. Writing this file with any value triggers an event driven driver, associated with this trigger, to capture data into an in kernel buffer. This approach can be valuable during automated testing or in situations, where other trigger methods are not applicable. For example no RTC or spare GPIOs. X is the IIO index of the trigger.
/sys/bus/iio/devices/triggerX/trigger_polarity |
Defined on file sysfs-bus-iio-adc-stm32
The STM32 ADC can be configured to use external trigger sources (e.g. timers, pwm or exti gpio). Then, it can be tuned to start conversions on external trigger by either:
“rising-edge”
“falling-edge”
“both-edges”.
Reading returns current trigger polarity.
Writing value before enabling conversions sets trigger polarity.
/sys/bus/iio/devices/triggerX/trigger_polarity_available |
Defined on file sysfs-bus-iio-adc-stm32
List all available trigger_polarity settings.
/sys/bus/intel_th/devices/<intel_th_id>-<device><id>/active |
Defined on file sysfs-bus-intel_th-output-devices
(RW) Writes of 1 or 0 enable or disable trace output to this output device. Reads return current status. Requires that the correstponding output port driver be loaded.
/sys/bus/intel_th/devices/<intel_th_id>-gth/masters/* |
Defined on file sysfs-bus-intel_th-devices-gth
(RW) Configure output ports for STP masters. Writing -1 disables a master; any
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_drop |
Defined on file sysfs-bus-intel_th-devices-gth
(RW) Data retention policy setting: keep (0) or drop (1) incoming data while output port is in reset.
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_flush |
Defined on file sysfs-bus-intel_th-devices-gth
(RW) Force flush data from byte packing buffer for the output port.
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_null |
Defined on file sysfs-bus-intel_th-devices-gth
(RW) STP NULL packet generation: enabled (1) or disabled (0).
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_port |
Defined on file sysfs-bus-intel_th-devices-gth
(RO) Output port type:
0
not present,
1
MSU (Memory Storage Unit)
2
CTP (Common Trace Port)
4
PTI (MIPI PTI).
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_reset |
Defined on file sysfs-bus-intel_th-devices-gth
(RO) Output port is in reset (1).
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_smcfreq |
Defined on file sysfs-bus-intel_th-devices-gth
(RW) STP sync packet frequency for the port. Specifies the number of clocks between mainenance packets.
/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/mode |
Defined on file sysfs-bus-intel_th-devices-msc
(RW) Configure MSC operating mode:
“single”, for contiguous buffer mode (high-order alloc);
“multi”, for multiblock mode;
“ExI”, for DCI handler mode;
“debug”, for debug mode;
any of the currently loaded buffer sinks.
If operating mode changes, existing buffer is deallocated, provided there are no active users and tracing is not enabled, otherwise the write will fail.
/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/nr_pages |
Defined on file sysfs-bus-intel_th-devices-msc
(RW) Configure MSC buffer size for “single” or “multi” modes.
In single mode, this is a single number of pages, has to be power of 2. In multiblock mode, this is a comma-separated list of numbers of pages for each window to be allocated. Number of windows is not limited.
Writing to this file deallocates existing buffer (provided there are no active users and tracing is not enabled) and then allocates a new one.
/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/port |
Defined on file sysfs-bus-intel_th-output-devices
(RO) Port number, corresponding to this output device on the switch (GTH) or “unassigned” if the corresponding output port driver is not loaded.
/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/stop_on_full |
Defined on file sysfs-bus-intel_th-devices-msc
(RW) Configure whether trace stops when the last available window becomes full (1/y/Y) or wraps around and continues until the next window becomes available again (0/n/N).
/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/win_switch |
Defined on file sysfs-bus-intel_th-devices-msc
(RW) Trigger window switch for the MSC’s buffer, in multi-window mode. In “multi” mode, accepts writes of “1”, thereby triggering a window switch for the buffer. Returns an error in any other operating mode or attempts to write something other than “1”.
/sys/bus/intel_th/devices/<intel_th_id>-msc<msc-id>/wrap |
Defined on file sysfs-bus-intel_th-devices-msc
(RW) Configure MSC buffer wrapping. 1 == wrapping enabled.
/sys/bus/intel_th/devices/<intel_th_id>-pti/clock_divider |
Defined on file sysfs-bus-intel_th-devices-pti
- (RW) Configure PTI port clock divider:
0: Intel TH clock rate,
1: 1/2 Intel TH clock rate,
2: 1/4 Intel TH clock rate,
3: 1/8 Intel TH clock rate.
/sys/bus/intel_th/devices/<intel_th_id>-pti/freerunning_clock |
Defined on file sysfs-bus-intel_th-devices-pti
(RW) 0: PTI trace clock acts as a strobe which only toggles when there is trace data to send. 1: PTI trace clock is a free-running clock.
/sys/bus/intel_th/devices/<intel_th_id>-pti/mode |
Defined on file sysfs-bus-intel_th-devices-pti
(RW) Configure PTI output width. Currently supported values are 4, 8, 12, 16.
/sys/bus/mcb/devices/mcb:X |
Defined on file sysfs-bus-mcb
Hardware chip or device hosting the MEN chameleon bus
/sys/bus/mcb/devices/mcb:X/minor |
Defined on file sysfs-bus-mcb
The FPGA’s minor number
/sys/bus/mcb/devices/mcb:X/model |
Defined on file sysfs-bus-mcb
The FPGA’s model number
/sys/bus/mcb/devices/mcb:X/name |
Defined on file sysfs-bus-mcb
The FPGA’s name
/sys/bus/mcb/devices/mcb:X/revision |
Defined on file sysfs-bus-mcb
The FPGA’s revision number
/sys/bus/mdio_bus/devices/.../statistics/errors_<addr> |
/sys/class/mdio_bus/.../statistics/errors_<addr> |
Defined on file sysfs-bus-mdio
Total number of transfer errors for this MDIO bus address.
/sys/bus/mdio_bus/devices/.../statistics/errors |
/sys/class/mdio_bus/.../statistics/errors |
Defined on file sysfs-bus-mdio
Total number of transfer errors for this MDIO bus.
/sys/bus/mdio_bus/devices/.../statistics/reads_<addr> |
/sys/class/mdio_bus/.../statistics/reads_<addr> |
Defined on file sysfs-bus-mdio
Total number of read transactions for this MDIO bus address.
/sys/bus/mdio_bus/devices/.../statistics/reads |
/sys/class/mdio_bus/.../statistics/reads |
Defined on file sysfs-bus-mdio
Total number of read transactions for this MDIO bus.
/sys/bus/mdio_bus/devices/.../statistics/transfers_<addr> |
/sys/class/mdio_bus/.../statistics/transfers_<addr> |
Defined on file sysfs-bus-mdio
Total number of transfers for this MDIO bus address.
/sys/bus/mdio_bus/devices/.../statistics/transfers |
/sys/class/mdio_bus/.../transfers |
Defined on file sysfs-bus-mdio
Total number of transfers for this MDIO bus.
/sys/bus/mdio_bus/devices/.../statistics/writes_<addr> |
/sys/class/mdio_bus/.../statistics/writes_<addr> |
Defined on file sysfs-bus-mdio
Total number of write transactions for this MDIO bus address.
/sys/bus/mdio_bus/devices/.../statistics/writes |
/sys/class/mdio_bus/.../statistics/writes |
Defined on file sysfs-bus-mdio
Total number of write transactions for this MDIO bus.
/sys/bus/mdio_bus/devices/.../statistics/ |
/sys/class/mdio_bus/.../statistics/ |
Defined on file sysfs-bus-mdio
This folder contains statistics about global and per MDIO bus address statistics.
/sys/bus/media/devices/.../model |
Defined on file sysfs-bus-media
Contains the device model name in UTF-8. The device version is is not be appended to the model name.
/sys/bus/mei/devices/.../fixed |
Defined on file sysfs-bus-mei
Stores mei client fixed address, if any Format: %d
/sys/bus/mei/devices/.../max_conn |
Defined on file sysfs-bus-mei
Stores mei client maximum number of connections Format: %d
/sys/bus/mei/devices/.../max_len |
Defined on file sysfs-bus-mei
Stores mei client maximum message length Format: %d
/sys/bus/mei/devices/.../modalias |
Defined on file sysfs-bus-mei
Stores the same MODALIAS value emitted by uevent Format: mei:<mei device name>:<device uuid>:<protocol version>
/sys/bus/mei/devices/.../name |
Defined on file sysfs-bus-mei
Stores mei client device name Format: string
/sys/bus/mei/devices/.../uuid |
Defined on file sysfs-bus-mei
Stores mei client device uuid Format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
/sys/bus/mei/devices/.../version |
Defined on file sysfs-bus-mei
Stores mei client protocol version Format: %d
/sys/bus/mei/devices/.../vtag |
Defined on file sysfs-bus-mei
Stores mei client vtag support status Format: %d
/sys/bus/mmc/devices/.../rev |
Defined on file sysfs-bus-mmc
Extended CSD revision number
/sys/bus/most/devices/<dev>/<channel>/ |
Defined on file sysfs-bus-most
For every channel of the device a directory is created, whose name is dictated by the HDM. This enables an application to collect information about the channel’s capabilities and configure it.
/sys/bus/most/devices/<dev>/<channel>/available_datatypes |
Defined on file sysfs-bus-most
Indicates the data types the channel can transport.
/sys/bus/most/devices/<dev>/<channel>/available_directions |
Defined on file sysfs-bus-most
Indicates the directions the channel is capable of.
/sys/bus/most/devices/<dev>/<channel>/channel_starving |
Defined on file sysfs-bus-most
Indicates whether channel ran out of buffers.
/sys/bus/most/devices/<dev>/<channel>/number_of_packet_buffers |
Defined on file sysfs-bus-most
Indicates the number of packet buffers the channel can handle.
/sys/bus/most/devices/<dev>/<channel>/number_of_stream_buffers |
Defined on file sysfs-bus-most
Indicates the number of streaming buffers the channel can handle.
/sys/bus/most/devices/<dev>/<channel>/set_buffer_size |
Defined on file sysfs-bus-most
This is to read back the configured buffer size of the channel.
/sys/bus/most/devices/<dev>/<channel>/set_datatype |
Defined on file sysfs-bus-most
This is to read back the configured data type of the channel. The following strings will be accepted:
'control',
'async',
'sync',
'isoc_avp'
/sys/bus/most/devices/<dev>/<channel>/set_direction |
Defined on file sysfs-bus-most
This is to read back the configured direction of the channel. The following strings will be accepted:
'tx',
'rx'
/sys/bus/most/devices/<dev>/<channel>/set_number_of_buffers |
Defined on file sysfs-bus-most
This is to read back the configured number of buffers of the channel.
/sys/bus/most/devices/<dev>/<channel>/set_packets_per_xact |
Defined on file sysfs-bus-most
This is to read back the configured number of packets per transaction of the channel. This is only applicable when connected via USB.
/sys/bus/most/devices/<dev>/<channel>/set_subbuffer_size |
Defined on file sysfs-bus-most
This is to read back the configured subbuffer size of the channel.
/sys/bus/most/devices/<dev>/<channel>/size_of_packet_buffer |
Defined on file sysfs-bus-most
Indicates the size of a packet buffer the channel can handle.
/sys/bus/most/devices/<dev>/<channel>/size_of_stream_buffer |
Defined on file sysfs-bus-most
Indicates the size of a streaming buffer the channel can handle.
/sys/bus/most/devices/<dev>/dci |
Defined on file sysfs-bus-most
If the network interface controller is attached via USB, a dci directory is created that allows applications to read and write the controller’s DCI registers.
/sys/bus/most/devices/<dev>/dci/arb_address |
Defined on file sysfs-bus-most
This is used to set an arbitrary DCI register address an application wants to read from or write to.
/sys/bus/most/devices/<dev>/dci/arb_value |
Defined on file sysfs-bus-most
This is used to read and write the DCI register whose address is stored in arb_address.
/sys/bus/most/devices/<dev>/dci/mep_eui48_hi |
Defined on file sysfs-bus-most
This is used to check and configure the MAC address.
/sys/bus/most/devices/<dev>/dci/mep_eui48_lo |
Defined on file sysfs-bus-most
This is used to check and configure the MAC address.
/sys/bus/most/devices/<dev>/dci/mep_eui48_mi |
Defined on file sysfs-bus-most
This is used to check and configure the MAC address.
/sys/bus/most/devices/<dev>/dci/mep_filter |
Defined on file sysfs-bus-most
This is used to check and configure the MEP filter address.
/sys/bus/most/devices/<dev>/dci/mep_hash0 |
Defined on file sysfs-bus-most
This is used to check and configure the MEP hash table.
/sys/bus/most/devices/<dev>/dci/mep_hash1 |
Defined on file sysfs-bus-most
This is used to check and configure the MEP hash table.
/sys/bus/most/devices/<dev>/dci/mep_hash2 |
Defined on file sysfs-bus-most
This is used to check and configure the MEP hash table.
/sys/bus/most/devices/<dev>/dci/mep_hash3 |
Defined on file sysfs-bus-most
This is used to check and configure the MEP hash table.
/sys/bus/most/devices/<dev>/dci/ni_state |
Defined on file sysfs-bus-most
Indicates the current network interface state.
/sys/bus/most/devices/<dev>/dci/node_address |
Defined on file sysfs-bus-most
Indicates the current node address.
/sys/bus/most/devices/<dev>/dci/node_position |
Defined on file sysfs-bus-most
Indicates the current node position.
/sys/bus/most/devices/<dev>/dci/packet_bandwidth |
Defined on file sysfs-bus-most
Indicates the configured packet bandwidth.
/sys/bus/most/devices/<dev>/dci/sync_ep |
Defined on file sysfs-bus-most
Triggers the controller’s synchronization process for a certain endpoint.
/sys/bus/most/devices/<dev>/description |
Defined on file sysfs-bus-most
Provides information about the physical location of the device. Hardware attached via USB, for instance, might return <1-1.1:1.0>
/sys/bus/most/devices/<dev>/interface |
Defined on file sysfs-bus-most
Indicates the type of peripheral interface the device uses.
/sys/bus/most/drivers/most_core/components |
Defined on file sysfs-bus-most
This is used to retrieve a list of registered components.
/sys/bus/most/drivers/most_core/links |
Defined on file sysfs-bus-most
This is used to retrieve a list of established links.
/sys/bus/moxtet/devices/moxtet-<name>.<addr>/module_description |
Defined on file sysfs-bus-moxtet-devices
(Read) Moxtet module description. Format: string
/sys/bus/moxtet/devices/moxtet-<name>.<addr>/module_id |
Defined on file sysfs-bus-moxtet-devices
(Read) Moxtet module ID. Format: %x
/sys/bus/moxtet/devices/moxtet-<name>.<addr>/module_name |
Defined on file sysfs-bus-moxtet-devices
(Read) Moxtet module name. Format: string
/sys/bus/nd/devices/ndbusX/nfit/dsm_mask |
Defined on file sysfs-bus-nfit
(RO) The bitmask indicates the supported bus specific control functions. See the section named ‘NVDIMM Root Device _DSMs’ in the ACPI specification.
/sys/bus/nd/devices/ndbusX/nfit/firmware_activate_noidle |
Defined on file sysfs-bus-nfit
(RW) The Intel platform implementation of firmware activate support exposes an option let the platform force idle devices in the system over the activation event, or trust that the OS will do it. The safe default is to let the platform force idle devices since the kernel is already in a suspend state, and on the chance that a driver does not properly quiesce bus-mastering after a suspend callback the platform will handle it. However, the activation might abort if, for example, platform firmware determines that the activation time exceeds the max PCI-E completion timeout. Since the platform does not know whether the OS is running the activation from a suspend context it aborts, but if the system owner trusts driver suspend callback to be sufficient then ‘firmware_activation_noidle’ can be enabled to bypass the activation abort.
/sys/bus/nd/devices/ndbusX/nfit/hw_error_scrub |
Defined on file sysfs-bus-nfit
(RW) Provides a way to toggle the behavior between just adding the address (cache line) where the MCE happened to the poison list and doing a full scrub. The former (selective insertion of the address) is done unconditionally.
This attribute can have the following values written to it:
‘0’: Switch to the default mode where an exception will only insert the address of the memory error into the poison and badblocks lists. ‘1’: Enable a full scrub to happen if an exception for a memory error is received.
/sys/bus/nd/devices/ndbusX/nfit/revision |
Defined on file sysfs-bus-nfit
(RO) ACPI NFIT table revision number.
/sys/bus/nd/devices/ndbusX/nfit/scrub |
Defined on file sysfs-bus-nfit
(RW) This shows the number of full Address Range Scrubs (ARS) that have been completed since driver load time. Userspace can wait on this using select/poll etc. A ‘+’ at the end indicates an ARS is in progress
Writing a value of 1 triggers an ARS scan.
/sys/bus/nd/devices/nmemX/cxl/id |
Defined on file sysfs-bus-nvdimm
(RO) Show the id (serial) of the device. This is CXL specific.
/sys/bus/nd/devices/nmemX/cxl/provider |
Defined on file sysfs-bus-nvdimm
(RO) Shows the CXL bridge device that ties to a CXL memory device to this NVDIMM device. I.e. the parent of the device returned is a /sys/bus/cxl/devices/memX instance.
/sys/bus/nd/devices/nmemX/nfit/device |
Defined on file sysfs-bus-nfit
(RO) Device id for the NVDIMM, assigned by the module vendor.
/sys/bus/nd/devices/nmemX/nfit/dsm_mask |
Defined on file sysfs-bus-nfit
(RO) The bitmask indicates the supported device specific control functions relative to the NVDIMM command family supported by the device
/sys/bus/nd/devices/nmemX/nfit/family |
Defined on file sysfs-bus-nfit
(RO) Displays the NVDIMM family command sets. Values 0, 1, 2 and 3 correspond to NVDIMM_FAMILY_INTEL, NVDIMM_FAMILY_HPE1, NVDIMM_FAMILY_HPE2 and NVDIMM_FAMILY_MSFT respectively.
See the specifications for these command families here: http://pmem.io/documents/NVDIMM_DSM_Interface-V1.6.pdf https://github.com/HewlettPackard/hpe-nvm/blob/master/Documentation/ https://msdn.microsoft.com/library/windows/hardware/mt604741”
/sys/bus/nd/devices/nmemX/nfit/flags |
Defined on file sysfs-bus-nfit
(RO) The flags in the NFIT memory device sub-structure indicate the state of the data on the nvdimm relative to its energy source or last “flush to persistence”.
The attribute is a translation of the ‘NVDIMM State Flags’ field in section 5.2.25.3 ‘NVDIMM Region Mapping’ Structure of the ACPI specification 6.2.
The health states are “save_fail”, “restore_fail”, “flush_fail”, “not_armed”, “smart_event”, “map_fail” and “smart_notify”.
/sys/bus/nd/devices/nmemX/nfit/format |
/sys/bus/nd/devices/nmemX/nfit/format1 |
/sys/bus/nd/devices/nmemX/nfit/formats |
Defined on file sysfs-bus-nfit
(RO) The interface codes indicate support for persistent memory mapped directly into system physical address space and / or a block aperture access mechanism to the NVDIMM media. The ‘formats’ attribute displays the number of supported interfaces.
This layout is compatible with existing libndctl binaries that only expect one code per-dimm as they will ignore nmemX/nfit/formats and nmemX/nfit/formatN.
/sys/bus/nd/devices/nmemX/nfit/handle |
Defined on file sysfs-bus-nfit
(RO) The address (given by the _ADR object) of the device on its parent bus of the NVDIMM device containing the NVDIMM region.
/sys/bus/nd/devices/nmemX/nfit/id |
Defined on file sysfs-bus-nfit
(RO) ACPI specification 6.2 section 5.2.25.9, defines an identifier for an NVDIMM, which reflects the id attribute.
/sys/bus/nd/devices/nmemX/nfit/phys_id |
Defined on file sysfs-bus-nfit
(RO) Handle (i.e., instance number) for the SMBIOS (system management BIOS) Memory Device structure describing the NVDIMM containing the NVDIMM region.
/sys/bus/nd/devices/nmemX/nfit/rev_id |
Defined on file sysfs-bus-nfit
(RO) Revision of the NVDIMM, assigned by the module vendor.
/sys/bus/nd/devices/nmemX/nfit/serial |
Defined on file sysfs-bus-nfit
(RO) Serial number of the NVDIMM (non-volatile dual in-line memory module), assigned by the module vendor.
/sys/bus/nd/devices/nmemX/nfit/subsystem_device |
Defined on file sysfs-bus-nfit
(RO) Sub-system device id for the NVDIMM non-volatile memory subsystem controller, assigned by the non-volatile memory subsystem controller vendor.
/sys/bus/nd/devices/nmemX/nfit/subsystem_rev_id |
Defined on file sysfs-bus-nfit
(RO) Sub-system revision id of the NVDIMM non-volatile memory subsystem controller, assigned by the non-volatile memory subsystem controller vendor.
/sys/bus/nd/devices/nmemX/nfit/subsystem_vendor |
Defined on file sysfs-bus-nfit
(RO) Sub-system vendor id of the NVDIMM non-volatile memory subsystem controller.
/sys/bus/nd/devices/nmemX/nfit/vendor |
Defined on file sysfs-bus-nfit
(RO) Vendor id of the NVDIMM.
/sys/bus/nd/devices/nmemX/papr/flags |
Defined on file sysfs-bus-papr-pmem
(RO) Report flags indicating various states of a papr-pmem NVDIMM device. Each flag maps to a one or more bits set in the dimm-health-bitmap retrieved in response to H_SCM_HEALTH hcall. The details of the bit flags returned in response to this hcall is available at ‘Hypercall Op-codes (hcalls)’ . Below are the flags reported in this sysfs file:
- “not_armed”
Indicates that NVDIMM contents will not survive a power cycle.
- “flush_fail”
Indicates that NVDIMM contents couldn’t be flushed during last shut-down event.
- “restore_fail”
Indicates that NVDIMM contents couldn’t be restored during NVDIMM initialization.
- “encrypted”
NVDIMM contents are encrypted.
- “smart_notify”
There is health event for the NVDIMM.
- “scrubbed”
Indicating that contents of the NVDIMM have been scrubbed.
- “locked”
Indicating that NVDIMM contents can’t be modified until next power cycle.
/sys/bus/nd/devices/nmemX/papr/health_bitmap_inject |
Defined on file sysfs-bus-papr-pmem
(RO) Reports the health bitmap inject bitmap that is applied to bitmap received from PowerVM via the H_SCM_HEALTH. This is used to forcibly set specific bits returned from Hcall. These is then used to simulate various health or shutdown states for an nvdimm and are set by user-space tools like ndctl by issuing a PAPR DSM.
/sys/bus/nd/devices/nmemX/papr/perf_stats |
Defined on file sysfs-bus-papr-pmem
(RO) Report various performance stats related to papr-scm NVDIMM device. This attribute is only available for NVDIMM devices that support reporting NVDIMM performance stats. Each stat is reported on a new line with each line composed of a stat-identifier followed by it value. Below are currently known dimm performance stats which are reported:
“CtlResCt” : Controller Reset Count
“CtlResTm” : Controller Reset Elapsed Time
“PonSecs “ : Power-on Seconds
“MemLife “ : Life Remaining
“CritRscU” : Critical Resource Utilization
“HostLCnt” : Host Load Count
“HostSCnt” : Host Store Count
“HostSDur” : Host Store Duration
“HostLDur” : Host Load Duration
“MedRCnt “ : Media Read Count
“MedWCnt “ : Media Write Count
“MedRDur “ : Media Read Duration
“MedWDur “ : Media Write Duration
“CchRHCnt” : Cache Read Hit Count
“CchWHCnt” : Cache Write Hit Count
“FastWCnt” : Fast Write Count
/sys/bus/nd/devices/regionX/nfit/range_index |
Defined on file sysfs-bus-nfit
(RO) A unique number provided by the BIOS to identify an address range. Used by NVDIMM Region Mapping Structure to uniquely refer to this structure. Value of 0 is reserved and not used as an index.
/sys/bus/nvmem/devices/.../cells/<cell-name> |
Defined on file sysfs-nvmem-cells
The “cells” folder contains one file per cell exposed by the NVMEM device. The name of the file is: “<name>@<byte>,<bit>”, with <name> being the cell name and <where> its location in the NVMEM device, in hexadecimal bytes and bits (without the ‘0x’ prefix, to mimic device tree node names). The length of the file is the size of the cell (when known). The content of the file is the binary content of the cell (may sometimes be ASCII, likely without trailing character). Note: This file is only present if CONFIG_NVMEM_SYSFS is enabled.
Example:
hexdump -C /sys/bus/nvmem/devices/1-00563/cells/product-name@d,0
00000000 54 4e 34 38 4d 2d 50 2d 44 4e |TN48M-P-DN|
0000000a
/sys/bus/pci/devices/.../acpi_index |
Defined on file sysfs-bus-pci
Reading this attribute will provide the firmware given instance (ACPI _DSM instance number) of the PCI device. The attribute will be created only if the firmware has given an instance number to the PCI device. ACPI _DSM instance number will be given priority if the system firmware provides SMBIOS type 41 device type instance also.
Users:
Userspace applications interested in knowing the firmware assigned instance number of the PCI device that can help in understanding the firmware intended order of the PCI device.
/sys/bus/pci/devices/.../d3cold_allowed |
Defined on file sysfs-bus-pci
d3cold_allowed is bit to control whether the corresponding PCI device can be put into D3Cold state. If it is cleared, the device will never be put into D3Cold state. If it is set, the device may be put into D3Cold state if other requirements are satisfied too. Reading this attribute will show the current value of d3cold_allowed bit. Writing this attribute will set the value of d3cold_allowed bit.
/sys/bus/pci/devices/.../dep_link |
Defined on file sysfs-bus-pci
This symbolic link appears when hardware supports the SR-IOV capability and the Physical Function driver has enabled it, and this device has vendor specific dependencies with others. The symbolic link points to the PCI device sysfs entry of Physical Function this device depends on.
/sys/bus/pci/devices/.../driver_override |
Defined on file sysfs-bus-pci
This file allows the driver for a device to be specified which will override standard static and dynamic ID matching. When specified, only a driver with a name matching the value written to driver_override will have an opportunity to bind to the device. The override is specified by writing a string to the driver_override file (echo pci-stub > driver_override) and may be cleared with an empty string (echo > driver_override). This returns the device to standard matching rules binding. Writing to driver_override does not automatically unbind the device from its current driver or make any attempt to automatically load the specified driver. If no driver with a matching name is currently loaded in the kernel, the device will not bind to any driver. This also allows devices to opt-out of driver binding using a driver_override name such as “none”. Only a single driver may be specified in the override, there is no support for parsing delimiters.
/sys/bus/pci/devices/.../index |
Defined on file sysfs-bus-pci
Reading this attribute will provide the firmware given instance number of the PCI device. Depending on the platform this can be for example the SMBIOS type 41 device type instance or the user-defined ID (UID) on s390. The attribute will be created only if the firmware has given an instance number to the PCI device and that number is guaranteed to uniquely identify the device in the system.
Users:
Userspace applications interested in knowing the firmware assigned device type instance of the PCI device that can help in understanding the firmware intended order of the PCI device.
/sys/bus/pci/devices/.../irq |
Defined on file sysfs-bus-pci
If a driver has enabled MSI (not MSI-X), “irq” contains the IRQ of the first MSI vector. Otherwise “irq” contains the IRQ of the legacy INTx interrupt.
“irq” being set to 0 indicates that the device isn’t capable of generating legacy INTx interrupts.
/sys/bus/pci/devices/.../label |
Defined on file sysfs-bus-pci
Reading this attribute will provide the firmware given name (SMBIOS type 41 string or ACPI _DSM string) of the PCI device. The attribute will be created only if the firmware has given a name to the PCI device. ACPI _DSM string name will be given priority if the system firmware provides SMBIOS type 41 string also.
Users:
Userspace applications interested in knowing the firmware assigned name of the PCI device.
/sys/bus/pci/devices/.../leds/*:enclosure:*/brightness |
/sys/class/leds/*:enclosure:*/brightness |
Defined on file sysfs-bus-pci
LED indications on PCIe storage enclosures which are controlled through the NPEM interface (Native PCIe Enclosure Management, PCIe r6.1 sec 6.28) are accessible as led class devices, both below /sys/class/leds and below NPEM-capable PCI devices.
Although these led class devices could be manipulated manually, in practice they are typically manipulated automatically by an application such as ledmon(8).
The name of a led class device is as follows: <bdf>:enclosure:<indication> where:
<bdf> is the domain, bus, device and function number (e.g. 10000:02:05.0)
<indication> is a short description of the LED indication
Valid indications per PCIe r6.1 table 6-27 are:
ok (drive is functioning normally)
locate (drive is being identified by an admin)
fail (drive is not functioning properly)
rebuild (drive is part of an array that is rebuilding)
pfa (drive is predicted to fail soon)
hotspare (drive is marked to be used as a replacement)
ica (drive is part of an array that is degraded)
ifa (drive is part of an array that is failed)
idt (drive is not the right type for the connector)
disabled (drive is disabled, removal is safe)
specific0 to specific7 (enclosure-specific indications)
Broadly, the indications fall into one of these categories:
to signify drive state (ok, locate, fail, idt, disabled)
to signify drive role or state in a software RAID array (rebuild, pfa, hotspare, ica, ifa)
to signify any other role or state (specific0 to specific7)
Mandatory indications per PCIe r6.1 sec 7.9.19.2 comprise: ok, locate, fail, rebuild. All others are optional. A led class device is only visible if the corresponding indication is supported by the device.
To manipulate the indications, write 0 (LED_OFF) or 1 (LED_ON) to the “brightness” file. Note that manipulating an indication may implicitly manipulate other indications at the vendor’s discretion. E.g. when the user lights up the “ok” indication, the vendor may choose to automatically turn off the “fail” indication. The current state of an indication can be retrieved by reading its “brightness” file.
The PCIe Base Specification allows vendors leeway to choose different colors or blinking patterns for the indications, but they typically follow the IBPI standard. E.g. the “locate” indication is usually presented as one or two LEDs blinking at 4 Hz frequency: https://en.wikipedia.org/wiki/International_Blinking_Pattern_Interpretation
PCI Firmware Specification r3.3 sec 4.7 defines a DSM interface to facilitate shared access by operating system and platform firmware to a device’s NPEM registers. The kernel will use this DSM interface where available, instead of accessing NPEM registers directly. The DSM interface does not support the enclosure-specific indications “specific0” to “specific7”, hence the corresponding led class devices are unavailable if the DSM interface is used.
/sys/bus/pci/devices/.../link/clkpm |
Defined on file sysfs-bus-pci
If ASPM is supported for an endpoint, these files can be used to disable or enable the individual power management states. Write y/1/on to enable, n/0/off to disable.
/sys/bus/pci/devices/.../modalias |
Defined on file sysfs-bus-pci
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.
/sys/bus/pci/devices/.../msi_bus |
Defined on file sysfs-bus-pci
Writing a zero value to this attribute disallows MSI and MSI-X for any future drivers of the device. If the device is a bridge, MSI and MSI-X will be disallowed for future drivers of all child devices under the bridge. Drivers must be reloaded for the new setting to take effect.
/sys/bus/pci/devices/.../msi_irqs/ |
Defined on file sysfs-bus-pci
The /sys/devices/.../msi_irqs directory contains a variable set of files, with each file being named after a corresponding msi irq vector allocated to that device.
/sys/bus/pci/devices/.../msi_irqs/<N> |
Defined on file sysfs-bus-pci
This attribute indicates the mode that the irq vector named by the file is in (msi vs. msix)
/sys/bus/pci/devices/.../numa_node |
Defined on file sysfs-bus-pci
This file contains the NUMA node to which the PCI device is attached, or -1 if the node is unknown. The initial value comes from an ACPI _PXM method or a similar firmware source. If that is missing or incorrect, this file can be written to override the node. In that case, please report a firmware bug to the system vendor. Writing to this file taints the kernel with TAINT_FIRMWARE_WORKAROUND, which reduces the supportability of your system.
/sys/bus/pci/devices/.../p2pmem/allocate |
Defined on file sysfs-bus-pci
This file allows mapping p2pmem into userspace. For each mmap() call on this file, the kernel will allocate a chunk of Peer-to-Peer memory for use in Peer-to-Peer transactions. This memory can be used in O_DIRECT calls to NVMe backed files for Peer-to-Peer copies.
/sys/bus/pci/devices/.../p2pmem/available |
Defined on file sysfs-bus-pci
If the device has any Peer-to-Peer memory registered, this file contains the amount of memory that has not been allocated (in decimal).
/sys/bus/pci/devices/.../p2pmem/published |
Defined on file sysfs-bus-pci
If the device has any Peer-to-Peer memory registered, this file contains a ‘1’ if the memory has been published for use outside the driver that owns the device.
/sys/bus/pci/devices/.../p2pmem/size |
Defined on file sysfs-bus-pci
If the device has any Peer-to-Peer memory registered, this file contains the total amount of memory that the device provides (in decimal).
/sys/bus/pci/devices/.../pci_bus/.../rescan |
Defined on file sysfs-bus-pci
Writing a non-zero value to this attribute will force a rescan of the bus and all child buses, and re-discover devices removed earlier from this part of the device tree.
/sys/bus/pci/devices/.../physfn |
Defined on file sysfs-bus-pci
This symbolic link appears when a device is a Virtual Function. The symbolic link points to the PCI device sysfs entry of the Physical Function this device associates with.
/sys/bus/pci/devices/.../power_state |
Defined on file sysfs-bus-pci
This file contains the current PCI power state of the device. The value comes from the PCI kernel device state and can be one of: “unknown”, “error”, “D0”, D1”, “D2”, “D3hot”, “D3cold”. The file is read only.
/sys/bus/pci/devices/.../remove |
Defined on file sysfs-bus-pci
Writing a non-zero value to this attribute will hot-remove the PCI device and any of its children.
/sys/bus/pci/devices/.../rescan |
Defined on file sysfs-bus-pci
Writing a non-zero value to this attribute will force a rescan of the device’s parent bus and all child buses, and re-discover devices removed earlier from this part of the device tree.
/sys/bus/pci/devices/.../reset |
Defined on file sysfs-bus-pci
Some devices allow an individual function to be reset without affecting other functions in the same device. For devices that have this support, a file named reset will be present in sysfs. Writing 1 to this file will perform reset.
/sys/bus/pci/devices/.../reset_method |
Defined on file sysfs-bus-pci
Some devices allow an individual function to be reset without affecting other functions in the same slot.
For devices that have this support, a file named reset_method is present in sysfs. Reading this file gives names of the supported and enabled reset methods and their ordering. Writing a space-separated list of names of reset methods sets the reset methods and ordering to be used when resetting the device. Writing an empty string disables the ability to reset the device. Writing “default” enables all supported reset methods in the default ordering.
/sys/bus/pci/devices/.../reset_subordinate |
Defined on file sysfs-bus-pci
This is visible only for bridge devices. If you want to reset all devices attached through the subordinate bus of a specific bridge device, writing 1 to this will try to do it. This will affect all devices attached to the system through this bridge similiar to writing 1 to their individual “reset” file, so use with caution.
/sys/bus/pci/devices/.../resourceN_resize |
Defined on file sysfs-bus-pci
These files provide an interface to PCIe Resizable BAR support. A file is created for each BAR resource (N) supported by the PCIe Resizable BAR extended capability of the device. Reading each file exposes the bitmap of available resource sizes:
# cat resource1_resize 00000000000001c0
The bitmap represents supported resource sizes for the BAR, where bit0 = 1MB, bit1 = 2MB, bit2 = 4MB, etc. In the above example the device supports 64MB, 128MB, and 256MB BAR sizes.
When writing the file, the user provides the bit position of the desired resource size, for example:
# echo 7 > resource1_resize
This indicates to set the size value corresponding to bit 7, 128MB. The resulting size is 2 ^ (bit# + 20). This definition matches the PCIe specification of this capability.
In order to make use of resource resizing, all PCI drivers must be unbound from the device and peer devices under the same parent bridge may need to be soft removed. In the case of VGA devices, writing a resize value will remove low level console drivers from the device. Raw users of pci-sysfs resourceN attributes must be terminated prior to resizing. Success of the resizing operation is not guaranteed.
/sys/bus/pci/devices/.../revision |
Defined on file sysfs-bus-pci
This file contains the revision field of the PCI device. The value comes from device config space. The file is read only.
/sys/bus/pci/devices/.../sriov_drivers_autoprobe |
Defined on file sysfs-bus-pci
This file is associated with the PF of a device that supports SR-IOV. It determines whether newly-enabled VFs are immediately bound to a driver. It initially contains 1, which means the kernel automatically binds VFs to a compatible driver immediately after they are enabled. If an application writes 0 to the file before enabling VFs, the kernel will not bind VFs to a driver.
A typical use case is to write 0 to this file, then enable VFs, then assign the newly-created VFs to virtual machines. Note that changing this file does not affect already- enabled VFs. In this scenario, the user must first disable the VFs, write 0 to sriov_drivers_autoprobe, then re-enable the VFs.
This is similar to /sys/bus/pci/drivers_autoprobe, but affects only the VFs associated with a specific PF.
/sys/bus/pci/devices/.../sriov_numvfs |
Defined on file sysfs-bus-pci
This file appears when a physical PCIe device supports SR-IOV. Userspace applications can read and write to this file to determine and control the enablement or disablement of Virtual Functions (VFs) on the physical function (PF). A read of this file will return the number of VFs that are enabled on this PF. A number written to this file will enable the specified number of VFs. A userspace application would typically read the file and check that the value is zero, and then write the number of VFs that should be enabled on the PF; the value written should be less than or equal to the value in the sriov_totalvfs file. A userspace application wanting to disable the VFs would write a zero to this file. The core ensures that valid values are written to this file, and returns errors when values are not valid. For example, writing a 2 to this file when sriov_numvfs is not 0 and not 2 already will return an error. Writing a 10 when the value of sriov_totalvfs is 8 will return an error.
/sys/bus/pci/devices/.../sriov_totalvfs |
Defined on file sysfs-bus-pci
This file appears when a physical PCIe device supports SR-IOV.
Userspace applications can read this file to determine the
maximum number of Virtual Functions (VFs) a PCIe physical
function (PF) can support. Typically, this is the value reported
in the PF’s SR-IOV extended capability structure’s TotalVFs
element. Drivers have the ability at probe time to reduce the
value read from this file via the pci_sriov_set_totalvfs()
function.
/sys/bus/pci/devices/.../sriov_vf_msix_count |
Defined on file sysfs-bus-pci
This file is associated with a SR-IOV virtual function (VF). It allows configuration of the number of MSI-X vectors for the VF. This allows devices that have a global pool of MSI-X vectors to optimally divide them between VFs based on VF usage.
- The values accepted are:
- > 0 - this number will be reported as the Table Size in the
VF’s MSI-X capability
< 0 - not valid
= 0 - will reset to the device default value
The file is writable if the PF is bound to a driver that implements ->sriov_set_msix_vec_count().
/sys/bus/pci/devices/.../sriov_vf_total_msix |
Defined on file sysfs-bus-pci
This file is associated with a SR-IOV physical function (PF). It contains the total number of MSI-X vectors available for assignment to all virtual functions (VFs) associated with PF. The value will be zero if the device doesn’t support this functionality. For supported devices, the value will be constant and won’t be changed after MSI-X vectors assignment.
/sys/bus/pci/devices/.../virtfn<N> |
Defined on file sysfs-bus-pci
This symbolic link appears when hardware supports the SR-IOV capability and the Physical Function driver has enabled it. The symbolic link points to the PCI device sysfs entry of the Virtual Function whose index is N (0...MaxVFs-1).
/sys/bus/pci/devices/.../vpd |
Defined on file sysfs-bus-pci
A file named vpd in a device directory will be a binary file containing the Vital Product Data for the device. It should follow the VPD format defined in PCI Specification 2.1 or 2.2, but users should consider that some devices may have incorrectly formatted data. If the underlying VPD has a writable section then the corresponding section of this file will be writable.
/sys/bus/pci/devices/<BDF>/anti_rollback_status |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/anti_rollback_status file reports whether the PSP is enforcing rollback protection. Possible values: 0: Not enforcing 1: Enforcing
/sys/bus/pci/devices/<BDF>/bootloader_version |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/bootloader_version file reports the firmware version of the AMD AGESA bootloader.
/sys/bus/pci/devices/<BDF>/debug_lock_on |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/debug_lock_on reports whether the AMD CPU or APU has been unlocked for debugging. Possible values: 0: Not locked 1: Locked
/sys/bus/pci/devices/<BDF>/fused_part |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/fused_part file reports whether the CPU or APU has been fused to prevent tampering. 0: Not fused 1: Fused
/sys/bus/pci/devices/<BDF>/hsp_tpm_available |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/hsp_tpm_available file reports whether the HSP TPM has been activated. Possible values: 0: Not activated or present 1: Activated
/sys/bus/pci/devices/<BDF>/qat/auto_reset |
Defined on file sysfs-driver-qat
(RW) Reports the current state of the autoreset feature for a QAT device
Write to the attribute to enable or disable device auto reset.
Device auto reset is disabled by default.
The values are:
1/Yy/on: auto reset enabled. If the device encounters an unrecoverable error, it will be reset automatically.
0/Nn/off: auto reset disabled. If the device encounters an unrecoverable error, it will not be reset.
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat/cfg_services |
Defined on file sysfs-driver-qat
(RW) Reports the current configuration of the QAT device. Write to the file to change the configured services.
The values are:
sym;asym: the device is configured for running crypto services
asym;sym: identical to sym;asym
dc: the device is configured for running compression services
dcc: identical to dc but enables the dc chaining feature, hash then compression. If this is not required chose dc
sym: the device is configured for running symmetric crypto services
asym: the device is configured for running asymmetric crypto services
asym;dc: the device is configured for running asymmetric crypto services and compression services
dc;asym: identical to asym;dc
sym;dc: the device is configured for running symmetric crypto services and compression services
dc;sym: identical to sym;dc
It is possible to set the configuration only if the device is in the down state (see /sys/bus/pci/devices/<BDF>/qat/state)
The following example shows how to change the configuration of a device configured for running crypto services in order to run data compression:
# cat /sys/bus/pci/devices/<BDF>/qat/state
up
# cat /sys/bus/pci/devices/<BDF>/qat/cfg_services
sym;asym
# echo down > /sys/bus/pci/devices/<BDF>/qat/state
# echo dc > /sys/bus/pci/devices/<BDF>/qat/cfg_services
# echo up > /sys/bus/pci/devices/<BDF>/qat/state
# cat /sys/bus/pci/devices/<BDF>/qat/cfg_services
dc
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat/num_rps |
Defined on file sysfs-driver-qat
(RO) Returns the number of ring pairs that a single device has.
Example usage:
# cat /sys/bus/pci/devices/<BDF>/qat/num_rps
64
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat/pm_idle_enabled |
Defined on file sysfs-driver-qat
(RW) This configuration option provides a way to force the device into remaining in the MAX power state. If idle support is enabled the device will transition to the MIN power state when idle, otherwise will stay in the MAX power state. Write to the file to enable or disable idle support.
The values are:
0: idle support is disabled
1: idle support is enabled
Default value is 1.
It is possible to set the pm_idle_enabled value only if the device is in the down state (see /sys/bus/pci/devices/<BDF>/qat/state)
The following example shows how to change the pm_idle_enabled of a device:
# cat /sys/bus/pci/devices/<BDF>/qat/state
up
# cat /sys/bus/pci/devices/<BDF>/qat/pm_idle_enabled
1
# echo down > /sys/bus/pci/devices/<BDF>/qat/state
# echo 0 > /sys/bus/pci/devices/<BDF>/qat/pm_idle_enabled
# echo up > /sys/bus/pci/devices/<BDF>/qat/state
# cat /sys/bus/pci/devices/<BDF>/qat/pm_idle_enabled
0
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat/rp2srv |
Defined on file sysfs-driver-qat
(RW) This attribute provides a way for a user to query a specific ring pair for the type of service that it is currently configured for.
When written to, the value is cached and used to perform the read operation. Allowed values are in the range 0 to N-1, where N is the max number of ring pairs supported by a device. This can be queried using the attribute qat/num_rps.
A read returns the service associated to the ring pair queried.
The values are:
dc: the ring pair is configured for running compression services
sym: the ring pair is configured for running symmetric crypto services
asym: the ring pair is configured for running asymmetric crypto services
Example usage:
# echo 1 > /sys/bus/pci/devices/<BDF>/qat/rp2srv
# cat /sys/bus/pci/devices/<BDF>/qat/rp2srv
sym
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat/state |
Defined on file sysfs-driver-qat
(RW) Reports the current state of the QAT device. Write to the file to start or stop the device.
The values are:
up: the device is up and running
down: the device is down
It is possible to transition the device from up to down only if the device is up and vice versa.
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_ras/errors_correctable |
Defined on file sysfs-driver-qat_ras
(RO) Reports the number of correctable errors detected by the device.
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_ras/errors_fatal |
Defined on file sysfs-driver-qat_ras
(RO) Reports the number of fatal errors detected by the device.
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_ras/errors_nonfatal |
Defined on file sysfs-driver-qat_ras
(RO) Reports the number of non fatal errors detected by the device.
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_ras/reset_error_counters |
Defined on file sysfs-driver-qat_ras
(WO) Write to resets all error counters of a device.
The following example reports how to reset the counters:
# echo 1 > /sys/bus/pci/devices/<BDF>/qat_ras/reset_error_counters
# cat /sys/bus/pci/devices/<BDF>/qat_ras/errors_correctable
0
# cat /sys/bus/pci/devices/<BDF>/qat_ras/errors_nonfatal
0
# cat /sys/bus/pci/devices/<BDF>/qat_ras/errors_fatal
0
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_rl/cap_rem |
Defined on file sysfs-driver-qat_rl
(RW) This file will return the remaining capability for a particular service/sla. This is the remaining value that a new SLA can be set to or a current SLA can be increased with.
Example usage:
# echo "asym" > /sys/bus/pci/devices/<BDF>/qat_rl/cap_rem
# cat /sys/bus/pci/devices/<BDF>/qat_rl/cap_rem
250
# echo 250 > /sys/bus/pci/devices/<BDF>/qat_rl/cir
# echo "add" > /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
# cat /sys/bus/pci/devices/<BDF>/qat_rl/cap_rem
0
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_rl/cir |
Defined on file sysfs-driver-qat_rl
(RW) Committed information rate (CIR). Rate guaranteed to be achieved by a particular SLA. The value is expressed in permille scale, i.e. 1000 refers to the maximum device throughput for a selected service.
After sending a “get” to sla_op, this will be populated with the CIR for that queried SLA. Write to this file before sending an “add/update” sla_op, to set the SLA to the specified value.
Applicability in sla_op:
WRITE: add and update operations
READ: get operation
Example usage:
## Write
# echo 500 > /sys/bus/pci/devices/<BDF>/qat_rl/cir
# echo "add" /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
## Read
# echo 4 > /sys/bus/pci/devices/<BDF>/qat_rl/id
# echo "get" > /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
# cat /sys/bus/pci/devices/<BDF>/qat_rl/cir
500
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_rl/id |
Defined on file sysfs-driver-qat_rl
(RW) If written to, the value is used to retrieve a particular SLA and operate on it. This is valid only for the following operations: update, rm, and get. A read of this attribute is only guaranteed to have correct data after creation of an SLA.
Applicability in sla_op:
WRITE: rm and update operations
READ: add and get operations
Example usage:
## Read
## Set attributes e.g. cir, pir, srv, etc
# echo "add" > /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
# cat /sys/bus/pci/devices/<BDF>/qat_rl/id
4
## Write
# echo 7 > /sys/bus/pci/devices/<BDF>/qat_rl/id
# echo "get" > /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
# cat /sys/bus/pci/devices/<BDF>/qat_rl/rp
0x5 ## ring pair ID 0 and ring pair ID 2
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_rl/pir |
Defined on file sysfs-driver-qat_rl
(RW) Peak information rate (PIR). The maximum rate that can be achieved by that particular SLA. An SLA can reach a value between CIR and PIR when the device is not fully utilized by requests from other users (assigned to different SLAs).
After sending a “get” to sla_op, this will be populated with the PIR for that queried SLA. Write to this file before sending an “add/update” sla_op, to set the SLA to the specified value.
Applicability in sla_op:
WRITE: add and update operations
READ: get operation
Example usage:
## Write
# echo 750 > /sys/bus/pci/devices/<BDF>/qat_rl/pir
# echo "add" > /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
## Read
# echo 4 > /sys/bus/pci/devices/<BDF>/qat_rl/id
# echo "get" > /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
# cat /sys/bus/pci/devices/<BDF>/qat_rl/pir
750
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_rl/rp |
Defined on file sysfs-driver-qat_rl
(RW) When read, reports the current assigned ring pairs for the queried SLA. When wrote to, configures the ring pairs associated to a new SLA.
The value is a 64-bit bit mask and is written/displayed in hex. Each bit of this mask represents a single ring pair i.e., bit 1 == ring pair id 0; bit 3 == ring pair id 2.
Selected ring pairs must to be assigned to a single service, i.e. the one provided with the srv attribute. The service assigned to a certain ring pair can be checked by querying the attribute qat/rp2srv.
The maximum number of ring pairs is 4 per SLA.
Applicability in sla_op:
WRITE: add operation
READ: get operation
Example usage:
## Read
# echo 4 > /sys/bus/pci/devices/<BDF>/qat_rl/id
# cat /sys/bus/pci/devices/<BDF>/qat_rl/rp
0x5
## Write
# echo 0x5 > /sys/bus/pci/devices/<BDF>/qat_rl/rp
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_rl/sla_op |
Defined on file sysfs-driver-qat_rl
(WO) This attribute is used to perform an operation on an SLA. The supported operations are: add, update, rm, rm_all, and get.
Input values must be filled through the associated attribute in this group before a write to this file. If the operation completes successfully, the associated attributes will be updated. The associated attributes are: cir, pir, srv, rp, and id.
Supported operations:
- add: Creates a new SLA with the provided inputs from user.
Inputs: cir, pir, srv, and rp
Output: id
- get: Returns the configuration of the specified SLA in id attribute
Inputs: id
Outputs: cir, pir, srv, and rp
- update: Updates the SLA with new values set in the following attributes
Inputs: id, cir, and pir
- rm: Removes the specified SLA in the id attribute.
Inputs: id
- rm_all: Removes all the configured SLAs.
Inputs: None
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/qat_rl/srv |
Defined on file sysfs-driver-qat_rl
(RW) Service (SRV). Represents the service (sym, asym, dc) associated to an SLA. Can be written to or queried to set/show the SRV type for an SLA. The SRV attribute is used to specify the SRV type before adding an SLA. After an SLA is configured, reports the service associated to that SLA.
Applicability in sla_op:
WRITE: add and update operations
READ: get operation
Example usage:
## Write
# echo "dc" > /sys/bus/pci/devices/<BDF>/qat_rl/srv
# echo "add" > /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
# cat /sys/bus/pci/devices/<BDF>/qat_rl/id
4
## Read
# echo 4 > /sys/bus/pci/devices/<BDF>/qat_rl/id
# echo "get" > /sys/bus/pci/devices/<BDF>/qat_rl/sla_op
# cat /sys/bus/pci/devices/<BDF>/qat_rl/srv
dc
This attribute is only available for qat_4xxx devices.
/sys/bus/pci/devices/<BDF>/rom_armor_enforced |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/rom_armor_enforced file reports whether RomArmor SPI protection is enforced. Possible values: 0: Not enforced 1: Enforced
/sys/bus/pci/devices/<BDF>/rpmc_production_enabled |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/rpmc_production_enabled file reports whether Replay Protected Monotonic Counter support has been enabled. Possible values: 0: Not enabled 1: Enabled
/sys/bus/pci/devices/<BDF>/rpmc_spirom_available |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/rpmc_spirom_available file reports whether an Replay Protected Monotonic Counter supported SPI is installed on the system. Possible values: 0: Not present 1: Present
/sys/bus/pci/devices/<BDF>/tee_version |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/tee_version file reports the firmware version of the AMD Trusted Execution Environment (TEE).
/sys/bus/pci/devices/<BDF>/tsme_status |
Defined on file sysfs-driver-ccp
The /sys/bus/pci/devices/<BDF>/tsme_status file reports the status of transparent secure memory encryption on AMD systems. Possible values: 0: Not active 1: Active
/sys/bus/pci/devices/<dev>/aer_dev_correctable |
Defined on file sysfs-bus-pci-devices-aer_stats
List of correctable errors seen and reported by this PCI device using ERR_COR. Note that since multiple errors may be reported using a single ERR_COR message, thus TOTAL_ERR_COR at the end of the file may not match the actual total of all the errors in the file. Sample output:
localhost /sys/devices/pci0000:00/0000:00:1c.0 # cat aer_dev_correctable
Receiver Error 2
Bad TLP 0
Bad DLLP 0
RELAY_NUM Rollover 0
Replay Timer Timeout 0
Advisory Non-Fatal 0
Corrected Internal Error 0
Header Log Overflow 0
TOTAL_ERR_COR 2
/sys/bus/pci/devices/<dev>/aer_dev_fatal |
Defined on file sysfs-bus-pci-devices-aer_stats
List of uncorrectable fatal errors seen and reported by this PCI device using ERR_FATAL. Note that since multiple errors may be reported using a single ERR_FATAL message, thus TOTAL_ERR_FATAL at the end of the file may not match the actual total of all the errors in the file. Sample output:
localhost /sys/devices/pci0000:00/0000:00:1c.0 # cat aer_dev_fatal
Undefined 0
Data Link Protocol 0
Surprise Down Error 0
Poisoned TLP 0
Flow Control Protocol 0
Completion Timeout 0
Completer Abort 0
Unexpected Completion 0
Receiver Overflow 0
Malformed TLP 0
ECRC 0
Unsupported Request 0
ACS Violation 0
Uncorrectable Internal Error 0
MC Blocked TLP 0
AtomicOp Egress Blocked 0
TLP Prefix Blocked Error 0
TOTAL_ERR_FATAL 0
/sys/bus/pci/devices/<dev>/aer_dev_nonfatal |
Defined on file sysfs-bus-pci-devices-aer_stats
List of uncorrectable nonfatal errors seen and reported by this PCI device using ERR_NONFATAL. Note that since multiple errors may be reported using a single ERR_FATAL message, thus TOTAL_ERR_NONFATAL at the end of the file may not match the actual total of all the errors in the file. Sample output:
localhost /sys/devices/pci0000:00/0000:00:1c.0 # cat aer_dev_nonfatal
Undefined 0
Data Link Protocol 0
Surprise Down Error 0
Poisoned TLP 0
Flow Control Protocol 0
Completion Timeout 0
Completer Abort 0
Unexpected Completion 0
Receiver Overflow 0
Malformed TLP 0
ECRC 0
Unsupported Request 0
ACS Violation 0
Uncorrectable Internal Error 0
MC Blocked TLP 0
AtomicOp Egress Blocked 0
TLP Prefix Blocked Error 0
TOTAL_ERR_NONFATAL 0
PCIe Rootport AER statistics
These attributes show up under only the rootports (or root complex event collectors) that are AER capable. These indicate the number of error messages as “reported to” the rootport. Please note that the rootports also transmit (internally) the ERR_* messages for errors seen by the internal rootport PCI device, so these counters include them and are thus cumulative of all the error messages on the PCI hierarchy originating at that root port.
/sys/bus/pci/devices/<dev>/aer_rootport_total_err_cor |
Defined on file sysfs-bus-pci-devices-aer_stats
Total number of ERR_COR messages reported to rootport.
/sys/bus/pci/devices/<dev>/aer_rootport_total_err_fatal |
Defined on file sysfs-bus-pci-devices-aer_stats
Total number of ERR_FATAL messages reported to rootport.
/sys/bus/pci/devices/<dev>/aer_rootport_total_err_nonfatal |
Defined on file sysfs-bus-pci-devices-aer_stats
Total number of ERR_NONFATAL messages reported to rootport.
/sys/bus/pci/devices/<dev>/ccissX/cXdY/block:cciss!cXdY |
Defined on file sysfs-bus-pci-devices-cciss
A symbolic link to /sys/block/cciss!cXdY
/sys/bus/pci/devices/<dev>/ccissX/cXdY/lunid |
Defined on file sysfs-bus-pci-devices-cciss
Displays the 8-byte LUN ID used to address logical drive Y of controller X.
/sys/bus/pci/devices/<dev>/ccissX/cXdY/model |
Defined on file sysfs-bus-pci-devices-cciss
Displays the SCSI INQUIRY page 0 model for logical drive Y of controller X.
/sys/bus/pci/devices/<dev>/ccissX/cXdY/raid_level |
Defined on file sysfs-bus-pci-devices-cciss
Displays the RAID level of logical drive Y of controller X.
/sys/bus/pci/devices/<dev>/ccissX/cXdY/rev |
Defined on file sysfs-bus-pci-devices-cciss
Displays the SCSI INQUIRY page 0 revision for logical drive Y of controller X.
/sys/bus/pci/devices/<dev>/ccissX/cXdY/unique_id |
Defined on file sysfs-bus-pci-devices-cciss
Displays the SCSI INQUIRY page 83 serial number for logical drive Y of controller X.
/sys/bus/pci/devices/<dev>/ccissX/cXdY/usage_count |
Defined on file sysfs-bus-pci-devices-cciss
Displays the usage count (number of opens) of logical drive Y of controller X.
/sys/bus/pci/devices/<dev>/ccissX/cXdY/vendor |
Defined on file sysfs-bus-pci-devices-cciss
Displays the SCSI INQUIRY page 0 vendor for logical drive Y of controller X.
/sys/bus/pci/devices/<dev>/ccissX/rescan |
Defined on file sysfs-bus-pci-devices-cciss
Kicks of a rescan of the controller to discover logical drive topology changes.
/sys/bus/pci/devices/<dev>/ccissX/resettable |
Defined on file sysfs-bus-pci-devices-cciss
Value of 1 indicates the controller can honor the reset_devices kernel parameter. Value of 0 indicates reset_devices cannot be honored. This is to allow, for example, kexec tools to be able to warn the user if they designate an unresettable device as a dump device, as kdump requires resetting the device in order to work reliably.
/sys/bus/pci/devices/<dev>/ccissX/transport_mode |
Defined on file sysfs-bus-pci-devices-cciss
Value of “simple” indicates that the controller has been placed in “simple mode”. Value of “performant” indicates that the controller has been placed in “performant mode”.
/sys/bus/pci/drivers/.../bind |
/sys/devices/pciX/.../bind |
Defined on file sysfs-bus-pci
Writing a device location to this file will cause the driver to attempt to bind to the device found at this location. This is useful for overriding default bindings. The format for the location is: DDDD:BB:DD.F. That is Domain:Bus:Device.Function and is the same as found in /sys/bus/pci/devices/. For example:
# echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/bind
(Note: kernels before 2.6.28 may require echo -n).
/sys/bus/pci/drivers/.../new_id |
/sys/devices/pciX/.../new_id |
Defined on file sysfs-bus-pci
Writing a device ID to this file will attempt to dynamically add a new device ID to a PCI device driver. This may allow the driver to support more hardware than was included in the driver’s static device ID support table at compile time. The format for the device ID is: VVVV DDDD SVVV SDDD CCCC MMMM PPPP. That is Vendor ID, Device ID, Subsystem Vendor ID, Subsystem Device ID, Class, Class Mask, and Private Driver Data. The Vendor ID and Device ID fields are required, the rest are optional. Upon successfully adding an ID, the driver will probe for the device and attempt to bind to it. For example:
# echo "8086 10f5" > /sys/bus/pci/drivers/foo/new_id
/sys/bus/pci/drivers/.../remove_id |
/sys/devices/pciX/.../remove_id |
Defined on file sysfs-bus-pci
Writing a device ID to this file will remove an ID that was dynamically added via the new_id sysfs entry. The format for the device ID is: VVVV DDDD SVVV SDDD CCCC MMMM. That is Vendor ID, Device ID, Subsystem Vendor ID, Subsystem Device ID, Class, and Class Mask. The Vendor ID and Device ID fields are required, the rest are optional. After successfully removing an ID, the driver will no longer support the device. This is useful to ensure auto probing won’t match the driver to the device. For example:
# echo "8086 10f5" > /sys/bus/pci/drivers/foo/remove_id
/sys/bus/pci/drivers/.../unbind |
/sys/devices/pciX/.../unbind |
Defined on file sysfs-bus-pci
Writing a device location to this file will cause the driver to attempt to unbind from the device found at this location. This may be useful when overriding default bindings. The format for the location is: DDDD:BB:DD.F. That is Domain:Bus:Device.Function and is the same as found in /sys/bus/pci/devices/. For example:
# echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/unbind
(Note: kernels before 2.6.28 may require echo -n).
/sys/bus/pci/drivers/altera-cvp/chkcfg |
Defined on file sysfs-driver-altera-cvp
Contains either 1 or 0 and controls if configuration error checking in altera-cvp driver is turned on or off.
/sys/bus/pci/drivers/ehci_hcd/.../companion |
Defined on file sysfs-bus-pci-drivers-ehci_hcd
PCI-based EHCI USB controllers (i.e., high-speed USB-2.0 controllers) are often implemented along with a set of “companion” full/low-speed USB-1.1 controllers. When a high-speed device is plugged in, the connection is routed to the EHCI controller; when a full- or low-speed device is plugged in, the connection is routed to the companion controller.
Sometimes you want to force a high-speed device to connect at full speed, which can be accomplished by forcing the connection to be routed to the companion controller. That’s what this file does. Writing a port number to the file causes connections on that port to be routed to the companion controller, and writing the negative of a port number returns the port to normal operation.
For example: To force the high-speed device attached to port 4 on bus 2 to run at full speed:
echo 4 >/sys/bus/usb/devices/usb2/../companion
To return the port to high-speed operation:
echo -4 >/sys/bus/usb/devices/usb2/../companion
Reading the file gives the list of ports currently forced to the companion controller.
Note: Some EHCI controllers do not have companions; they may contain an internal “transaction translator” or they may be attached directly to a “rate-matching hub”. This mechanism will not work with such controllers. Also, it cannot be used to force a port on a high-speed hub to connect at full speed.
Note: When this file was first added, it appeared in a different sysfs directory. The location given above is correct for 2.6.35 (and probably several earlier kernel versions as well).
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/curr1_crit |
Defined on file sysfs-driver-intel-i915-hwmon
RW. Card reactive critical (I1) power limit in milliamperes.
Card reactive critical (I1) power limit in milliamperes is exposed for server products. The power controller will throttle the operating frequency if the power averaged over a window exceeds this limit.
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/energy1_input |
Defined on file sysfs-driver-intel-i915-hwmon
RO. Energy input of device or gt in microjoules.
For i915 device level hwmon devices (name “i915”) this reflects energy input for the entire device. For gt level hwmon devices (name “i915_gtN”) this reflects energy input for the gt.
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/fan1_input |
Defined on file sysfs-driver-intel-i915-hwmon
RO. Fan speed of device in RPM.
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/in0_input |
Defined on file sysfs-driver-intel-i915-hwmon
RO. Current Voltage in millivolt.
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/power1_crit |
Defined on file sysfs-driver-intel-i915-hwmon
RW. Card reactive critical (I1) power limit in microwatts.
Card reactive critical (I1) power limit in microwatts is exposed for client products. The power controller will throttle the operating frequency if the power averaged over a window exceeds this limit.
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/power1_max |
Defined on file sysfs-driver-intel-i915-hwmon
RW. Card reactive sustained (PL1/Tau) power limit in microwatts.
The power controller will throttle the operating frequency if the power averaged over a window (typically seconds) exceeds this limit. A read value of 0 means that the PL1 power limit is disabled, writing 0 disables the limit. Writing values > 0 will enable the power limit.
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/power1_max_interval |
Defined on file sysfs-driver-intel-i915-hwmon
RW. Sustained power limit interval (Tau in PL1/Tau) in milliseconds over which sustained power is averaged.
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/power1_rated_max |
Defined on file sysfs-driver-intel-i915-hwmon
RO. Card default power limit (default TDP setting).
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/temp1_input |
Defined on file sysfs-driver-intel-i915-hwmon
RO. GPU package temperature in millidegree Celsius.
Only supported for particular Intel i915 graphics platforms.
/sys/bus/pci/drivers/janz-cmodio/.../modulbus_number |
Defined on file sysfs-bus-pci-drivers-janz-cmodio
Value representing the HEX switch S2 of the janz carrier board CMOD-IO or CAN-PCI2
Read-only: value of the configuration switch (0..15)
/sys/bus/pci/drivers/pciback/allow_interrupt_control |
Defined on file sysfs-driver-pciback
List of devices which can have interrupt control flag (INTx, MSI, MSI-X) set by a connected guest. It is meant to be set only when the guest is a stubdomain hosting device model (qemu) and the actual device is assigned to a HVM. It is not safe (similar to permissive attribute) to set for a devices assigned to a PV guest. The device is automatically removed from this list when the connected pcifront terminates.
/sys/bus/pci/drivers/pciback/quirks |
Defined on file sysfs-driver-pciback
If the permissive attribute is set, then writing a string in the format of DDDD:BB:DD.F-REG:SIZE:MASK will allow the guest to write and read from the PCI device. That is Domain:Bus: Device.Function-Register:Size:Mask (Domain is optional). For example:
#echo 00:19.0-E0:2:FF > /sys/bus/pci/drivers/pciback/quirks
will allow the guest to read and write to the configuration register 0x0E.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/curr2_crit |
Defined on file sysfs-driver-intel-xe-hwmon
RW. Package reactive critical (I1) power limit in milliamperes.
Package reactive critical (I1) power limit in milliamperes is exposed for server products. The power controller will throttle the operating frequency if the power averaged over a window exceeds this limit.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/energy1_input |
Defined on file sysfs-driver-intel-xe-hwmon
RO. Card energy input of device in microjoules.
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/energy2_input |
Defined on file sysfs-driver-intel-xe-hwmon
RO. Package energy input of device in microjoules.
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/in1_input |
Defined on file sysfs-driver-intel-xe-hwmon
RO. Package current voltage in millivolt.
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_max |
Defined on file sysfs-driver-intel-xe-hwmon
RW. Card reactive sustained (PL1) power limit in microwatts.
The power controller will throttle the operating frequency if the power averaged over a window (typically seconds) exceeds this limit. A read value of 0 means that the PL1 power limit is disabled, writing 0 disables the limit. Writing values > 0 and <= TDP will enable the power limit.
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_max_interval |
Defined on file sysfs-driver-intel-xe-hwmon
RW. Card sustained power limit interval (Tau in PL1/Tau) in milliseconds over which sustained power is averaged.
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_rated_max |
Defined on file sysfs-driver-intel-xe-hwmon
RO. Card default power limit (default TDP setting).
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_crit |
Defined on file sysfs-driver-intel-xe-hwmon
RW. Package reactive critical (I1) power limit in microwatts.
Package reactive critical (I1) power limit in microwatts is exposed for client products. The power controller will throttle the operating frequency if the power averaged over a window exceeds this limit.
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_max |
Defined on file sysfs-driver-intel-xe-hwmon
RW. Package reactive sustained (PL1) power limit in microwatts.
The power controller will throttle the operating frequency if the power averaged over a window (typically seconds) exceeds this limit. A read value of 0 means that the PL1 power limit is disabled, writing 0 disables the limit. Writing values > 0 and <= TDP will enable the power limit.
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_max_interval |
Defined on file sysfs-driver-intel-xe-hwmon
RW. Package sustained power limit interval (Tau in PL1/Tau) in milliseconds over which sustained power is averaged.
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_rated_max |
Defined on file sysfs-driver-intel-xe-hwmon
RO. Package default power limit (default TDP setting).
Only supported for particular Intel Xe graphics platforms.
/sys/bus/pci/drivers/xhci_hcd/.../dbc |
Defined on file sysfs-bus-pci-drivers-xhci_hcd
xHCI compatible USB host controllers (i.e. super-speed USB3 controllers) are often implemented with the Debug Capability (DbC). It can present a debug device which is fully compliant with the USB framework and provides the equivalent of a very high performance full-duplex serial link for debug purpose.
The DbC debug device shares a root port with xHCI host. When the DbC is enabled, the root port will be assigned to the Debug Capability. Otherwise, it will be assigned to xHCI.
Writing “enable” to this attribute will enable the DbC functionality and the shared root port will be assigned to the DbC device. Writing “disable” to this attribute will disable the DbC functionality and the shared root port will roll back to the xHCI.
Reading this attribute gives the state of the DbC. It can be one of the following states: disabled, enabled, initialized, connected, configured and stalled.
/sys/bus/pci/drivers/xhci_hcd/.../dbc_bInterfaceProtocol |
Defined on file sysfs-bus-pci-drivers-xhci_hcd
This attribute lets us change the bInterfaceProtocol field presented in the USB Interface descriptor by the xhci debug device. Value can only be changed while debug capability (DbC) is in disabled state to prevent USB descriptor change while connected to a USB host. The default value is 1 (GNU Remote Debug command). Other permissible value is 0 which is for vendor defined debug target.
/sys/bus/pci/drivers/xhci_hcd/.../dbc_bcdDevice |
Defined on file sysfs-bus-pci-drivers-xhci_hcd
This dbc_bcdDevice attribute lets us change the bcdDevice field presented in the USB device descriptor by this xhci debug device. Value can only be changed while debug capability (DbC) is in disabled state to prevent USB device descriptor change while connected to a USB host. The default value is 0x0010. (device rev 0.10) It can be any 16-bit integer.
/sys/bus/pci/drivers/xhci_hcd/.../dbc_idProduct |
Defined on file sysfs-bus-pci-drivers-xhci_hcd
This dbc_idProduct attribute lets us change the idProduct field presented in the USB device descriptor by this xhci debug device. Value can only be changed while debug capability (DbC) is in disabled state to prevent USB device descriptor change while connected to a USB host. The default value is 0x0010. It can be any 16-bit integer.
/sys/bus/pci/drivers/xhci_hcd/.../dbc_idVendor |
Defined on file sysfs-bus-pci-drivers-xhci_hcd
This dbc_idVendor attribute lets us change the idVendor field presented in the USB device descriptor by this xhci debug device. Value can only be changed while debug capability (DbC) is in disabled state to prevent USB device descriptor change while connected to a USB host. The default value is 0x1d6b (Linux Foundation). It can be any 16-bit integer.
/sys/bus/pci/drivers/xhci_hcd/.../dbc_poll_interval_ms |
Defined on file sysfs-bus-pci-drivers-xhci_hcd
This attribute adjust the polling interval used to check for DbC events. Unit is milliseconds. Accepted values range from 0 up to 5000. The default value is 64 ms. This polling interval is used while DbC is enabled but has no active data transfers.
/sys/bus/pci/rescan |
Defined on file sysfs-bus-pci
Writing a non-zero value to this attribute will force a rescan of all PCI buses in the system, and re-discover previously removed devices.
/sys/bus/pci/slots/.../module |
Defined on file sysfs-bus-pci
This symbolic link points to the PCI hotplug controller driver module that manages the hotplug slot.
/sys/bus/peci/devices/<controller_id>-<device_addr>/remove |
Defined on file sysfs-bus-peci
Writing a non-zero value to this attribute will remove the PECI device and any of its children.
/sys/bus/peci/rescan |
Defined on file sysfs-bus-peci
Writing a non-zero value to this attribute will initiate scan for PECI devices on all PECI controllers in the system.
/sys/bus/platform/devices/*/frequency |
Defined on file sysfs-platform-brcmstb-memc
DDR PHY frequency in Hz.
/sys/bus/platform/devices/*/srpd |
Defined on file sysfs-platform-brcmstb-memc
Self Refresh Power Down (SRPD) inactivity timeout counted in internal DDR controller clock cycles. Possible values range from 0 (disable inactivity timeout) to 65535 (0xffff).
/sys/bus/platform/devices/*twl4030-usb/vbus |
Defined on file sysfs-platform-twl4030-usb
Read-only status reporting if VBUS (approx 5V) is being supplied by the USB bus.
Possible values: “on”, “off”.
Changes are notified via select/poll.
/sys/bus/platform/devices/.../driver_override |
Defined on file sysfs-bus-platform
This file allows the driver for a device to be specified which will override standard OF, ACPI, ID table, and name matching. When specified, only a driver with a name matching the value written to driver_override will have an opportunity to bind to the device. The override is specified by writing a string to the driver_override file (echo vfio-platform > driver_override) and may be cleared with an empty string (echo > driver_override). This returns the device to standard matching rules binding. Writing to driver_override does not automatically unbind the device from its current driver or make any attempt to automatically load the specified driver. If no driver with a matching name is currently loaded in the kernel, the device will not bind to any driver. This also allows devices to opt-out of driver binding using a driver_override name such as “none”. Only a single driver may be specified in the override, there is no support for parsing delimiters.
/sys/bus/platform/devices/.../modalias |
Defined on file sysfs-bus-platform
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
/sys/bus/platform/devices/.../msi_irqs/ |
Defined on file sysfs-bus-platform
The /sys/devices/.../msi_irqs directory contains a variable set of files, with each file being named after a corresponding msi irq vector allocated to that device.
/sys/bus/platform/devices/.../msi_irqs/<N> |
Defined on file sysfs-bus-platform
This attribute will show “msi” if <N> is a valid msi irq
/sys/bus/platform/devices/.../numa_node |
Defined on file sysfs-bus-platform
This file contains the NUMA node to which the platform device is attached. It won’t be visible if the node is unknown. The value comes from an ACPI _PXM method or a similar firmware source. Initial users for this file would be devices like arm smmu which are populated by arm64 acpi_iort.
/sys/bus/platform/devices/../cfam_reset |
Defined on file sysfs-bus-fsi
Provides a means of resetting the cfam that is attached to the FSI device.
/sys/bus/platform/devices/../fsi-master/fsi0/break |
Defined on file sysfs-bus-fsi
Sends an FSI BREAK command on a master’s communication link to any connected slaves. A BREAK resets connected device’s logic and preps it to receive further commands from the master.
/sys/bus/platform/devices/../fsi-master/fsi0/rescan |
Defined on file sysfs-bus-fsi
Initiates a FSI master scan for all connected slave devices on its links.
/sys/bus/platform/devices/../fsi-master/fsi0/slave@00:00/raw |
Defined on file sysfs-bus-fsi
Provides a means of reading/writing a 32 bit value from/to a specified FSI bus address.
/sys/bus/platform/devices/../fsi-master/fsi0/slave@00:00/term |
Defined on file sysfs-bus-fsi
Sends an FSI terminate command from the master to its connected slave. A terminate resets the slave’s state machines that control access to the internally connected engines. In addition the slave freezes its internal error register for debugging purposes. This command is also needed to abort any ongoing operation in case of an expired ‘Master Time Out’ timer.
/sys/bus/platform/devices/<dev>/always_powered_in_suspend |
Defined on file sysfs-bus-platform-onboard-usb-dev
(RW) Controls whether the USB hub remains always powered during system suspend or not. This attribute is not available for non-hub devices.
/sys/bus/platform/devices/ACPI000E:00/ac_alarm |
Defined on file sysfs-devices-platform-ACPI-TAD
(RW) The AC alarm timer value.
Reads return the current AC alarm timer value in seconds or “disabled”, if the AC alarm is not set to wake up the system.
Write a new AC alarm timer value in seconds or “disabled” to it to set the AC alarm timer or to disable it, respectively.
If the AC alarm timer is set through this attribute and it expires, it will immediately wake up the system from the S3 sleep state (and from S4/S5 too if supported) until its status is explicitly cleared via the ac_status attribute.
/sys/bus/platform/devices/ACPI000E:00/ac_policy |
Defined on file sysfs-devices-platform-ACPI-TAD
(RW) The AC alarm expired timer wake policy (see ACPI 6.2, Section 9.18 for details).
Reads return the current expired timer wake delay for the AC alarm timer or “never”, if the policy is to discard AC timer wakeups if the system is on DC power.
Write a new expired timer wake delay for the AC alarm timer in seconds or “never” to it to set the expired timer wake delay for the AC alarm timer or to set its expired wake policy to discard wakeups if the system is on DC power, respectively.
/sys/bus/platform/devices/ACPI000E:00/ac_status |
Defined on file sysfs-devices-platform-ACPI-TAD
(RW) The AC alarm status.
Reads return a hexadecimal bitmask representing the AC alarm timer status with the following meaning of bits (see ACPI 6.2, Section 9.18.5):
Bit(0): |
The timer has expired if set. |
Bit(1): |
The timer has woken up the system from a sleep state (S3 or S4/S5 if supported) if set. |
The other bits are reserved.
Reads also cause the AC alarm timer status to be reset.
Another way to reset the status of the AC alarm timer is to write (the number) 0 to this file.
If the status return value indicates that the timer has expired, it will immediately wake up the system from the S3 sleep state (and from S4/S5 too if supported) until its status is explicitly cleared through this attribute.
/sys/bus/platform/devices/ACPI000E:00/caps |
Defined on file sysfs-devices-platform-ACPI-TAD
(RO) Hexadecimal bitmask of the TAD attributes are reported by the platform firmware (see ACPI 6.2, section 9.18.2):
BIT(0): |
AC wakeup implemented if set |
BIT(1): |
DC wakeup implemented if set |
BIT(2): |
Get/set real time features implemented if set |
BIT(3): |
Real time accuracy in milliseconds if set |
BIT(4): |
Correct status reported for wakeups from S4/S5 if set |
BIT(5): |
The AC timer wakes up from S4 if set |
BIT(6): |
The AC timer wakes up from S5 if set |
BIT(7): |
The DC timer wakes up from S4 if set |
BIT(8): |
The DC timer wakes up from S5 if set |
The other bits are reserved.
/sys/bus/platform/devices/ACPI000E:00/dc_alarm |
Defined on file sysfs-devices-platform-ACPI-TAD
(RW,optional) The DC alarm timer value.
This attribute is only present if the TAD supports a separate DC timer.
It is analogous to the ac_alarm attribute.
/sys/bus/platform/devices/ACPI000E:00/dc_policy |
Defined on file sysfs-devices-platform-ACPI-TAD
(RW,optional) The DC alarm expired timer wake policy.
This attribute is only present if the TAD supports a separate DC timer.
It is analogous to the ac_policy attribute.
/sys/bus/platform/devices/ACPI000E:00/dc_status |
Defined on file sysfs-devices-platform-ACPI-TAD
(RW,optional) The DC alarm status.
This attribute is only present if the TAD supports a separate DC timer.
It is analogous to the ac_status attribute.
/sys/bus/platform/devices/GGL0001:*/BINF.2 |
Defined on file sysfs-driver-chromeos-acpi
Returns active EC firmware of current boot (boolean).
0 |
Read only (recovery) firmware. |
1 |
Rewritable firmware. |
/sys/bus/platform/devices/GGL0001:*/BINF.3 |
Defined on file sysfs-driver-chromeos-acpi
Returns main firmware type for current boot (integer).
0 |
Recovery. |
1 |
Normal. |
2 |
Developer. |
3 |
Netboot (factory installation only). |
/sys/bus/platform/devices/GGL0001:*/CHSW |
Defined on file sysfs-driver-chromeos-acpi
Returns switch position for Chrome OS specific hardware switches when the firmware is booted (integer).
0 |
No changes. |
2 |
Recovery button was pressed. |
4 |
Recovery button was pressed (EC firmware). |
32 |
Developer switch was enabled. |
512 |
Firmware write protection was disabled. |
/sys/bus/platform/devices/GGL0001:*/FMAP |
Defined on file sysfs-driver-chromeos-acpi
Returns physical memory address of the start of the main processor firmware flashmap.
/sys/bus/platform/devices/GGL0001:*/FRID |
Defined on file sysfs-driver-chromeos-acpi
Returns firmware version for the read-only portion of the main processor firmware.
/sys/bus/platform/devices/GGL0001:*/FWID |
Defined on file sysfs-driver-chromeos-acpi
Returns firmware version for the rewritable portion of the main processor firmware.
/sys/bus/platform/devices/GGL0001:*/GPIO.X/GPIO.0 |
Defined on file sysfs-driver-chromeos-acpi
Returns type of the GPIO signal for the Chrome OS specific GPIO assignments (integer).
1 |
Recovery button. |
2 |
Developer mode switch. |
3 |
Firmware write protection switch. |
256 to 511 |
Debug header GPIO 0 to GPIO 255. |
/sys/bus/platform/devices/GGL0001:*/GPIO.X/GPIO.1 |
Defined on file sysfs-driver-chromeos-acpi
Returns signal attributes of the GPIO signal (integer bitfield).
0 |
Signal is active low. |
1 |
Signal is active high. |
/sys/bus/platform/devices/GGL0001:*/GPIO.X/GPIO.2 |
Defined on file sysfs-driver-chromeos-acpi
Returns the GPIO number on the specified GPIO controller.
/sys/bus/platform/devices/GGL0001:*/GPIO.X/GPIO.3 |
Defined on file sysfs-driver-chromeos-acpi
Returns name of the GPIO controller.
/sys/bus/platform/devices/GGL0001:*/HWID |
Defined on file sysfs-driver-chromeos-acpi
Returns hardware ID for the Chromebook.
/sys/bus/platform/devices/GGL0001:*/MECK |
Defined on file sysfs-driver-chromeos-acpi
Returns the SHA-1 or SHA-256 hash that is read out of the Management Engine extended registers during boot. The hash is exported via ACPI so the OS can verify that the Management Engine firmware has not changed. If Management Engine is not present, or if the firmware was unable to read the extended registers, this buffer size can be zero.
/sys/bus/platform/devices/GGL0001:*/VBNV.0 |
Defined on file sysfs-driver-chromeos-acpi
Returns offset in CMOS bank 0 of the verified boot non-volatile storage block, counting from the first writable CMOS byte (that is, ‘offset = 0’ is the byte following the 14 bytes of clock data).
/sys/bus/platform/devices/GGL0001:*/VBNV.1 |
Defined on file sysfs-driver-chromeos-acpi
Return the size in bytes of the verified boot non-volatile storage block.
/sys/bus/platform/devices/GGL0001:*/VDAT |
Defined on file sysfs-driver-chromeos-acpi
Returns the verified boot data block shared between the firmware verification step and the kernel verification step (hex dump).
/sys/bus/platform/devices/GOOG000C\:00/boot_on_ac |
Defined on file sysfs-platform-wilco-ec
Boot on AC is a policy which makes the device boot from S5 when AC power is connected. This is useful for users who want to run their device headless or with a dock.
Input should be parseable by kstrtou8() to 0 or 1.
/sys/bus/platform/devices/GOOG000C\:00/build_date |
Defined on file sysfs-platform-wilco-ec
Display Wilco Embedded Controller firmware build date. Output will a MM/DD/YY string.
/sys/bus/platform/devices/GOOG000C\:00/build_revision |
Defined on file sysfs-platform-wilco-ec
Display Wilco Embedded Controller build revision. Output will a version string be similar to the example below: d2592cae0
/sys/bus/platform/devices/GOOG000C\:00/model_number |
Defined on file sysfs-platform-wilco-ec
Display Wilco Embedded Controller model number. Output will a version string be similar to the example below: 08B6
/sys/bus/platform/devices/GOOG000C\:00/usb_charge |
Defined on file sysfs-platform-wilco-ec
Control the USB PowerShare Policy. USB PowerShare is a policy which affects charging via the special USB PowerShare port (marked with a small lightning bolt or battery icon) when in low power states:
In S0, the port will always provide power.
In S0ix, if usb_charge is enabled, then power will be supplied to the port when on AC or if battery is > 50%. Else no power is supplied.
In S5, if usb_charge is enabled, then power will be supplied to the port when on AC. Else no power is supplied.
Input should be either “0” or “1”.
/sys/bus/platform/devices/GOOG000C\:00/version |
Defined on file sysfs-platform-wilco-ec
Display Wilco Embedded Controller firmware version. The format of the string is x.y.z. Where x is major, y is minor and z is the build number. For example: 95.00.06
/sys/bus/platform/devices/INT3407:00/dptf_power/adapter_rating_mw |
Defined on file sysfs-platform-dptf
(RO) Adapter rating in milliwatts (the maximum Adapter power). Must be 0 if no AC Adaptor is plugged in.
/sys/bus/platform/devices/INT3407:00/dptf_power/battery_steady_power |
Defined on file sysfs-platform-dptf
(RO) The maximum sustained power for battery in milliwatts.
/sys/bus/platform/devices/INT3407:00/dptf_power/charger_type |
Defined on file sysfs-platform-dptf
(RO) The charger type - Traditional, Hybrid or NVDC.
/sys/bus/platform/devices/INT3407:00/dptf_power/max_platform_power_mw |
Defined on file sysfs-platform-dptf
(RO) Maximum platform power that can be supported by the battery in milliwatts.
/sys/bus/platform/devices/INT3407:00/dptf_power/platform_power_source |
Defined on file sysfs-platform-dptf
(RO) Display the platform power source
bits[3:0] |
Current power source - 0x00 = DC - 0x01 = AC - 0x02 = USB - 0x03 = Wireless Charger |
bits[7:4] |
Power source sequence number |
/sys/bus/platform/devices/INT3407:00/dptf_power/prochot_confirm |
Defined on file sysfs-platform-dptf
(WO) Confirm embedded controller about a prochot notification.
/sys/bus/platform/devices/INT3407:00/dptf_power/rest_of_platform_power_mw |
Defined on file sysfs-platform-dptf
(RO) Shows the rest (outside of SoC) of worst-case platform power.
/sys/bus/platform/devices/INT3532:00/dptf_battery/current_discharge_capbility_ma |
Defined on file sysfs-platform-dptf
(RO) The battery discharge current capability obtained from battery fuel gauge in milli Amps.
/sys/bus/platform/devices/INT3532:00/dptf_battery/high_freq_impedance_mohm |
Defined on file sysfs-platform-dptf
(RO) The high frequency impedance value that can be obtained from battery fuel gauge in milli Ohms.
/sys/bus/platform/devices/INT3532:00/dptf_battery/max_platform_power_mw |
Defined on file sysfs-platform-dptf
(RO) The maximum platform power that can be supported by the battery in milli watts.
/sys/bus/platform/devices/INT3532:00/dptf_battery/max_steady_state_power_mw |
Defined on file sysfs-platform-dptf
(RO) The maximum sustained power for battery in milli watts.
/sys/bus/platform/devices/INT3532:00/dptf_battery/no_load_voltage_mv |
Defined on file sysfs-platform-dptf
(RO) The no-load voltage that can be obtained from battery fuel gauge in milli volts.
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/fivr_switching_fault_status |
Defined on file sysfs-platform-dptf
(RO) Read the FIVR switching frequency control fault status.
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/fivr_switching_freq_mhz |
Defined on file sysfs-platform-dptf
(RO) Get the FIVR switching control frequency in MHz.
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/freq_mhz_high_clock |
Defined on file sysfs-platform-dptf
(RW) The PCH FIVR (Fully Integrated Voltage Regulator) switching frequency in MHz, when FIVR clock is 38.4MHz.
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/freq_mhz_low_clock |
Defined on file sysfs-platform-dptf
(RW) The PCH FIVR (Fully Integrated Voltage Regulator) switching frequency in MHz, when FIVR clock is 19.2MHz or 24MHz.
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/ssc_clock_info |
Defined on file sysfs-platform-dptf
(RO) Presents SSC (spread spectrum clock) information for EMI (Electro magnetic interference) control. This is a bit mask.
Bits |
Description |
---|---|
[7:0] |
Sets clock spectrum spread percentage: 0x00=0.2% , 0x3F=10% 1 LSB = 0.1% increase in spread (for settings 0x01 thru 0x1C) 1 LSB = 0.2% increase in spread (for settings 0x1E thru 0x3F) |
[8] |
When set to 1, enables spread spectrum clock |
[9] |
0: Triangle mode. FFC frequency walks around the Fcenter in a linear fashion 1: Random walk mode. FFC frequency changes randomly within the SSC (Spread spectrum clock) range |
[10] |
0: No white noise. 1: Add white noise to spread waveform |
[11] |
When 1, future writes are ignored. |
/sys/bus/platform/devices/INTC1092:00/intc_data |
Defined on file sysfs-driver-intc_sar
This sysfs entry is used to retrieve Dynamic SAR information emitted/maintained by a BIOS that supports Dynamic SAR.
The retrieved information is in the order given below: - device_mode - bandtable_index - antennatable_index - sartable_index
The above information is sent as integer values separated by a single space. This information can then be pushed to a WWAN modem that uses this to control the transmit signal level using the Band/Antenna/SAR table index information. These parameters are derived/decided by aggregating device-mode like laptop/tablet/clamshell etc. and the proximity-sensor data available to the embedded controller on given host. The regulatory mode configured on Dynamic SAR driver also influences these values.
The userspace applications can poll for changes to this file using POLLPRI event on file-descriptor (fd) obtained by opening this sysfs entry. Application can then read this information from the sysfs node and consume the given information.
/sys/bus/platform/devices/INTC1092:00/intc_reg |
Defined on file sysfs-driver-intc_sar
Specific Absorption Rate (SAR) regulatory mode is typically derived based on information like mcc (Mobile Country Code) and mnc (Mobile Network Code) that is available for the currently attached LTE network. A userspace application is required to set the current SAR regulatory mode on the Dynamic SAR driver using this sysfs node. Such an application can also read back using this sysfs node, the currently configured regulatory mode value from the Dynamic SAR driver.
- Acceptable regulatory modes are:
0
FCC
1
CE
2
ISED
The regulatory mode value has one of the above values.
The default regulatory mode used in the driver is 0.
/sys/bus/platform/devices/MLNXBF04:00/bootfifo |
Defined on file sysfs-platform-mellanox-bootctl
The file used to access the BlueField boot fifo.
/sys/bus/platform/devices/MLNXBF04:00/lifecycle_state |
Defined on file sysfs-platform-mellanox-bootctl
The Life-cycle state of the SoC, which could be one of the following values.
Production |
Production state and can be updated to secure |
GA Secured |
Secure chip and not able to change state |
GA Non-Secured |
Non-Secure chip and not able to change state |
RMA |
Return Merchandise Authorization |
/sys/bus/platform/devices/MLNXBF04:00/mfg_lock |
Defined on file sysfs-platform-mellanox-bootctl
The “mfg_lock” sysfs attribute is write-only. A successful write to this attribute will latch the board-level attributes into EEPROM, making them read-only.
/sys/bus/platform/devices/MLNXBF04:00/modl |
Defined on file sysfs-platform-mellanox-bootctl
The “modl” sysfs attribute holds the board’s model number. This value is provided on a board-level label.
/sys/bus/platform/devices/MLNXBF04:00/oob_mac |
Defined on file sysfs-platform-mellanox-bootctl
The “oob_mac” sysfs attribute holds the MAC address for the out-of-band 1Gbps Ethernet port. This MAC address is provided on a board-level label.
/sys/bus/platform/devices/MLNXBF04:00/opn |
Defined on file sysfs-platform-mellanox-bootctl
The “opn” sysfs attribute holds the board’s part number. This value is provided on a board-level label.
/sys/bus/platform/devices/MLNXBF04:00/post_reset_wdog |
Defined on file sysfs-platform-mellanox-bootctl
The watchdog setting in seconds for the next booting. It’s used to reboot the chip and recover it to the old state if the new boot partition fails.
/sys/bus/platform/devices/MLNXBF04:00/reset_action |
Defined on file sysfs-platform-mellanox-bootctl
The source of the boot stream for the next reset. It could be one of the following values:
external |
boot from external source (USB or PCIe) |
emmc |
boot from the onchip eMMC |
emmc_legacy |
boot from the onchip eMMC in legacy (slow) mode |
/sys/bus/platform/devices/MLNXBF04:00/rev |
Defined on file sysfs-platform-mellanox-bootctl
The “rev” sysfs attribute holds the board’s revision. This value is provided on a board-level label.
/sys/bus/platform/devices/MLNXBF04:00/rsh_log |
Defined on file sysfs-platform-mellanox-bootctl
The file used to write BlueField boot log with the format “[INFO|WARN|ERR|ASSERT ]<msg>”. Log level ‘INFO’ is used by default if not specified.
/sys/bus/platform/devices/MLNXBF04:00/second_reset_action |
Defined on file sysfs-platform-mellanox-bootctl
Update the source of the boot stream after next reset. It could be one of the following values and will be applied after next reset.
external |
boot from external source (USB or PCIe) |
emmc |
boot from the onchip eMMC |
emmc_legacy |
boot from the onchip eMMC in legacy (slow) mode |
swap_emmc |
swap the primary / secondary boot partition |
none |
cancel the action |
/sys/bus/platform/devices/MLNXBF04:00/secure_boot_fuse_state |
Defined on file sysfs-platform-mellanox-bootctl
The state of eFuse versions with the following values.
InUse |
burnt, valid and currently in use |
Used |
burnt and valid |
Free |
not burnt and free to use |
Skipped |
not burnt but not free (skipped) |
Wasted |
burnt and invalid |
Invalid |
not burnt but marked as valid (error state). |
/sys/bus/platform/devices/MLNXBF04:00/sku |
Defined on file sysfs-platform-mellanox-bootctl
The “sku” sysfs attribute holds the board’s SKU number. This value is provided on a board-level label.
/sys/bus/platform/devices/MLNXBF04:00/sn |
Defined on file sysfs-platform-mellanox-bootctl
The “sn” sysfs attribute holds the board’s serial number. This value is provided on a board-level label.
/sys/bus/platform/devices/MLNXBF04:00/uuid |
Defined on file sysfs-platform-mellanox-bootctl
The “uuid” sysfs attribute holds the board’s UUID. This value is provided by the manufacturing team.
/sys/bus/platform/devices/VPC2004:*/camera_power |
Defined on file sysfs-platform-ideapad-laptop
Control the power of camera module. 1 means on, 0 means off.
/sys/bus/platform/devices/VPC2004:*/conservation_mode |
Defined on file sysfs-platform-ideapad-laptop
Controls whether the conservation mode is enabled or not. This feature limits the maximum battery charge percentage to around 50-60% in order to prolong the lifetime of the battery.
/sys/bus/platform/devices/VPC2004:*/fan_mode |
Defined on file sysfs-platform-ideapad-laptop
Change fan mode There are four available modes:
0 -> Super Silent Mode
1 -> Standard Mode
2 -> Dust Cleaning
4 -> Efficient Thermal Dissipation Mode
/sys/bus/platform/devices/VPC2004:*/fn_lock |
Defined on file sysfs-platform-ideapad-laptop
Control fn-lock mode.
1 -> Switched On
0 -> Switched Off
For example:
# echo "0" > \
/sys/bus/pci/devices/0000:00:1f.0/PNP0C09:00/VPC2004:00/fn_lock
/sys/bus/platform/devices/VPC2004:*/touchpad |
Defined on file sysfs-platform-ideapad-laptop
- Control touchpad mode.
1 -> Switched On
0 -> Switched Off
/sys/bus/platform/devices/VPC2004:*/usb_charging |
Defined on file sysfs-platform-ideapad-laptop
Controls whether the “always on USB charging” feature is enabled or not. This feature enables charging USB devices even if the computer is not turned on.
/sys/bus/platform/devices/[..]/fsi-master-gpio/external_mode |
Defined on file sysfs-driver-fsi-master-gpio
Controls access arbitration for GPIO-based FSI master. A value of 0 (the default) sets normal mode, where the driver performs FSI bus transactions, 1 sets external mode, where the FSI bus is driven externally (for example, by a debug device).
/sys/bus/platform/devices/ci_hdrc.0/inputs/a_bus_drop |
Defined on file sysfs-platform-chipidea-usb-otg
Can be set and read The a_bus_drop(A-device bus drop) input is 1 when the application running on the A-device wants to power down the bus, and is 0 otherwise, When a_bus_drop is 1, then the a_bus_req shall be 0.
Valid values are “1” and “0”.
- Reading: returns 1 if the bus is off(vbus is turned off) by
A-device, otherwise 0.
/sys/bus/platform/devices/ci_hdrc.0/inputs/a_bus_req |
Defined on file sysfs-platform-chipidea-usb-otg
Can be set and read. Set a_bus_req(A-device bus request) input to be 1 if the application running on the A-device wants to use the bus, and to be 0 when the application no longer wants to use the bus(or wants to work as peripheral). a_bus_req can also be set to 1 by kernel in response to remote wakeup signaling from the B-device, the A-device should decide to resume the bus.
Valid values are “1” and “0”.
Reading: returns 1 if the application running on the A-device is using the bus as host role, otherwise 0.
/sys/bus/platform/devices/ci_hdrc.0/inputs/a_clr_err |
Defined on file sysfs-platform-chipidea-usb-otg
Only can be set. The a_clr_err(A-device Vbus error clear) input is used to clear vbus error, then A-device will power down the bus.
Valid value is “1”
/sys/bus/platform/devices/ci_hdrc.0/inputs/b_bus_req |
Defined on file sysfs-platform-chipidea-usb-otg
Can be set and read. The b_bus_req(B-device bus request) input is 1 during the time that the application running on the B-device wants to use the bus as host, and is 0 when the application no longer wants to work as host and decides to switch back to be peripheral.
Valid values are “1” and “0”.
Reading: returns if the application running on the B device is using the bus as host role, otherwise 0.
/sys/bus/platform/devices/ci_hdrc.0/role |
Defined on file sysfs-platform-chipidea-usb2
When read, it returns string “gadget” or “host”, indicating the current controller role.
It will do role switch when “gadget” or “host” is written to it. Only controller at dual-role configuration supports writing.
/sys/bus/platform/devices/dfl-fme.0/bitstream_id |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns Bitstream (static FPGA region) identifier number, which includes the detailed version and other information of this static FPGA region.
/sys/bus/platform/devices/dfl-fme.0/bitstream_metadata |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns Bitstream (static FPGA region) meta data, which includes the synthesis date, seed and other information of this static FPGA region.
/sys/bus/platform/devices/dfl-fme.0/cache_size |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns cache size of this FPGA device.
/sys/bus/platform/devices/dfl-fme.0/errors/catfatal_errors |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns catastrophic and fatal errors detected.
/sys/bus/platform/devices/dfl-fme.0/errors/first_error |
Defined on file sysfs-platform-dfl-fme
Read-only. Read this file to get the first error detected by hardware.
/sys/bus/platform/devices/dfl-fme.0/errors/fme_errors |
Defined on file sysfs-platform-dfl-fme
Read-Write. Read this file to get errors detected on FME. Write this file to clear errors logged in fme_errors. Write fails with -EINVAL if input parsing fails or input error code doesn’t match.
/sys/bus/platform/devices/dfl-fme.0/errors/inject_errors |
Defined on file sysfs-platform-dfl-fme
Read-Write. Read this file to check errors injected. Write this file to inject errors for testing purpose. Write fails with -EINVAL if input parsing fails or input inject error code isn’t supported.
/sys/bus/platform/devices/dfl-fme.0/errors/next_error |
Defined on file sysfs-platform-dfl-fme
Read-only. Read this file to get the second error detected by hardware.
/sys/bus/platform/devices/dfl-fme.0/errors/nonfatal_errors |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns non-fatal errors detected.
/sys/bus/platform/devices/dfl-fme.0/errors/pcie0_errors |
Defined on file sysfs-platform-dfl-fme
Read-Write. Read this file for errors detected on pcie0 link. Write this file to clear errors logged in pcie0_errors. Write fails with -EINVAL if input parsing fails or input error code doesn’t match.
/sys/bus/platform/devices/dfl-fme.0/errors/pcie1_errors |
Defined on file sysfs-platform-dfl-fme
Read-Write. Read this file for errors detected on pcie1 link. Write this file to clear errors logged in pcie1_errors. Write fails with -EINVAL if input parsing fails or input error code doesn’t match.
/sys/bus/platform/devices/dfl-fme.0/fabric_version |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns fabric version of this FPGA device. Userspace applications need this information to select best data channels per different fabric design.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/name |
Defined on file sysfs-platform-dfl-fme
Read-Only. Read this file to get the name of hwmon device, it supports values:
‘dfl_fme_thermal’ |
thermal hwmon device name |
‘dfl_fme_power’ |
power hwmon device name |
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_crit |
Defined on file sysfs-platform-dfl-fme
Read-Write. Read this file to get current hardware power threshold2 in uW. If power consumption rises at or above this threshold, hardware starts 90% throttling. Write this file to set current hardware power threshold2 in uW. As hardware only accepts values in Watts, so input value will be round down per Watts (< 1 watts part will be discarded) and clamped within the range from 0 to 127 Watts. Write fails with -EINVAL if input parsing fails.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_crit_alarm |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns 1 if power consumption is currently at or above hardware threshold2 (see ‘power1_crit’), otherwise 0.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_fpga_limit |
Defined on file sysfs-platform-dfl-fme
Read-Only. It returns power limit for FPGA in uW.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_input |
Defined on file sysfs-platform-dfl-fme
Read-Only. It returns current FPGA power consumption in uW.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_ltr |
Defined on file sysfs-platform-dfl-fme
Read-only. Read this file to get current Latency Tolerance Reporting (ltr) value. It returns 1 if all Accelerated Function Units (AFUs) can tolerate latency >= 40us for memory access or 0 if any AFU is latency sensitive (< 40us).
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_max |
Defined on file sysfs-platform-dfl-fme
Read-Write. Read this file to get current hardware power threshold1 in uW. If power consumption rises at or above this threshold, hardware starts 50% throttling. Write this file to set current hardware power threshold1 in uW. As hardware only accepts values in Watts, so input value will be round down per Watts (< 1 watts part will be discarded) and clamped within the range from 0 to 127 Watts. Write fails with -EINVAL if input parsing fails.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_max_alarm |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns 1 if power consumption is currently at or above hardware threshold1 (see ‘power1_max’), otherwise 0.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_xeon_limit |
Defined on file sysfs-platform-dfl-fme
Read-Only. It returns power limit for XEON in uW.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_crit |
Defined on file sysfs-platform-dfl-fme
Read-Only. It returns hardware threshold2 temperature in millidegrees Celsius. If temperature rises at or above this threshold, hardware starts 100% throttling.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_crit_alarm |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns 1 if temperature is currently at or above hardware threshold2 (see ‘temp1_crit’), otherwise 0.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_emergency |
Defined on file sysfs-platform-dfl-fme
Read-Only. It returns hardware trip threshold temperature in millidegrees Celsius. If temperature rises at or above this threshold, a fatal event will be triggered to board management controller (BMC) to shutdown FPGA.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_input |
Defined on file sysfs-platform-dfl-fme
Read-Only. It returns FPGA device temperature in millidegrees Celsius.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_max |
Defined on file sysfs-platform-dfl-fme
Read-Only. It returns hardware threshold1 temperature in millidegrees Celsius. If temperature rises at or above this threshold, hardware starts 50% or 90% throttling (see ‘temp1_max_policy’).
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_max_alarm |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns 1 if temperature is currently at or above hardware threshold1 (see ‘temp1_max’), otherwise 0.
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_max_policy |
Defined on file sysfs-platform-dfl-fme
Read-Only. Read this file to get the policy of hardware threshold1 (see ‘temp1_max’). It only supports two values (policies):
0 |
AP2 state (90% throttling) |
1 |
AP1 state (50% throttling) |
/sys/bus/platform/devices/dfl-fme.0/ports_num |
Defined on file sysfs-platform-dfl-fme
Read-only. One DFL FPGA device may have more than 1 port/Accelerator Function Unit (AFU). It returns the number of ports on the FPGA device when read it.
/sys/bus/platform/devices/dfl-fme.0/socket_id |
Defined on file sysfs-platform-dfl-fme
Read-only. It returns socket_id to indicate which socket this FPGA belongs to, only valid for integrated solution. User only needs this information, in case standard numa node can’t provide correct information.
/sys/bus/platform/devices/dfl-port.0/afu_id |
Defined on file sysfs-platform-dfl-port
Read-only. User can program different PR bitstreams to FPGA Accelerator Function Unit (AFU) for different functions. It returns uuid which could be used to identify which PR bitstream is programmed in this AFU.
/sys/bus/platform/devices/dfl-port.0/ap1_event |
Defined on file sysfs-platform-dfl-port
Read-write. Read this file for AP1 (AFU Power State 1) event. It’s used to indicate transient AP1 state. Write 1 to this file to clear AP1 event.
/sys/bus/platform/devices/dfl-port.0/ap2_event |
Defined on file sysfs-platform-dfl-port
Read-write. Read this file for AP2 (AFU Power State 2) event. It’s used to indicate transient AP2 state. Write 1 to this file to clear AP2 event.
/sys/bus/platform/devices/dfl-port.0/errors/errors |
Defined on file sysfs-platform-dfl-port
Read-Write. Read this file to get errors detected on port and Accelerated Function Unit (AFU). Write error code to this file to clear errors. Write fails with -EINVAL if input parsing fails or input error code doesn’t match. Write fails with -EBUSY or -ETIMEDOUT if error can’t be cleared as hardware in low power state (-EBUSY) or not respoding (-ETIMEDOUT).
/sys/bus/platform/devices/dfl-port.0/errors/first_error |
Defined on file sysfs-platform-dfl-port
Read-only. Read this file to get the first error detected by hardware.
/sys/bus/platform/devices/dfl-port.0/errors/first_malformed_req |
Defined on file sysfs-platform-dfl-port
Read-only. Read this file to get the first malformed request captured by hardware.
/sys/bus/platform/devices/dfl-port.0/id |
Defined on file sysfs-platform-dfl-port
Read-only. It returns id of this port. One DFL FPGA device may have more than one port. Userspace could use this id to distinguish different ports under same FPGA device.
/sys/bus/platform/devices/dfl-port.0/ltr |
Defined on file sysfs-platform-dfl-port
Read-write. Read or set AFU latency tolerance reporting value. Set ltr to 1 if the AFU can tolerate latency >= 40us or set it to 0 if it is latency sensitive.
/sys/bus/platform/devices/dfl-port.0/power_state |
Defined on file sysfs-platform-dfl-port
Read-only. It reports the APx (AFU Power) state, different APx means different throttling level. When reading this file, it returns “0” - Normal / “1” - AP1 / “2” - AP2 / “6” - AP6.
/sys/bus/platform/devices/dfl-port.0/userclk_freqcmd |
Defined on file sysfs-platform-dfl-port
Write-only. User writes command to this interface to set userclock to AFU.
/sys/bus/platform/devices/dfl-port.0/userclk_freqcntrcmd |
Defined on file sysfs-platform-dfl-port
Write-only. User writes command to this interface to set userclock counter.
/sys/bus/platform/devices/dfl-port.0/userclk_freqcntrsts |
Defined on file sysfs-platform-dfl-port
Read-only. Read this file to get the status of issued command to userclck_freqcntrcmd.
/sys/bus/platform/devices/dfl-port.0/userclk_freqsts |
Defined on file sysfs-platform-dfl-port
Read-only. Read this file to get the status of issued command to userclck_freqcmd.
/sys/bus/platform/devices/occ-hwmon.X/ffdc |
Defined on file sysfs-bus-platform-devices-occ-hwmon
Contains the First Failure Data Capture from the SBEFIFO hardware, if there is any from a previous transfer. Otherwise, the file is empty. The data is cleared when it’s been completely read by a user. As the name suggests, only the data from the first error is saved, until it’s cleared upon read. The OCC hwmon driver, running on a Baseboard Management Controller (BMC), communicates with POWER9 and up processors over the Self-Boot Engine (SBE) FIFO. In many error conditions, the SBEFIFO will return error data indicating the type of error and system state, etc.
/sys/bus/platform/devices/smpro-errmon.*/[error|warn]_[smpro|pmpro] |
Defined on file sysfs-bus-platform-devices-ampere-smpro
(RO) Contains the internal firmware error/warning printed as hex format.
The detail of each sysfs entries is as below:
Error |
Sysfs entry |
Description |
SMpro error |
/sys/bus/platform/devices/smpro-errmon.*/error_smpro |
system has SMpro error |
SMpro warning |
/sys/bus/platform/devices/smpro-errmon.*/warn_smpro |
system has SMpro warning |
PMpro error |
/sys/bus/platform/devices/smpro-errmon.*/error_pmpro |
system has PMpro error |
PMpro warning |
/sys/bus/platform/devices/smpro-errmon.*/warn_pmpro |
system has PMpro warning |
For details, see section 5.10 RAS Internal Error Register Definitions, Altra Family Soc BMC Interface Specification.
/sys/bus/platform/devices/smpro-errmon.*/error_[core|mem|pcie|other]_[ce|ue] |
Defined on file sysfs-bus-platform-devices-ampere-smpro
(RO) Contains the 48-byte Ampere (Vendor-Specific) Error Record printed in hex format according to the table below:
Offset |
Field |
Size (byte) |
Description |
00 |
Error Type |
1 |
See the table below for details |
01 |
Subtype |
1 |
See the table below for details |
02 |
Instance |
2 |
See the table below for details |
04 |
Error status |
4 |
See ARM RAS specification for details |
08 |
Error Address |
8 |
See ARM RAS specification for details |
16 |
Error Misc 0 |
8 |
See ARM RAS specification for details |
24 |
Error Misc 1 |
8 |
See ARM RAS specification for details |
32 |
Error Misc 2 |
8 |
See ARM RAS specification for details |
40 |
Error Misc 3 |
8 |
See ARM RAS specification for details |
The table below defines the value of error types, their subtype, subcomponent and instance:
Error Group |
Error Type |
Sub type |
Sub component |
Instance |
CPM (core) |
0 |
0 |
Snoop-Logic |
CPM # |
CPM (core) |
0 |
2 |
Armv8 Core 1 |
CPM # |
MCU (mem) |
1 |
1 |
ERR1 |
MCU # | SLOT << 11 |
MCU (mem) |
1 |
2 |
ERR2 |
MCU # | SLOT << 11 |
MCU (mem) |
1 |
3 |
ERR3 |
MCU # |
MCU (mem) |
1 |
4 |
ERR4 |
MCU # |
MCU (mem) |
1 |
5 |
ERR5 |
MCU # |
MCU (mem) |
1 |
6 |
ERR6 |
MCU # |
MCU (mem) |
1 |
7 |
Link Error |
MCU # |
Mesh (other) |
2 |
0 |
Cross Point |
X | (Y << 5) | NS <<11 |
Mesh (other) |
2 |
1 |
Home Node(IO) |
X | (Y << 5) | NS <<11 |
Mesh (other) |
2 |
2 |
Home Node(Mem) |
X | (Y << 5) | NS <<11 | device<<12 |
Mesh (other) |
2 |
4 |
CCIX Node |
X | (Y << 5) | NS <<11 |
2P Link (other) |
3 |
0 |
N/A |
Altra 2P Link # |
GIC (other) |
5 |
0 |
ERR0 |
0 |
GIC (other) |
5 |
1 |
ERR1 |
0 |
GIC (other) |
5 |
2 |
ERR2 |
0 |
GIC (other) |
5 |
3 |
ERR3 |
0 |
GIC (other) |
5 |
4 |
ERR4 |
0 |
GIC (other) |
5 |
5 |
ERR5 |
0 |
GIC (other) |
5 |
6 |
ERR6 |
0 |
GIC (other) |
5 |
7 |
ERR7 |
0 |
GIC (other) |
5 |
8 |
ERR8 |
0 |
GIC (other) |
5 |
9 |
ERR9 |
0 |
GIC (other) |
5 |
10 |
ERR10 |
0 |
GIC (other) |
5 |
11 |
ERR11 |
0 |
GIC (other) |
5 |
12 |
ERR12 |
0 |
GIC (other) |
5 |
13-21 |
ERR13 |
RC # + 1 |
SMMU (other) |
6 |
TCU |
100 |
RC # |
SMMU (other) |
6 |
TBU0 |
0 |
RC # |
SMMU (other) |
6 |
TBU1 |
1 |
RC # |
SMMU (other) |
6 |
TBU2 |
2 |
RC # |
SMMU (other) |
6 |
TBU3 |
3 |
RC # |
SMMU (other) |
6 |
TBU4 |
4 |
RC # |
SMMU (other) |
6 |
TBU5 |
5 |
RC # |
SMMU (other) |
6 |
TBU6 |
6 |
RC # |
SMMU (other) |
6 |
TBU7 |
7 |
RC # |
SMMU (other) |
6 |
TBU8 |
8 |
RC # |
SMMU (other) |
6 |
TBU9 |
9 |
RC # |
PCIe AER (pcie) |
7 |
Root |
0 |
RC # |
PCIe AER (pcie) |
7 |
Device |
1 |
RC # |
PCIe RC (pcie) |
8 |
RCA HB |
0 |
RC # |
PCIe RC (pcie) |
8 |
RCB HB |
1 |
RC # |
PCIe RC (pcie) |
8 |
RASDP |
8 |
RC # |
OCM (other) |
9 |
ERR0 |
0 |
0 |
OCM (other) |
9 |
ERR1 |
1 |
0 |
OCM (other) |
9 |
ERR2 |
2 |
0 |
SMpro (other) |
10 |
ERR0 |
0 |
0 |
SMpro (other) |
10 |
ERR1 |
1 |
0 |
SMpro (other) |
10 |
MPA_ERR |
2 |
0 |
PMpro (other) |
11 |
ERR0 |
0 |
0 |
PMpro (other) |
11 |
ERR1 |
1 |
0 |
PMpro (other) |
11 |
MPA_ERR |
2 |
0 |
Example:
# cat error_other_ue
880807001e004010401040101500000001004010401040100c0000000000000000000000000000000000000000000000
The detail of each sysfs entries is as below:
Error |
Sysfs entry |
Description (when triggered) |
Core’s CE |
/sys/bus/platform/devices/smpro-errmon.*/error_core_ce |
Core has CE error |
Core’s UE |
/sys/bus/platform/devices/smpro-errmon.*/error_core_ue |
Core has UE error |
Memory’s CE |
/sys/bus/platform/devices/smpro-errmon.*/error_mem_ce |
Memory has CE error |
Memory’s UE |
/sys/bus/platform/devices/smpro-errmon.*/error_mem_ue |
Memory has UE error |
PCIe’s CE |
/sys/bus/platform/devices/smpro-errmon.*/error_pcie_ce |
any PCIe controller has CE error |
PCIe’s UE |
/sys/bus/platform/devices/smpro-errmon.*/error_pcie_ue |
any PCIe controller has UE error |
Other’s CE |
/sys/bus/platform/devices/smpro-errmon.*/error_other_ce |
any other CE error |
Other’s UE |
/sys/bus/platform/devices/smpro-errmon.*/error_other_ue |
any other UE error |
UE: Uncorrect-able Error CE: Correct-able Error
For details, see section 3.3 Ampere (Vendor-Specific) Error Record Formats, Altra Family RAS Supplement.
/sys/bus/platform/devices/smpro-errmon.*/event_[vrd_warn_fault|vrd_hot|dimm_hot|dimm_2x_refresh] |
Defined on file sysfs-bus-platform-devices-ampere-smpro
(RO) Contains the detail information in case of VRD/DIMM warning/hot events in hex format as below:
AAAA
where:
AAAA
: The event detail information data
The detail of each sysfs entries is as below:
Event |
Sysfs entry |
Description |
VRD HOT |
/sys/bus/platform/devices/smpro-errmon.*/event_vrd_hot |
VRD Hot |
VR Warn/Fault |
/sys/bus/platform/devices/smpro-errmon.*/event_vrd_warn_fault |
VR Warning or Fault |
DIMM HOT |
/sys/bus/platform/devices/smpro-errmon.*/event_dimm_hot |
DIMM Hot |
DIMM 2X REFRESH RATE |
/sys/bus/platform/devices/smpro-errmon.*/event_dimm_2x_refresh |
DIMM 2x refresh rate event in high temp |
For more details, see section 5.7 GPI Status Registers and 5.9 Memory Error Register Definitions, Altra Family Soc BMC Interface Specification.
/sys/bus/platform/devices/smpro-errmon.*/event_dimm[0-15]_syndrome |
Defined on file sysfs-bus-platform-devices-ampere-smpro
(RO) The sysfs returns the 2-byte DIMM failure syndrome data for slot 0-15 if it failed to initialize.
For more details, see section 5.11 Boot Stage Register Definitions, Altra Family Soc BMC Interface Specification.
/sys/bus/platform/devices/smpro-errmon.*/overflow_[core|mem|pcie|other]_[ce|ue] |
Defined on file sysfs-bus-platform-devices-ampere-smpro
(RO) Return the overflow status of each type HW error reported:
0 : No overflow
1 : There is an overflow and the oldest HW errors are dropped
The detail of each sysfs entries is as below:
Overflow |
Sysfs entry |
Description |
Core’s CE |
/sys/bus/platform/devices/smpro-errmon.*/overflow_core_ce |
Core CE error overflow |
Core’s UE |
/sys/bus/platform/devices/smpro-errmon.*/overflow_core_ue |
Core UE error overflow |
Memory’s CE |
/sys/bus/platform/devices/smpro-errmon.*/overflow_mem_ce |
Memory CE error overflow |
Memory’s UE |
/sys/bus/platform/devices/smpro-errmon.*/overflow_mem_ue |
Memory UE error overflow |
PCIe’s CE |
/sys/bus/platform/devices/smpro-errmon.*/overflow_pcie_ce |
any PCIe controller CE error overflow |
PCIe’s UE |
/sys/bus/platform/devices/smpro-errmon.*/overflow_pcie_ue |
any PCIe controller UE error overflow |
Other’s CE |
/sys/bus/platform/devices/smpro-errmon.*/overflow_other_ce |
any other CE error overflow |
Other’s UE |
/sys/bus/platform/devices/smpro-errmon.*/overflow_other_ue |
other UE error overflow |
where:
UE: Uncorrect-able Error
CE: Correct-able Error
/sys/bus/platform/devices/smpro-misc*/soc_power_limit |
Defined on file sysfs-bus-platform-devices-ampere-smpro
(RW) Contains the desired SoC power limit in Watt. Writes to this sysfs set the desired SoC power limit (W). Reads from this register return the current SoC power limit (W). The value ranges:
Minimum: 120 W
Maximum: Socket TDP power
/sys/bus/platform/devices/smpro-misc.*/boot_progress |
Defined on file sysfs-bus-platform-devices-ampere-smpro
(RO) Contains the boot stages information in hex as format below:
AABBCCCCCCCC
where:
AA
: The boot stages
00: SMpro firmware booting
01: PMpro firmware booting
02: ATF BL1 firmware booting
03: DDR initialization
04: DDR training report status
05: ATF BL2 firmware booting
06: ATF BL31 firmware booting
07: ATF BL32 firmware booting
08: UEFI firmware booting
09: OS booting
BB
: Boot status
00: Not started
01: Started
02: Completed without error
03: Failed.
CCCCCCCC
: Boot status information defined for each boot stages
For details, see section 5.11 Boot Stage Register Definitions and section 6. Processor Boot Progress Codes, Altra Family Soc BMC Interface Specification.
/sys/bus/platform/devices/tahvo-usb/otg_mode |
Defined on file sysfs-platform-tahvo-usb
Set or read the current OTG mode. Valid values are “host” and “peripheral”.
Reading: returns the current mode.
/sys/bus/platform/devices/tahvo-usb/vbus |
Defined on file sysfs-platform-tahvo-usb
Read the current VBUS state.
Reading: returns “on” or “off”.
/sys/bus/platform/drivers/amd_pmc/*/smu_fw_version |
Defined on file sysfs-amd-pmc
Reading this file reports the version of the firmware loaded to System Management Unit (SMU) contained in AMD CPUs and APUs.
/sys/bus/platform/drivers/amd_pmc/*/smu_program |
Defined on file sysfs-amd-pmc
Reading this file reports the program corresponding to the SMU firmware version. The program field is used to disambiguate two APU/CPU models that can share the same firmware binary.
/sys/bus/platform/drivers/amd_x3d_vcache/AMDI0101:00/amd_x3d_mode |
Defined on file sysfs-bus-platform-drivers-amd_x3d_vcache
(RW) AMD 3D V-Cache optimizer allows users to switch CPU core rankings dynamically.
This file switches between these two modes: - “frequency” cores within the faster CCD are prioritized before those in the slower CCD. - “cache” cores within the larger L3 CCD are prioritized before those in the smaller L3 CCD.
/sys/bus/platform/drivers/aspeed-uart-routing/\*/io\* |
Defined on file sysfs-driver-aspeed-uart-routing
Selects the RX source of IOx serial port. The current selection will be marked by brackets “[]”.
Users: OpenBMC. Proposed changes should be mailed to openbmc@lists.ozlabs.org
/sys/bus/platform/drivers/aspeed-uart-routing/\*/uart\* |
Defined on file sysfs-driver-aspeed-uart-routing
Selects the RX source of the UARTx device.
When read, each file shows the list of available options with currently selected option marked by brackets “[]”. The list of available options depends on the selected file.
e.g. cat /sys/bus/platform/drivers/aspeed-uart-routing/*.uart_routing/uart1 [io1] io2 io3 io4 uart2 uart3 uart4 io6
In this case, UART1 gets its input from IO1 (physical serial port 1).
Users: OpenBMC. Proposed changes should be mailed to openbmc@lists.ozlabs.org
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/bmc_canceled_csks |
Defined on file sysfs-driver-intel-m10-bmc-sec-update
Read only. Returns a list of indices for canceled code signing keys for the BMC. The standard bitmap list format is used (e.g. “1,2-6,9”).
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/bmc_root_entry_hash |
Defined on file sysfs-driver-intel-m10-bmc-sec-update
Read only. Returns the root entry hash for the BMC image if one is programmed, else it returns the string: “hash not programmed”. This file is only visible if the underlying device supports it. Format: string.
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/flash_count |
Defined on file sysfs-driver-intel-m10-bmc-sec-update
Read only. Returns number of times the secure update staging area has been flashed. Format: “%u”.
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/pr_canceled_csks |
Defined on file sysfs-driver-intel-m10-bmc-sec-update
Read only. Returns a list of indices for canceled code signing keys for the partial reconfiguration region. The standard bitmap list format is used (e.g. “1,2-6,9”).
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/pr_root_entry_hash |
Defined on file sysfs-driver-intel-m10-bmc-sec-update
Read only. Returns the root entry hash for the partial reconfiguration region if one is programmed, else it returns the string: “hash not programmed”. This file is only visible if the underlying device supports it. Format: string.
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/sr_canceled_csks |
Defined on file sysfs-driver-intel-m10-bmc-sec-update
Read only. Returns a list of indices for canceled code signing keys for the static region. The standard bitmap list format is used (e.g. “1,2-6,9”).
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/sr_root_entry_hash |
Defined on file sysfs-driver-intel-m10-bmc-sec-update
Read only. Returns the root entry hash for the static region if one is programmed, else it returns the string: “hash not programmed”. This file is only visible if the underlying device supports it. Format: string.
/sys/bus/platform/drivers/panfrost/.../profiling |
Defined on file sysfs-driver-panfrost-profiling
Get/set drm fdinfo’s engine and cycles profiling status. Valid values are: 0: Don’t enable fdinfo job profiling sources. 1: Enable fdinfo job profiling sources, this enables both the GPU’s timestamp and cycle counter registers.
/sys/bus/platform/drivers/panthor/.../profiling |
Defined on file sysfs-driver-panthor-profiling
Bitmask to enable drm fdinfo’s job profiling measurements. Valid values are: 0: Don’t enable fdinfo job profiling sources. 1: Enable GPU cycle measurements for running jobs. 2: Enable GPU timestamp sampling for running jobs.
/sys/bus/platform/drivers/qcom_eud/.../enable |
Defined on file sysfs-driver-eud
The Enable/Disable sysfs interface for Embedded USB Debugger(EUD). This enables and disables the EUD based on a 1 or a 0 value. By enabling EUD, the user is able to activate the mini-usb hub of EUD for debug and trace capabilities.
/sys/bus/platform/drivers/ufshcd/*/attributes/active_icc_level |
/sys/bus/platform/devices/*.ufs/attributes/active_icc_level |
Defined on file sysfs-driver-ufs
This file provides the active icc level UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/bkops_status |
/sys/bus/platform/devices/*.ufs/attributes/bkops_status |
Defined on file sysfs-driver-ufs
This file provides the background operations status UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/boot_lun_enabled |
/sys/bus/platform/devices/*.ufs/attributes/boot_lun_enabled |
Defined on file sysfs-driver-ufs
This file provides the boot lun enabled UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/configuration_descriptor_lock |
/sys/bus/platform/devices/*.ufs/attributes/configuration_descriptor_lock |
Defined on file sysfs-driver-ufs
This file shows whether the configuration descriptor is locked. The full information about the attribute could be found at UFS specifications 2.1. The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/current_power_mode |
/sys/bus/platform/devices/*.ufs/attributes/current_power_mode |
Defined on file sysfs-driver-ufs
This file provides the current power mode UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/exception_event_control |
/sys/bus/platform/devices/*.ufs/attributes/exception_event_control |
Defined on file sysfs-driver-ufs
This file provides the exception event control UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/exception_event_status |
/sys/bus/platform/devices/*.ufs/attributes/exception_event_status |
Defined on file sysfs-driver-ufs
This file provides the exception event status UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/ffu_status |
/sys/bus/platform/devices/*.ufs/attributes/ffu_status |
Defined on file sysfs-driver-ufs
This file provides the ffu status UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/max_data_in_size |
/sys/bus/platform/devices/*.ufs/attributes/max_data_in_size |
Defined on file sysfs-driver-ufs
This file shows the maximum data size in a DATA IN UPIU. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/max_data_out_size |
/sys/bus/platform/devices/*.ufs/attributes/max_data_out_size |
Defined on file sysfs-driver-ufs
This file shows the maximum number of bytes that can be requested with a READY TO TRANSFER UPIU. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/max_number_of_rtt |
/sys/bus/platform/devices/*.ufs/attributes/max_number_of_rtt |
Defined on file sysfs-driver-ufs
This file provides the maximum current number of outstanding RTTs in device that is allowed. bMaxNumOfRTT is a read-write persistent attribute and is equal to two after device manufacturing. It shall not be set to a value greater than bDeviceRTTCap value, and it may be set only when the hw queues are empty.
The file is read write.
/sys/bus/platform/drivers/ufshcd/*/attributes/ooo_data_enabled |
/sys/bus/platform/devices/*.ufs/attributes/ooo_data_enabled |
Defined on file sysfs-driver-ufs
This file provides the out of order data transfer enabled UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/psa_data_size |
/sys/bus/platform/devices/*.ufs/attributes/psa_data_size |
Defined on file sysfs-driver-ufs
This file shows the amount of data that the host plans to load to all logical units in pre-soldering state. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/psa_state |
/sys/bus/platform/devices/*.ufs/attributes/psa_state |
Defined on file sysfs-driver-ufs
This file show the PSA feature status. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/purge_status |
/sys/bus/platform/devices/*.ufs/attributes/purge_status |
Defined on file sysfs-driver-ufs
This file provides the purge operation status UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/reference_clock_frequency |
/sys/bus/platform/devices/*.ufs/attributes/reference_clock_frequency |
Defined on file sysfs-driver-ufs
This file provides the reference clock frequency UFS device attribute. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/wb_avail_buf |
/sys/bus/platform/devices/*.ufs/attributes/wb_avail_buf |
Defined on file sysfs-driver-ufs
This entry shows the amount of unused WriteBooster buffer available.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/wb_cur_buf |
/sys/bus/platform/devices/*.ufs/attributes/wb_cur_buf |
Defined on file sysfs-driver-ufs
This entry shows the amount of unused current buffer.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/wb_flush_status |
/sys/bus/platform/devices/*.ufs/attributes/wb_flush_status |
Defined on file sysfs-driver-ufs
This entry shows the flush operation status.
00h |
idle |
01h |
Flush operation in progress |
02h |
Flush operation stopped prematurely. |
03h |
Flush operation completed successfully |
04h |
Flush operation general failure |
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/attributes/wb_life_time_est |
/sys/bus/platform/devices/*.ufs/attributes/wb_life_time_est |
Defined on file sysfs-driver-ufs
This entry shows an indication of the WriteBooster Buffer lifetime based on the amount of performed program/erase cycles
01h |
0% - 10% WriteBooster Buffer life time used |
... |
|
0Ah |
90% - 100% WriteBooster Buffer life time used |
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/capabilities/clock_scaling |
/sys/bus/platform/devices/*.ufs/capabilities/clock_scaling |
Defined on file sysfs-driver-ufs
Indicates status of clock scaling.
0 |
Clock scaling is not supported. |
1 |
Clock scaling is supported. |
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/capabilities/write_booster |
/sys/bus/platform/devices/*.ufs/capabilities/write_booster |
Defined on file sysfs-driver-ufs
Indicates status of Write Booster.
0 |
Write Booster can not be enabled. |
1 |
Write Booster can be enabled. |
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/capabilities/ |
/sys/bus/platform/devices/*.ufs/capabilities/ |
Defined on file sysfs-driver-ufs
The group represents the effective capabilities of the host-device pair. i.e. the capabilities which are enabled in the driver for the specific host controller, supported by the host controller and are supported and/or have compatible configuration on the device side.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/bkops_termination_latency |
/sys/bus/platform/devices/*.ufs/device_descriptor/bkops_termination_latency |
Defined on file sysfs-driver-ufs
This file shows the background operations termination latency. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/boot_enable |
/sys/bus/platform/devices/*.ufs/device_descriptor/boot_enable |
Defined on file sysfs-driver-ufs
This file shows value that indicates whether the device is enabled for boot. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/descriptor_access_enable |
/sys/bus/platform/devices/*.ufs/device_descriptor/descriptor_access_enable |
Defined on file sysfs-driver-ufs
This file shows value that indicates whether the device descriptor could be read after partial initialization phase of the boot sequence. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_class |
/sys/bus/platform/devices/*.ufs/device_descriptor/device_class |
Defined on file sysfs-driver-ufs
This file shows the device class. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_sub_class |
/sys/bus/platform/devices/*.ufs/device_descriptor/device_sub_class |
Defined on file sysfs-driver-ufs
This file shows the UFS storage subclass. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_type |
/sys/bus/platform/devices/*.ufs/device_descriptor/device_type |
Defined on file sysfs-driver-ufs
This file shows the device type. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_version |
/sys/bus/platform/devices/*.ufs/device_descriptor/device_version |
Defined on file sysfs-driver-ufs
This file shows the device version. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/ffu_timeout |
/sys/bus/platform/devices/*.ufs/device_descriptor/ffu_timeout |
Defined on file sysfs-driver-ufs
This file shows the FFU timeout. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/high_priority_lun |
/sys/bus/platform/devices/*.ufs/device_descriptor/high_priority_lun |
Defined on file sysfs-driver-ufs
This file shows the high priority lun. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/initial_active_icc_level |
/sys/bus/platform/devices/*.ufs/device_descriptor/initial_active_icc_level |
Defined on file sysfs-driver-ufs
This file shows the initial active ICC level. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/initial_power_mode |
/sys/bus/platform/devices/*.ufs/device_descriptor/initial_power_mode |
Defined on file sysfs-driver-ufs
This file shows value that defines the power mode after device initialization or hardware reset. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/manufacturer_id |
/sys/bus/platform/devices/*.ufs/device_descriptor/manufacturer_id |
Defined on file sysfs-driver-ufs
This file shows the manufacturer ID. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/manufacturing_date |
/sys/bus/platform/devices/*.ufs/device_descriptor/manufacturing_date |
Defined on file sysfs-driver-ufs
This file shows the manufacturing date in BCD format. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_luns |
/sys/bus/platform/devices/*.ufs/device_descriptor/number_of_luns |
Defined on file sysfs-driver-ufs
This file shows number of logical units. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_secure_wpa |
/sys/bus/platform/devices/*.ufs/device_descriptor/number_of_secure_wpa |
Defined on file sysfs-driver-ufs
This file shows number of secure write protect areas supported by the device. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_wluns |
/sys/bus/platform/devices/*.ufs/device_descriptor/number_of_wluns |
Defined on file sysfs-driver-ufs
This file shows number of well known logical units. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/protocol |
/sys/bus/platform/devices/*.ufs/device_descriptor/protocol |
Defined on file sysfs-driver-ufs
This file shows the protocol supported by an UFS device. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/psa_max_data_size |
/sys/bus/platform/devices/*.ufs/device_descriptor/psa_max_data_size |
Defined on file sysfs-driver-ufs
This file shows the maximum amount of data that may be written during the pre-soldering phase of the PSA flow. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/psa_state_timeout |
/sys/bus/platform/devices/*.ufs/device_descriptor/psa_state_timeout |
Defined on file sysfs-driver-ufs
This file shows the command maximum timeout for a change in PSA state. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/queue_depth |
/sys/bus/platform/devices/*.ufs/device_descriptor/queue_depth |
Defined on file sysfs-driver-ufs
This file shows the device queue depth. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/rtc_update |
/sys/bus/platform/devices/*.ufs/device_descriptor/rtc_update |
Defined on file sysfs-driver-ufs
This file shows the frequency and method of the realtime clock update. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/rtt_capability |
/sys/bus/platform/devices/*.ufs/device_descriptor/rtt_capability |
Defined on file sysfs-driver-ufs
This file shows the maximum number of outstanding RTTs supported by the device. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/secure_removal_type |
/sys/bus/platform/devices/*.ufs/device_descriptor/secure_removal_type |
Defined on file sysfs-driver-ufs
This file shows the secure removal type. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/specification_version |
/sys/bus/platform/devices/*.ufs/device_descriptor/specification_version |
Defined on file sysfs-driver-ufs
This file shows the specification version. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/support_security_lun |
/sys/bus/platform/devices/*.ufs/device_descriptor/support_security_lun |
Defined on file sysfs-driver-ufs
This file shows whether the security lun is supported. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/ufs_features |
/sys/bus/platform/devices/*.ufs/device_descriptor/ufs_features |
Defined on file sysfs-driver-ufs
This file shows which features are supported by the device. This is one of the UFS device descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_presv_us_en |
/sys/bus/platform/devices/*.ufs/device_descriptor/wb_presv_us_en |
Defined on file sysfs-driver-ufs
This entry shows if preserve user-space was configured
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_shared_alloc_units |
/sys/bus/platform/devices/*.ufs/device_descriptor/wb_shared_alloc_units |
Defined on file sysfs-driver-ufs
This entry shows the shared allocated units of WB buffer
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_type |
/sys/bus/platform/devices/*.ufs/device_descriptor/wb_type |
Defined on file sysfs-driver-ufs
This entry shows the configured WB type. 0x1 for shared buffer mode. 0x0 for dedicated buffer mode.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/enable_wb_buf_flush |
/sys/bus/platform/devices/*.ufs/enable_wb_buf_flush |
Defined on file sysfs-driver-ufs
This entry shows the status of WriteBooster buffer flushing and it can be used to enable or disable the flushing. If flushing is enabled, the device executes the flush operation when the command queue is empty.
/sys/bus/platform/drivers/ufshcd/*/flags/bkops_enable |
/sys/bus/platform/devices/*.ufs/flags/bkops_enable |
Defined on file sysfs-driver-ufs
This file shows whether the device background operations are enabled. The full information about the flag could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/busy_rtc |
/sys/bus/platform/devices/*.ufs/flags/busy_rtc |
Defined on file sysfs-driver-ufs
This file shows whether the device is executing internal operation related to real time clock. The full information about the flag could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/device_init |
/sys/bus/platform/devices/*.ufs/flags/device_init |
Defined on file sysfs-driver-ufs
This file shows the device init status. The full information about the flag could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/disable_fw_update |
/sys/bus/platform/devices/*.ufs/flags/disable_fw_update |
Defined on file sysfs-driver-ufs
This file shows whether the device FW update is permanently disabled. The full information about the flag could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/life_span_mode_enable |
/sys/bus/platform/devices/*.ufs/flags/life_span_mode_enable |
Defined on file sysfs-driver-ufs
This file shows whether the device life span mode is enabled. The full information about the flag could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/permanent_wpe |
/sys/bus/platform/devices/*.ufs/flags/permanent_wpe |
Defined on file sysfs-driver-ufs
This file shows whether permanent write protection is enabled. The full information about the flag could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/phy_resource_removal |
/sys/bus/platform/devices/*.ufs/flags/phy_resource_removal |
Defined on file sysfs-driver-ufs
This file shows whether physical resource removal is enable. The full information about the flag could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/power_on_wpe |
/sys/bus/platform/devices/*.ufs/flags/power_on_wpe |
Defined on file sysfs-driver-ufs
This file shows whether write protection is enabled on all logical units configured as power on write protected. The full information about the flag could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/wb_enable |
/sys/bus/platform/devices/*.ufs/flags/wb_enable |
Defined on file sysfs-driver-ufs
This entry shows the status of WriteBooster.
0 |
WriteBooster is not enabled. |
1 |
WriteBooster is enabled |
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_during_h8 |
/sys/bus/platform/devices/*.ufs/flags/wb_flush_during_h8 |
Defined on file sysfs-driver-ufs
Flush WriteBooster Buffer during hibernate state.
0 |
Device is not allowed to flush the WriteBooster Buffer during link hibernate state. |
1 |
Device is allowed to flush the WriteBooster Buffer during link hibernate state. |
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/flags/wb_flush_en |
/sys/bus/platform/devices/*.ufs/flags/wb_flush_en |
Defined on file sysfs-driver-ufs
This entry shows if flush is enabled.
0 |
Flush operation is not performed. |
1 |
Flush operation is performed. |
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/*_memory_capacity_adjustment_factor |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/*_memory_capacity_adjustment_factor |
Defined on file sysfs-driver-ufs
This file shows the memory capacity adjustment factor for different memory types (system code, non persistent, enhanced type 1-4). This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/*_memory_max_alloc_units |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/*_memory_max_alloc_units |
Defined on file sysfs-driver-ufs
This file shows the maximum number of allocation units for different memory types (system code, non persistent, enhanced type 1-4). This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/allocation_unit_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/allocation_unit_size |
Defined on file sysfs-driver-ufs
This file shows the allocation unit size. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/data_ordering |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/data_ordering |
Defined on file sysfs-driver-ufs
This file shows support for out-of-order data transfer. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/dyn_capacity_resource_policy |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/dyn_capacity_resource_policy |
Defined on file sysfs-driver-ufs
This file shows the dynamic capacity resource policy. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_in_buffer_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/max_in_buffer_size |
Defined on file sysfs-driver-ufs
This file shows the maximum data-in buffer size. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_number_of_contexts |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/max_number_of_contexts |
Defined on file sysfs-driver-ufs
This file shows maximum available number of contexts which are supported by the device. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_number_of_luns |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/max_number_of_luns |
Defined on file sysfs-driver-ufs
This file shows the maximum number of logical units supported by the UFS device. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_out_buffer_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/max_out_buffer_size |
Defined on file sysfs-driver-ufs
This file shows the maximum data-out buffer size. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/memory_types |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/memory_types |
Defined on file sysfs-driver-ufs
This file shows supported memory types. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/min_addressable_block_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/min_addressable_block_size |
Defined on file sysfs-driver-ufs
This file shows the minimum addressable block size. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/optimal_read_block_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/optimal_read_block_size |
Defined on file sysfs-driver-ufs
This file shows the optimal read block size. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/optimal_write_block_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/optimal_write_block_size |
Defined on file sysfs-driver-ufs
This file shows the optimal write block size. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/raw_device_capacity |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/raw_device_capacity |
Defined on file sysfs-driver-ufs
This file shows the total memory quantity available to the user to configure the device logical units. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/rpmb_rw_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/rpmb_rw_size |
Defined on file sysfs-driver-ufs
This file shows the maximum number of RPMB frames allowed in Security Protocol In/Out. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/secure_removal_types |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/secure_removal_types |
Defined on file sysfs-driver-ufs
This file shows supported secure removal types. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/segment_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/segment_size |
Defined on file sysfs-driver-ufs
This file shows the segment size. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/sys_data_tag_resource_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/sys_data_tag_resource_size |
Defined on file sysfs-driver-ufs
This file shows maximum storage area size allocated by the device to handle system data by the tagging mechanism. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/sys_data_tag_unit_size |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/sys_data_tag_unit_size |
Defined on file sysfs-driver-ufs
This file shows system data tag unit size. This is one of the UFS geometry descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_buff_cap_adj |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_buff_cap_adj |
Defined on file sysfs-driver-ufs
This entry shows the total user-space decrease in shared buffer mode. The value of this parameter is 3 for TLC NAND when SLC mode is used as WriteBooster Buffer. 2 for MLC NAND.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_alloc_units |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_max_alloc_units |
Defined on file sysfs-driver-ufs
This entry shows the Maximum total WriteBooster Buffer size which is supported by the entire device.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_wb_luns |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_max_wb_luns |
Defined on file sysfs-driver-ufs
This entry shows the maximum number of luns that can support WriteBooster.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_red_type |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_sup_red_type |
Defined on file sysfs-driver-ufs
The supportability of user space reduction mode and preserve user space mode. 00h: WriteBooster Buffer can be configured only in user space reduction type. 01h: WriteBooster Buffer can be configured only in preserve user space type. 02h: Device can be configured in either user space reduction type or preserve user space type.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_wb_type |
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_sup_wb_type |
Defined on file sysfs-driver-ufs
The supportability of WriteBooster Buffer type.
00h |
LU based WriteBooster Buffer configuration |
01h |
Single shared WriteBooster Buffer configuration |
02h |
Supporting both LU based WriteBooster. Buffer and Single shared WriteBooster Buffer configuration |
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/health_descriptor/eol_info |
/sys/bus/platform/devices/*.ufs/health_descriptor/eol_info |
Defined on file sysfs-driver-ufs
This file shows preend of life information. This is one of the UFS health descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/health_descriptor/life_time_estimation_a |
/sys/bus/platform/devices/*.ufs/health_descriptor/life_time_estimation_a |
Defined on file sysfs-driver-ufs
This file shows indication of the device life time (method a). This is one of the UFS health descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/health_descriptor/life_time_estimation_b |
/sys/bus/platform/devices/*.ufs/health_descriptor/life_time_estimation_b |
Defined on file sysfs-driver-ufs
This file shows indication of the device life time (method b). This is one of the UFS health descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/mphy_version |
/sys/bus/platform/devices/*.ufs/interconnect_descriptor/mphy_version |
Defined on file sysfs-driver-ufs
This file shows the MIPI M-PHY version number in BCD format. This is one of the UFS interconnect descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/unipro_version |
/sys/bus/platform/devices/*.ufs/interconnect_descriptor/unipro_version |
Defined on file sysfs-driver-ufs
This file shows the MIPI UniPro version number in BCD format. This is one of the UFS interconnect descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/monitor_chunk_size |
/sys/bus/platform/devices/*.ufs/monitor/monitor_chunk_size |
Defined on file sysfs-driver-ufs
This file tells the monitor to focus on requests transferring data of specific chunk size (in Bytes). 0 means any chunk size. It can only be changed when monitor is disabled.
/sys/bus/platform/drivers/ufshcd/*/monitor/monitor_enable |
/sys/bus/platform/devices/*.ufs/monitor/monitor_enable |
Defined on file sysfs-driver-ufs
This file shows the status of performance monitor enablement and it can be used to start/stop the monitor. When the monitor is stopped, the performance data collected is also cleared.
/sys/bus/platform/drivers/ufshcd/*/monitor/read_nr_requests |
/sys/bus/platform/devices/*.ufs/monitor/read_nr_requests |
Defined on file sysfs-driver-ufs
This file shows how many read requests have been sent after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_avg |
/sys/bus/platform/devices/*.ufs/monitor/read_req_latency_avg |
Defined on file sysfs-driver-ufs
This file shows the average latency (in micro seconds) of read requests after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_max |
/sys/bus/platform/devices/*.ufs/monitor/read_req_latency_max |
Defined on file sysfs-driver-ufs
This file shows the maximum latency (in micro seconds) of read requests after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_min |
/sys/bus/platform/devices/*.ufs/monitor/read_req_latency_min |
Defined on file sysfs-driver-ufs
This file shows the minimum latency (in micro seconds) of read requests after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_sum |
/sys/bus/platform/devices/*.ufs/monitor/read_req_latency_sum |
Defined on file sysfs-driver-ufs
This file shows the total latency (in micro seconds) of read requests sent after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/read_total_busy |
/sys/bus/platform/devices/*.ufs/monitor/read_total_busy |
Defined on file sysfs-driver-ufs
This file shows how long (in micro seconds) has been spent sending data from device to host after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/read_total_sectors |
/sys/bus/platform/devices/*.ufs/monitor/read_total_sectors |
Defined on file sysfs-driver-ufs
This file shows how many sectors (in 512 Bytes) have been sent from device to host after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/write_nr_requests |
/sys/bus/platform/devices/*.ufs/monitor/write_nr_requests |
Defined on file sysfs-driver-ufs
This file shows how many write requests have been sent after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_avg |
/sys/bus/platform/devices/*.ufs/monitor/write_req_latency_avg |
Defined on file sysfs-driver-ufs
This file shows the average latency (in micro seconds) of write requests after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_max |
/sys/bus/platform/devices/*.ufs/monitor/write_req_latency_max |
Defined on file sysfs-driver-ufs
This file shows the maximum latency (in micro seconds) of write requests after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_min |
/sys/bus/platform/devices/*.ufs/monitor/write_req_latency_min |
Defined on file sysfs-driver-ufs
This file shows the minimum latency (in micro seconds) of write requests after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_sum |
/sys/bus/platform/devices/*.ufs/monitor/write_req_latency_sum |
Defined on file sysfs-driver-ufs
This file shows the total latency (in micro seconds) of write requests after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/write_total_busy |
/sys/bus/platform/devices/*.ufs/monitor/write_total_busy |
Defined on file sysfs-driver-ufs
This file shows how long (in micro seconds) has been spent sending data from host to device after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/monitor/write_total_sectors |
/sys/bus/platform/devices/*.ufs/monitor/write_total_sectors |
Defined on file sysfs-driver-ufs
This file shows how many sectors (in 512 Bytes) have been sent from host to device after monitor gets started.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/power_descriptor/active_icc_levels_vcc* |
/sys/bus/platform/devices/*.ufs/power_descriptor/active_icc_levels_vcc* |
Defined on file sysfs-driver-ufs
This file shows maximum VCC, VCCQ and VCCQ2 value for active ICC levels from 0 to 15. This is one of the UFS power descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/power_info/dev_pm |
/sys/bus/platform/devices/*.ufs/power_info/dev_pm |
Defined on file sysfs-driver-ufs
This file shows the UFS device power mode.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/power_info/gear |
/sys/bus/platform/devices/*.ufs/power_info/gear |
Defined on file sysfs-driver-ufs
This file shows the gear of UFS link.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/power_info/lane |
/sys/bus/platform/devices/*.ufs/power_info/lane |
Defined on file sysfs-driver-ufs
This file shows how many lanes are enabled on the UFS link, i.e., an output 2 means UFS link is operating with 2 lanes.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/power_info/link_state |
/sys/bus/platform/devices/*.ufs/power_info/link_state |
Defined on file sysfs-driver-ufs
This file shows the state of UFS link.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/power_info/mode |
/sys/bus/platform/devices/*.ufs/power_info/mode |
Defined on file sysfs-driver-ufs
This file shows the PA power mode of UFS.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/power_info/rate |
/sys/bus/platform/devices/*.ufs/power_info/rate |
Defined on file sysfs-driver-ufs
This file shows the speed rate of UFS link.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/rpm_lvl |
/sys/bus/platform/devices/*.ufs/rpm_lvl |
Defined on file sysfs-driver-ufs
This entry could be used to set or show the UFS device runtime power management level. The current driver implementation supports 7 levels with next target states:
0 |
UFS device will stay active, UIC link will stay active |
1 |
UFS device will stay active, UIC link will hibernate |
2 |
UFS device will be moved to sleep, UIC link will stay active |
3 |
UFS device will be moved to sleep, UIC link will hibernate |
4 |
UFS device will be powered off, UIC link will hibernate |
5 |
UFS device will be powered off, UIC link will be powered off |
6 |
UFS device will be moved to deep sleep, UIC link will be powered off. Note, deep sleep might not be supported in which case this value will not be accepted |
/sys/bus/platform/drivers/ufshcd/*/rpm_target_dev_state |
/sys/bus/platform/devices/*.ufs/rpm_target_dev_state |
Defined on file sysfs-driver-ufs
This entry shows the target power mode of an UFS device for the chosen runtime power management level.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/rpm_target_link_state |
/sys/bus/platform/devices/*.ufs/rpm_target_link_state |
Defined on file sysfs-driver-ufs
This entry shows the target state of an UFS UIC link for the chosen runtime power management level.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/rtc_update_ms |
/sys/bus/platform/devices/*.ufs/rtc_update_ms |
Defined on file sysfs-driver-ufs
rtc_update_ms indicates how often the host should synchronize or update the UFS RTC. If set to 0, this will disable UFS RTC periodic update.
/sys/bus/platform/drivers/ufshcd/*/spm_lvl |
/sys/bus/platform/devices/*.ufs/spm_lvl |
Defined on file sysfs-driver-ufs
This entry could be used to set or show the UFS device system power management level. The current driver implementation supports 7 levels with next target states:
0 |
UFS device will stay active, UIC link will stay active |
1 |
UFS device will stay active, UIC link will hibernate |
2 |
UFS device will be moved to sleep, UIC link will stay active |
3 |
UFS device will be moved to sleep, UIC link will hibernate |
4 |
UFS device will be powered off, UIC link will hibernate |
5 |
UFS device will be powered off, UIC link will be powered off |
6 |
UFS device will be moved to deep sleep, UIC link will be powered off. Note, deep sleep might not be supported in which case this value will not be accepted |
/sys/bus/platform/drivers/ufshcd/*/spm_target_dev_state |
/sys/bus/platform/devices/*.ufs/spm_target_dev_state |
Defined on file sysfs-driver-ufs
This entry shows the target power mode of an UFS device for the chosen system power management level.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/spm_target_link_state |
/sys/bus/platform/devices/*.ufs/spm_target_link_state |
Defined on file sysfs-driver-ufs
This entry shows the target state of an UFS UIC link for the chosen system power management level.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/manufacturer_name |
/sys/bus/platform/devices/*.ufs/string_descriptors/manufacturer_name |
Defined on file sysfs-driver-ufs
This file contains a device manufacturer name string. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/oem_id |
/sys/bus/platform/devices/*.ufs/string_descriptors/oem_id |
Defined on file sysfs-driver-ufs
This file contains a OEM ID string. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/product_name |
/sys/bus/platform/devices/*.ufs/string_descriptors/product_name |
Defined on file sysfs-driver-ufs
This file contains a product name string. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/product_revision |
/sys/bus/platform/devices/*.ufs/string_descriptors/product_revision |
Defined on file sysfs-driver-ufs
This file contains a product revision string. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/serial_number |
/sys/bus/platform/devices/*.ufs/string_descriptors/serial_number |
Defined on file sysfs-driver-ufs
This file contains a device serial number string. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/bus/platform/drivers/ufshcd/*/wb_flush_threshold |
/sys/bus/platform/devices/*.ufs/wb_flush_threshold |
Defined on file sysfs-driver-ufs
wb_flush_threshold represents the threshold for flushing WriteBooster buffer, whose value expressed in unit of 10% granularity, such as ‘1’ representing 10%, ‘2’ representing 20%, and so on. If avail_wb_buff < wb_flush_threshold, it indicates that WriteBooster buffer needs to be flushed, otherwise it is not necessary.
/sys/bus/platform/drivers/ufshcd/*/wb_on |
/sys/bus/platform/devices/*.ufs/wb_on |
Defined on file sysfs-driver-ufs
This node is used to set or display whether UFS WriteBooster is enabled. Echo 0 to this file to disable UFS WriteBooster or 1 to enable it. The WriteBooster is enabled after power-on/reset, however, it will be disabled/enable while CLK scaling down/up (if the platform supports UFSHCD_CAP_CLK_SCALING). For a platform that doesn’t support UFSHCD_CAP_CLK_SCALING, we can disable/enable WriteBooster through this sysfs node.
/sys/bus/platform/drivers/zynqmp_fpga_manager/firmware:zynqmp-firmware:pcap/status |
Defined on file sysfs-driver-zynqmp-fpga
(RO) Read fpga status. Read returns a hexadecimal value that tells the current status of the FPGA device. Each bit position in the status value is described Below(see ug570 chapter 9). https://docs.xilinx.com/v/u/en-US/ug570-ultrascale-configuration
BIT(0) |
0: No CRC error 1: CRC error |
BIT(1) |
0: Decryptor security not set 1: Decryptor security set |
BIT(2) |
0: MMCMs/PLLs are not locked 1: MMCMs/PLLs are locked |
BIT(3) |
0: DCI not matched 1: DCI matched |
BIT(4) |
0: Start-up sequence has not finished 1: Start-up sequence has finished |
BIT(5) |
0: All I/Os are placed in High-Z state 1: All I/Os behave as configured |
BIT(6) |
0: Flip-flops and block RAM are write disabled 1: Flip-flops and block RAM are write enabled |
BIT(7) |
0: GHIGH_B_STATUS asserted 1: GHIGH_B_STATUS deasserted |
BIT(8) to BIT(10) |
Status of the mode pins |
BIT(11) |
0: Initialization has not finished 1: Initialization finished |
BIT(12) |
Value on INIT_B_PIN pin |
BIT(13) |
0: Signal not released 1: Signal released |
BIT(14) |
Value on DONE_PIN pin. |
BIT(15) |
0: No IDCODE_ERROR 1: IDCODE_ERROR |
BIT(16) |
0: No SECURITY_ERROR 1: SECURITY_ERROR |
BIT(17) |
System Monitor over-temperature if set |
BIT(18) to BIT(20) |
Start-up state machine (0 to 7) Phase 0 = 000 Phase 1 = 001 Phase 2 = 011 Phase 3 = 010 Phase 4 = 110 Phase 5 = 111 Phase 6 = 101 Phase 7 = 100 |
BIT(25) to BIT(26) |
Indicates the detected bus width 00 = x1 01 = x8 10 = x16 11 = x32 |
The other bits are reserved.
/sys/bus/rapidio/devices/<nn>:<d>:<iiii> |
Defined on file sysfs-bus-rapidio
For each RapidIO device, the RapidIO subsystem creates files in an individual subdirectory with the following name format of device_name “nn:d:iiii”, where:
nn |
two-digit hexadecimal ID of RapidIO network where the device resides |
d |
device type: ‘e’ - for endpoint or ‘s’ - for switch |
iiii |
four-digit device destID for endpoints, or switchID for switches |
For example, below is a list of device directories that represents a typical RapidIO network with one switch, one host, and two agent endpoints, as it is seen by the enumerating host (with destID = 1):
/sys/bus/rapidio/devices/00:e:0000
/sys/bus/rapidio/devices/00:e:0002
/sys/bus/rapidio/devices/00:s:0001
- NOTE:
An enumerating or discovering endpoint does not create a sysfs entry for itself, this is why an endpoint with destID=1 is not shown in the list.
Attributes Common for All RapidIO Devices
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/asm_did |
Defined on file sysfs-bus-rapidio
(RO) returns identifier for the assembly containing the device
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/asm_rev |
Defined on file sysfs-bus-rapidio
(RO) returns revision level of the assembly containing the device
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/asm_vid |
Defined on file sysfs-bus-rapidio
(RO) returns vendor identifier of the assembly containing the device
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/config |
Defined on file sysfs-bus-rapidio
(RW) Binary attribute to read from and write to the device configuration registers using the RapidIO maintenance transactions. This attribute is similar in behaviour to the “config” attribute of PCI devices and provides an access to the RapidIO device registers using standard file read and write operations.
RapidIO Switch Device Attributes
RapidIO switches have additional attributes in sysfs. RapidIO subsystem supports common and device-specific sysfs attributes for switches. Because switches are integrated into the RapidIO subsystem, it offers a method to create device-specific sysfs attributes by specifying a callback function that may be set by the switch initialization routine during enumeration or discovery process.
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/destid |
Defined on file sysfs-bus-rapidio
(RO) returns device destination ID assigned by the enumeration routine
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/device_rev |
Defined on file sysfs-bus-rapidio
(RO) returns the device revision level
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/did |
Defined on file sysfs-bus-rapidio
(RO) returns the device identifier
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/lprev |
Defined on file sysfs-bus-rapidio
(RO) returns name of previous device (switch) on the path to the device that that owns this attribute
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/modalias |
Defined on file sysfs-bus-rapidio
(RO) returns the device modalias
/sys/bus/rapidio/devices/<nn>:<d>:<iiii>/vid |
Defined on file sysfs-bus-rapidio
(RO) returns the device vendor identifier
/sys/bus/rapidio/devices/<nn>:<s>:<iiii>/destid |
Defined on file sysfs-bus-rapidio
(RO) device destination ID of the associated device that defines a route to the switch
/sys/bus/rapidio/devices/<nn>:<s>:<iiii>/errlog |
Defined on file sysfs-bus-rapidio
(RO) reads contents of device error log until it is empty.
RapidIO Bus Attributes
/sys/bus/rapidio/devices/<nn>:<s>:<iiii>/hopcount |
Defined on file sysfs-bus-rapidio
(RO) number of hops on the path to the switch
/sys/bus/rapidio/devices/<nn>:<s>:<iiii>/lnext |
Defined on file sysfs-bus-rapidio
(RO) returns names of devices linked to the switch except one of a device linked to the ingress port (reported as “lprev”). This is an array names with number of lines equal to number of ports in switch. If a switch port has no attached device, returns “null” instead of a device name.
Device-specific Switch Attributes
IDT_GEN2-
/sys/bus/rapidio/devices/<nn>:<s>:<iiii>/routes |
Defined on file sysfs-bus-rapidio
(RO) reports switch routing information in “destID port” format. This attribute reports only valid routing table entries, one line for each entry.
/sys/bus/rapidio/scan |
Defined on file sysfs-bus-rapidio
(WO) Allows to trigger enumeration discovery process from user space. To initiate an enumeration or discovery process on specific mport device, a user needs to write mport_ID (not RapidIO destination ID) into this file. The mport_ID is a sequential number (0 ... RIO_MAX_MPORTS) assigned to the mport device. For example, for a machine with a single RapidIO controller, mport_ID for that controller always will be 0. To initiate RapidIO enumeration/discovery on all available mports a user must write ‘-1’ (or RIO_MPORT_ANY) into this attribute file.
/sys/bus/rbd/add |
Defined on file sysfs-bus-rbd
(WO) Add rbd block device.
Usage: <mon ip addr> <options> <pool name> <rbd image name> [<snap name>]
Example:
$ echo "192.168.0.1 name=admin rbd foo" > /sys/bus/rbd/add
The snapshot name can be “-” or omitted to map the image read/write. A <dev-id> will be assigned for any registered block device. If snapshot is used, it will be mapped read-only.
/sys/bus/rbd/add_single_major |
Defined on file sysfs-bus-rbd
(WO) Available only if rbd module is inserted with single_major parameter set to true.
Usage is the same as for /sys/bus/rbd/add. If present, this should be used instead of the latter: any attempts to use /sys/bus/rbd/add if /sys/bus/rbd/add_single_major is available will fail for backwards compatibility reasons.
/sys/bus/rbd/devices/<dev-id>/image_id |
/sys/bus/rbd/devices/<dev-id>/features |
Defined on file sysfs-bus-rbd
image_id |
(RO) The unique id for the rbd image. (For rbd image format 1 this is empty.) |
features |
(RO) A hexadecimal encoding of the feature bits for this image. |
/sys/bus/rbd/devices/<dev-id>/minor |
Defined on file sysfs-bus-rbd
(RO) The block device minor number.
/sys/bus/rbd/devices/<dev-id>/parent |
Defined on file sysfs-bus-rbd
(RO) Information identifying the chain of parent images in a layered rbd image. Entries are separated by empty lines.
/sys/bus/rbd/devices/<dev-id>/pool_id |
Defined on file sysfs-bus-rbd
(RO) The unique identifier for the rbd image’s pool. This is a permanent attribute of the pool. A pool’s id will never change.
/sys/bus/rbd/devices/<dev-id>/size |
/sys/bus/rbd/devices/<dev-id>/major |
/sys/bus/rbd/devices/<dev-id>/client_id |
/sys/bus/rbd/devices/<dev-id>/pool |
/sys/bus/rbd/devices/<dev-id>/name |
/sys/bus/rbd/devices/<dev-id>/refresh |
/sys/bus/rbd/devices/<dev-id>/current_snap |
Defined on file sysfs-bus-rbd
size |
(RO) The size (in bytes) of the mapped block device. |
major |
(RO) The block device major number. |
client_id |
(RO) The ceph unique client id that was assigned for this specific session. |
pool |
(RO) The name of the storage pool where this rbd image resides. An rbd image name is unique within its pool. |
name |
(RO) The name of the rbd image. |
refresh |
(WO) Writing to this file will reread the image header data and set all relevant data structures accordingly. |
current_snap |
(RO) The current snapshot for which the device is mapped. |
/sys/bus/rbd/devices/<dev-id>/snap_id |
/sys/bus/rbd/devices/<dev-id>/config_info |
/sys/bus/rbd/devices/<dev-id>/cluster_fsid |
/sys/bus/rbd/devices/<dev-id>/client_addr |
Defined on file sysfs-bus-rbd
snap_id |
(RO) The current snapshot’s id. |
config_info |
(RO) The string written into /sys/bus/rbd/add{,_single_major}. |
cluster_fsid |
(RO) The ceph cluster UUID. |
client_addr |
(RO) The ceph unique client entity_addr_t (address + nonce). The format is <address>:<port>/<nonce>: ‘1.2.3.4:1234/5678’ or ‘[1:2:3:4:5:6:7:8]:1234/5678’. |
/sys/bus/rbd/remove |
Defined on file sysfs-bus-rbd
(WO) Remove rbd block device.
Usage: <dev-id> [force]
Example:
$ echo 2 > /sys/bus/rbd/remove
Optional “force” argument which when passed will wait for running requests and then unmap the image. Requests sent to the driver after initiating the removal will be failed. (August 2016, since 4.9.)
/sys/bus/rbd/remove_single_major |
Defined on file sysfs-bus-rbd
(WO) Available only if rbd module is inserted with single_major parameter set to true.
Usage is the same as for /sys/bus/rbd/remove. If present, this should be used instead of the latter: any attempts to use /sys/bus/rbd/remove if /sys/bus/rbd/remove_single_major is available will fail for backwards compatibility reasons.
/sys/bus/rbd/supported_features |
Defined on file sysfs-bus-rbd
(RO) Displays the features supported by the rbd module so that userspace can generate meaningful error messages and spell out unsupported features that need to be disabled.
/sys/bus/rpmsg/devices/.../announce |
Defined on file sysfs-bus-rpmsg
Every rpmsg device is a communication channel with a remote processor. Channels are identified by a textual name (see /sys/bus/rpmsg/devices/.../name above) and have a local (“source”) rpmsg address, and remote (“destination”) rpmsg address.
A channel is first created when an entity, whether local or remote, starts listening on it for messages (and is thus called an rpmsg server).
When that happens, a “name service” announcement is sent to the other processor, in order to let it know about the creation of the channel (this way remote clients know they can start sending messages).
This sysfs entry tells us whether the channel is a local server channel that is announced (values are either true or false).
/sys/bus/rpmsg/devices/.../driver_override |
Defined on file sysfs-bus-rpmsg
Every rpmsg device is a communication channel with a remote processor. Channels are identified by a textual name (see /sys/bus/rpmsg/devices/.../name above) and have a local (“source”) rpmsg address, and remote (“destination”) rpmsg address.
The listening entity (or client) which communicates with a remote processor is referred as rpmsg driver. The rpmsg device and rpmsg driver are matched based on rpmsg device name and rpmsg driver ID table.
This sysfs entry allows the rpmsg driver for a rpmsg device to be specified which will override standard OF, ID table and name matching.
/sys/bus/rpmsg/devices/.../dst |
Defined on file sysfs-bus-rpmsg
Every rpmsg device is a communication channel with a remote processor. Channels have a local (“source”) rpmsg address, and remote (“destination”) rpmsg address. When an entity starts listening on one end of a channel, it assigns it with a unique rpmsg address (a 32 bits integer). This way when inbound messages arrive to this address, the rpmsg core dispatches them to the listening entity.
This sysfs entry contains the dst (remote) rpmsg address of this channel. If it contains 0xffffffff, then an address wasn’t assigned (can happen if the kernel driver that is attached to this channel is exposing a service to the remote processor. This make it a local rpmsg server, and it is listening for inbound messages that may be sent from any remote rpmsg client; it is not bound to a single remote entity).
/sys/bus/rpmsg/devices/.../name |
Defined on file sysfs-bus-rpmsg
Every rpmsg device is a communication channel with a remote processor. Channels are identified with a (textual) name, which is maximum 32 bytes long (defined as RPMSG_NAME_SIZE in rpmsg.h).
This sysfs entry contains the name of this channel.
/sys/bus/rpmsg/devices/.../src |
Defined on file sysfs-bus-rpmsg
Every rpmsg device is a communication channel with a remote processor. Channels have a local (“source”) rpmsg address, and remote (“destination”) rpmsg address. When an entity starts listening on one end of a channel, it assigns it with a unique rpmsg address (a 32 bits integer). This way when inbound messages arrive to this address, the rpmsg core dispatches them to the listening entity (a kernel driver).
This sysfs entry contains the src (local) rpmsg address of this channel. If it contains 0xffffffff, then an address wasn’t assigned (can happen if no driver exists for this channel).
/sys/bus/scsi/drivers/st/debug_flag |
Defined on file sysfs-driver-st
This file allows you to turn debug output from the st driver off if you write a ‘0’ to the file or on if you write a ‘1’. Note that debug output requires that the module be compiled with the #define DEBUG set to a non-zero value (this is the default). If DEBUG is set to 0 then this file will not appear in sysfs as its presence is conditional upon debug output support being compiled into the module.
/sys/bus/siox/devices/siox-X-Y/connected |
Defined on file sysfs-bus-siox
Read-only value. “0” means the Yth device on siox bus X isn’t “connected” i.e. communication with it is not ensured. “1” signals a working connection.
/sys/bus/siox/devices/siox-X-Y/inbytes |
Defined on file sysfs-bus-siox
Read-only value reporting the inbytes value provided to siox-X/device_add
/sys/bus/siox/devices/siox-X-Y/outbytes |
Defined on file sysfs-bus-siox
Read-only value reporting the outbytes value provided to siox-X/device_add.
/sys/bus/siox/devices/siox-X-Y/status_errors |
Defined on file sysfs-bus-siox
Counts the number of time intervals when the read status byte doesn’t yield the expected value.
/sys/bus/siox/devices/siox-X-Y/type |
Defined on file sysfs-bus-siox
Read-only value reporting the type value provided to siox-X/device_add.
/sys/bus/siox/devices/siox-X-Y/watchdog |
Defined on file sysfs-bus-siox
Read-only value reporting if the watchdog of the siox device is active. “0” means the watchdog is not active and the device is expected to be operational. “1” means the watchdog keeps the device in reset.
/sys/bus/siox/devices/siox-X-Y/watchdog_errors |
Defined on file sysfs-bus-siox
Read-only value reporting the number to time intervals when the watchdog was active.
/sys/bus/siox/devices/siox-X/active |
Defined on file sysfs-bus-siox
On reading represents the current state of the bus. If it contains a “0” the bus is stopped and connected devices are expected to not do anything because their watchdog triggered. When the file contains a “1” the bus is operated and periodically does a push-pull cycle to write and read data from the connected devices.
When writing a “0” or “1” the bus moves to the described state.
/sys/bus/siox/devices/siox-X/device_add |
Defined on file sysfs-bus-siox
Write-only file. Write
<type> <inbytes> <outbytes> <statustype>
to add a new device dynamically. <type> is the name that is used to match to a driver (similar to the platform bus). <inbytes> and <outbytes> define the length of the input and output shift register in bytes respectively.
<statustype> defines the 4 bit device type that is check to identify connection problems.
The new device is added to the end of the existing chain.
/sys/bus/siox/devices/siox-X/device_remove |
Defined on file sysfs-bus-siox
Write-only file. A single write removes the last device in the siox chain.
/sys/bus/siox/devices/siox-X/poll_interval_ns |
Defined on file sysfs-bus-siox
Defines the interval between two poll cycles in nano seconds. Note this is rounded to jiffies on writing. On reading the current value is returned.
/sys/bus/soc |
Defined on file sysfs-devices-soc
The /sys/bus/soc/ directory contains the usual sub-folders expected under most buses. /sys/bus/soc/devices is of particular interest, as it contains a symlink for each SoC device found on the system. Each symlink points back into the aforementioned /sys/devices/socX devices.
/sys/bus/soundwire/devices/sdw-master-<N>/revision |
Defined on file sysfs-bus-soundwire-master
SoundWire Master-N DisCo properties. These properties are defined by MIPI DisCo Specification for SoundWire. They define various properties of the Master and are used by the bus to configure the Master. clk_stop_modes is a bitmask for simplifications and combines the clock-stop-mode0 and clock-stop-mode1 properties.
/sys/bus/soundwire/devices/sdw:.../dev-properties/mipi_revision |
Defined on file sysfs-bus-soundwire-slave
SoundWire Slave DisCo properties. These properties are defined by MIPI DisCo Specification for SoundWire. They define various properties of the SoundWire Slave and are used by the bus to configure the Slave
/sys/bus/soundwire/devices/sdw:.../dp0/max_word |
Defined on file sysfs-bus-soundwire-slave
SoundWire Slave Data Port-0 DisCo properties. These properties are defined by MIPI DisCo Specification for the SoundWire. They define various properties of the Data port 0 are used by the bus to configure the Data Port 0.
/sys/bus/soundwire/devices/sdw:.../dp<N>_src/max_word |
Defined on file sysfs-bus-soundwire-slave
SoundWire Slave Data Source/Sink Port-N DisCo properties. These properties are defined by MIPI DisCo Specification for SoundWire. They define various properties of the Source/Sink Data port N and are used by the bus to configure the Data Port N.
/sys/bus/soundwire/devices/sdw:.../status |
Defined on file sysfs-bus-soundwire-slave
SoundWire Slave status
These properties report the Slave status, e.g. if it is UNATTACHED or not, and in the latter case show the device_number. This status information is useful to detect devices exposed by platform firmware but not physically present on the bus, and conversely devices not exposed in platform firmware but enumerated.
/sys/bus/spi/<dev>/reset |
Defined on file sysfs-driver-ge-achc
This file represents the microcontroller’s reset line. 1 means the reset line is asserted, 0 means it’s not asserted. The file is read and writable.
/sys/bus/spi/<dev>/update_firmware |
Defined on file sysfs-driver-ge-achc
Write 1 to this file to update the ACHC microcontroller firmware via the EzPort interface. For this the kernel will load “achc.bin” via the firmware API (so usually from /lib/firmware). The write will block until the FW has either been flashed successfully or an error occurred.
/sys/bus/spi/devices/.../spi-nor/jedec_id |
Defined on file sysfs-bus-spi-devices-spi-nor
(RO) The JEDEC ID of the SPI NOR flash as reported by the flash device.
The attribute is not present if the flash doesn’t support the “Read JEDEC ID” command (9Fh). This is the case for non-JEDEC compliant flashes.
/sys/bus/spi/devices/.../spi-nor/manufacturer |
Defined on file sysfs-bus-spi-devices-spi-nor
(RO) Manufacturer of the SPI NOR flash.
The attribute is not present if the flash device isn’t known to the kernel and is only probed by its SFDP tables.
/sys/bus/spi/devices/.../spi-nor/partname |
Defined on file sysfs-bus-spi-devices-spi-nor
(RO) Part name of the SPI NOR flash.
The attribute is optional. User space should not rely on it to be present or even correct. Instead, user space should read the jedec_id attribute.
/sys/bus/spi/devices/.../spi-nor/sfdp |
Defined on file sysfs-bus-spi-devices-spi-nor
(RO) This attribute is only present if the SPI NOR flash device supports the “Read SFDP” command (5Ah).
If present, it contains the complete SFDP (serial flash discoverable parameters) binary data of the flash.
/sys/bus/surface_aggregator/devices/01:0e:01:00:01/state |
Defined on file sysfs-bus-surface_aggregator-tabletsw
This attribute returns a string with the current type-cover or device posture, as indicated by the embedded controller. Currently returned posture states are:
“disconnected”: The type-cover has been disconnected.
“closed”: The type-cover has been folded closed and lies on top of the display.
“laptop”: The type-cover is open and in laptop-mode, i.e., ready for normal use.
“folded-canvas”: The type-cover has been folded back part-ways, but does not lie flush with the back side of the device. In general, this means that the kick-stand is used and extended atop of the cover.
“folded-back”: The type cover has been fully folded back and lies flush with the back side of the device.
“<unknown>”: The current state is unknown to the driver, for example due to newer as-of-yet unsupported hardware.
New states may be introduced with new hardware. Users therefore must not rely on this list of states being exhaustive and gracefully handle unknown states.
/sys/bus/surface_aggregator/devices/01:26:01:00:01/state |
Defined on file sysfs-bus-surface_aggregator-tabletsw
This attribute returns a string with the current device posture, as indicated by the embedded controller. Currently returned posture states are:
“closed”: The lid of the device is closed.
“laptop”: The lid of the device is opened and the device operates as a normal laptop.
“slate”: The screen covers the keyboard or has been flipped back and the device operates mainly based on touch input.
“tablet”: The device operates as tablet and exclusively relies on touch input (or external peripherals).
“<unknown>”: The current state is unknown to the driver, for example due to newer as-of-yet unsupported hardware.
New states may be introduced with new hardware. Users therefore must not rely on this list of states being exhaustive and gracefully handle unknown states.
/sys/bus/tee/devices/optee-ta-<uuid>/ |
Defined on file sysfs-bus-optee-devices
OP-TEE bus provides reference to registered drivers under this directory. The <uuid> matches Trusted Application (TA) driver and corresponding TA in secure OS. Drivers are free to create needed API under optee-ta-<uuid> directory.
/sys/bus/tee/devices/optee-ta-<uuid>/need_supplicant |
Defined on file sysfs-bus-optee-devices
Allows to distinguish whether an OP-TEE based TA/device requires user-space tee-supplicant to function properly or not. This attribute will be present for devices which depend on tee-supplicant to be running.
/sys/bus/thunderbolt/devices/.../authorized |
Defined on file sysfs-bus-thunderbolt
This attribute is used to authorize Thunderbolt devices after they have been connected. If the device is not authorized, no PCIe devices are available to the system.
Contents of this attribute will be 0 when the device is not yet authorized.
Possible values are supported:
0 |
The device will be de-authorized (only supported if deauthorization attribute under domain contains 1) |
1 |
The device will be authorized and connected |
When key attribute contains 32 byte hex string the possible values are:
0 |
The device will be de-authorized (only supported if deauthorization attribute under domain contains 1) |
1 |
The 32 byte hex string is added to the device NVM and the device is authorized. |
2 |
Send a challenge based on the 32 byte hex string. If the challenge response from device is valid, the device is authorized. In case of failure errno will be ENOKEY if the device did not contain a key at all, and EKEYREJECTED if the challenge response did not match. |
/sys/bus/thunderbolt/devices/.../boot |
Defined on file sysfs-bus-thunderbolt
This attribute contains 1 if Thunderbolt device was already authorized on boot and 0 otherwise.
/sys/bus/thunderbolt/devices/.../device |
Defined on file sysfs-bus-thunderbolt
This attribute contains id of this device extracted from the device DROM.
/sys/bus/thunderbolt/devices/.../device_name |
Defined on file sysfs-bus-thunderbolt
This attribute contains name of this device extracted from the device DROM.
/sys/bus/thunderbolt/devices/.../domainX/boot_acl |
Defined on file sysfs-bus-thunderbolt
Holds a comma separated list of device unique_ids that are allowed to be connected automatically during system startup (e.g boot devices). The list always contains maximum supported number of unique_ids where unused entries are empty. This allows the userspace software to determine how many entries the controller supports. If there are multiple controllers, each controller has its own ACL list and size may be different between the controllers.
System BIOS may have an option “Preboot ACL” or similar that needs to be selected before this list is taken into consideration.
Software always updates a full list in each write.
If a device is authorized automatically during boot its boot attribute is set to 1.
/sys/bus/thunderbolt/devices/.../domainX/deauthorization |
Defined on file sysfs-bus-thunderbolt
This attribute tells whether the system supports de-authorization of devices. Value of 1 means user can de-authorize PCIe tunnel by writing 0 to authorized attribute under each device.
/sys/bus/thunderbolt/devices/.../domainX/iommu_dma_protection |
Defined on file sysfs-bus-thunderbolt
This attribute tells whether the system uses IOMMU for DMA protection. Value of 1 means IOMMU is used 0 means it is not (DMA protection is solely based on Thunderbolt security levels).
/sys/bus/thunderbolt/devices/.../domainX/security |
Defined on file sysfs-bus-thunderbolt
This attribute holds current Thunderbolt security level set by the system BIOS. Possible values are:
none |
All devices are automatically authorized |
user |
Devices are only authorized based on writing appropriate value to the authorized attribute |
secure |
Require devices that support secure connect at minimum. User needs to authorize each device. |
dponly |
Automatically tunnel Display port (and USB). No PCIe tunnels are created. |
usbonly |
Automatically tunnel USB controller of the connected Thunderbolt dock (and Display Port). All PCIe links downstream of the dock are removed. |
nopcie |
USB4 system where PCIe tunneling is disabled from the BIOS. |
/sys/bus/thunderbolt/devices/.../generation |
Defined on file sysfs-bus-thunderbolt
This attribute contains the generation of the Thunderbolt controller associated with the device. It will contain 4 for USB4.
/sys/bus/thunderbolt/devices/.../key |
Defined on file sysfs-bus-thunderbolt
When a devices supports Thunderbolt secure connect it will have this attribute. Writing 32 byte hex string changes authorization to use the secure connection method instead. Writing an empty string clears the key and regular connection method can be used again.
/sys/bus/thunderbolt/devices/.../maxhopid |
Defined on file sysfs-bus-thunderbolt
Only set for XDomains. The maximum HopID the other host supports as its input HopID.
/sys/bus/thunderbolt/devices/.../nvm_authenticate |
Defined on file sysfs-bus-thunderbolt
When new NVM image is written to the non-active NVM area (through non_activeX NVMem device), the authentication procedure is started by writing to this file. If everything goes well, the device is restarted with the new NVM firmware. If the image verification fails an error code is returned instead.
This file will accept writing values “1”, “2” or “3”.
Writing “1” will flush the image to the storage area and authenticate the image in one action.
Writing “2” will run some basic validation on the image and flush it to the storage area.
Writing “3” will authenticate the image that is currently written in the storage area. This is only supported with USB4 devices and retimers.
When read holds status of the last authentication operation if an error occurred during the process. This is directly the status value from the DMA configuration based mailbox before the device is power cycled. Writing 0 here clears the status.
/sys/bus/thunderbolt/devices/.../nvm_authenticate_on_disconnect |
Defined on file sysfs-bus-thunderbolt
For supported devices, automatically authenticate the new Thunderbolt image when the device is disconnected from the host system.
This file will accept writing values “1” or “2”
Writing “1” will flush the image to the storage area and prepare the device for authentication on disconnect.
Writing “2” will run some basic validation on the image and flush it to the storage area.
/sys/bus/thunderbolt/devices/.../nvm_version |
Defined on file sysfs-bus-thunderbolt
If the device has upgradeable firmware the version number is available here. Format: %x.%x, major.minor. If the device is in safe mode reading the file returns -ENODATA instead as the NVM version is not available.
/sys/bus/thunderbolt/devices/.../rx_lanes |
Defined on file sysfs-bus-thunderbolt
This attribute reports number of RX lanes the device is using simultaneously through its upstream port.
/sys/bus/thunderbolt/devices/.../rx_speed |
Defined on file sysfs-bus-thunderbolt
This attribute reports the device RX speed per lane. All RX lanes run at the same speed.
/sys/bus/thunderbolt/devices/.../tx_lanes |
Defined on file sysfs-bus-thunderbolt
This attribute reports number of TX lanes the device is using simultaneously through its upstream port.
/sys/bus/thunderbolt/devices/.../tx_speed |
Defined on file sysfs-bus-thunderbolt
This attribute reports the TX speed per lane. All TX lanes run at the same speed.
/sys/bus/thunderbolt/devices/.../unique_id |
Defined on file sysfs-bus-thunderbolt
This attribute contains unique_id string of this device. This is either read from hardware registers (UUID on newer hardware) or based on UID from the device DROM. Can be used to uniquely identify particular device.
/sys/bus/thunderbolt/devices/.../vendor |
Defined on file sysfs-bus-thunderbolt
This attribute contains vendor id of this device extracted from the device DROM.
/sys/bus/thunderbolt/devices/.../vendor_name |
Defined on file sysfs-bus-thunderbolt
This attribute contains vendor name of this device extracted from the device DROM.
/sys/bus/thunderbolt/devices/<device>:<port>.<index>/device |
Defined on file sysfs-bus-thunderbolt
Retimer device identifier read from the hardware.
/sys/bus/thunderbolt/devices/<device>:<port>.<index>/nvm_authenticate |
Defined on file sysfs-bus-thunderbolt
When new NVM image is written to the non-active NVM area (through non_activeX NVMem device), the authentication procedure is started by writing 1 to this file. If everything goes well, the device is restarted with the new NVM firmware. If the image verification fails an error code is returned instead.
When read holds status of the last authentication operation if an error occurred during the process. Format: %x.
/sys/bus/thunderbolt/devices/<device>:<port>.<index>/nvm_version |
Defined on file sysfs-bus-thunderbolt
Holds retimer NVM version number. Format: %x.%x, major.minor.
/sys/bus/thunderbolt/devices/<device>:<port>.<index>/vendor |
Defined on file sysfs-bus-thunderbolt
Retimer vendor identifier read from the hardware.
/sys/bus/thunderbolt/devices/<xdomain>.<service>/key |
Defined on file sysfs-bus-thunderbolt
This contains name of the property directory the XDomain service exposes. This entry describes the protocol in question. Following directories are already reserved by the Apple XDomain specification:
network |
IP/ethernet over Thunderbolt |
targetdm |
Target disk mode protocol over Thunderbolt |
extdisp |
External display mode protocol over Thunderbolt |
/sys/bus/thunderbolt/devices/<xdomain>.<service>/modalias |
Defined on file sysfs-bus-thunderbolt
Stores the same MODALIAS value emitted by uevent for the XDomain service. Format: tbtsvc:kSpNvNrN
/sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcid |
Defined on file sysfs-bus-thunderbolt
This contains XDomain protocol identifier the XDomain service supports.
/sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcrevs |
Defined on file sysfs-bus-thunderbolt
This contains XDomain software version the XDomain service supports.
/sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcstns |
Defined on file sysfs-bus-thunderbolt
This contains XDomain service specific settings as bitmask. Format: %x
/sys/bus/thunderbolt/devices/<xdomain>.<service>/prtcvers |
Defined on file sysfs-bus-thunderbolt
This contains XDomain protocol version the XDomain service supports.
/sys/bus/thunderbolt/devices/usb4_portX/connector |
Defined on file sysfs-bus-thunderbolt
Symlink to the USB Type-C connector. This link is only created when USB Type-C Connector Class is enabled, and only if the system firmware is capable of describing the connection between a port and its connector.
/sys/bus/thunderbolt/devices/usb4_portX/link |
Defined on file sysfs-bus-thunderbolt
Returns the current link mode. Possible values are “usb4”, “tbt” and “none”.
/sys/bus/thunderbolt/devices/usb4_portX/offline |
Defined on file sysfs-bus-thunderbolt
Writing 1 to this attribute puts the USB4 port into offline mode. Only allowed when there is nothing connected to the port (link attribute returns “none”). Once the port is in offline mode it does not receive any hotplug events. This is used to update NVM firmware of on-board retimers. Writing 0 puts the port back to online mode.
This attribute is only visible if the platform supports powering on retimers when there is no cable connected.
/sys/bus/thunderbolt/devices/usb4_portX/rescan |
Defined on file sysfs-bus-thunderbolt
When the USB4 port is in offline mode writing 1 to this attribute forces rescan of the sideband for on-board retimers. Each retimer appear under the USB4 port as if the USB4 link was up. These retimers act in the same way as if the cable was connected so upgrading their NVM firmware can be done the usual way.
/sys/bus/typec/devices/.../active |
Defined on file sysfs-bus-typec
Shows if the mode is active or not. The attribute can be used for entering/exiting the mode. Entering/exiting modes is supported as synchronous operation so write(2) to the attribute does not return until the enter/exit mode operation has finished. The attribute is notified when the mode is entered/exited so poll(2) on the attribute wakes up. Entering/exiting a mode will also generate uevent KOBJ_CHANGE.
Valid values are boolean.
/sys/bus/typec/devices/.../description |
Defined on file sysfs-bus-typec
Shows description of the mode. The description is optional for the drivers, just like with the Billboard Devices.
/sys/bus/typec/devices/.../displayport/configuration |
Defined on file sysfs-driver-typec-displayport
Shows the current DisplayPort configuration for the connector. Valid values are USB, source and sink. Source means DisplayPort source, and sink means DisplayPort sink.
All supported configurations are listed as space separated list with the active one wrapped in square brackets.
Source example:
USB [source] sink
The configuration can be changed by writing to the file
Note. USB configuration does not equal to Exit Mode. It is separate configuration defined in VESA DisplayPort Alt Mode on USB Type-C Standard. Functionally it equals to the situation where the mode has been exited (to exit the mode, see testing/sysfs-bus-typec, and use file /sys/bus/typec/devices/.../active).
/sys/bus/typec/devices/.../displayport/hpd |
Defined on file sysfs-driver-typec-displayport
VESA DisplayPort Alt Mode on USB Type-C Standard defines how HotPlugDetect(HPD) shall be supported on the USB-C connector when operating in DisplayPort Alt Mode. This is a read only node which reflects the current state of HPD.
- Valid values:
- 1: when HPD’s logical state is high (HPD_High) as defined
by VESA DisplayPort Alt Mode on USB Type-C Standard.
- 0 when HPD’s logical state is low (HPD_Low) as defined by
VESA DisplayPort Alt Mode on USB Type-C Standard.
/sys/bus/typec/devices/.../displayport/pin_assignment |
Defined on file sysfs-driver-typec-displayport
VESA DisplayPort Alt Mode on USB Type-C Standard defines six different pin assignments for USB Type-C connector that are labeled A, B, C, D, E, and F. The supported pin assignments are listed as space separated list with the active one wrapped in square brackets.
Example:
C [D]
Pin assignment can be changed by writing to the file. It is possible to set pin assignment before configuration has been set, but the assignment will not be active before the connector is actually configured.
Note. As of VESA DisplayPort Alt Mode on USB Type-C Standard version 1.0b, pin assignments A, B, and F are deprecated. Only pin assignment D can now carry simultaneously one channel of USB SuperSpeed protocol. From user perspective pin assignments C and E are equal, where all channels on the connector are used for carrying DisplayPort protocol (allowing higher resolutions).
/sys/bus/typec/devices/.../mode |
Defined on file sysfs-bus-typec
The index number of the mode returned by Discover Modes USB Power Delivery command. Depending on the alternate mode, the mode index may be significant.
With some alternate modes (SVIDs), the mode index is assigned for specific functionality in the specification for that alternate mode.
With other alternate modes, the mode index values are not assigned, and can not be therefore used for identification. When the mode index is not assigned, identifying the alternate mode must be done with either mode VDO or the description.
/sys/bus/typec/devices/.../svid |
Defined on file sysfs-bus-typec
The Standard or Vendor ID (SVID) assigned by USB-IF for this alternate mode.
/sys/bus/typec/devices/.../vdo |
Defined on file sysfs-bus-typec
Shows the VDO in hexadecimal returned by Discover Modes command for this mode.
/sys/bus/usb-serial/drivers/.../new_id |
Defined on file sysfs-bus-usb
For serial USB drivers, this attribute appears under the extra bus folder “usb-serial” in sysfs; apart from that difference, all descriptions from the entry “/sys/bus/usb/drivers/.../new_id” apply.
/sys/bus/usb/.../decimals |
Defined on file sysfs-bus-usb-devices-usbsevseg
Controls the decimal places on the device.
To set the nth decimal place, give this field
the value of 10 ** n
. Assume this field has
the value k and has 1 or more decimal places set,
to set the mth place (where m is not already set),
change this fields value to k + 10 ** m
.
/sys/bus/usb/.../mode_msb |
/sys/bus/usb/.../mode_lsb |
Defined on file sysfs-bus-usb-devices-usbsevseg
Controls the devices display mode. For a 6 character display the values are
MSB 0x06; LSB 0x3F, and
for an 8 character display the values are
MSB 0x08; LSB 0xFF.
/sys/bus/usb/.../powered |
Defined on file sysfs-bus-usb-devices-usbsevseg
Controls whether the device’s display will powered. A value of 0 is off and a non-zero value is on.
/sys/bus/usb/.../text |
Defined on file sysfs-bus-usb-devices-usbsevseg
The text (or data) for the device to display
/sys/bus/usb/.../textmode |
Defined on file sysfs-bus-usb-devices-usbsevseg
Controls the way the device interprets its text buffer. raw: each character controls its segment manually hex: each character is between 0-15 ascii: each character is between ‘0’-‘9’ and ‘A’-‘F’.
/sys/bus/usb/device/.../authorized |
Defined on file sysfs-bus-usb
Authorized devices are available for use by device drivers, non-authorized one are not. By default, wired USB devices are authorized.
/sys/bus/usb/devices/.../<hub_interface>/port<X> |
Defined on file sysfs-bus-usb
The /sys/bus/usb/devices/.../<hub_interface>/port<X> is usb port device’s sysfs directory.
/sys/bus/usb/devices/.../<hub_interface>/port<X>/connect_type |
Defined on file sysfs-bus-usb
Some platforms provide usb port connect types through ACPI. This attribute is to expose these information to user space. The file will read “hotplug”, “hardwired” and “not used” if the information is available, and “unknown” otherwise.
/sys/bus/usb/devices/.../<hub_interface>/port<X>/connector |
Defined on file sysfs-bus-usb
Link to the USB Type-C connector when available. This link is only created when USB Type-C Connector Class is enabled, and only if the system firmware is capable of describing the connection between a port and its connector.
/sys/bus/usb/devices/.../<hub_interface>/port<X>/disable |
Defined on file sysfs-bus-usb
This file controls the state of a USB port, including Vbus power output (but only on hubs that support power switching -- most hubs don’t support it). If a port is disabled, the port is unusable: Devices attached to the port will not be detected, initialized, or enumerated.
/sys/bus/usb/devices/.../<hub_interface>/port<X>/early_stop |
Defined on file sysfs-bus-usb
Some USB hosts have some watchdog mechanisms so that the device may enter ramdump if it takes a long time during port initialization. This attribute allows each port just has two attempts so that the port initialization will be failed quickly. In addition, if a port which is marked with early_stop has failed to initialize, it will ignore all future connections until this attribute is clear.
/sys/bus/usb/devices/.../<hub_interface>/port<X>/location |
Defined on file sysfs-bus-usb
Some platforms provide usb port physical location through firmware. This is used by the kernel to pair up logical ports mapping to the same physical connector. The attribute exposes the raw location value as a hex integer.
/sys/bus/usb/devices/.../<hub_interface>/port<X>/over_current_count |
Defined on file sysfs-bus-usb
Most hubs are able to detect over-current situations on their ports and report them to the kernel. This attribute is to expose the number of over-current situation occurred on a specific port to user space. This file will contain an unsigned 32 bit value which wraps to 0 after its maximum is reached. This file supports poll() for monitoring changes to this value in user space.
Any time this value changes the corresponding hub device will send a udev event with the following attributes:
OVER_CURRENT_PORT=/sys/bus/usb/devices/.../<hub_interface>/port<X>
OVER_CURRENT_COUNT=[current value of this sysfs attribute]
/sys/bus/usb/devices/.../<hub_interface>/port<X>/quirks |
Defined on file sysfs-bus-usb
In some cases, we care about time-to-active for devices connected on a specific port (e.g. non-standard USB port like pogo pins), where the device to be connected is known in advance, and behaves well according to the specification. This attribute is a bit-field that controls the behavior of a specific port:
Bit 0 of this field selects the “old” enumeration scheme, as it is considerably faster (it only causes one USB reset instead of 2).
The old enumeration scheme can also be selected globally using /sys/module/usbcore/parameters/old_scheme_first, but it is often not desirable as the new scheme was introduced to increase compatibility with more devices.
Bit 1 reduces TRSTRCY to the 10 ms that are required by the USB 2.0 specification, instead of the 50 ms that are normally used to help make enumeration work better on some high speed devices.
/sys/bus/usb/devices/.../<hub_interface>/port<X>/state |
Defined on file sysfs-bus-usb
Indicates current state of the USB device attached to the port. Valid states are: ‘not-attached’, ‘attached’, ‘powered’, ‘reconnecting’, ‘unauthenticated’, ‘default’, ‘addressed’, ‘configured’, and ‘suspended’. This file supports poll() to monitor the state change from user space.
/sys/bus/usb/devices/.../<hub_interface>/port<X>/usb3_lpm_permit |
Defined on file sysfs-bus-usb
Some USB3.0 devices are not friendly to USB3 LPM. usb3_lpm_permit attribute allows enabling/disabling usb3 lpm of a port. It takes effect both before and after a usb device is enumerated. Supported values are “0” if both u1 and u2 are NOT permitted, “u1” if only u1 is permitted, “u2” if only u2 is permitted, “u1_u2” if both u1 and u2 are permitted.
/sys/bus/usb/devices/.../enable_compliance |
Defined on file sysfs-bus-usb-lvstest
Write to this node to set the port to compliance mode to test with Link Layer Validation device. It is needed for TD.7.34.
/sys/bus/usb/devices/.../get_dev_desc |
Defined on file sysfs-bus-usb-lvstest
Write to this node to issue “Get Device Descriptor” for Link Layer Validation device. It is needed for TD.7.06.
/sys/bus/usb/devices/.../hot_reset |
Defined on file sysfs-bus-usb-lvstest
Write to this node to issue “Reset” for Link Layer Validation device. It is needed for TD.7.29, TD.7.31, TD.7.34 and TD.7.35.
/sys/bus/usb/devices/.../ltm_capable |
Defined on file sysfs-bus-usb
USB 3.0 devices may optionally support Latency Tolerance Messaging (LTM). They indicate their support by setting a bit in the bmAttributes field of their SuperSpeed BOS descriptors. If that bit is set for the device, ltm_capable will read “yes”. If the device doesn’t support LTM, the file will read “no”. 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.
/sys/bus/usb/devices/.../power/usb2_hardware_lpm |
Defined on file sysfs-bus-usb
If CONFIG_PM is set and a USB 2.0 lpm-capable device is plugged in to a xHCI host which support link PM, it will perform a LPM test; if the test is passed and host supports USB2 hardware LPM (xHCI 1.0 feature), USB2 hardware LPM will be enabled for the device and the USB device directory will contain a file named power/usb2_hardware_lpm. The file holds a string value (enable or disable) indicating whether or not USB2 hardware LPM is enabled for the device. Developer can write y/Y/1 or n/N/0 to the file to enable/disable the feature.
/sys/bus/usb/devices/.../power/usb2_lpm_besl |
Defined on file sysfs-bus-usb
USB 2.0 devices that support hardware link power management (LPM) L1 sleep state now use a best effort service latency value (BESL) to indicate the best effort to resumption of service to the device after the initiation of the resume event. If the device does not have a preferred besl value then the host can select one instead. This usb2_lpm_besl attribute allows to tune the host selected besl value in order to tune power saving and service latency.
Supported values are 0 - 15. More information on how besl values map to microseconds can be found in USB 2.0 ECN Errata for Link Power Management, section 4.10)
/sys/bus/usb/devices/.../power/usb2_lpm_l1_timeout |
Defined on file sysfs-bus-usb
USB 2.0 devices may support hardware link power management (LPM) L1 sleep state. The usb2_lpm_l1_timeout attribute allows tuning the timeout for L1 inactivity timer (LPM timer), e.g. needed inactivity time before host requests the device to go to L1 sleep. Useful for power management tuning. Supported values are 0 - 65535 microseconds.
/sys/bus/usb/devices/.../power/usb3_hardware_lpm_u1 |
Defined on file sysfs-bus-usb
If CONFIG_PM is set and a USB 3.0 lpm-capable device is plugged in to a xHCI host which supports link PM, it will check if U1 and U2 exit latencies have been set in the BOS descriptor; if the check is passed and the host supports USB3 hardware LPM, USB3 hardware LPM will be enabled for the device and the USB device directory will contain two files named power/usb3_hardware_lpm_u1 and power/usb3_hardware_lpm_u2. These files hold a string value (enable or disable) indicating whether or not USB3 hardware LPM U1 or U2 is enabled for the device.
/sys/bus/usb/devices/.../rx_lanes |
Defined on file sysfs-bus-usb
Number of rx lanes the device is using. USB 3.2 adds Dual-lane support, 2 rx and 2 tx lanes over Type-C. Inter-Chip SSIC devices support asymmetric lanes up to 4 lanes per direction. Devices before USB 3.2 are single lane (rx_lanes = 1)
/sys/bus/usb/devices/.../tx_lanes |
Defined on file sysfs-bus-usb
Number of tx lanes the device is using. USB 3.2 adds Dual-lane support, 2 rx and 2 tx -lanes over Type-C. Inter-Chip SSIC devices support asymmetric lanes up to 4 lanes per direction. Devices before USB 3.2 are single lane (tx_lanes = 1)
/sys/bus/usb/devices/.../typec |
Defined on file sysfs-bus-usb
Symlink to the USB Type-C partner device. USB Type-C partner represents the component that communicates over the Configuration Channel (CC signal on USB Type-C connectors and cables) with the local port.
/sys/bus/usb/devices/.../u1_timeout |
Defined on file sysfs-bus-usb-lvstest
Set “U1 timeout” for the downstream port where Link Layer Validation device is connected. Timeout value must be between 0 and 127. It is needed for TD.7.18, TD.7.19, TD.7.20 and TD.7.21.
/sys/bus/usb/devices/.../u2_timeout |
Defined on file sysfs-bus-usb-lvstest
Set “U2 timeout” for the downstream port where Link Layer Validation device is connected. Timeout value must be between 0 and 127. It is needed for TD.7.18, TD.7.19, TD.7.20 and TD.7.21.
/sys/bus/usb/devices/.../u3_entry |
Defined on file sysfs-bus-usb-lvstest
Write to this node to issue “U3 entry” for Link Layer Validation device. It is needed for TD.7.35 and TD.7.36.
/sys/bus/usb/devices/.../u3_exit |
Defined on file sysfs-bus-usb-lvstest
Write to this node to issue “U3 exit” for Link Layer Validation device. It is needed for TD.7.36.
/sys/bus/usb/devices/.../warm_reset |
Defined on file sysfs-bus-usb-lvstest
Write to this node to issue “Warm Reset” for Link Layer Validation device. It may be needed to properly reset an xHCI 1.1 host port if compliance mode needed to be explicitly enabled.
/sys/bus/usb/devices/<INTERFACE>/authorized |
Defined on file sysfs-bus-usb
This allows to authorize (1) or deauthorize (0) individual interfaces instead a whole device in contrast to the device authorization. If a deauthorized interface will be authorized so the driver probing must be triggered manually by writing INTERFACE to /sys/bus/usb/drivers_probe This allows to avoid side-effects with drivers that need multiple interfaces.
A deauthorized interface cannot be probed or claimed.
/sys/bus/usb/devices/<INTERFACE>/wireless_status |
Defined on file sysfs-bus-usb
Some USB devices use a USB receiver dongle to communicate wirelessly with their device using proprietary protocols. This attribute allows user-space to know whether the device is connected to its receiver dongle, and, for example, consider the device to be absent when choosing whether to show the device’s battery, show a headset in a list of outputs, or show an on-screen keyboard if the only wireless keyboard is turned off. This attribute is not to be used to replace protocol specific statuses available in WWAN, WLAN/Wi-Fi, Bluetooth, etc. If the device does not use a receiver dongle with a wireless device, then this attribute will not exist.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/country |
/sys/class/bluetooth/hci<addr>/<hid-bus>:<vendor-id>:<product-id>.<num>/country |
/sys/class/hidraw/hidraw<num>/device/country |
Defined on file sysfs-driver-hid
When read, this file returns the hex integer value in ASCII of the device’s HID country code (e.g. 21 for US). This file cannot be written.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/dragging |
Defined on file sysfs-driver-hid-lenovo
If this setting is enabled, it is possible to do dragging by pressing the trackpoint. This requires press_to_select to be enabled.
Values are 0 or 1.
Applies to Thinkpad USB Keyboard with TrackPoint.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/fb_update_rate |
Defined on file sysfs-driver-hid-picolcd
Make it possible to adjust defio refresh rate.
Reading: returns list of available refresh rates (expressed in Hz), the active refresh rate being enclosed in brackets (‘[’ and ‘]’)
Writing: accepts new refresh rate expressed in integer Hz within permitted rates.
Note: As device can barely do 2 complete refreshes a second it only makes sense to adjust this value if only one or two tiles get changed and it’s not appropriate to expect the application to flush its tiny changes explicitly at higher than default rate.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/fn_lock |
Defined on file sysfs-driver-hid-lenovo
This setting controls whether Fn Lock is enabled on the keyboard (i.e. if F1 is Mute or F1)
Values are 0 or 1
Applies to ThinkPad Compact (USB|Bluetooth) Keyboard with TrackPoint.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/kone/roccatkone<minor>/actual_dpi |
Defined on file sysfs-driver-hid-roccat-kone
It is possible to switch the dpi setting of the mouse with the press of a button.
When read, this file returns the raw number of the actual dpi setting reported by the mouse. This number has to be further processed to receive the real dpi value:
VALUE |
DPI |
---|---|
1 |
800 |
2 |
1200 |
3 |
1600 |
4 |
2000 |
5 |
2400 |
6 |
3200 |
This file is readonly.
Users: http://roccat.sourceforge.net
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/kone/roccatkone<minor>/actual_profile |
Defined on file sysfs-driver-hid-roccat-kone
When read, this file returns the number of the actual profile.
This file is readonly.
Users: http://roccat.sourceforge.net
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/kone/roccatkone<minor>/firmware_version |
Defined on file sysfs-driver-hid-roccat-kone
When read, this file returns the raw integer version number of the firmware reported by the mouse. Using the integer value eases further usage in other programs. To receive the real version number the decimal point has to be shifted 2 positions to the left. E.g. a returned value of 138 means 1.38
This file is readonly.
Users: http://roccat.sourceforge.net
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/kone/roccatkone<minor>/profile[1-5] |
Defined on file sysfs-driver-hid-roccat-kone
The mouse can store 5 profiles which can be switched by the press of a button. A profile holds information like button mappings, sensitivity, the colors of the 5 leds and light effects.
When read, these files return the respective profile. The returned data is 975 bytes in size.
When written, this file lets one write the respective profile data back to the mouse. The data has to be 975 bytes long.
The mouse will reject invalid data, whereas the profile number stored in the profile doesn’t need to fit the number of the store.
Users: http://roccat.sourceforge.net
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/kone/roccatkone<minor>/settings |
Defined on file sysfs-driver-hid-roccat-kone
When read, this file returns the settings stored in the mouse. The size of the data is 36 bytes and holds information like the startup_profile, tcu state and calibration_data.
When written, this file lets write settings back to the mouse. The data has to be 36 bytes long. The mouse will reject invalid data.
Users: http://roccat.sourceforge.net
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/kone/roccatkone<minor>/startup_profile |
Defined on file sysfs-driver-hid-roccat-kone
The integer value of this attribute ranges from 1 to 5.
When read, this attribute returns the number of the profile that’s active when the mouse is powered on.
When written, this file sets the number of the startup profile and the mouse activates this profile immediately.
Users: http://roccat.sourceforge.net
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/kone/roccatkone<minor>/tcu |
Defined on file sysfs-driver-hid-roccat-kone
The mouse has a “Tracking Control Unit” which lets the user calibrate the laser power to fit the mousepad surface. When read, this file returns the current state of the TCU, where 0 means off and 1 means on.
Writing 0 in this file will switch the TCU off.
Writing 1 in this file will start the calibration which takes around 6 seconds to complete and activates the TCU.
Users: http://roccat.sourceforge.net
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/kone/roccatkone<minor>/weight |
Defined on file sysfs-driver-hid-roccat-kone
The mouse can be equipped with one of four supplied weights ranging from 5 to 20 grams which are recognized by the mouse and its value can be read out. When read, this file returns the raw value returned by the mouse which eases further processing in other software.
The values map to the weights as follows:
VALUE |
WEIGHT |
---|---|
0 |
none |
1 |
5g |
2 |
10g |
3 |
15g |
4 |
20g |
This file is readonly.
Users: http://roccat.sourceforge.net
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/operation_mode |
Defined on file sysfs-driver-hid-picolcd
Make it possible to switch the PicoLCD device between LCD (firmware) and bootloader (flasher) operation modes.
Reading: returns list of available modes, the active mode being enclosed in brackets (‘[’ and ‘]’)
Writing: causes operation mode switch. Permitted values are the non-active mode names listed when read.
Note: when switching mode the current PicoLCD HID device gets disconnected and reconnects after above delay (see attribute operation_mode_delay for its value).
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/operation_mode_delay |
Defined on file sysfs-driver-hid-picolcd
Delay PicoLCD waits before restarting in new mode when operation_mode has changed.
Reading/Writing: It is expressed in ms and permitted range is 0..30000ms.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/press_speed |
Defined on file sysfs-driver-hid-lenovo
This setting controls how fast the trackpoint needs to be pressed to generate a mouse click if press_to_select is enabled.
Values are decimal integers from 1 (slowest) to 255 (fastest).
Applies to Thinkpad USB Keyboard with TrackPoint.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/press_to_select |
Defined on file sysfs-driver-hid-lenovo
This controls if mouse clicks should be generated if the trackpoint is quickly pressed. How fast this press has to be is being controlled by press_speed.
Values are 0 or 1.
Applies to Thinkpad USB Keyboard with TrackPoint.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/quirks |
Defined on file sysfs-driver-hid-multitouch
The integer value of this attribute corresponds to the quirks actually in place to handle the device’s protocol. When read, this attribute returns the current settings (see MT_QUIRKS_* in hid-multitouch.c). When written this attribute change on the fly the quirks, then the protocol to handle the device.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/release_to_select |
Defined on file sysfs-driver-hid-lenovo
For details regarding this setting please refer to http://www.pc.ibm.com/ww/healthycomputing/trkpntb.html Values are 0 or 1. Applies to Thinkpad USB Keyboard with TrackPoint.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/report_descriptor |
/sys/class/bluetooth/hci<addr>/<hid-bus>:<vendor-id>:<product-id>.<num>/report_descriptor |
/sys/class/hidraw/hidraw<num>/device/report_descriptor |
Defined on file sysfs-driver-hid
When read, this file returns the device’s raw binary HID report descriptor. This file cannot be written.
Users: HIDAPI library (http://www.signal11.us/oss/hidapi)
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/select_right |
Defined on file sysfs-driver-hid-lenovo
This setting controls if the mouse click events generated by pressing the trackpoint (if press_to_select is enabled) generate a left or right mouse button click.
Values are 0 or 1.
Applies to Thinkpad USB Keyboard with TrackPoint.
/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/sensitivity |
Defined on file sysfs-driver-hid-lenovo
This file contains the trackpoint sensitivity. Values are decimal integers from 1 (lowest sensitivity) to 255 (highest sensitivity). Applies to Thinkpad USB Keyboard with TrackPoint.
/sys/bus/usb/devices/usbX/avoid_reset_quirk |
Defined on file sysfs-bus-usb
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)
/sys/bus/usb/devices/usbX/bAlternateSetting |
Defined on file sysfs-bus-usb
The current interface alternate setting number, in decimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bConfigurationValue |
Defined on file sysfs-bus-usb
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:
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bDeviceClass |
Defined on file sysfs-bus-usb
Class code of the device, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bDeviceProtocol |
Defined on file sysfs-bus-usb
Protocol code of the device, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bDeviceSubClass |
Defined on file sysfs-bus-usb
Subclass code of the device, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bInterfaceClass |
Defined on file sysfs-bus-usb
Class code of the interface, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bInterfaceNumber |
Defined on file sysfs-bus-usb
Interface number, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bInterfaceProtocol |
Defined on file sysfs-bus-usb
Protocol code of the interface, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bInterfaceSubClass |
Defined on file sysfs-bus-usb
Subclass code of the interface, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bMaxPacketSize0 |
Defined on file sysfs-bus-usb
Maximum endpoint 0 packet size, in decimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bMaxPower |
Defined on file sysfs-bus-usb
Maximum power consumption of the active configuration of the device, in miliamperes.
/sys/bus/usb/devices/usbX/bNumConfigurations |
Defined on file sysfs-bus-usb
Number of the possible configurations of the device, in decimal. The current configuration is controlled via:
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bNumEndpoints |
Defined on file sysfs-bus-usb
Number of endpoints used on this interface, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bNumInterfaces |
Defined on file sysfs-bus-usb
Number of interfaces on this device, in decimal.
/sys/bus/usb/devices/usbX/bcdDevice |
Defined on file sysfs-bus-usb
The device’s release number, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bmAttributes |
Defined on file sysfs-bus-usb
Attributes of the current configuration, in hexadecimal.
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/bos_descriptors |
Defined on file sysfs-bus-usb
Binary file containing the cached binary device object store (BOS) of the device. This consists of the BOS descriptor followed by the set of device capability descriptors. All descriptors read from this file are in bus-endian format. Note that the kernel will not request the BOS from a device if its bcdUSB is less than 0x0201.
/sys/bus/usb/devices/usbX/busnum |
Defined on file sysfs-bus-usb
Number of the bus.
/sys/bus/usb/devices/usbX/configuration |
Defined on file sysfs-bus-usb
Contents of the string descriptor associated with the current configuration. It may include the firmware version of a device and/or its serial number.
/sys/bus/usb/devices/usbX/descriptors |
Defined on file sysfs-bus-usb
Contains the interface descriptors, in binary.
/sys/bus/usb/devices/usbX/devnum |
Defined on file sysfs-bus-usb
USB interface device number, in decimal.
/sys/bus/usb/devices/usbX/devpath |
Defined on file sysfs-bus-usb
String containing the USB interface device path.
/sys/bus/usb/devices/usbX/devspec |
Defined on file sysfs-bus-usb
Displays the Device Tree Open Firmware node of the interface.
/sys/bus/usb/devices/usbX/ep_<N>/bEndpointAddress |
Defined on file sysfs-bus-usb
The address of the endpoint described by this descriptor, in hexadecimal. The endpoint direction on this bitmapped field is also shown at:
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/ep_<N>/bInterval |
Defined on file sysfs-bus-usb
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.
/sys/bus/usb/devices/usbX/ep_<N>/bLength |
Defined on file sysfs-bus-usb
Number of bytes of the endpoint descriptor, in hexadecimal.
/sys/bus/usb/devices/usbX/ep_<N>/bmAttributes |
Defined on file sysfs-bus-usb
Attributes which apply to the endpoint as described on its descriptor, in hexadecimal. The endpoint type on this bitmapped field is also shown at:
See USB specs for its meaning.
/sys/bus/usb/devices/usbX/ep_<N>/direction |
Defined on file sysfs-bus-usb
Direction of the endpoint. Can be:
both (on control endpoints)
in
out
/sys/bus/usb/devices/usbX/ep_<N>/interval |
Defined on file sysfs-bus-usb
Interval for polling endpoint for data transfers, in milisseconds or microseconds.
/sys/bus/usb/devices/usbX/ep_<N>/type |
Defined on file sysfs-bus-usb
Descriptor type. Can be:
Control
Isoc
Bulk
Interrupt
unknown
/sys/bus/usb/devices/usbX/ep_<N>/wMaxPacketSize |
Defined on file sysfs-bus-usb
Maximum packet size this endpoint is capable of sending or receiving, in hexadecimal.
/sys/bus/usb/devices/usbX/idProduct |
Defined on file sysfs-bus-usb
Product ID, in hexadecimal.
/sys/bus/usb/devices/usbX/idVendor |
Defined on file sysfs-bus-usb
Vendor ID, in hexadecimal.
/sys/bus/usb/devices/usbX/interface_authorized_default |
Defined on file sysfs-bus-usb
This is used as value that determines if interfaces would be authorized by default. The value can be 1 or 0. It’s by default 1.
/sys/bus/usb/devices/usbX/manufacturer |
Defined on file sysfs-bus-usb
Vendor specific string containing the name of the manufacturer of the device.
/sys/bus/usb/devices/usbX/maxchild |
Defined on file sysfs-bus-usb
Number of ports of an USB hub
/sys/bus/usb/devices/usbX/persist |
Defined on file sysfs-bus-usb
Keeps the device even if it gets disconnected.
/sys/bus/usb/devices/usbX/power/active_duration |
Defined on file sysfs-bus-usb
The total time the device has not been suspended.
/sys/bus/usb/devices/usbX/power/autosuspend |
Defined on file sysfs-bus-usb
Time in milliseconds for the device to autosuspend. If the value is negative, then autosuspend is prevented.
(read/write)
/sys/bus/usb/devices/usbX/power/connected_duration |
Defined on file sysfs-bus-usb
The total time (in msec) that the device has been connected.
/sys/bus/usb/devices/usbX/power/level |
Defined on file sysfs-bus-usb
DESCRIPTION MISSING for /sys/bus/usb/devices/usbX/power/level
/sys/bus/usb/devices/usbX/product |
Defined on file sysfs-bus-usb
Vendor specific string containing the name of the device’s product.
/sys/bus/usb/devices/usbX/speed |
Defined on file sysfs-bus-usb
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
/sys/bus/usb/devices/usbX/supports_autosuspend |
Defined on file sysfs-bus-usb
Returns 1 if the device doesn’t support autosuspend. Otherwise, returns 0.
/sys/bus/usb/devices/usbX/urbnum |
Defined on file sysfs-bus-usb
Number of URBs submitted for the whole device.
/sys/bus/usb/devices/usbX/version |
Defined on file sysfs-bus-usb
String containing the USB device version, as encoded at the BCD descriptor.
/sys/bus/usb/drivers/.../new_id |
Defined on file sysfs-bus-usb
Writing a device ID to this file will attempt to dynamically add a new device ID to a USB device driver. This may allow the driver to support more hardware than was included in the driver’s static device ID support table at compile time. The format for the device ID is: idVendor idProduct bInterfaceClass RefIdVendor RefIdProduct The vendor ID and device ID fields are required, the rest is optional. The Ref* tuple can be used to tell the driver to use the same driver_data for the new device as it is used for the reference device. Upon successfully adding an ID, the driver will probe for the device and attempt to bind to it. For example:
# echo "8086 10f5" > /sys/bus/usb/drivers/foo/new_id
Here add a new device (0458:7045) using driver_data from an already supported device (0458:704c):
# echo "0458 7045 0 0458 704c" > /sys/bus/usb/drivers/foo/new_id
Reading from this file will list all dynamically added device IDs in the same format, with one entry per line. For example:
# cat /sys/bus/usb/drivers/foo/new_id
8086 10f5
dead beef 06
f00d cafe
The list will be truncated at PAGE_SIZE bytes due to sysfs restrictions.
/sys/bus/usb/drivers/.../remove_id |
Defined on file sysfs-bus-usb
Writing a device ID to this file will remove an ID that was dynamically added via the new_id sysfs entry. The format for the device ID is: idVendor idProduct. After successfully removing an ID, the driver will no longer support the device. This is useful to ensure auto probing won’t match the driver to the device. For example: # echo “046d c315” > /sys/bus/usb/drivers/foo/remove_id
Reading from this file will list the dynamically added device IDs, exactly like reading from the entry “/sys/bus/usb/drivers/.../new_id”
/sys/bus/vdpa/devices/.../driver_override |
Defined on file sysfs-bus-vdpa
This file allows the driver for a device to be specified. When specified, only a driver with a name matching the value written to driver_override will have an opportunity to bind to the device. The override is specified by writing a string to the driver_override file (echo vhost-vdpa > driver_override) and may be cleared with an empty string (echo > driver_override). This returns the device to standard matching rules binding. Writing to driver_override does not automatically unbind the device from its current driver or make any attempt to automatically load the specified driver. If no driver with a matching name is currently loaded in the kernel, the device will not bind to any driver. This also allows devices to opt-out of driver binding using a driver_override name such as “none”. Only a single driver may be specified in the override, there is no support for parsing delimiters.
/sys/bus/vdpa/driver_probe |
Defined on file sysfs-bus-vdpa
Writing a device name to this file will cause the kernel binds devices to a compatible driver.
This can be useful when /sys/bus/vdpa/drivers_autoprobe is disabled.
/sys/bus/vdpa/drivers/.../bind |
Defined on file sysfs-bus-vdpa
Writing a device name to this file will cause the driver to attempt to bind to the device. This is useful for overriding default bindings.
/sys/bus/vdpa/drivers/.../unbind |
Defined on file sysfs-bus-vdpa
Writing a device name to this file will cause the driver to attempt to unbind from the device. This may be useful when overriding default bindings.
/sys/bus/vdpa/drivers_autoprobe |
Defined on file sysfs-bus-vdpa
This file determines whether new devices are immediately bound to a driver after the creation. It initially contains 1, which means the kernel automatically binds devices to a compatible driver immediately after they are created.
Writing “0” to this file disable this feature, any other string enable it.
/sys/bus/vmbus/devices/.../driver_override |
Defined on file sysfs-bus-vmbus
This file allows the driver for a device to be specified which will override standard static and dynamic ID matching. When specified, only a driver with a name matching the value written to driver_override will have an opportunity to bind to the device. The override is specified by writing a string to the driver_override file (echo uio_hv_generic > driver_override) and may be cleared with an empty string (echo > driver_override). This returns the device to standard matching rules binding. Writing to driver_override does not automatically unbind the device from its current driver or make any attempt to automatically load the specified driver. If no driver with a matching name is currently loaded in the kernel, the device will not bind to any driver. This also allows devices to opt-out of driver binding using a driver_override name such as “none”. Only a single driver may be specified in the override, there is no support for parsing delimiters.
/sys/bus/w1/devices/.../alarms |
Defined on file sysfs-driver-w1_therm
(RW) read or write TH and TL (Temperature High an Low) alarms. Values shall be space separated and in the device range (typical -55 degC to 125 degC), if not values will be trimmed to device min/max capabilities. Values are integer as they are stored in a 8bit register in the device. Lowest value is automatically put to TL. Once set, alarms could be search at master level, refer to Introduction to the 1-wire (w1) subsystem for detailed information
Users: any user space application which wants to communicate with w1_term device
/sys/bus/w1/devices/.../conv_time |
Defined on file sysfs-driver-w1_therm
(RW) Get, set, or measure a temperature conversion time. The setting remains active until a resolution change. Then it is reset to default (datasheet) conversion time for a new resolution.
- read:
Actual conversion time in milliseconds.
- write:
- ‘0’:
Set the default conversion time from the datasheet.
- ‘1’:
Measure and set the conversion time. Make a single temperature conversion, measure an actual value. Increase it by 20% for temperature range. A new conversion time can be obtained by reading this same attribute.
- other positive value:
Set the conversion time in milliseconds.
Users: An application using the w1_term device
/sys/bus/w1/devices/.../eeprom_cmd |
Defined on file sysfs-driver-w1_therm
(WO) writing that file will either trigger a save of the device data to its embedded EEPROM, either restore data embedded in device EEPROM. Be aware that devices support limited EEPROM writing cycles (typical 50k)
‘save’: save device RAM to EEPROM
‘restore’: restore EEPROM data in device RAM
Users: any user space application which wants to communicate with w1_term device
/sys/bus/w1/devices/.../ext_power |
Defined on file sysfs-driver-w1_therm
(RO) return the power status by asking the device
‘0’: device parasite powered
‘1’: device externally powered
‘-xx’: xx is kernel error when reading power status
Users: any user space application which wants to communicate with w1_term device
/sys/bus/w1/devices/.../features |
Defined on file sysfs-driver-w1_therm
(RW) Control optional driver settings. Bit masks to read/write (bitwise OR):
1 |
Enable check for conversion success. If byte 6 of scratchpad memory is 0xC after conversion, and temperature reads 85.00 (powerup value) or 127.94 (insufficient power) - return a conversion error. |
2 |
Enable poll for conversion completion. Generate read cycles after the conversion start and wait for 1’s. In parasite power mode this feature is not available. |
- read:
Currently selected features.
- write:
Select features.
Users: An application using the w1_term device
/sys/bus/w1/devices/.../resolution |
Defined on file sysfs-driver-w1_therm
(RW) get or set the device resolution (on supported devices, if not, this entry is not present). Note that the resolution will be changed only in device RAM, so it will be cleared when power is lost. Trigger a ‘save’ to EEPROM command to keep values after power-on. Read or write are :
‘9..14’: device resolution in bit or resolution to set in bit
‘-xx’: xx is kernel error when reading the resolution
Anything else: do nothing
Some DS18B20 clones are fixed in 12-bit resolution, so the actual resolution is read back from the chip and verified. Error is reported if the results differ.
Users: any user space application which wants to communicate with w1_term device
/sys/bus/w1/devices/.../temperature |
Defined on file sysfs-driver-w1_therm
(RO) return the temperature in 1/1000 degC.
If a bulk read has been triggered, it will directly return the temperature computed when the bulk read occurred, if available. If not yet available, nothing is returned (a debug kernel message is sent), you should retry later on.
If no bulk read has been triggered, it will trigger a conversion and send the result. Note that the conversion duration depend on the resolution (if device support this feature). It takes 94ms in 9bits resolution, 750ms for 12bits.
Users: any user space application which wants to communicate with w1_term device
/sys/bus/w1/devices/.../w1_slave |
Defined on file sysfs-driver-w1_therm
(RW) return the temperature in 1/1000 degC. read: return 2 lines with the hexa output data sent on the bus, return the CRC check and temperature in 1/1000 degC write:
‘0’ : save the 2 or 3 bytes to the device EEPROM (i.e. TH, TL and config register)
‘9..14’ : set the device resolution in RAM (if supported)
Anything else: do nothing
refer to Kernel driver w1_therm for detailed information.
Users: any user space application which wants to communicate with w1_term device
/sys/bus/w1/devices/19-<id>/speed |
Defined on file sysfs-driver-w1_ds28e17
When written, this file sets the I2C speed on the connected DS28E17 chip. When read, it reads the current setting from the DS28E17 chip.
Valid values: 100, 400, 900 [kBaud].
Default 100, can be set by w1_ds28e17.speed= module parameter.
Users: w1_ds28e17 driver
/sys/bus/w1/devices/19-<id>/stretch |
Defined on file sysfs-driver-w1_ds28e17
When written, this file sets the multiplier used to calculate the busy timeout for I2C operations on the connected DS28E17 chip. When read, returns the current setting. Valid values: 1 to 9.
Default 1, can be set by w1_ds28e17.stretch= module parameter.
Users: w1_ds28e17 driver
/sys/bus/w1/devices/w1_bus_masterXX/therm_bulk_read |
Defined on file sysfs-driver-w1_therm
(RW) trigger a bulk read conversion. read the status
- read:
- ‘-1’:
conversion in progress on at least 1 sensor
- ‘1’ :
conversion complete but at least one sensor value has not been read yet
- ‘0’ :
no bulk operation. Reading temperature will trigger a conversion on each device
- write:
‘trigger’: trigger a bulk read on all supporting devices on the bus
Note that if a bulk read is sent but one sensor is not read immediately, the next access to temperature on this device will return the temperature measured at the time of issue of the bulk read command (not the current temperature).
Users: any user space application which wants to communicate with w1_term device
/sys/bus/wmi/devices/.../driver_override |
Defined on file sysfs-bus-wmi
This file allows the driver for a device to be specified which will override standard ID table matching. When specified, only a driver with a name matching the value written to driver_override will have an opportunity to bind to the device. The override is specified by writing a string to the driver_override file (echo wmi-event-dummy > driver_override). The override may be cleared with an empty string (echo > driver_override) which returns the device to standard matching rules binding. Writing to driver_override does not automatically unbind the device from its current driver or make any attempt to automatically load the specified driver. If no driver with a matching name is currently loaded in the kernel, the device will not bind to any driver. This also allows devices to opt-out of driver binding using a driver_override name such as “none”. Only a single driver may be specified in the override, there is no support for parsing delimiters.
/sys/bus/wmi/devices/.../expensive |
Defined on file sysfs-bus-wmi
This file contains a boolean flag signaling if interacting with the given WMI device will consume significant CPU resources. The WMI driver core will take care of enabling/disabling such WMI devices.
/sys/bus/wmi/devices/.../guid |
Defined on file sysfs-bus-wmi
This file contains the GUID used to match WMI devices to compatible WMI drivers. This GUID is not necessarily unique inside a given machine, it is solely used to identify the interface exposed by a given WMI device.
/sys/bus/wmi/devices/.../instance_count |
Defined on file sysfs-bus-wmi
This file contains the number of WMI object instances being present on a given WMI device. It contains a non-negative number.
/sys/bus/wmi/devices/.../modalias |
Defined on file sysfs-bus-wmi
This file contains the MODALIAS value emitted by uevent for a given WMI device.
Format: wmi:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX.
/sys/bus/wmi/devices/.../notify_id |
Defined on file sysfs-bus-wmi
This file contains the WMI notify ID used internally to map ACPI events to WMI event devices. It contains two ASCII letters.
/sys/bus/wmi/devices/.../object_id |
Defined on file sysfs-bus-wmi
This file contains the WMI object ID used internally to construct the ACPI method names used by non-event WMI devices. It contains two ASCII letters.
/sys/bus/wmi/devices/.../setable |
Defined on file sysfs-bus-wmi
This file contains a boolean flags signaling the data block aassociated with the given WMI device is writable. If the given WMI device is not associated with a data block, then this file will not exist.
/sys/bus/wmi/devices/44FADEB1-B204-40F2-8581-394BBDC1B651/firmware_update_request |
Defined on file sysfs-platform-intel-wmi-sbl-fw-update
Allow user space entities to trigger update of Slim Bootloader (SBL). This attribute normally has a value of 0 and userspace can signal SBL to update firmware, on next reboot, by writing a value of 1. There are two available states:
0 -> Skip firmware update while rebooting
1 -> Attempt firmware update on next reboot
/sys/bus/wmi/devices/6932965F-1671-4CEB-B988-D3AB0A901919/dell_privacy_current_state |
Defined on file sysfs-platform-dell-privacy-wmi
Allow user space to check current dell privacy device state. Describes the Device State class exposed by BIOS which can be consumed by various applications interested in knowing the Privacy feature capabilities
- Attributes:
- Microphone:
Identifies the local microphone can be muted by hardware, no applications is available to capture system mic sound
- Camera Shutter:
Identifies camera shutter controlled by hardware, which is a micromechanical shutter assembly that is built onto the camera module to block capturing images from outside the laptop
- Values:
- muted:
Identifies the privacy device is turned off and cannot send stream to OS applications
- unmuted:
Identifies the privacy device is turned on, audio or camera driver can get stream from mic and camera module to OS applications
For example to check all supported current privacy device states:
# cat /sys/bus/wmi/drivers/dell-privacy/6932965F-1671-4CEB-B988-D3AB0A901919/dell_privacy_current_state
[Microphone] [unmuted]
[Camera Shutter] [unmuted]
/sys/bus/wmi/devices/6932965F-1671-4CEB-B988-D3AB0A901919/dell_privacy_supported_type |
Defined on file sysfs-platform-dell-privacy-wmi
Display which dell hardware level privacy devices are supported “Dell Privacy” is a set of HW, FW, and SW features to enhance Dell’s commitment to platform privacy for MIC, Camera, and ePrivacy screens. The supported hardware privacy devices are:
- Attributes:
- Microphone Mute:
Identifies the local microphone can be muted by hardware, no applications is available to capture system mic sound
- Camera Shutter:
Identifies camera shutter controlled by hardware, which is a micromechanical shutter assembly that is built onto the camera module to block capturing images from outside the laptop
Values:
- supported:
The privacy device is supported by this system
- unsupported:
The privacy device is not supported on this system
For example to check which privacy devices are supported:
# cat /sys/bus/wmi/drivers/dell-privacy/6932965F-1671-4CEB-B988-D3AB0A901919/dell_privacy_supported_type
[Microphone Mute] [supported]
[Camera Shutter] [supported]
[ePrivacy Screen] [unsupported]
Symbols under /sys/class¶
/sys/class/ |
Defined on file sysfs-class
The /sys/class directory will consist of a group of subdirectories describing individual classes of devices in the kernel. The individual directories will consist of either subdirectories, or symlinks to other directories.
All programs that use this directory tree must be able to handle both subdirectories or symlinks in order to work properly.
Users:
/sys/class/accel/accel<n>/device/armcp_kernel_ver |
Defined on file sysfs-driver-habanalabs
Version of the Linux kernel running on the device’s CPU. Will be DEPRECATED in Linux kernel version 5.10, and be replaced with cpucp_kernel_ver
/sys/class/accel/accel<n>/device/armcp_ver |
Defined on file sysfs-driver-habanalabs
Version of the application running on the device’s CPU Will be DEPRECATED in Linux kernel version 5.10, and be replaced with cpucp_ver
/sys/class/accel/accel<n>/device/clk_cur_freq_mhz |
Defined on file sysfs-driver-habanalabs
Displays the current frequency, in MHz, of the device clock. This property is valid only for the Gaudi ASIC family
/sys/class/accel/accel<n>/device/clk_max_freq_mhz |
Defined on file sysfs-driver-habanalabs
Allows the user to set the maximum clock frequency, in MHz. The device clock might be set to lower value than the maximum. The user should read the clk_cur_freq_mhz to see the actual frequency value of the device clock. This property is valid only for the Gaudi ASIC family
/sys/class/accel/accel<n>/device/cpld_ver |
Defined on file sysfs-driver-habanalabs
Version of the Device’s CPLD F/W
/sys/class/accel/accel<n>/device/cpucp_kernel_ver |
Defined on file sysfs-driver-habanalabs
Version of the Linux kernel running on the device’s CPU
/sys/class/accel/accel<n>/device/cpucp_ver |
Defined on file sysfs-driver-habanalabs
Version of the application running on the device’s CPU
/sys/class/accel/accel<n>/device/device_type |
Defined on file sysfs-driver-habanalabs
Displays the code name of the device according to its type. The supported values are: “GOYA”
/sys/class/accel/accel<n>/device/eeprom |
Defined on file sysfs-driver-habanalabs
A binary file attribute that contains the contents of the on-board EEPROM
/sys/class/accel/accel<n>/device/fuse_ver |
Defined on file sysfs-driver-habanalabs
Displays the device’s version from the eFuse
/sys/class/accel/accel<n>/device/fw_os_ver |
Defined on file sysfs-driver-habanalabs
Version of the firmware OS running on the device’s CPU
/sys/class/accel/accel<n>/device/hard_reset |
Defined on file sysfs-driver-habanalabs
Interface to trigger a hard-reset operation for the device. Hard-reset will reset ALL internal components of the device except for the PCI interface and the internal PLLs
/sys/class/accel/accel<n>/device/hard_reset_cnt |
Defined on file sysfs-driver-habanalabs
Displays how many times the device have undergone a hard-reset operation since the driver was loaded
/sys/class/accel/accel<n>/device/high_pll |
Defined on file sysfs-driver-habanalabs
Allows the user to set the maximum clock frequency for MME, TPC and IC when the power management profile is set to “automatic”. This property is valid only for the Goya ASIC family
/sys/class/accel/accel<n>/device/ic_clk |
Defined on file sysfs-driver-habanalabs
Allows the user to set the maximum clock frequency, in Hz, of the Interconnect fabric. Writes to this parameter affect the device only when the power management profile is set to “manual” mode. The device IC clock might be set to lower value than the maximum. The user should read the ic_clk_curr to see the actual frequency value of the IC. This property is valid only for the Goya ASIC family
/sys/class/accel/accel<n>/device/ic_clk_curr |
Defined on file sysfs-driver-habanalabs
Displays the current clock frequency, in Hz, of the Interconnect fabric. This property is valid only for the Goya ASIC family
/sys/class/accel/accel<n>/device/infineon_ver |
Defined on file sysfs-driver-habanalabs
Version of the Device’s power supply F/W code. Relevant only to GOYA and GAUDI
/sys/class/accel/accel<n>/device/max_power |
Defined on file sysfs-driver-habanalabs
Allows the user to set the maximum power consumption of the device in milliwatts.
/sys/class/accel/accel<n>/device/mme_clk |
Defined on file sysfs-driver-habanalabs
Allows the user to set the maximum clock frequency, in Hz, of the MME compute engine. Writes to this parameter affect the device only when the power management profile is set to “manual” mode. The device MME clock might be set to lower value than the maximum. The user should read the mme_clk_curr to see the actual frequency value of the MME. This property is valid only for the Goya ASIC family
/sys/class/accel/accel<n>/device/mme_clk_curr |
Defined on file sysfs-driver-habanalabs
Displays the current clock frequency, in Hz, of the MME compute engine. This property is valid only for the Goya ASIC family
/sys/class/accel/accel<n>/device/module_id |
Defined on file sysfs-driver-habanalabs
Displays the device’s module id
/sys/class/accel/accel<n>/device/parent_device |
Defined on file sysfs-driver-habanalabs
Displays the name of the parent device of the accel device
/sys/class/accel/accel<n>/device/pci_addr |
Defined on file sysfs-driver-habanalabs
Displays the PCI address of the device. This is needed so the user would be able to open a device based on its PCI address
/sys/class/accel/accel<n>/device/pm_mng_profile |
Defined on file sysfs-driver-habanalabs
Power management profile. Values are “auto”, “manual”. In “auto” mode, the driver will set the maximum clock frequency to a high value when a user-space process opens the device’s file (unless it was already opened by another process). The driver will set the max clock frequency to a low value when there are no user processes that are opened on the device’s file. In “manual” mode, the user sets the maximum clock frequency by writing to ic_clk, mme_clk and tpc_clk. This property is valid only for the Goya ASIC family
/sys/class/accel/accel<n>/device/preboot_btl_ver |
Defined on file sysfs-driver-habanalabs
Version of the device’s preboot F/W code
/sys/class/accel/accel<n>/device/security_enabled |
Defined on file sysfs-driver-habanalabs
Displays the device’s security status
/sys/class/accel/accel<n>/device/soft_reset |
Defined on file sysfs-driver-habanalabs
Interface to trigger a soft-reset operation for the device. Soft-reset will reset only the compute and DMA engines of the device
/sys/class/accel/accel<n>/device/soft_reset_cnt |
Defined on file sysfs-driver-habanalabs
Displays how many times the device have undergone a soft-reset operation since the driver was loaded
/sys/class/accel/accel<n>/device/status |
Defined on file sysfs-driver-habanalabs
Status of the card:
“operational” - Device is available for work.
“in reset” - Device is going through reset, will be available shortly.
“disabled” - Device is not usable.
“needs reset” - Device is not usable until a hard reset is initiated.
“in device creation” - Device is not available yet, as it is still initializing.
“in reset after device release” - Device is going through a compute-reset which is executed after a device release (relevant for Gaudi2 only).
/sys/class/accel/accel<n>/device/thermal_ver |
Defined on file sysfs-driver-habanalabs
Version of the Device’s thermal daemon
/sys/class/accel/accel<n>/device/tpc_clk |
Defined on file sysfs-driver-habanalabs
Allows the user to set the maximum clock frequency, in Hz, of the TPC compute engines. Writes to this parameter affect the device only when the power management profile is set to “manual” mode. The device TPC clock might be set to lower value than the maximum. The user should read the tpc_clk_curr to see the actual frequency value of the TPC. This property is valid only for Goya ASIC family
/sys/class/accel/accel<n>/device/tpc_clk_curr |
Defined on file sysfs-driver-habanalabs
Displays the current clock frequency, in Hz, of the TPC compute engines. This property is valid only for the Goya ASIC family
/sys/class/accel/accel<n>/device/uboot_ver |
Defined on file sysfs-driver-habanalabs
Version of the u-boot running on the device’s CPU
/sys/class/accel/accel<n>/device/vrm_ver |
Defined on file sysfs-driver-habanalabs
Version of the Device’s Voltage Regulator Monitor F/W code. N/A to GOYA and GAUDI
/sys/class/ata_* |
Defined on file sysfs-ata
Provide a place in sysfs for storing the ATA topology of the system. This allows retrieving various information about ATA objects.
Files under /sys/class/ata_port
For each port, a directory ataX is created where X is the ata_port_id of the port. The device parent is the ata host device.
/sys/class/ata_device/devX[.Y].Z/spdn_cnt |
/sys/class/ata_device/devX[.Y].Z/gscr |
/sys/class/ata_device/devX[.Y].Z/ering |
/sys/class/ata_device/devX[.Y].Z/id |
/sys/class/ata_device/devX[.Y].Z/pio_mode |
/sys/class/ata_device/devX[.Y].Z/xfer_mode |
/sys/class/ata_device/devX[.Y].Z/dma_mode |
/sys/class/ata_device/devX[.Y].Z/class |
Defined on file sysfs-ata
- spdn_cnt: (RO) Number of times libata decided to lower the
speed of link due to errors.
- gscr: (RO) Cached result of the dump of PM GSCR
register. Valid registers are:
0: SATA_PMP_GSCR_PROD_ID, 1: SATA_PMP_GSCR_REV, 2: SATA_PMP_GSCR_PORT_INFO, 32: SATA_PMP_GSCR_ERROR, 33: SATA_PMP_GSCR_ERROR_EN, 64: SATA_PMP_GSCR_FEAT, 96: SATA_PMP_GSCR_FEAT_EN, 130: SATA_PMP_GSCR_SII_GPIO
Only valid if the device is a PM.
- ering: (RO) Formatted output of the error ring of the
device.
- id: (RO) Cached result of IDENTIFY command, as
described in ATA8 7.16 and 7.17. Only valid if the device is not a PM.
- pio_mode: (RO) PIO transfer mode used by the device.
Mostly used by PATA devices.
- xfer_mode: (RO) Current transfer mode. Mostly used by
PATA devices.
- dma_mode: (RO) DMA transfer mode used by the device.
Mostly used by PATA devices.
- class: (RO) Device class. Can be “ata” for disk,
“atapi” for packet device, “pmp” for PM, or “none” if no device was found behind the link.
/sys/class/ata_device/devX[.Y].Z/trim |
Defined on file sysfs-ata
(RO) Shows the DSM TRIM mode currently used by the device. Valid values are:
unsupported: Drive does not support DSM TRIM
unqueued: Drive supports unqueued DSM TRIM only
queued: Drive supports queued DSM TRIM
- forced_unqueued: Drive’s queued DSM support is known to
be buggy and only unqueued TRIM commands are sent
/sys/class/ata_link/linkX[.Y]/hw_sata_spd_limit |
/sys/class/ata_link/linkX[.Y]/sata_spd_limit |
/sys/class/ata_link/linkX[.Y]/sata_spd |
Defined on file sysfs-ata
- hw_sata_spd_limit: (RO) Maximum speed supported by the
connected SATA device.
sata_spd_limit: (RO) Maximum speed imposed by libata.
- sata_spd: (RO) Current speed of the link
eg. 1.5, 3 Gbps etc.
Files under /sys/class/ata_device
Behind each link, up to two ata devices are created. The name of the directory is devX[.Y].Z where: - X is ata_port_id of the port where the device is connected, - Y the port of the PM if any, and - Z the device id: for PATA, there is usually 2 devices [0,1], only 1 for SATA.
/sys/class/ata_port/ataX/nr_pmp_links |
/sys/class/ata_port/ataX/idle_irq |
Defined on file sysfs-ata
- nr_pmp_links: (RO) If a SATA Port Multiplier (PM) is
connected, the number of links behind it.
- idle_irq: (RO) Number of IRQ received by the port while
idle [some ata HBA only].
/sys/class/ata_port/ataX/port_no |
Defined on file sysfs-ata
(RO) Host local port number. While registering host controller, port numbers are tracked based upon number of ports available on the controller. This attribute is needed by udev for composing persistent links in /dev/disk/by-path.
Files under /sys/class/ata_link
Behind each port, there is a ata_link. If there is a SATA PM in the topology, 15 ata_link objects are created.
If a link is behind a port, the directory name is linkX, where X is ata_port_id of the port. If a link is behind a PM, its name is linkX.Y where X is ata_port_id of the parent port and Y the PM port.
/sys/class/backlight/<backlight>/<ambient light zone>_dim |
Defined on file sysfs-class-backlight
Control the dim brightness for <ambient light zone> on this <backlight>. Values are between 0 and 127, typically set to 0. Full off when the backlight is disabled. This file will also show the dim brightness level stored for this <ambient light zone>.
The <ambient light zone> is device-driver specific:
For ADP5520 and ADP5501, <ambient light zone> can be:
Ambient |
sysfs entry |
---|---|
light zone |
|
daylight |
/sys/class/backlight/<backlight>/daylight_dim |
office |
/sys/class/backlight/<backlight>/office_dim |
dark |
/sys/class/backlight/<backlight>/dark_dim |
For ADP8860, <ambient light zone> can be:
Ambient |
sysfs entry |
---|---|
light zone |
|
l1_daylight |
/sys/class/backlight/<backlight>/l1_daylight_dim |
l2_office |
/sys/class/backlight/<backlight>/l2_office_dim |
l3_dark |
/sys/class/backlight/<backlight>/l3_dark_dim |
For ADP8870, <ambient light zone> can be:
Ambient |
sysfs entry |
---|---|
light zone |
|
l1_daylight |
/sys/class/backlight/<backlight>/l1_daylight_dim |
l2_bright |
/sys/class/backlight/<backlight>/l2_bright_dim |
l3_office |
/sys/class/backlight/<backlight>/l3_office_dim |
l4_indoor |
/sys/class/backlight/<backlight>/l4_indoor_dim |
l5_dark |
/sys/class/backlight/<backlight>/l5_dark_dim |
See also: /sys/class/backlight/<backlight>/ambient_light_zone.
/sys/class/backlight/<backlight>/<ambient light zone>_max |
Defined on file sysfs-class-backlight
Control the maximum brightness for <ambient light zone> on this <backlight>. Values are between 0 and 127. This file will also show the brightness level stored for this <ambient light zone>.
The <ambient light zone> is device-driver specific:
For ADP5520 and ADP5501, <ambient light zone> can be:
Ambient |
sysfs entry |
---|---|
light zone |
|
daylight |
/sys/class/backlight/<backlight>/daylight_max |
office |
/sys/class/backlight/<backlight>/office_max |
dark |
/sys/class/backlight/<backlight>/dark_max |
For ADP8860, <ambient light zone> can be:
Ambient |
sysfs entry |
---|---|
light zone |
|
l1_daylight |
/sys/class/backlight/<backlight>/l1_daylight_max |
l2_office |
/sys/class/backlight/<backlight>/l2_office_max |
l3_dark |
/sys/class/backlight/<backlight>/l3_dark_max |
For ADP8870, <ambient light zone> can be:
Ambient |
sysfs entry |
---|---|
light zone |
|
l1_daylight |
/sys/class/backlight/<backlight>/l1_daylight_max |
l2_bright |
/sys/class/backlight/<backlight>/l2_bright_max |
l3_office |
/sys/class/backlight/<backlight>/l3_office_max |
l4_indoor |
/sys/class/backlight/<backlight>/l4_indoor_max |
l5_dark |
/sys/class/backlight/<backlight>/l5_dark_max |
See also: /sys/class/backlight/<backlight>/ambient_light_zone.
/sys/class/backlight/<backlight>/als_channel |
Defined on file sysfs-class-backlight-driver-lm3533
Get the ALS output channel used as input in ALS-current-control mode (0, 1), where:
0 |
out_current0 (backlight 0) |
1 |
out_current1 (backlight 1) |
/sys/class/backlight/<backlight>/als_en |
Defined on file sysfs-class-backlight-driver-lm3533
Enable ALS-current-control mode (0, 1).
/sys/class/backlight/<backlight>/ambient_light_level |
Defined on file sysfs-class-backlight
(RO) Get conversion value of the light sensor.
The value is automatically updated every 80 ms when the light sensor is enabled.
The value range is device-driver specific:
For ADP8870:
It returns integer between 0 (dark) and 8000 (max ambient brightness).
For ADP8860:
It returns a 13-bits integer.
/sys/class/backlight/<backlight>/ambient_light_zone |
Defined on file sysfs-class-backlight
(RW) Read or write the specific brightness level at which the backlight operates.
The value meaning is device-driver specific:
For ADP8860:
0
Off: Backlight set to 0 mA
1
Level 1: daylight
2
Level 2: bright
3
Level 3: dark
For ADP8870:
0
Off: Backlight set to 0 mA
1
Level 1: daylight
2
Level 2: bright
3
Level 3: office
4
Level 4: indoor
5
Level 5: dark
Writing 0 returns to normal/automatic ambient light level operation.
It can be enabled by writing the value stored in /sys/class/backlight/<backlight>/max_brightness to /sys/class/backlight/<backlight>/brightness.
/sys/class/backlight/<backlight>/bled_mode |
Defined on file sysfs-class-backlight-lm3639
(WO) Write to the backlight mapping mode. The backlight current can be mapped for either exponential (value “0”) or linear mapping modes (default).
/sys/class/backlight/<backlight>/id |
Defined on file sysfs-class-backlight-driver-lm3533
Get the id of this backlight (0, 1).
/sys/class/backlight/<backlight>/linear |
Defined on file sysfs-class-backlight-driver-lm3533
Set the brightness-mapping mode (0, 1), where:
0 |
exponential mode |
1 |
linear mode |
/sys/class/backlight/<backlight>/pwm |
Defined on file sysfs-class-backlight-driver-lm3533
Set the PWM-input control mask (5 bits), where:
bit 5 |
PWM-input enabled in Zone 4 |
bit 4 |
PWM-input enabled in Zone 3 |
bit 3 |
PWM-input enabled in Zone 2 |
bit 2 |
PWM-input enabled in Zone 1 |
bit 1 |
PWM-input enabled in Zone 0 |
bit 0 |
PWM-input enabled |
/sys/class/backlight/<backlight>/scale |
Defined on file sysfs-class-backlight
Description of the scale of the brightness curve.
The human eye senses brightness approximately logarithmically, hence linear changes in brightness are perceived as being non-linear. To achieve a linear perception of brightness changes controls like sliders need to apply a logarithmic mapping for backlights with a linear brightness curve.
Possible values of the attribute are:
- unknown
The scale of the brightness curve is unknown.
- linear
The brightness changes linearly with each step. Brightness controls should apply a logarithmic mapping for a linear perception.
- non-linear
The brightness changes non-linearly with each step. Brightness controls should use a linear mapping for a linear perception.
/sys/class/bdi/<bdi>/ |
Defined on file sysfs-class-bdi
Provide a place in sysfs for the backing_dev_info object. This allows setting and retrieving various BDI specific variables.
The <bdi> identifier can be either of the following:
MAJOR:MINOR
Device number for block devices, or value of st_dev on non-block filesystems which provide their own BDI, such as NFS and FUSE.
MAJOR:MINOR-fuseblk
Value of st_dev on fuseblk filesystems.
default
The default backing dev, used for non-block device backed filesystems which do not provide their own BDI.
/sys/class/bdi/<bdi>/max_bytes |
Defined on file sysfs-class-bdi
Allows limiting a particular device to use not more than the given ‘max_bytes’ of the write-back cache. This is useful in situations where we want to avoid one device taking all or most of the write-back cache. For example in case of an NFS mount that is prone to get stuck, a FUSE mount which cannot be trusted to play fair, or a nbd device.
(read-write)
/sys/class/bdi/<bdi>/max_ratio |
Defined on file sysfs-class-bdi
Allows limiting a particular device to use not more than the given percentage of the write-back cache. This is useful in situations where we want to avoid one device taking all or most of the write-back cache. For example in case of an NFS mount that is prone to get stuck, or a FUSE mount which cannot be trusted to play fair.
(read-write)
/sys/class/bdi/<bdi>/max_ratio_fine |
Defined on file sysfs-class-bdi
Allows limiting a particular device to use not more than the given value of the write-back cache. The value is given as part of 1 million. This is useful in situations where we want to avoid one device taking all or most of the write-back cache. For example in case of an NFS mount that is prone to get stuck, or a FUSE mount which cannot be trusted to play fair.
(read-write)
/sys/class/bdi/<bdi>/min_bytes |
Defined on file sysfs-class-bdi
Under normal circumstances each device is given a part of the total write-back cache that relates to its current average writeout speed in relation to the other devices.
The ‘min_bytes’ parameter allows assigning a minimum percentage of the write-back cache to a particular device expressed in bytes. For example, this is useful for providing a minimum QoS.
(read-write)
/sys/class/bdi/<bdi>/min_ratio |
Defined on file sysfs-class-bdi
Under normal circumstances each device is given a part of the total write-back cache that relates to its current average writeout speed in relation to the other devices.
The ‘min_ratio’ parameter allows assigning a minimum percentage of the write-back cache to a particular device. For example, this is useful for providing a minimum QoS.
(read-write)
/sys/class/bdi/<bdi>/min_ratio_fine |
Defined on file sysfs-class-bdi
Under normal circumstances each device is given a part of the total write-back cache that relates to its current average writeout speed in relation to the other devices.
The ‘min_ratio_fine’ parameter allows assigning a minimum reserve of the write-back cache to a particular device. The value is expressed as part of 1 million. For example, this is useful for providing a minimum QoS.
(read-write)
/sys/class/bdi/<bdi>/read_ahead_kb |
Defined on file sysfs-class-bdi
Size of the read-ahead window in kilobytes
(read-write)
/sys/class/bdi/<bdi>/stable_pages_required |
Defined on file sysfs-class-bdi
If set, the backing device requires that all pages comprising a write request must not be changed until writeout is complete.
(read-only)
/sys/class/bdi/<bdi>/strict_limit |
Defined on file sysfs-class-bdi
Forces per-BDI checks for the share of given device in the write-back cache even before the global background dirty limit is reached. This is useful in situations where the global limit is much higher than affordable for given relatively slow (or untrusted) device. Turning strictlimit on has no visible effect if max_ratio is equal to 100%.
(read-write)
/sys/class/bsr/bsr*/bsr_length |
Defined on file sysfs-class-bsr
(RO) The length of memory region that can be mapped in bytes.
/sys/class/bsr/bsr*/bsr_size |
Defined on file sysfs-class-bsr
(RO) Size of the barrier-synchronization register (BSR) register in bytes.
/sys/class/bsr/bsr*/bsr_stride |
Defined on file sysfs-class-bsr
(RO) The stride or the interval at which the allocated BSR bytes repeat within the mapping.
/sys/class/c2port/ |
Defined on file sysfs-c2port
The /sys/class/c2port/ directory will contain files and directories that will provide a unified interface to the C2 port interface.
/sys/class/c2port/c2portX |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/ directory is related to X-th C2 port into the system. Each directory will contain files to manage and control its C2 port.
/sys/class/c2port/c2portX/access |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/access file enable the access to the C2 port from the system. No commands can be sent till this entry is set to 0.
/sys/class/c2port/c2portX/dev_id |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/dev_id file show the device ID of the connected micro.
/sys/class/c2port/c2portX/flash_access |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/flash_access file enable the access to the on-board flash of the connected micro. No commands can be sent till this entry is set to 0.
/sys/class/c2port/c2portX/flash_block_size |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/flash_block_size file show the on-board flash block size of the connected micro.
/sys/class/c2port/c2portX/flash_blocks_num |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/flash_blocks_num file show the on-board flash blocks number of the connected micro.
/sys/class/c2port/c2portX/flash_data |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/flash_data file export the content of the on-board flash of the connected micro.
/sys/class/c2port/c2portX/flash_erase |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/flash_erase file execute the “erase” command on the on-board flash of the connected micro.
/sys/class/c2port/c2portX/reset |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/reset file execute a “reset” command on the connected micro.
/sys/class/c2port/c2portX/rev_id |
Defined on file sysfs-c2port
The /sys/class/c2port/c2portX/rev_id file show the revision ID of the connected micro.
/sys/class/chromeos/<ec-device-name>/flashinfo |
Defined on file sysfs-class-chromeos
Show the EC flash information.
/sys/class/chromeos/<ec-device-name>/kb_wake_angle |
Defined on file sysfs-class-chromeos
Control the keyboard wake lid angle. Values are between 0 and 360. This file will also show the keyboard wake lid angle by querying the hardware.
/sys/class/chromeos/<ec-device-name>/lightbar/brightness |
Defined on file sysfs-class-chromeos-driver-cros-ec-lightbar
Writing to this file adjusts the overall brightness of the lightbar, separate from any color intensity. The valid range is 0 (off) to 255 (maximum brightness).
/sys/class/chromeos/<ec-device-name>/lightbar/interval_msec |
Defined on file sysfs-class-chromeos-driver-cros-ec-lightbar
The lightbar is controlled by an embedded controller (EC), which also manages the keyboard, battery charging, fans, and other system hardware. To prevent unprivileged users from interfering with the other EC functions, the rate at which the lightbar control files can be read or written is limited.
Reading this file will return the number of milliseconds that must elapse between accessing any of the lightbar functions through this interface. Going faster will simply block until the necessary interval has lapsed. The interval applies uniformly to all accesses of any kind by any user.
/sys/class/chromeos/<ec-device-name>/lightbar/led_rgb |
Defined on file sysfs-class-chromeos-driver-cros-ec-lightbar
This allows you to control each LED segment. If the lightbar is already running one of the automatic sequences, you probably won’t see anything change because your color setting will be almost immediately replaced. To get useful results, you should stop the lightbar sequence first.
The values written to this file are sets of four integers, indicating LED, RED, GREEN, BLUE. The LED number is 0 to 3 to select a single segment, or 4 to set all four segments to the same value at once. The RED, GREEN, and BLUE numbers should be in the range 0 (off) to 255 (maximum). You can update more than one segment at a time by writing more than one set of four integers.
/sys/class/chromeos/<ec-device-name>/lightbar/program |
Defined on file sysfs-class-chromeos-driver-cros-ec-lightbar
This allows you to upload and run custom lightbar sequences.
/sys/class/chromeos/<ec-device-name>/lightbar/sequence |
Defined on file sysfs-class-chromeos-driver-cros-ec-lightbar
The Pixel lightbar has a number of built-in sequences that it displays under various conditions, such as at power on, shut down, or while running. Reading from this file displays the current sequence that the lightbar is displaying. Writing to this file allows you to change the sequence.
/sys/class/chromeos/<ec-device-name>/lightbar/userspace_control |
Defined on file sysfs-class-chromeos-driver-cros-ec-lightbar
This allows you to take the control of the lightbar. This prevents the kernel from going through its normal sequences.
/sys/class/chromeos/<ec-device-name>/lightbar/version |
Defined on file sysfs-class-chromeos-driver-cros-ec-lightbar
Show the information about the lightbar version.
/sys/class/chromeos/<ec-device-name>/reboot |
Defined on file sysfs-class-chromeos
Tell the EC to reboot in various ways. Options are:
“cancel”: Cancel a pending reboot.
“ro”: Jump to RO without rebooting.
“rw”: Jump to RW without rebooting.
“cold”: Cold reboot.
“disable-jump”: Disable jump until next reboot.
“hibernate”: Hibernate the EC.
“at-shutdown”: Reboot after an AP shutdown.
/sys/class/chromeos/<ec-device-name>/vbc/vboot_context |
Defined on file sysfs-class-chromeos-driver-cros-ec-vbc
Read/write the verified boot context data included on a small nvram space on some EC implementations.
/sys/class/chromeos/<ec-device-name>/version |
Defined on file sysfs-class-chromeos
Show the information about the EC software and hardware.
/sys/class/cxl/<afu>/afu_err_buf |
Defined on file sysfs-class-cxl
read only AFU Error Buffer contents. The contents of this file are application specific and depends on the AFU being used. Applications interacting with the AFU can use this attribute to know about the current error condition and take appropriate action like logging the event etc.
/sys/class/cxl/<afu>/api_version |
Defined on file sysfs-class-cxl
read only Decimal value of the current version of the kernel/user API.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/api_version_compatible |
Defined on file sysfs-class-cxl
read only Decimal value of the lowest version of the userspace API this kernel supports.
Users: https://github.com/ibm-capi/libcxl AFU configuration records (eg. /sys/class/cxl/afu0.0/cr0): An AFU may optionally export one or more PCIe like configuration records, known as AFU configuration records, which will show up here (if present).
/sys/class/cxl/<afu>/cr<config num>/class |
Defined on file sysfs-class-cxl
read only Hexadecimal value of the class code found in this AFU configuration record.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/cr<config num>/config |
Defined on file sysfs-class-cxl
read only This binary file provides raw access to the AFU configuration record. The format is expected to match the either the standard or extended configuration space defined by the PCIe specification.
Users: https://github.com/ibm-capi/libcxl Master contexts (eg. /sys/class/cxl/afu0.0m)
/sys/class/cxl/<afu>/cr<config num>/device |
Defined on file sysfs-class-cxl
read only Hexadecimal value of the device ID found in this AFU configuration record.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/cr<config num>/vendor |
Defined on file sysfs-class-cxl
read only Hexadecimal value of the vendor ID found in this AFU configuration record.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/irqs_max |
Defined on file sysfs-class-cxl
read/write Decimal value of maximum number of interrupts that can be requested by userspace. The default on probe is the maximum that hardware can support (eg. 2037). Write values will limit userspace applications to that many userspace interrupts. Must be >= irqs_min.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/irqs_min |
Defined on file sysfs-class-cxl
read only Decimal value of the minimum number of interrupts that userspace must request on a CXL_START_WORK ioctl. Userspace may omit the num_interrupts field in the START_WORK IOCTL to get this minimum automatically.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/mmio_size |
Defined on file sysfs-class-cxl
read only Decimal value of the size of the MMIO space that may be mmapped by userspace.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/mode |
Defined on file sysfs-class-cxl
read/write The current mode the AFU is using. Will be one of the modes given in modes_supported. Writing will change the mode provided that no user contexts are attached.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/modes_supported |
Defined on file sysfs-class-cxl
read only List of the modes this AFU supports. One per line. Valid entries are: “dedicated_process” and “afu_directed”
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/prefault_mode |
Defined on file sysfs-class-cxl
read/write Set the mode for prefaulting in segments into the segment table when performing the START_WORK ioctl. Only applicable when running under hashed page table mmu. Possible values:
none |
No prefaulting (default) |
work_element_descriptor |
Treat the work element descriptor as an effective address and prefault what it points to. |
all |
all segments process calling START_WORK maps. |
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>/reset |
Defined on file sysfs-class-cxl
write only Writing 1 here will reset the AFU provided there are not contexts active on the AFU.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>m/mmio_size |
Defined on file sysfs-class-cxl
read only Decimal value of the size of the MMIO space that may be mmapped by userspace. This includes all slave contexts space also.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>m/pp_mmio_len |
Defined on file sysfs-class-cxl
read only Decimal value of the Per Process MMIO space length.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<afu>m/pp_mmio_off |
Defined on file sysfs-class-cxl
read only (not in a guest) Decimal value of the Per Process MMIO space offset.
Users: https://github.com/ibm-capi/libcxl Card info (eg. /sys/class/cxl/card0)
/sys/class/cxl/<card>/base_image |
Defined on file sysfs-class-cxl
read only (not in a guest) Identifies the revision level of the base image for devices that support loadable PSLs. For FPGAs this field identifies the image contained in the on-adapter flash which is loaded during the initial program load.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<card>/caia_version |
Defined on file sysfs-class-cxl
read only Identifies the CAIA Version the card implements.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<card>/image_loaded |
Defined on file sysfs-class-cxl
read only (not in a guest) Will return “user” or “factory” depending on the image loaded onto the card.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<card>/load_image_on_perst |
Defined on file sysfs-class-cxl
read/write (not in a guest) Valid entries are “none”, “user”, and “factory”. “none” means PERST will not cause image to be loaded to the card. A power cycle is required to load the image. “none” could be useful for debugging because the trace arrays are preserved.
“user” and “factory” means PERST will cause either the user or user or factory image to be loaded. Default is to reload on PERST whichever image the card has loaded.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<card>/perst_reloads_same_image |
Defined on file sysfs-class-cxl
read/write (not in a guest) Trust that when an image is reloaded via PERST, it will not have changed.
0 |
don’t trust, the image may be different (default) |
1 |
trust that the image will not change. |
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<card>/psl_revision |
Defined on file sysfs-class-cxl
read only Identifies the revision level of the PSL.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<card>/psl_timebase_synced |
Defined on file sysfs-class-cxl
read only Returns 1 if the psl timebase register is synchronized with the core timebase register, 0 otherwise.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<card>/reset |
Defined on file sysfs-class-cxl
write only Writing 1 will issue a PERST to card provided there are no contexts active on any one of the card AFUs. This may cause the card to reload the FPGA depending on load_image_on_perst. Writing -1 will do a force PERST irrespective of any active contexts on the card AFUs.
Users: https://github.com/ibm-capi/libcxl
/sys/class/cxl/<card>/tunneled_ops_supported |
Defined on file sysfs-class-cxl
read only Returns 1 if tunneled operations are supported in capi mode, 0 otherwise.
Users: https://github.com/ibm-capi/libcxl
/sys/class/devfreq-event/event<x>/ |
Defined on file sysfs-class-devfreq-event
Provide a place in sysfs for the devfreq-event objects. This allows accessing various devfreq-event specific variables. The name of devfreq-event object denoted as ‘event<x>’ which includes the unique number of ‘x’ for each devfreq-event object.
/sys/class/devfreq-event/event<x>/enable_count |
Defined on file sysfs-class-devfreq-event
The /sys/class/devfreq-event/event<x>/enable_count attribute contains the reference count to enable the devfreq-event object. If the device is enabled, the value of attribute is greater than zero.
/sys/class/devfreq-event/event<x>/name |
Defined on file sysfs-class-devfreq-event
The /sys/class/devfreq-event/event<x>/name attribute contains the name of the devfreq-event object. This attribute is read-only.
/sys/class/devfreq/.../ |
Defined on file sysfs-class-devfreq
Provide a place in sysfs for the devfreq objects. This allows accessing various devfreq specific variables. The name of devfreq object denoted as ... is same as the name of device using devfreq.
/sys/class/devfreq/.../available_frequencies |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../available_frequencies shows the available frequencies of the corresponding devfreq object. This is a snapshot of available frequencies and not limited by the min/max frequency restrictions.
/sys/class/devfreq/.../available_governors |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../available_governors shows currently available governors in the system.
/sys/class/devfreq/.../cur_freq |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../cur_freq shows the current frequency of the corresponding devfreq object. Same as target_freq when get_cur_freq() is not implemented by devfreq driver.
/sys/class/devfreq/.../governor |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../governor show or set the name of the governor used by the corresponding devfreq object.
/sys/class/devfreq/.../max_freq |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../max_freq shows and stores the maximum frequency requested by users. It is 0 if the user does not care. max_freq overrides the frequency requested by governors and min_freq. The max_freq overrides min_freq because max_freq may be used to throttle devices to avoid overheating.
/sys/class/devfreq/.../min_freq |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../min_freq shows and stores the minimum frequency requested by users. It is 0 if the user does not care. min_freq overrides the frequency requested by governors.
/sys/class/devfreq/.../name |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../name shows the name of device of the corresponding devfreq object.
/sys/class/devfreq/.../polling_interval |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../polling_interval shows and sets the requested polling interval of the corresponding devfreq object. The values are represented in ms. If the value is less than 1 jiffy, it is considered to be 0, which means no polling. This value is meaningless if the governor is not polling.
A list of governors that support the node: - simple_ondmenad - tegra_actmon
/sys/class/devfreq/.../target_freq |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../target_freq shows the next governor predicted target frequency of the corresponding devfreq object.
/sys/class/devfreq/.../timer |
Defined on file sysfs-class-devfreq
This ABI shows and stores the kind of work timer by users. This work timer is used by devfreq workqueue in order to monitor the device status such as utilization. The user can change the work timer on runtime according to their demand as following:
echo deferrable > /sys/class/devfreq/.../timer
echo delayed > /sys/class/devfreq/.../timer
A list of governors that support the node: - simple_ondemand
/sys/class/devfreq/.../trans_stat |
Defined on file sysfs-class-devfreq
This ABI shows or clears the statistics of devfreq behavior on a specific device. It shows the time spent in each state and the number of transitions between states. In order to activate this ABI, the devfreq target device driver should provide the list of available frequencies with its profile. If need to reset the statistics of devfreq behavior on a specific device, enter 0(zero) to ‘trans_stat’ as following:
echo 0 > /sys/class/devfreq/.../trans_stat
If the transition table is bigger than PAGE_SIZE, reading this will return an -EFBIG error.
/sys/class/devfreq/.../userspace/set_freq |
Defined on file sysfs-class-devfreq
The /sys/class/devfreq/.../userspace/set_freq shows and sets the requested frequency for the devfreq object if userspace governor is in effect.
A list of governors that support the node: - userspace
/sys/class/devlink/.../ |
Defined on file sysfs-class-devlink
Provide a place in sysfs for the device link objects in the kernel at any given time. The name of a device link directory, denoted as ... above, is of the form <supplier>--<consumer> where <supplier> is the supplier bus:device name and <consumer> is the consumer bus:device name.
/sys/class/devlink/.../auto_remove_on |
Defined on file sysfs-class-devlink
This file indicates if the device link will ever be automatically removed by the driver core when the consumer and supplier devices themselves are still present.
This will be one of the following strings:
‘consumer unbind’
‘supplier unbind’
‘never’
‘consumer unbind’ means the device link will be removed when the consumer’s driver is unbound from the consumer device.
‘supplier unbind’ means the device link will be removed when the supplier’s driver is unbound from the supplier device.
‘never’ means the device link will not be automatically removed when as long as the supplier and consumer devices themselves are still present.
/sys/class/devlink/.../consumer |
Defined on file sysfs-class-devlink
This file is a symlink to the consumer device’s sysfs directory.
/sys/class/devlink/.../runtime_pm |
Defined on file sysfs-class-devlink
This file indicates if the device link has any impact on the runtime power management behavior of the consumer and supplier devices. For example: Making sure the supplier doesn’t enter runtime suspend while the consumer is active.
This will be one of the following strings:
‘0’ |
Does not affect runtime power management |
‘1’ |
Affects runtime power management |
/sys/class/devlink/.../status |
Defined on file sysfs-class-devlink
This file indicates the status of the device link. The status of a device link is affected by whether the supplier and consumer devices have been bound to their corresponding drivers. The status of a device link also affects the binding and unbinding of the supplier and consumer devices with their drivers and also affects whether the software state of the supplier device is synced with the hardware state of the supplier device after boot up. See also: sysfs-devices-state_synced.
This will be one of the following strings:
‘not tracked’
‘dormant’
‘available’
‘consumer probing’
‘active’
‘supplier unbinding’
‘unknown’
‘not tracked’ means this device link does not track the status and has no impact on the binding, unbinding and syncing the hardware and software device state.
‘dormant’ means the supplier and the consumer devices have not bound to their driver.
‘available’ means the supplier has bound to its driver and is available to supply resources to the consumer device.
‘consumer probing’ means the consumer device is currently trying to bind to its driver.
‘active’ means the supplier and consumer devices have both bound successfully to their drivers.
‘supplier unbinding’ means the supplier devices is currently in the process of unbinding from its driver.
‘unknown’ means the state of the device link is not any of the above. If this is ever the value, there’s a bug in the kernel.
/sys/class/devlink/.../supplier |
Defined on file sysfs-class-devlink
This file is a symlink to the supplier device’s sysfs directory.
/sys/class/devlink/.../sync_state_only |
Defined on file sysfs-class-devlink
This file indicates if the device link is limited to only affecting the syncing of the hardware and software state of the supplier device.
This will be one of the following strings:
‘0’ |
|
‘1’ |
Affects runtime power management |
‘0’ means the device link can affect other device behaviors like binding/unbinding, suspend/resume, runtime power management, etc.
‘1’ means the device link will only affect the syncing of hardware and software state of the supplier device after boot up and doesn’t not affect other behaviors of the devices.
/sys/class/extcon/.../ |
Defined on file sysfs-class-extcon
Provide a place in sysfs for the extcon objects. This allows accessing extcon specific variables. The name of extcon object denoted as ... is the name given with extcon_dev_register.
One extcon device denotes a single external connector port. An external connector may have multiple cables attached simultaneously. Many of docks, cradles, and accessory cables have such capability. For example, the 30-pin port of Nuri board (/arch/arm/mach-exynos) may have both HDMI and Charger attached, or analog audio, video, and USB cables attached simultaneously.
If there are cables mutually exclusive with each other, such binary relations may be expressed with extcon_dev’s mutually_exclusive array.
/sys/class/extcon/.../cable.X/name |
Defined on file sysfs-class-extcon
The /sys/class/extcon/.../cable.X/name shows the name of cable “X” (integer between 0 and 31) of an extcon device.
/sys/class/extcon/.../cable.X/state |
Defined on file sysfs-class-extcon
The /sys/class/extcon/.../cable.X/state shows and stores the state of cable “X” (integer between 0 and 31) of an extcon device. The state value is either 0 (detached) or 1 (attached).
/sys/class/extcon/.../mutually_exclusive/.. |
Defined on file sysfs-class-extcon
Shows the relations of mutually exclusiveness. For example, if the mutually_exclusive array of extcon device is {0x3, 0x5, 0xC, 0x0}, then the output is:
# ls mutually_exclusive/
0x3
0x5
0xc
#
Note that mutually_exclusive is a sub-directory of the extcon device and the file names under the mutually_exclusive directory show the mutually-exclusive sets, not the contents of the files.
/sys/class/extcon/.../name |
Defined on file sysfs-class-extcon
The /sys/class/extcon/.../name shows the name of the extcon object. If the extcon object has an optional callback “show_name” defined, the callback will provide the name with this sysfs node.
/sys/class/extcon/.../state |
Defined on file sysfs-class-extcon
The /sys/class/extcon/.../state shows and stores the cable attach/detach information of the corresponding extcon object. If the extcon object has an optional callback “show_state” defined, the showing function is overridden with the optional callback.
If the default callback for showing function is used, the format is like this:
# cat state
USB_OTG=1
HDMI=0
TA=1
EAR_JACK=0
#
In this example, the extcon device has USB_OTG and TA cables attached and HDMI and EAR_JACK cables detached.
In order to update the state of an extcon device, enter a hex state number starting with 0x:
# echo 0xHEX > state
This updates the whole state of the extcon device. Inputs of all the methods are required to meet the mutually_exclusive conditions if they exist.
It is recommended to use this “global” state interface if you need to set the value atomically. The later state interface associated with each cable cannot update multiple cable states of an extcon device simultaneously.
/sys/class/fc/fc_udev_device/appid_store |
Defined on file sysfs-class-fc
This interface allows an admin to set an FC application identifier in the blkcg associated with a cgroup id. The identifier is typically a UUID that is associated with an application or logical entity such as a virtual machine or container group. The application or logical entity utilizes a block device via the cgroup id. FC adapter drivers may query the identifier and tag FC traffic based on the identifier. FC host and FC fabric entities can utilize the application id and FC traffic tag to identify traffic sources.
The interface expects a string “<cgroupid>:<appid>” where: <cgroupid> is inode of the cgroup in hexadecimal <appid> is user provided string upto 128 characters in length.
If an appid_store is done for a cgroup id that already has an appid set, the new value will override the previous value.
If an admin wants to remove an FC application identifier from a cgroup, an appid_store should be done with the following string: “<cgroupid>:”
/sys/class/fc_host/hostX/statistics/fpin_cn_yyy |
Defined on file sysfs-class-fc_host
These files contain the number of congestion notification events recorded by the F_Port, reported using fabric performance impact notification (FPIN) event.
/sys/class/fc_host/hostX/statistics/fpin_dn_yyy |
Defined on file sysfs-class-fc_host
These files contain the number of delivery related errors recorded by the F_Port/Nx_Port, reported using fabric performance impact notification (FPIN) event.
/sys/class/fc_host/hostX/statistics/fpin_li_yyy |
Defined on file sysfs-class-fc_host
These files contain the number of link integrity error events recorded by the F_Port/Nx_Port, reported using fabric performance impact notification (FPIN) event.
/sys/class/fc_remote_ports/rport-X:Y-Z/statistics/fpin_cn_yyy |
Defined on file sysfs-class-fc_remote_ports
These files contain the number of congestion notification events recorded by the F_Port/Nx_Port, reported using fabric performance impact notification (FPIN) event.
/sys/class/fc_remote_ports/rport-X:Y-Z/statistics/fpin_dn_yyy |
Defined on file sysfs-class-fc_remote_ports
These files contain the number of delivery related errors recorded by the F_Port/Nx_Port, reported using fabric performance impact notification (FPIN) event.
/sys/class/fc_remote_ports/rport-X:Y-Z/statistics/fpin_li_yyy |
Defined on file sysfs-class-fc_remote_ports
These files contain the number of link integrity error events recorded by the F_Port/Nx_Port, reported using fabric performance impact notification (FPIN) event.
/sys/class/firmware-attributes/*/attributes/*/ |
Defined on file sysfs-class-firmware-attributes
A sysfs interface for systems management software to enable configuration capability on supported systems. This directory exposes interfaces for interacting with configuration options.
Unless otherwise specified in an attribute description all attributes are optional and will accept UTF-8 input.
- type:
A file that can be read to obtain the type of attribute. This attribute is mandatory.
The following are known types:
enumeration: a set of pre-defined valid values
integer: a range of numerical values
string
HP specific types
ordered-list - a set of ordered list valid values
All attribute types support the following values:
- current_value:
A file that can be read to obtain the current value of the <attr>.
This file can also be written to in order to update the value of a <attr>
This attribute is mandatory.
- default_value:
A file that can be read to obtain the default value of the <attr>
- display_name:
A file that can be read to obtain a user friendly description of the at <attr>
- display_name_language_code:
A file that can be read to obtain the IETF language tag corresponding to the “display_name” of the <attr>
“enumeration”-type specific properties:
- possible_values:
A file that can be read to obtain the possible values of the <attr>. Values are separated using semi-colon (
;
).
“integer”-type specific properties:
- min_value:
A file that can be read to obtain the lower bound value of the <attr>
- max_value:
A file that can be read to obtain the upper bound value of the <attr>
- scalar_increment:
A file that can be read to obtain the scalar value used for increments of current_value this attribute accepts.
“string”-type specific properties:
- max_length:
A file that can be read to obtain the maximum length value of the <attr>
- min_length:
A file that can be read to obtain the minimum length value of the <attr>
Dell specific class extensions
On Dell systems the following additional attributes are available:
- dell_modifier:
A file that can be read to obtain attribute-level dependency rule. It says an attribute X will become read-only or suppressed, if/if-not attribute Y is configured.
modifier rules can be in following format:
[ReadOnlyIf:<attribute>=<value>] [ReadOnlyIfNot:<attribute>=<value>] [SuppressIf:<attribute>=<value>] [SuppressIfNot:<attribute>=<value>]
For example:
AutoOnFri/dell_modifier has value, [SuppressIfNot:AutoOn=SelectDays]
This means AutoOnFri will be suppressed in BIOS setup if AutoOn attribute is not “SelectDays” and its value will not be effective through sysfs until this rule is met.
Enumeration attributes also support the following:
- dell_value_modifier:
A file that can be read to obtain value-level dependency. This file is similar to dell_modifier but here, an attribute’s current value will be forcefully changed based dependent attributes value.
dell_value_modifier rules can be in following format:
<value>[ForceIf:<attribute>=<value>] <value>[ForceIfNot:<attribute>=<value>]
For example:
LegacyOrom/dell_value_modifier has value: Disabled[ForceIf:SecureBoot=Enabled]
This means LegacyOrom’s current value will be forced to “Disabled” in BIOS setup if SecureBoot is Enabled and its value will not be effective through sysfs until this rule is met.
HP specific class extensions
On HP systems the following additional attributes are available:
“ordered-list”-type specific properties:
- elements:
A file that can be read to obtain the possible list of values of the <attr>. Values are separated using semi-colon (
;
) and listed according to their priority. An element listed first has the highest priority. Writing the list in a different order to current_value alters the priority order for the particular attribute.
/sys/class/firmware-attributes/*/attributes/Sure_Start/audit_log_entries |
Defined on file sysfs-class-firmware-attributes
‘audit_log_entries’ is a read-only file that returns the events in the log.
Audit log entry format
Byte 0-15: Requested Audit Log entry (Each Audit log is 16 bytes) Byte 16-127: Unused
/sys/class/firmware-attributes/*/attributes/Sure_Start/audit_log_entry_count |
Defined on file sysfs-class-firmware-attributes
‘audit_log_entry_count’ is a read-only file that returns the number of existing
audit log events available to be read. Values are separated using comma. (,
)
[No of entries],[log entry size],[Max number of entries supported]
log entry size identifies audit log size for the current BIOS version. The current size is 16 bytes but it can be up to 128 bytes long in future BIOS versions.
/sys/class/firmware-attributes/*/attributes/debug_cmd |
Defined on file sysfs-class-firmware-attributes
This write only attribute can be used to send debug commands to the BIOS. This should only be used when recommended by the BIOS vendor. Vendors may use it to enable extra debug attributes or BIOS features for testing purposes.
Note that any changes to this attribute requires a reboot for changes to take effect.
HP specific class extensions - Secure Platform Manager (SPM)
/sys/class/firmware-attributes/*/attributes/pending_reboot |
Defined on file sysfs-class-firmware-attributes
A read-only attribute reads 1 if a reboot is necessary to apply pending BIOS attribute changes. Also, an uevent_KOBJ_CHANGE is generated when it changes to 1.
0
All BIOS attributes setting are current
1
A reboot is necessary to get pending BIOS attribute changes applied
Note, userspace applications need to follow below steps for efficient BIOS management,
Check if admin password is set. If yes, follow session method for password management as briefed under authentication section above.
Before setting any attribute, check if it has any modifiers or value_modifiers. If yes, incorporate them and then modify attribute.
Drivers may emit a CHANGE uevent when this value changes and userspace may check it again.
/sys/class/firmware-attributes/*/attributes/reset_bios |
Defined on file sysfs-class-firmware-attributes
This attribute can be used to reset the BIOS Configuration. Specifically, it tells which type of reset BIOS configuration is being requested on the host.
Reading from it returns a list of supported options encoded as:
‘builtinsafe’ (Built in safe configuration profile)
‘lastknowngood’ (Last known good saved configuration profile)
‘factory’ (Default factory settings configuration profile)
‘custom’ (Custom saved configuration profile)
The currently selected option is printed in square brackets as shown below:
# echo "factory" > /sys/class/firmware-attributes/*/device/attributes/reset_bios
# cat /sys/class/firmware-attributes/*/device/attributes/reset_bios
builtinsafe lastknowngood [factory] custom
Note that any changes to this attribute requires a reboot for changes to take effect.
/sys/class/firmware-attributes/*/attributes/save_settings |
Defined on file sysfs-class-firmware-attributes
On Lenovo platforms there is a limitation in the number of times an attribute can be saved. This is an architectural limitation and it limits the number of attributes that can be modified to 48. A solution for this is instead of the attribute being saved after every modification, to allow a user to bulk set the attributes, and then trigger a final save. This allows unlimited attributes.
Read the attribute to check what save mode is enabled (single or bulk). E.g: # cat /sys/class/firmware-attributes/thinklmi/attributes/save_settings single
Write the attribute with ‘bulk’ to enable bulk save mode. Write the attribute with ‘single’ to enable saving, after every attribute set. The default setting is single mode. E.g: # echo bulk > /sys/class/firmware-attributes/thinklmi/attributes/save_settings
When in bulk mode write ‘save’ to trigger a save of all currently modified attributes. Note, once a save has been triggered, in bulk mode, attributes can no longer be set and will return a permissions error. This is to prevent users hitting the 48+ save limitation (which requires entering the BIOS to clear the error condition) E.g: # echo save > /sys/class/firmware-attributes/thinklmi/attributes/save_settings
/sys/class/firmware-attributes/*/authentication/ |
Defined on file sysfs-class-firmware-attributes
Devices support various authentication mechanisms which can be exposed as a separate configuration object.
For example a “BIOS Admin” password and “System” Password can be set, reset or cleared using these attributes.
An “Admin” password is used for preventing modification to the BIOS settings.
A “System” password is required to boot a machine.
Change in any of these two authentication methods will also generate an uevent KOBJ_CHANGE.
- is_enabled:
A file that can be read to obtain a 0/1 flag to see if <attr> authentication is enabled. This attribute is mandatory.
- role:
The type of authentication used. This attribute is mandatory.
- Known types:
- bios-admin:
Representing BIOS administrator password
- power-on:
Representing a password required to use the system
- system-mgmt:
Representing System Management password. See Lenovo extensions section for details
- HDD:
Representing HDD password See Lenovo extensions section for details
- NVMe:
Representing NVMe password See Lenovo extensions section for details
- mechanism:
The means of authentication. This attribute is mandatory. Supported types are “password” or “certificate”.
- max_password_length:
A file that can be read to obtain the maximum length of the Password
- min_password_length:
A file that can be read to obtain the minimum length of the Password
- current_password:
A write only value used for privileged access such as setting attributes when a system or admin password is set or resetting to a new password
This attribute is mandatory when mechanism == “password”.
- new_password:
A write only value that when used in tandem with current_password will reset a system or admin password.
Note, password management is session specific. If Admin password is set, same password must be written into current_password file (required for password-validation) and must be cleared once the session is over. For example:
echo "password" > current_password
echo "disabled" > TouchScreen/current_value
echo "" > current_password
Drivers may emit a CHANGE uevent when a password is set or unset userspace may check it again.
On Dell, Lenovo and HP systems, if Admin password is set, then all BIOS attributes require password validation. On Lenovo systems if you change the Admin password the new password is not active until the next boot.
Lenovo specific class extensions
On Lenovo systems the following additional settings are available:
- role: system-mgmt This gives the same authority as the bios-admin password to control
security related features. The authorities allocated can be set via the BIOS menu SMP Access Control Policy
- role: HDD & NVMe This password is used to unlock access to the drive at boot. Note see
‘level’ and ‘index’ extensions below.
- lenovo_encoding:
The encoding method that is used. This can be either “ascii” or “scancode”. Default is set to “ascii”
- lenovo_kbdlang:
The keyboard language method that is used. This is generally a two char code (e.g. “us”, “fr”, “gr”) and may vary per platform. Default is set to “us”
- level:
Available for HDD and NVMe authentication to set ‘user’ or ‘master’ privilege level. If only the user password is configured then this should be used to unlock the drive at boot. If both master and user passwords are set then either can be used. If a master password is set a user password is required. This attribute defaults to ‘user’ level
- index:
Used with HDD and NVME authentication to set the drive index that is being referenced (e.g hdd1, hdd2 etc) This attribute defaults to device 1.
- certificate, signature, save_signature:
These attributes are used for certificate based authentication. This is used in conjunction with a signing server as an alternative to password based authentication. The user writes to the attribute(s) with a BASE64 encoded string obtained from the signing server. The attributes can be displayed to check the stored value.
Some usage examples:
Installing a certificate to enable feature:
echo "supervisor password" > authentication/Admin/current_password echo "signed certificate" > authentication/Admin/certificate
Updating the installed certificate:
echo "signature" > authentication/Admin/signature echo "signed certificate" > authentication/Admin/certificate
Removing the installed certificate:
echo "signature" > authentication/Admin/signature echo "" > authentication/Admin/certificate
Changing a BIOS setting:
echo "signature" > authentication/Admin/signature echo "save signature" > authentication/Admin/save_signature echo Enable > attribute/PasswordBeep/current_value
You cannot enable certificate authentication if a supervisor password has not been set. Clearing the certificate results in no bios-admin authentication method being configured allowing anyone to make changes. After any of these operations the system must reboot for the changes to take effect. Admin and System certificates are supported from 2025 systems onward.
- certificate_thumbprint:
Read only attribute used to display the MD5, SHA1 and SHA256 thumbprints for the certificate installed in the BIOS.
- certificate_to_password:
Write only attribute used to switch from certificate based authentication back to password based. Usage:
echo "signature" > authentication/Admin/signature echo "password" > authentication/Admin/certificate_to_password
HP specific class extensions
On HP systems the following additional settings are available:
- role: enhanced-bios-auth:
This role is specific to Secure Platform Management (SPM) attribute. It requires configuring an endorsement (kek) and signing certificate (sk).
/sys/class/firmware-attributes/*/authentication/SPM/kek |
Defined on file sysfs-class-firmware-attributes
‘kek’ Key-Encryption-Key is a write-only file that can be used to configure the RSA public key that will be used by the BIOS to verify signatures when setting the signing key. When written, the bytes should correspond to the KEK certificate (x509 .DER format containing an OU). The size of the certificate must be less than or equal to 4095 bytes.
/sys/class/firmware-attributes/*/authentication/SPM/sk |
Defined on file sysfs-class-firmware-attributes
‘sk’ Signature Key is a write-only file that can be used to configure the RSA public key that will be used by the BIOS to verify signatures when configuring BIOS settings and security features. When written, the bytes should correspond to the modulus of the public key. The exponent is assumed to be 0x10001.
/sys/class/firmware-attributes/*/authentication/SPM/status |
Defined on file sysfs-class-firmware-attributes
‘status’ is a read-only file that returns ASCII text in JSON format reporting the status information.
“State”: “not provisioned | provisioned | provisioning in progress”, “Version”: “Major.Minor”, “Nonce”: <16-bit unsigned number display in base 10>, “FeaturesInUse”: <16-bit unsigned number display in base 10>, “EndorsementKeyMod”: “<256 bytes in base64>”, “SigningKeyMod”: “<256 bytes in base64>”
/sys/class/firmware/.../cancel |
Defined on file sysfs-class-firmware
Write-only. For firmware uploads, write a “1” to this file to request that the transfer of firmware data to the lower-level device be canceled. This request will be rejected (EBUSY) if the update cannot be canceled (e.g. a FLASH write is in progress) or (ENODEV) if there is no firmware update in progress.
/sys/class/firmware/.../data |
Defined on file sysfs-class-firmware
The data sysfs file is used for firmware-fallback and for firmware uploads. Cat a firmware image to this sysfs file after you echo 1 to the loading sysfs file. When the firmware image write is complete, echo 0 to the loading sysfs file. This sequence will signal the completion of the firmware write and signal the lower-level driver that the firmware data is available.
/sys/class/firmware/.../error |
Defined on file sysfs-class-firmware
Read-only. Returns a string describing a failed firmware upload. This string will be in the form of <STATUS>:<ERROR>, where <STATUS> will be one of the status strings described for the status sysfs file and <ERROR> will be one of the following: “hw-error”, “timeout”, “user-abort”, “device-busy”, “invalid-file-size”, “read-write-error”, “flash-wearout”. The error sysfs file is only meaningful when the current firmware upload status is “idle”. If this file is read while a firmware transfer is in progress, then the read will fail with EBUSY.
/sys/class/firmware/.../loading |
Defined on file sysfs-class-firmware
The loading sysfs file is used for both firmware-fallback and for firmware uploads. Echo 1 onto the loading file to indicate you are writing a firmware file to the data sysfs node. Echo -1 onto this file to abort the data write or echo 0 onto this file to indicate that the write is complete. For firmware uploads, the zero value also triggers the transfer of the firmware data to the lower-level device driver.
/sys/class/firmware/.../remaining_size |
Defined on file sysfs-class-firmware
Read-only. For firmware upload, this file contains the size of the firmware data that remains to be transferred to the lower-level device driver. The size value is initialized to the full size of the firmware image that was previously written to the data sysfs file. This value is periodically updated during the “transferring” phase of the firmware upload. Format: “%u”.
/sys/class/firmware/.../status |
Defined on file sysfs-class-firmware
Read-only. Returns a string describing the current status of a firmware upload. The string will be one of the following: idle, “receiving”, “preparing”, “transferring”, “programming”.
/sys/class/firmware/.../timeout |
Defined on file sysfs-class-firmware
This file supports the timeout mechanism for firmware fallback. This file has no affect on firmware uploads. For more information on timeouts please see the documentation for firmware fallback.
/sys/class/fpga_bridge/<bridge>/name |
Defined on file sysfs-class-fpga-bridge
Name of low level FPGA bridge driver.
/sys/class/fpga_bridge/<bridge>/state |
Defined on file sysfs-class-fpga-bridge
Show bridge state as “enabled” or “disabled”
/sys/class/fpga_manager/<fpga>/name |
Defined on file sysfs-class-fpga-manager
Name of low level fpga manager driver.
/sys/class/fpga_manager/<fpga>/state |
Defined on file sysfs-class-fpga-manager
Read fpga manager state as a string. The intent is to provide enough detail that if something goes wrong during FPGA programming (something that the driver can’t fix) then userspace can know, i.e. if the firmware request fails, that could be due to not being able to find the firmware file.
This is a superset of FPGA states and fpga manager driver states. The fpga manager driver is walking through these steps to get the FPGA into a known operating state. It’s a sequence, though some steps may get skipped. Valid FPGA states will vary by manufacturer; this is a superset.
unknown = can’t determine state
power off = FPGA power is off
power up = FPGA reports power is up
reset = FPGA held in reset state
firmware request = firmware class request in progress
firmware request error = firmware request failed
write init = preparing FPGA for programming
write init error = Error while preparing FPGA for programming
write = FPGA ready to receive image data
write error = Error while programming
write complete = Doing post programming steps
write complete error = Error while doing post programming
operating = FPGA is programmed and operating
/sys/class/fpga_manager/<fpga>/status |
Defined on file sysfs-class-fpga-manager
Read fpga manager status as a string. If FPGA programming operation fails, it could be caused by crc error or incompatible bitstream image. The intent of this interface is to provide more detailed information for FPGA programming errors to userspace. This is a list of strings for the supported status.
- reconfig operation error - invalid operations detected by
reconfiguration hardware. e.g. start reconfiguration with errors not cleared
- reconfig CRC error - CRC error detected by
reconfiguration hardware.
- reconfig incompatible image - reconfiguration image is
incompatible with hardware
- reconfig IP protocol error - protocol errors detected by
reconfiguration hardware
- reconfig fifo overflow error - FIFO overflow detected by
reconfiguration hardware
/sys/class/fpga_region/<region>/compat_id |
Defined on file sysfs-class-fpga-region
FPGA region id for compatibility check, e.g. compatibility of the FPGA reconfiguration hardware and image. This value is defined or calculated by the layer that is creating the FPGA region. This interface returns the compat_id value or just error code -ENOENT in case compat_id is not used.
/sys/class/genwqe/genwqe<n>_card/appid |
Defined on file sysfs-driver-genwqe
Identifies the currently active card application e.g. ‘GZIP’ for compression/decompression.
/sys/class/genwqe/genwqe<n>_card/base_clock |
Defined on file sysfs-driver-genwqe
Base clock frequency of the card.
/sys/class/genwqe/genwqe<n>_card/curr_bitstream |
Defined on file sysfs-driver-genwqe
Currently active bitstream. 1 is default, 0 is backup.
/sys/class/genwqe/genwqe<n>_card/device/sriov_numvfs |
Defined on file sysfs-driver-genwqe
Enable VFs (1..15):
sudo sh -c 'echo 15 > \
/sys/bus/pci/devices/0000\:1b\:00.0/sriov_numvfs'
Disable VFs:
Write a 0 into the same sysfs entry.
/sys/class/genwqe/genwqe<n>_card/freerunning_timer |
Defined on file sysfs-driver-genwqe
Interface to read the cards free running timer. Used for performance and utilization measurements.
/sys/class/genwqe/genwqe<n>_card/next_bitstream |
Defined on file sysfs-driver-genwqe
Interface to set the next bitstream to be used.
/sys/class/genwqe/genwqe<n>_card/queue_working_time |
Defined on file sysfs-driver-genwqe
Interface to read queue working time. Used for performance and utilization measurements.
/sys/class/genwqe/genwqe<n>_card/reload_bitstream |
Defined on file sysfs-driver-genwqe
Interface to trigger a PCIe card reset to reload the bitstream.
sudo sh -c 'echo 1 > \
/sys/class/genwqe/genwqe0_card/reload_bitstream'
If successfully, the card will come back with the bitstream set on ‘next_bitstream’.
/sys/class/genwqe/genwqe<n>_card/state |
Defined on file sysfs-driver-genwqe
State of the card: “unused”, “used”, “error”.
/sys/class/genwqe/genwqe<n>_card/tempsens |
Defined on file sysfs-driver-genwqe
Interface to read the cards temperature sense register.
/sys/class/genwqe/genwqe<n>_card/type |
Defined on file sysfs-driver-genwqe
Type of the card e.g. ‘GenWQE5-A7’.
/sys/class/genwqe/genwqe<n>_card/version |
Defined on file sysfs-driver-genwqe
Unique bitstream identification e.g. ‘0000000330336283.00000000475a4950’.
/sys/class/gnss/gnss<N>/type |
Defined on file sysfs-class-gnss
The GNSS receiver type. The currently identified types reflect the protocol(s) supported by the receiver:
“NMEA”
NMEA 0183
“SiRF”
SiRF Binary
“UBX”
UBX
Note that also non-“NMEA” type receivers typically support a subset of NMEA 0183 with vendor extensions (e.g. to allow switching to a vendor protocol).
/sys/class/hwmon/hwmonX/cpuY_vid |
Defined on file sysfs-class-hwmon
CPU core reference voltage.
Unit: millivolt
RO
Not always correct.
/sys/class/hwmon/hwmonX/currY_average |
Defined on file sysfs-class-hwmon
Average current use
Unit: milliampere
RO
/sys/class/hwmon/hwmonX/currY_crit |
Defined on file sysfs-class-hwmon
Current critical high value.
Unit: milliampere
RW
/sys/class/hwmon/hwmonX/currY_enable |
Defined on file sysfs-class-hwmon
Enable or disable the sensors.
When disabled the sensor read will return -ENODATA.
1: Enable
0: Disable
RW
/sys/class/hwmon/hwmonX/currY_highest |
Defined on file sysfs-class-hwmon
Historical maximum current Unit: milliampere RO
/sys/class/hwmon/hwmonX/currY_input |
Defined on file sysfs-class-hwmon
Current input value
Unit: milliampere
RO
/sys/class/hwmon/hwmonX/currY_lcrit |
Defined on file sysfs-class-hwmon
Current critical low value
Unit: milliampere
RW
/sys/class/hwmon/hwmonX/currY_lowest |
Defined on file sysfs-class-hwmon
Historical minimum current
Unit: milliampere
RO
/sys/class/hwmon/hwmonX/currY_max |
Defined on file sysfs-class-hwmon
Current max value
Unit: milliampere
RW
/sys/class/hwmon/hwmonX/currY_min |
Defined on file sysfs-class-hwmon
Current min value.
Unit: milliampere
RW
/sys/class/hwmon/hwmonX/currY_rated_max |
Defined on file sysfs-class-hwmon
Maximum rated current.
Unit: milliampere
RO
/sys/class/hwmon/hwmonX/currY_rated_min |
Defined on file sysfs-class-hwmon
Minimum rated current.
Unit: milliampere
RO
/sys/class/hwmon/hwmonX/currY_reset_history |
Defined on file sysfs-class-hwmon
Reset currX_lowest and currX_highest
WO
/sys/class/hwmon/hwmonX/curr_reset_history |
Defined on file sysfs-class-hwmon
Reset currX_lowest and currX_highest for all sensors
WO
/sys/class/hwmon/hwmonX/device/pec |
Defined on file sysfs-class-hwmon
PEC support on I2C devices
0, off, n: disable
1, on, y: enable
RW
/sys/class/hwmon/hwmonX/energyY_enable |
Defined on file sysfs-class-hwmon
Enable or disable the sensors.
When disabled the sensor read will return -ENODATA.
1: Enable
0: Disable
RW
/sys/class/hwmon/hwmonX/energyY_input |
Defined on file sysfs-class-hwmon
Cumulative energy use
Unit: microJoule
RO
/sys/class/hwmon/hwmonX/fanY_div |
Defined on file sysfs-class-hwmon
Fan divisor.
Integer value in powers of two (1, 2, 4, 8, 16, 32, 64, 128).
RW
Some chips only support values 1, 2, 4 and 8. Note that this is actually an internal clock divisor, which affects the measurable speed range, not the read value.
/sys/class/hwmon/hwmonX/fanY_enable |
Defined on file sysfs-class-hwmon
Enable or disable the sensors.
When disabled the sensor read will return -ENODATA.
1: Enable
0: Disable
RW
/sys/class/hwmon/hwmonX/fanY_fault |
Defined on file sysfs-class-hwmon
Reports if a fan has reported failure.
1: Failed
0: Ok
RO
/sys/class/hwmon/hwmonX/fanY_input |
Defined on file sysfs-class-hwmon
Fan input value.
Unit: revolution/min (RPM)
RO
/sys/class/hwmon/hwmonX/fanY_label |
Defined on file sysfs-class-hwmon
Suggested fan channel label.
Text string
Should only be created if the driver has hints about what this fan channel is being used for, and user-space doesn’t. In all other cases, the label is provided by user-space.
RO
/sys/class/hwmon/hwmonX/fanY_max |
Defined on file sysfs-class-hwmon
Fan maximum value
Unit: revolution/min (RPM)
Only rarely supported by the hardware. RW
/sys/class/hwmon/hwmonX/fanY_min |
Defined on file sysfs-class-hwmon
Fan minimum value
Unit: revolution/min (RPM)
RW
/sys/class/hwmon/hwmonX/fanY_pulses |
Defined on file sysfs-class-hwmon
Number of tachometer pulses per fan revolution.
Integer value, typically between 1 and 4.
RW
This value is a characteristic of the fan connected to the device’s input, so it has to be set in accordance with the fan model.
Should only be created if the chip has a register to configure the number of pulses. In the absence of such a register (and thus attribute) the value assumed by all devices is 2 pulses per fan revolution.
/sys/class/hwmon/hwmonX/fanY_target |
Defined on file sysfs-class-hwmon
Desired fan speed
Unit: revolution/min (RPM)
RW
Only makes sense if the chip supports closed-loop fan speed control based on the measured fan speed.
/sys/class/hwmon/hwmonX/humidityY_alarm |
Defined on file sysfs-class-hwmon
Humidity limit detection
0: OK
1: Humidity limit has been reached
RO
/sys/class/hwmon/hwmonX/humidityY_enable |
Defined on file sysfs-class-hwmon
Enable or disable the sensors
When disabled the sensor read will return -ENODATA.
1: Enable
0: Disable
RW
/sys/class/hwmon/hwmonX/humidityY_fault |
Defined on file sysfs-class-hwmon
Reports a humidity sensor failure.
1: Failed
0: Ok
RO
/sys/class/hwmon/hwmonX/humidityY_input |
Defined on file sysfs-class-hwmon
Humidity
Unit: milli-percent (per cent mille, pcm)
RO
/sys/class/hwmon/hwmonX/humidityY_label |
Defined on file sysfs-class-hwmon
Suggested humidity channel label.
Text string
Should only be created if the driver has hints about what this humidity channel is being used for, and user-space doesn’t. In all other cases, the label is provided by user-space.
RO
/sys/class/hwmon/hwmonX/humidityY_max |
Defined on file sysfs-class-hwmon
Humidity max value.
Unit: milli-percent (per cent mille, pcm)
RW
/sys/class/hwmon/hwmonX/humidityY_max_alarm |
Defined on file sysfs-class-hwmon
Maximum humidity detection
0: OK
1: Maximum humidity detected
RO
/sys/class/hwmon/hwmonX/humidityY_max_hyst |
Defined on file sysfs-class-hwmon
Humidity hysteresis value for max limit.
Unit: milli-percent (per cent mille, pcm)
Must be reported as an absolute humidity, NOT a delta from the max value.
RW
/sys/class/hwmon/hwmonX/humidityY_min |
Defined on file sysfs-class-hwmon
Humidity min value.
Unit: milli-percent (per cent mille, pcm)
RW
/sys/class/hwmon/hwmonX/humidityY_min_alarm |
Defined on file sysfs-class-hwmon
Minimum humidity detection
0: OK
1: Minimum humidity detected
RO
/sys/class/hwmon/hwmonX/humidityY_min_hyst |
Defined on file sysfs-class-hwmon
Humidity hysteresis value for min limit.
Unit: milli-percent (per cent mille, pcm)
Must be reported as an absolute humidity, NOT a delta from the min value.
RW
/sys/class/hwmon/hwmonX/humidityY_rated_max |
Defined on file sysfs-class-hwmon
Maximum rated humidity.
Unit: milli-percent (per cent mille, pcm)
RO
/sys/class/hwmon/hwmonX/humidityY_rated_min |
Defined on file sysfs-class-hwmon
Minimum rated humidity.
Unit: milli-percent (per cent mille, pcm)
RO
/sys/class/hwmon/hwmonX/inY_average |
Defined on file sysfs-class-hwmon
Average voltage
Unit: millivolt
RO
/sys/class/hwmon/hwmonX/inY_crit |
Defined on file sysfs-class-hwmon
Voltage critical max value.
Unit: millivolt
RW
If voltage reaches or exceeds this limit, the system may take drastic action such as power down or reset. At the very least, it should report a fault.
/sys/class/hwmon/hwmonX/inY_enable |
Defined on file sysfs-class-hwmon
Enable or disable the sensors.
When disabled the sensor read will return -ENODATA.
1: Enable
0: Disable
RW
/sys/class/hwmon/hwmonX/inY_fault |
Defined on file sysfs-class-hwmon
Reports a voltage hard failure (eg: shorted component)
1: Failed
0: Ok
RO
/sys/class/hwmon/hwmonX/inY_highest |
Defined on file sysfs-class-hwmon
Historical maximum voltage
Unit: millivolt
RO
/sys/class/hwmon/hwmonX/inY_input |
Defined on file sysfs-class-hwmon
Voltage input value.
Unit: millivolt
RO
Voltage measured on the chip pin.
Actual voltage depends on the scaling resistors on the motherboard, as recommended in the chip datasheet.
This varies by chip and by motherboard. Because of this variation, values are generally NOT scaled by the chip driver, and must be done by the application. However, some drivers (notably lm87 and via686a) do scale, because of internal resistors built into a chip. These drivers will output the actual voltage. Rule of thumb: drivers should report the voltage values at the “pins” of the chip.
/sys/class/hwmon/hwmonX/inY_label |
Defined on file sysfs-class-hwmon
Suggested voltage channel label.
Text string
Should only be created if the driver has hints about what this voltage channel is being used for, and user-space doesn’t. In all other cases, the label is provided by user-space.
RO
/sys/class/hwmon/hwmonX/inY_lcrit |
Defined on file sysfs-class-hwmon
Voltage critical min value.
Unit: millivolt
RW
If voltage drops to or below this limit, the system may take drastic action such as power down or reset. At the very least, it should report a fault.
/sys/class/hwmon/hwmonX/inY_lowest |
Defined on file sysfs-class-hwmon
Historical minimum voltage
Unit: millivolt
RO
/sys/class/hwmon/hwmonX/inY_max |
Defined on file sysfs-class-hwmon
Voltage max value.
Unit: millivolt
RW
/sys/class/hwmon/hwmonX/inY_min |
Defined on file sysfs-class-hwmon
Voltage min value.
Unit: millivolt
RW
/sys/class/hwmon/hwmonX/inY_rated_max |
Defined on file sysfs-class-hwmon
Maximum rated voltage.
Unit: millivolt
RO
/sys/class/hwmon/hwmonX/inY_rated_min |
Defined on file sysfs-class-hwmon
Minimum rated voltage.
Unit: millivolt
RO
/sys/class/hwmon/hwmonX/inY_reset_history |
Defined on file sysfs-class-hwmon
Reset inX_lowest and inX_highest
WO
/sys/class/hwmon/hwmonX/in_reset_history |
Defined on file sysfs-class-hwmon
Reset inX_lowest and inX_highest for all sensors
WO
/sys/class/hwmon/hwmonX/intrusionY_alarm |
Defined on file sysfs-class-hwmon
Chassis intrusion detection
0: OK
1: intrusion detected
RW
Contrary to regular alarm flags which clear themselves automatically when read, this one sticks until cleared by the user. This is done by writing 0 to the file. Writing other values is unsupported.
/sys/class/hwmon/hwmonX/intrusionY_beep |
Defined on file sysfs-class-hwmon
Chassis intrusion beep
0: disable
1: enable
RW
/sys/class/hwmon/hwmonX/label |
Defined on file sysfs-class-hwmon
A descriptive label that allows to uniquely identify a device within the system. The contents of the label are free-form.
RO
/sys/class/hwmon/hwmonX/name |
Defined on file sysfs-class-hwmon
The chip name. This should be a short, lowercase string, not containing whitespace, dashes, or the wildcard character ‘*’. This attribute represents the chip name. It is the only mandatory attribute. I2C devices get this attribute created automatically.
RO
/sys/class/hwmon/hwmonX/powerY_accuracy |
Defined on file sysfs-class-hwmon
Accuracy of the power meter.
Unit: Percent
RO
/sys/class/hwmon/hwmonX/powerY_average |
Defined on file sysfs-class-hwmon
Average power use
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_average_highest |
Defined on file sysfs-class-hwmon
Historical average maximum power use
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_average_interval |
Defined on file sysfs-class-hwmon
Power use averaging interval. A poll notification is sent to this file if the hardware changes the averaging interval.
Unit: milliseconds
RW
/sys/class/hwmon/hwmonX/powerY_average_interval_max |
Defined on file sysfs-class-hwmon
Maximum power use averaging interval
Unit: milliseconds
RO
/sys/class/hwmon/hwmonX/powerY_average_interval_min |
Defined on file sysfs-class-hwmon
Minimum power use averaging interval
Unit: milliseconds
RO
/sys/class/hwmon/hwmonX/powerY_average_lowest |
Defined on file sysfs-class-hwmon
Historical average minimum power use
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_average_max |
Defined on file sysfs-class-hwmon
A poll notification is sent to powerY_average when power use rises above this value.
Unit: microWatt
RW
/sys/class/hwmon/hwmonX/powerY_average_min |
Defined on file sysfs-class-hwmon
A poll notification is sent to powerY_average when power use sinks below this value.
Unit: microWatt
RW
/sys/class/hwmon/hwmonX/powerY_cap |
Defined on file sysfs-class-hwmon
If power use rises above this limit, the system should take action to reduce power use. A poll notification is sent to this file if the cap is changed by the hardware. The *_cap files only appear if the cap is known to be enforced by hardware.
Unit: microWatt
RW
/sys/class/hwmon/hwmonX/powerY_cap_hyst |
Defined on file sysfs-class-hwmon
Margin of hysteresis built around capping and notification.
Unit: microWatt
RW
/sys/class/hwmon/hwmonX/powerY_cap_max |
Defined on file sysfs-class-hwmon
Maximum cap that can be set.
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_cap_min |
Defined on file sysfs-class-hwmon
Minimum cap that can be set.
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_crit |
Defined on file sysfs-class-hwmon
Critical maximum power.
If power rises to or above this limit, the system is expected take drastic action to reduce power consumption, such as a system shutdown or a forced powerdown of some devices.
Unit: microWatt
RW
/sys/class/hwmon/hwmonX/powerY_enable |
Defined on file sysfs-class-hwmon
Enable or disable the sensors.
When disabled the sensor read will return -ENODATA.
1: Enable
0: Disable
RW
/sys/class/hwmon/hwmonX/powerY_input |
Defined on file sysfs-class-hwmon
Instantaneous power use
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_input_highest |
Defined on file sysfs-class-hwmon
Historical maximum power use
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_input_lowest |
Defined on file sysfs-class-hwmon
Historical minimum power use
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_max |
Defined on file sysfs-class-hwmon
Maximum power.
Unit: microWatt
RW
/sys/class/hwmon/hwmonX/powerY_rated_max |
Defined on file sysfs-class-hwmon
Maximum rated power.
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_rated_min |
Defined on file sysfs-class-hwmon
Minimum rated power.
Unit: microWatt
RO
/sys/class/hwmon/hwmonX/powerY_reset_history |
Defined on file sysfs-class-hwmon
Reset input_highest, input_lowest, average_highest and average_lowest.
WO
/sys/class/hwmon/hwmonX/pwmY |
Defined on file sysfs-class-hwmon
Pulse width modulation fan control.
Integer value in the range 0 to 255
RW
255 is max or 100%.
/sys/class/hwmon/hwmonX/pwmY_auto_channels_temp |
Defined on file sysfs-class-hwmon
Select which temperature channels affect this PWM output in auto mode.
Bitfield, 1 is temp1, 2 is temp2, 4 is temp3 etc... Which values are possible depend on the chip used.
RW
/sys/class/hwmon/hwmonX/pwmY_auto_pointZ_pwm |
/sys/class/hwmon/hwmonX/pwmY_auto_pointZ_temp |
/sys/class/hwmon/hwmonX/pwmY_auto_pointZ_temp_hyst |
Defined on file sysfs-class-hwmon
Define the PWM vs temperature curve.
Number of trip points is chip-dependent. Use this for chips which associate trip points to PWM output channels.
RW
/sys/class/hwmon/hwmonX/pwmY_enable |
Defined on file sysfs-class-hwmon
Fan speed control method:
0: no fan speed control (i.e. fan at full speed)
1: manual fan speed control enabled (using pwmY)
2+: automatic fan speed control enabled
Check individual chip documentation files for automatic mode details.
RW
/sys/class/hwmon/hwmonX/pwmY_freq |
Defined on file sysfs-class-hwmon
Base PWM frequency in Hz.
Only possibly available when pwmN_mode is PWM, but not always present even then.
RW
/sys/class/hwmon/hwmonX/pwmY_mode |
Defined on file sysfs-class-hwmon
0: DC mode (direct current)
1: PWM mode (pulse-width modulation)
RW
/sys/class/hwmon/hwmonX/tempY_auto_pointZ_pwm |
/sys/class/hwmon/hwmonX/tempY_auto_pointZ_temp |
/sys/class/hwmon/hwmonX/tempY_auto_pointZ_temp_hyst |
Defined on file sysfs-class-hwmon
Define the PWM vs temperature curve.
Number of trip points is chip-dependent. Use this for chips which associate trip points to temperature channels.
RW
/sys/class/hwmon/hwmonX/tempY_crit |
Defined on file sysfs-class-hwmon
Temperature critical max value, typically greater than corresponding temp_max values.
Unit: millidegree Celsius
RW
/sys/class/hwmon/hwmonX/tempY_crit_alarm |
Defined on file sysfs-class-hwmon
Critical high temperature alarm flag.
0: OK
1: temperature has reached tempY_crit
RO
/sys/class/hwmon/hwmonX/tempY_crit_hyst |
Defined on file sysfs-class-hwmon
Temperature hysteresis value for critical limit.
Unit: millidegree Celsius
Must be reported as an absolute temperature, NOT a delta from the critical value.
RW
/sys/class/hwmon/hwmonX/tempY_emergency |
Defined on file sysfs-class-hwmon
Temperature emergency max value, for chips supporting more than two upper temperature limits. Must be equal or greater than corresponding temp_crit values.
Unit: millidegree Celsius
RW
/sys/class/hwmon/hwmonX/tempY_emergency_alarm |
Defined on file sysfs-class-hwmon
Emergency high temperature alarm flag.
0: OK
1: temperature has reached tempY_emergency
RO
/sys/class/hwmon/hwmonX/tempY_emergency_hyst |
Defined on file sysfs-class-hwmon
Temperature hysteresis value for emergency limit.
Unit: millidegree Celsius
Must be reported as an absolute temperature, NOT a delta from the emergency value.
RW
/sys/class/hwmon/hwmonX/tempY_enable |
Defined on file sysfs-class-hwmon
Enable or disable the sensors.
When disabled the sensor read will return -ENODATA.
1: Enable
0: Disable
RW
/sys/class/hwmon/hwmonX/tempY_highest |
Defined on file sysfs-class-hwmon
Historical maximum temperature
Unit: millidegree Celsius
RO
/sys/class/hwmon/hwmonX/tempY_input |
Defined on file sysfs-class-hwmon
Temperature input value.
Unit: millidegree Celsius
RO
/sys/class/hwmon/hwmonX/tempY_label |
Defined on file sysfs-class-hwmon
Suggested temperature channel label.
Text string
Should only be created if the driver has hints about what this temperature channel is being used for, and user-space doesn’t. In all other cases, the label is provided by user-space.
RO
/sys/class/hwmon/hwmonX/tempY_lcrit |
Defined on file sysfs-class-hwmon
Temperature critical min value, typically lower than corresponding temp_min values.
Unit: millidegree Celsius
RW
/sys/class/hwmon/hwmonX/tempY_lcrit_hyst |
Defined on file sysfs-class-hwmon
Temperature hysteresis value for critical min limit.
Unit: millidegree Celsius
Must be reported as an absolute temperature, NOT a delta from the critical min value.
RW
/sys/class/hwmon/hwmonX/tempY_lowest |
Defined on file sysfs-class-hwmon
Historical minimum temperature
Unit: millidegree Celsius
RO
/sys/class/hwmon/hwmonX/tempY_max |
Defined on file sysfs-class-hwmon
Temperature max value.
Unit: millidegree Celsius (or millivolt, see below)
RW
/sys/class/hwmon/hwmonX/tempY_max_alarm |
Defined on file sysfs-class-hwmon
Maximum temperature alarm flag.
0: OK
1: temperature has reached tempY_max
RO
/sys/class/hwmon/hwmonX/tempY_max_hyst |
Defined on file sysfs-class-hwmon
Temperature hysteresis value for max limit.
Unit: millidegree Celsius
Must be reported as an absolute temperature, NOT a delta from the max value.
RW
/sys/class/hwmon/hwmonX/tempY_min |
Defined on file sysfs-class-hwmon
Temperature min value.
Unit: millidegree Celsius
RW
/sys/class/hwmon/hwmonX/tempY_min_alarm |
Defined on file sysfs-class-hwmon
Minimum temperature alarm flag.
0: OK
1: temperature has reached tempY_min
RO
/sys/class/hwmon/hwmonX/tempY_min_hyst |
Defined on file sysfs-class-hwmon
Temperature hysteresis value for min limit. Unit: millidegree Celsius
Must be reported as an absolute temperature, NOT a delta from the min value.
RW
/sys/class/hwmon/hwmonX/tempY_offset |
Defined on file sysfs-class-hwmon
Temperature offset which is added to the temperature reading by the chip.
Unit: millidegree Celsius
Read/Write value.
/sys/class/hwmon/hwmonX/tempY_rated_max |
Defined on file sysfs-class-hwmon
Maximum rated temperature.
Unit: millidegree Celsius
RO
/sys/class/hwmon/hwmonX/tempY_rated_min |
Defined on file sysfs-class-hwmon
Minimum rated temperature.
Unit: millidegree Celsius
RO
/sys/class/hwmon/hwmonX/tempY_reset_history |
Defined on file sysfs-class-hwmon
Reset temp_lowest and temp_highest
WO
/sys/class/hwmon/hwmonX/tempY_type |
Defined on file sysfs-class-hwmon
Sensor type selection.
Integers 1 to 6
RW
1: CPU embedded diode
2: 3904 transistor
3: thermal diode
4: thermistor
5: AMD AMDSI
6: Intel PECI
Not all types are supported by all chips
/sys/class/hwmon/hwmonX/temp_reset_history |
Defined on file sysfs-class-hwmon
Reset temp_lowest and temp_highest for all sensors
WO
/sys/class/hwmon/hwmonX/update_interval |
Defined on file sysfs-class-hwmon
The interval at which the chip will update readings. Unit: millisecond
RW
Some devices have a variable update rate or interval. This attribute can be used to change it to the desired value.
/sys/class/hwmon/hwmonX/vrm |
Defined on file sysfs-class-hwmon
Voltage Regulator Module version number.
RW (but changing it should no more be necessary)
Originally the VRM standard version multiplied by 10, but now an arbitrary number, as not all standards have a version number.
Affects the way the driver calculates the CPU core reference voltage from the vid pins.
/sys/class/input/input(x)/device/function_row_physmap |
Defined on file sysfs-driver-input-cros-ec-keyb
A space separated list of scancodes for the top row keys, ordered by the physical positions of the keys, from left to right.
/sys/class/input/input(x)/device/shutdown |
Defined on file sysfs-driver-input-axp-pek
Shutdown time in us. Board is powered off if the button is pressed for more than <shutdown_time>
/sys/class/input/input(x)/device/startup |
Defined on file sysfs-driver-input-axp-pek
Startup time in us. Board is powered on if the button is pressed for more than <startup_time>
/sys/class/intel_pmt/ |
Defined on file sysfs-class-intel_pmt
The intel_pmt/ class directory contains information for devices that expose hardware telemetry using Intel Platform Monitoring Technology (PMT)
/sys/class/intel_pmt/crashlog<x> |
Defined on file sysfs-class-intel_pmt
The crashlog<x> directory contains files for configuring an instance of a PMT crashlog device that can perform crash data recording. Each crashlog<x> device has an associated crashlog file. This file can be opened and mapped or read to access the resulting crashlog buffer. The register layout for the buffer can be determined from an XML file of specified GUID for the parent device.
/sys/class/intel_pmt/crashlog<x>/crashlog |
Defined on file sysfs-class-intel_pmt
(RO) The crashlog buffer for this crashlog device. This file may be mapped or read to obtain the data.
/sys/class/intel_pmt/crashlog<x>/enable |
Defined on file sysfs-class-intel_pmt
(RW) Boolean value controlling if the crashlog functionality is enabled for the crashlog device.
/sys/class/intel_pmt/crashlog<x>/guid |
Defined on file sysfs-class-intel_pmt
(RO) The GUID for this crashlog device. The GUID identifies the version of the XML file for the parent device that should be used to determine the register layout.
/sys/class/intel_pmt/crashlog<x>/offset |
Defined on file sysfs-class-intel_pmt
(RO) The offset of the buffer in bytes that corresponds to the mapping for the crashlog device.
/sys/class/intel_pmt/crashlog<x>/size |
Defined on file sysfs-class-intel_pmt
(RO) The length of the result buffer in bytes that corresponds to the size for the crashlog buffer.
/sys/class/intel_pmt/crashlog<x>/trigger |
Defined on file sysfs-class-intel_pmt
(RW) Boolean value controlling the triggering of the crashlog device node. When read it provides data on if the crashlog has been triggered. When written to it can be used to either clear the current trigger by writing false, or to trigger a new event if the trigger is not currently set.
/sys/class/intel_pmt/telem<x> |
Defined on file sysfs-class-intel_pmt
The telem<x> directory contains files describing an instance of a PMT telemetry device that exposes hardware telemetry. Each telem<x> directory has an associated telem file. This file may be opened and mapped or read to access the telemetry space of the device. The register layout of the telemetry space is determined from an XML file that matches the PCI device id and GUID for the device.
/sys/class/intel_pmt/telem<x>/guid |
Defined on file sysfs-class-intel_pmt
(RO) The GUID for this telemetry device. The GUID identifies the version of the XML file for the parent device that is to be used to get the register layout.
/sys/class/intel_pmt/telem<x>/offset |
Defined on file sysfs-class-intel_pmt
(RO) The offset of telemetry region in bytes that corresponds to the mapping for the telem file.
/sys/class/intel_pmt/telem<x>/size |
Defined on file sysfs-class-intel_pmt
(RO) The size of telemetry region in bytes that corresponds to the mapping size for the telem file.
/sys/class/intel_pmt/telem<x>/telem |
Defined on file sysfs-class-intel_pmt
(RO) The telemetry data for this telemetry device. This file may be mapped or read to obtain the data.
/sys/class/iommu/<iommu>/amd-iommu/cap |
Defined on file sysfs-class-iommu-amd-iommu
IOMMU capability header as documented in the AMD IOMMU specification. Format: %x
/sys/class/iommu/<iommu>/amd-iommu/features |
Defined on file sysfs-class-iommu-amd-iommu
Extended features of the IOMMU. Format: %llx
/sys/class/iommu/<iommu>/devices/ |
Defined on file sysfs-class-iommu
IOMMU drivers are able to link devices managed by a given IOMMU here to allow association of IOMMU to device.
/sys/class/iommu/<iommu>/intel-iommu/address |
Defined on file sysfs-class-iommu-intel-iommu
Physical address of the VT-d DRHD for this IOMMU. Format: %llx. This allows association of a sysfs intel-iommu with a DMAR DRHD table entry.
/sys/class/iommu/<iommu>/intel-iommu/cap |
Defined on file sysfs-class-iommu-intel-iommu
The cached hardware capability register value of this DRHD unit. Format: %llx.
/sys/class/iommu/<iommu>/intel-iommu/ecap |
Defined on file sysfs-class-iommu-intel-iommu
The cached hardware extended capability register value of this DRHD unit. Format: %llx.
/sys/class/iommu/<iommu>/intel-iommu/version |
Defined on file sysfs-class-iommu-intel-iommu
The architecture version as reported from the VT-d VER_REG. Format: %d:%d, major:minor
/sys/class/lcd/<lcd>/contrast |
Defined on file sysfs-class-lcd
Current contrast of this LCD device. Value is between 0 and /sys/class/lcd/<lcd>/max_contrast.
/sys/class/lcd/<lcd>/lcd_power |
Defined on file sysfs-class-lcd
- Control LCD power, values are FB_BLANK_* from fb.h
FB_BLANK_UNBLANK (0) : power on.
FB_BLANK_POWERDOWN (4) : power off
/sys/class/lcd/<lcd>/max_contrast |
Defined on file sysfs-class-lcd
Maximum contrast for this LCD device.
/sys/class/leds/<led>/als_channel |
Defined on file sysfs-class-led-driver-lm3533
Set the ALS output channel to use as input in ALS-current-control mode (1, 2), where:
1 |
out_current1 |
2 |
out_current2 |
/sys/class/leds/<led>/als_en |
Defined on file sysfs-class-led-driver-lm3533
Enable ALS-current-control mode (0, 1).
/sys/class/leds/<led>/brightness |
Defined on file sysfs-class-led
Set the brightness of the LED.
Most LEDs don’t have hardware brightness support, so will just be turned on for non-zero brightness settings.
Note
For multicolor LEDs, writing to this file will update all LEDs within the group to a calculated percentage of what each color LED intensity is set to.
The percentage is calculated for each grouped LED via the equation below:
led_brightness = brightness * multi_intensity/max_brightness
For additional details please refer to Multicolor LED handling under Linux.
The value is between 0 and /sys/class/leds/<led>/max_brightness.
Writing 0 to this file clears active trigger.
Writing non-zero to this file while trigger is active changes the top brightness trigger is going to use.
/sys/class/leds/<led>/brightness_hw_changed |
Defined on file sysfs-class-led
Last hardware set brightness level for this LED. Some LEDs may be changed autonomously by hardware/firmware. Only LEDs where this happens and the driver can detect this, will have this file.
This file supports poll() to detect when the hardware changes the brightness.
Reading this file will return the last brightness level set by the hardware, this may be different from the current brightness. Reading this file when no hw brightness change event has happened will return an ENODATA error.
/sys/class/leds/<led>/delay_off |
Defined on file sysfs-class-led-trigger-oneshot
Specifies for how many milliseconds the LED has to stay at LED_OFF brightness after it has been armed. Defaults to 100 ms.
/sys/class/leds/<led>/delay_on |
Defined on file sysfs-class-led-trigger-oneshot
Specifies for how many milliseconds the LED has to stay at LED_FULL brightness after it has been armed. Defaults to 100 ms.
/sys/class/leds/<led>/device/brightness |
Defined on file sysfs-class-led-driver-turris-omnia
(RW) On the front panel of the Turris Omnia router there is also a button which can be used to control the intensity of all the LEDs at once, so that if they are too bright, user can dim them.
The microcontroller cycles between 8 levels of this global brightness (from 100% to 0%), but this setting can have any integer value between 0 and 100. It is therefore convenient to be able to change this setting from software.
Format: %i
/sys/class/leds/<led>/device/gamma_correction |
Defined on file sysfs-class-led-driver-turris-omnia
(RW) Newer versions of the microcontroller firmware of the Turris Omnia router support gamma correction for the RGB LEDs. This feature can be enabled/disabled by writing to this file.
If the feature is not supported because the MCU firmware is too old, the file always reads as 0, and writing to the file results in the EOPNOTSUPP error.
Format: %i
/sys/class/leds/<led>/device_name |
Defined on file sysfs-class-led-trigger-netdev
Specifies the network device name to monitor.
/sys/class/leds/<led>/dim |
Defined on file sysfs-class-led-driver-aw200xx
64-level DIM current. If you write a negative value or “auto”, the dim will be calculated according to the brightness.
/sys/class/leds/<led>/falltime |
/sys/class/leds/<led>/risetime |
Defined on file sysfs-class-led-driver-lm3533
Set the pattern generator fall and rise times (0..7), where:
0 |
2048 us |
1 |
262 ms |
2 |
524 ms |
3 |
1.049 s |
4 |
2.097 s |
5 |
4.194 s |
6 |
8.389 s |
7 |
16.78 s |
/sys/class/leds/<led>/flash_brightness |
Defined on file sysfs-class-led-flash
read/write Set the brightness of this LED in the flash strobe mode, in microamperes. The file is created only for the flash LED devices that support setting flash brightness.
The value is between 0 and /sys/class/leds/<led>/max_flash_brightness.
/sys/class/leds/<led>/flash_fault |
Defined on file sysfs-class-led-flash
read only Space separated list of flash faults that may have occurred. Flash faults are re-read after strobing the flash. Possible flash faults:
- led-over-voltage
flash controller voltage to the flash LED has exceeded the limit specific to the flash controller
- flash-timeout-exceeded
the flash strobe was still on when the timeout set by the user has expired; not all flash controllers may set this in all such conditions
- controller-over-temperature
the flash controller has overheated
- controller-short-circuit
the short circuit protection of the flash controller has been triggered
- led-power-supply-over-current
current in the LED power supply has exceeded the limit specific to the flash controller
- indicator-led-fault
the flash controller has detected a short or open circuit condition on the indicator LED
- led-under-voltage
flash controller voltage to the flash LED has been below the minimum limit specific to the flash
- controller-under-voltage
the input voltage of the flash controller is below the limit under which strobing the flash at full current will not be possible; the condition persists until this flag is no longer set
- led-over-temperature
the temperature of the LED has exceeded its allowed upper limit
/sys/class/leds/<led>/flash_strobe |
Defined on file sysfs-class-led-flash
read/write Flash strobe state. When written with 1 it triggers flash strobe and when written with 0 it turns the flash off.
On read 1 means that flash is currently strobing and 0 means that flash is off.
/sys/class/leds/<led>/flash_timeout |
Defined on file sysfs-class-led-flash
read/write Hardware timeout for flash, in microseconds. The flash strobe is stopped after this period of time has passed from the start of the strobe. The file is created only for the flash LED devices that support setting flash timeout.
/sys/class/leds/<led>/full_duplex |
Defined on file sysfs-class-led-trigger-netdev
Signal the link full duplex state of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link full duplex state of the named network device. Setting this value also immediately changes the LED state.
/sys/class/leds/<led>/gt683r/mode |
Defined on file sysfs-class-leds-gt683r
Set the mode of LEDs. You should notice that changing the mode of one LED will update the mode of its two sibling devices as well. Possible values are:
0 |
normal |
1 |
audio |
2 |
breathing |
Normal: LEDs are fully on when enabled Audio: LEDs brightness depends on sound level Breathing: LEDs brightness varies at human breathing rate
/sys/class/leds/<led>/half_duplex |
Defined on file sysfs-class-led-trigger-netdev
Signal the link half duplex state of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link half duplex state of the named network device. Setting this value also immediately changes the LED state.
/sys/class/leds/<led>/hr_pattern |
Defined on file sysfs-class-led-trigger-pattern
Specify a software pattern for the LED, that supports altering the brightness for the specified duration with one software timer. It can do gradual dimming and step change of brightness.
Unlike the /sys/class/leds/<led>/pattern, this attribute runs a pattern on high-resolution timer (hrtimer).
/sys/class/leds/<led>/hw_pattern |
Defined on file sysfs-class-led-trigger-pattern
Specify a hardware pattern for the LED, for LED hardware that supports autonomously controlling brightness over time, according to some preprogrammed hardware patterns. It deactivates any active software pattern.
Since different LED hardware can have different semantics of hardware patterns, each driver is expected to provide its own description for the hardware patterns in their documentation file at Documentation/leds/.
/sys/class/leds/<led>/id |
Defined on file sysfs-class-led-driver-lm3533
Get the id of this led (0..3).
/sys/class/leds/<led>/interval |
Defined on file sysfs-class-led-trigger-netdev
Specifies the duration of the LED blink in milliseconds. Defaults to 50 ms.
When offloaded is true, the interval value MUST be set to the default value and cannot be changed. Trying to set any value in this specific mode will return an EINVAL error.
/sys/class/leds/<led>/invert |
Defined on file sysfs-class-led-trigger-oneshot
Reverse the blink logic. If set to 0 (default) blink on for delay_on ms, then blink off for delay_off ms, leaving the LED normally off. If set to 1, blink off for delay_off ms, then blink on for delay_on ms, leaving the LED normally on. Setting this value also immediately changes the LED state.
/sys/class/leds/<led>/inverted |
Defined on file sysfs-class-led
Invert the LED on/off state. This parameter is specific to gpio and backlight triggers. In case of the backlight trigger, it is useful when driving a LED which is intended to indicate a device in a standby like state.
/sys/class/leds/<led>/linear |
Defined on file sysfs-class-led-driver-lm3533
Set the brightness-mapping mode (0, 1), where:
0 |
exponential mode |
1 |
linear mode |
/sys/class/leds/<led>/link |
Defined on file sysfs-class-led-trigger-netdev
Signal the link state of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link state of the named network device. Setting this value also immediately changes the LED state.
/sys/class/leds/<led>/link_10 |
Defined on file sysfs-class-led-trigger-netdev
Signal the link speed state of 10Mbps of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link state speed of 10MBps of the named network device. Setting this value also immediately changes the LED state.
Present only if the named network device supports 10Mbps link speed.
/sys/class/leds/<led>/link_100 |
Defined on file sysfs-class-led-trigger-netdev
Signal the link speed state of 100Mbps of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link state speed of 100Mbps of the named network device. Setting this value also immediately changes the LED state.
Present only if the named network device supports 100Mbps link speed.
/sys/class/leds/<led>/link_1000 |
Defined on file sysfs-class-led-trigger-netdev
Signal the link speed state of 1000Mbps of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link state speed of 1000Mbps of the named network device. Setting this value also immediately changes the LED state.
Present only if the named network device supports 1000Mbps link speed.
/sys/class/leds/<led>/link_10000 |
Defined on file sysfs-class-led-trigger-netdev
Signal the link speed state of 10000Mbps of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link state speed of 10000Mbps of the named network device. Setting this value also immediately changes the LED state.
Present only if the named network device supports 10000Mbps link speed.
/sys/class/leds/<led>/link_2500 |
Defined on file sysfs-class-led-trigger-netdev
Signal the link speed state of 2500Mbps of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link state speed of 2500Mbps of the named network device. Setting this value also immediately changes the LED state.
Present only if the named network device supports 2500Mbps link speed.
/sys/class/leds/<led>/link_5000 |
Defined on file sysfs-class-led-trigger-netdev
Signal the link speed state of 5000Mbps of the named network device.
If set to 0 (default), the LED’s normal state is off.
If set to 1, the LED’s normal state reflects the link state speed of 5000Mbps of the named network device. Setting this value also immediately changes the LED state.
Present only if the named network device supports 5000Mbps link speed.
/sys/class/leds/<led>/max_brightness |
Defined on file sysfs-class-led
Maximum brightness level for this LED, default is 255 (LED_FULL).
If the LED does not support different brightness levels, this should be 1.
/sys/class/leds/<led>/max_flash_brightness |
Defined on file sysfs-class-led-flash
read only Maximum brightness level for this LED in the flash strobe mode, in microamperes.
/sys/class/leds/<led>/max_flash_timeout |
Defined on file sysfs-class-led-flash
read only Maximum flash timeout for this LED, in microseconds.
/sys/class/leds/<led>/multi_index |
Defined on file sysfs-class-led-multicolor
read The multi_index array, when read, will output the LED colors as an array of strings as they are indexed in the multi_intensity file.
For additional details please refer to Multicolor LED handling under Linux.
/sys/class/leds/<led>/multi_intensity |
Defined on file sysfs-class-led-multicolor
read/write This file contains array of integers. Order of components is described by the multi_index array. The maximum intensity should not exceed /sys/class/leds/<led>/max_brightness.
For additional details please refer to Multicolor LED handling under Linux.
/sys/class/leds/<led>/offloaded |
Defined on file sysfs-class-led-trigger-netdev
Communicate whether the LED trigger modes are offloaded to hardware or whether software fallback is used.
If 0, the LED is using software fallback to blink.
If 1, the LED blinking in requested mode is offloaded to hardware.
/sys/class/leds/<led>/pattern |
Defined on file sysfs-class-led-trigger-pattern
Specify a software pattern for the LED, that supports altering the brightness for the specified duration with one software timer. It can do gradual dimming and step change of brightness.
The pattern is given by a series of tuples, of brightness and duration (ms).
The exact format is described in: Documentation/devicetree/bindings/leds/leds-trigger-pattern.txt
/sys/class/leds/<led>/ports/<port> |
Defined on file sysfs-class-led-trigger-usbport
Every dir entry represents a single USB port that can be selected for the USB port trigger. Selecting ports makes trigger observing them for any connected devices and lighting on LED if there are any.
Echoing “1” value selects USB port. Echoing “0” unselects it. Current state can be also read.
/sys/class/leds/<led>/pwm |
Defined on file sysfs-class-led-driver-lm3533
Set the PWM-input control mask (5 bits), where:
bit 5 |
PWM-input enabled in Zone 4 |
bit 4 |
PWM-input enabled in Zone 3 |
bit 3 |
PWM-input enabled in Zone 2 |
bit 2 |
PWM-input enabled in Zone 1 |
bit 1 |
PWM-input enabled in Zone 0 |
bit 0 |
PWM-input enabled |
/sys/class/leds/<led>/repeat |
Defined on file sysfs-class-led-trigger-pattern
Specify a pattern repeat number. -1 means repeat indefinitely, other negative numbers and number 0 are invalid.
This file will always return the originally written repeat number.
It should be noticed that some leds, like EL15203000 may only support indefinitely patterns, so they always store -1.
/sys/class/leds/<led>/rx |
Defined on file sysfs-class-led-trigger-netdev
Signal reception of data on the named network device.
If set to 0 (default), the LED will not blink on reception.
If set to 1, the LED will blink for the milliseconds specified in interval to signal reception.
When offloaded is true, the blink interval is controlled by hardware and won’t reflect the value set in interval.
/sys/class/leds/<led>/shot |
Defined on file sysfs-class-led-trigger-oneshot
Write any non-empty string to signal an events, this starts a blink sequence if not already running.
/sys/class/leds/<led>/trigger |
Defined on file sysfs-class-led
Set the trigger for this LED. A trigger is a kernel based source of LED events.
You can change triggers in a similar manner to the way an IO scheduler is chosen. Trigger specific parameters can appear in /sys/class/leds/<led> once a given trigger is selected. For their documentation see sysfs-class-led-trigger-*.
/sys/class/leds/<led>/tx |
Defined on file sysfs-class-led-trigger-netdev
Signal transmission of data on the named network device.
If set to 0 (default), the LED will not blink on transmission.
If set to 1, the LED will blink for the milliseconds specified in interval to signal transmission.
When offloaded is true, the blink interval is controlled by hardware and won’t reflect the value set in interval.
/sys/class/leds/<tty_led>/cts |
Defined on file sysfs-class-led-trigger-tty
CTS = Clear To Send DCE is ready to accept data from the DTE. If the line state is detected, the LED is switched on. If set to 0 (default), the LED will not evaluate CTS. If set to 1, the LED will evaluate CTS.
/sys/class/leds/<tty_led>/dcd |
Defined on file sysfs-class-led-trigger-tty
DCD = Data Carrier Detect DTE is receiving a carrier from the DCE. If the line state is detected, the LED is switched on. If set to 0 (default), the LED will not evaluate CAR (DCD). If set to 1, the LED will evaluate CAR (DCD).
/sys/class/leds/<tty_led>/dsr |
Defined on file sysfs-class-led-trigger-tty
DSR = Data Set Ready DCE is ready to receive and send data. If the line state is detected, the LED is switched on. If set to 0 (default), the LED will not evaluate DSR. If set to 1, the LED will evaluate DSR.
/sys/class/leds/<tty_led>/rng |
Defined on file sysfs-class-led-trigger-tty
RNG = Ring Indicator DCE has detected an incoming ring signal on the telephone line. If the line state is detected, the LED is switched on. If set to 0 (default), the LED will not evaluate RNG. If set to 1, the LED will evaluate RNG.
/sys/class/leds/<tty_led>/rx |
Defined on file sysfs-class-led-trigger-tty
Signal reception (rx) of data on the named tty device. If set to 0, the LED will not blink on reception. If set to 1 (default), the LED will blink on reception.
/sys/class/leds/<tty_led>/ttyname |
Defined on file sysfs-class-led-trigger-tty
Specifies the tty device name of the triggering tty
/sys/class/leds/<tty_led>/tx |
Defined on file sysfs-class-led-trigger-tty
Signal transmission (tx) of data on the named tty device. If set to 0, the LED will not blink on transmission. If set to 1 (default), the LED will blink on transmission.
/sys/class/leds/SRWS1::<serial>::RPM1 |
/sys/class/leds/SRWS1::<serial>::RPM2 |
/sys/class/leds/SRWS1::<serial>::RPM3 |
/sys/class/leds/SRWS1::<serial>::RPM4 |
/sys/class/leds/SRWS1::<serial>::RPM5 |
/sys/class/leds/SRWS1::<serial>::RPM6 |
/sys/class/leds/SRWS1::<serial>::RPM7 |
/sys/class/leds/SRWS1::<serial>::RPM8 |
/sys/class/leds/SRWS1::<serial>::RPM9 |
/sys/class/leds/SRWS1::<serial>::RPM10 |
/sys/class/leds/SRWS1::<serial>::RPM11 |
/sys/class/leds/SRWS1::<serial>::RPM12 |
/sys/class/leds/SRWS1::<serial>::RPM13 |
/sys/class/leds/SRWS1::<serial>::RPM14 |
/sys/class/leds/SRWS1::<serial>::RPM15 |
/sys/class/leds/SRWS1::<serial>::RPMALL |
Defined on file sysfs-driver-hid-srws1
Provides a control for turning on/off the LEDs which form an RPM meter on the front of the controller
/sys/class/leds/dell::kbd_backlight/als_enabled |
Defined on file sysfs-platform-dell-laptop
This file allows to control the automatic keyboard illumination mode on some systems that have an ambient light sensor. Write 1 to this file to enable the auto mode, 0 to disable it.
/sys/class/leds/dell::kbd_backlight/als_setting |
Defined on file sysfs-platform-dell-laptop
This file allows to specify the on/off threshold value, as reported by the ambient light sensor.
/sys/class/leds/dell::kbd_backlight/start_triggers |
Defined on file sysfs-platform-dell-laptop
This file allows to control the input triggers that turn on the keyboard backlight illumination that is disabled because of inactivity. Read the file to see the triggers available. The ones enabled are preceded by ‘+’, those disabled by ‘-‘.
To enable a trigger, write its name preceded by ‘+’ to this file. To disable a trigger, write its name preceded by ‘-’ instead.
For example, to enable the keyboard as trigger run:
echo +keyboard > /sys/class/leds/dell::kbd_backlight/start_triggers
To disable it:
echo -keyboard > /sys/class/leds/dell::kbd_backlight/start_triggers
Note that not all the available triggers can be configured.
/sys/class/leds/dell::kbd_backlight/stop_timeout |
Defined on file sysfs-platform-dell-laptop
This file allows to specify the interval after which the keyboard illumination is disabled because of inactivity. The timeouts are expressed in seconds, minutes, hours and days, for which the symbols are ‘s’, ‘m’, ‘h’ and ‘d’ respectively.
To configure the timeout, write to this file a value along with any the above units. If no unit is specified, the value is assumed to be expressed in seconds.
For example, to set the timeout to 10 minutes run:
echo 10m > /sys/class/leds/dell::kbd_backlight/stop_timeout
Note that when this file is read, the returned value might be expressed in a different unit than the one used when the timeout was set.
Also note that only some timeouts are supported and that some systems might fall back to a specific timeout in case an invalid timeout is written to this file.
/sys/class/mdio_bus/<bus>/<device>/attached_dev |
Defined on file sysfs-class-net-phydev
Symbolic link to the network device this PHY device is attached to.
/sys/class/mdio_bus/<bus>/<device>/phy_dev_flags |
Defined on file sysfs-class-net-phydev
32-bit hexadecimal number representing a bit mask of the configuration bits passed from the consumer of the PHY (Ethernet MAC, switch, etc.) to the PHY driver. The flags are only used internally by the kernel and their placement are not meant to be stable across kernel versions. This is intended for facilitating the debugging of PHY drivers.
/sys/class/mdio_bus/<bus>/<device>/phy_has_fixups |
Defined on file sysfs-class-net-phydev
This attribute contains the boolean value whether a given PHY device has had any “fixup” workaround running on it, encoded as a boolean. This information is provided to help troubleshooting PHY configurations.
/sys/class/mdio_bus/<bus>/<device>/phy_id |
Defined on file sysfs-class-net-phydev
This attribute contains the 32-bit PHY Identifier as reported by the device during bus enumeration, encoded in hexadecimal. This ID is used to match the device with the appropriate driver.
/sys/class/mdio_bus/<bus>/<device>/phy_interface |
Defined on file sysfs-class-net-phydev
This attribute contains the PHY interface as configured by the Ethernet driver during bus enumeration, encoded in string. This interface mode is used to configure the Ethernet MAC with the appropriate mode for its data lines to the PHY hardware.
Possible values are:
<empty> (not available), mii, gmii, sgmii, tbi, rev-mii, rmii, rgmii, rgmii-id, rgmii-rxid, rgmii-txid, rtbi, smii xgmii, moca, qsgmii, trgmii, 1000base-x, 2500base-x, rxaui, xaui, 10gbase-kr, unknown
/sys/class/mdio_bus/<bus>/<device>/phy_standalone |
Defined on file sysfs-class-net-phydev
Boolean value indicating whether the PHY device is used in standalone mode, without a net_device associated, by PHYLINK. Attribute created only when this is the case.
/sys/class/mei/ |
Defined on file sysfs-class-mei
The mei/ class sub-directory belongs to mei device class
/sys/class/mei/mei<N>/ |
Defined on file sysfs-class-mei
The /sys/class/mei/meiN directory is created for each probed mei device
/sys/class/mei/mei<N>/dev_state |
Defined on file sysfs-class-mei
Display the ME device state.
The device state can have following values: INITIALIZING INIT_CLIENTS ENABLED RESETTING DISABLED POWER_DOWN POWER_UP
/sys/class/mei/mei<N>/fw_status |
Defined on file sysfs-class-mei
Display fw status registers content
The ME FW writes its status information into fw status registers for BIOS and OS to monitor fw health.
The register contains running state, power management state, error codes, and others. The way the registers are decoded depends on PCH or SoC generation. Also number of registers varies between 1 and 6 depending on generation.
/sys/class/mei/mei<N>/fw_ver |
Defined on file sysfs-class-mei
Display the ME firmware version.
The version of the platform ME firmware is in format: <platform>:<major>.<minor>.<milestone>.<build_no>. There can be up to three such blocks for different FW components.
/sys/class/mei/mei<N>/hbm_ver |
Defined on file sysfs-class-mei
Display the negotiated HBM protocol version.
The HBM protocol version negotiated between the driver and the device.
/sys/class/mei/mei<N>/hbm_ver_drv |
Defined on file sysfs-class-mei
Display the driver HBM protocol version.
The HBM protocol version supported by the driver.
/sys/class/mei/mei<N>/kind |
Defined on file sysfs-class-mei
Display kind of the device
Generic devices are marked as “mei” while special purpose have their own names. Available options: - mei: generic mei device. - itouch: itouch (ipts) mei device.
/sys/class/mei/mei<N>/trc |
Defined on file sysfs-class-mei
Display trc status register content
The ME FW writes Glitch Detection HW (TRC) status information into trc status register for BIOS and OS to monitor fw health.
/sys/class/mei/mei<N>/tx_queue_limit |
Defined on file sysfs-class-mei
Configure tx queue limit
Set maximal number of pending writes per opened session.
/sys/class/mic/ |
Defined on file sysfs-class-mic
The mic class directory belongs to Intel MIC devices and provides information per MIC device. An Intel MIC device is a PCIe form factor add-in Coprocessor card based on the Intel Many Integrated Core (MIC) architecture that runs a Linux OS.
/sys/class/mic/mic<X> |
Defined on file sysfs-class-mic
The directories /sys/class/mic/mic0, /sys/class/mic/mic1 etc., represent MIC devices (0,1,..etc). Each directory has information specific to that MIC device.
/sys/class/mic/mic<X>/bootmode |
Defined on file sysfs-class-mic
When read, this sysfs entry provides the current bootmode for the card. This sysfs entry can be written with the following valid strings: a) linux - Boot a Linux image. b) flash - Boot an image for flash updates.
/sys/class/mic/mic<X>/cmdline |
Defined on file sysfs-class-mic
An Intel MIC device runs a Linux OS during its operation. Before booting this card OS, it is possible to pass kernel command line options to configure various features in it, similar to self-bootable machines. When read, this entry provides information about the current kernel command line options set to boot the card OS. This entry can be written to change the existing kernel command line options. Typically, the user would want to read the current command line options, append new ones or modify existing ones and then write the whole kernel command line back to this entry.
/sys/class/mic/mic<X>/family |
Defined on file sysfs-class-mic
Provides information about the Coprocessor family for an Intel MIC device. For example - “x100”
/sys/class/mic/mic<X>/firmware |
Defined on file sysfs-class-mic
When read, this sysfs entry provides the path name under /lib/firmware/ where the firmware image to be booted on the card can be found. The entry can be written to change the firmware image location under /lib/firmware/.
/sys/class/mic/mic<X>/heartbeat_enable |
Defined on file sysfs-class-mic
The MIC drivers detect and inform user space about card crashes via a heartbeat mechanism (see the description of shutdown_status above). User space can turn off this notification by setting heartbeat_enable to 0 and enable it by setting this entry to 1. If this notification is disabled it is the responsibility of user space to detect card crashes via alternative means such as a network ping. This setting is enabled by default.
/sys/class/mic/mic<X>/log_buf_addr |
Defined on file sysfs-class-mic
An Intel MIC device runs a Linux OS during its operation. For debugging purpose and early kernel boot messages, the user can access the card OS log buffer via debugfs. When read, this entry provides the kernel virtual address of the buffer where the card OS log buffer can be read. This entry is written by the host configuration daemon to set the log buffer address. The correct log buffer address to be written can be found in the System.map file of the card OS.
/sys/class/mic/mic<X>/log_buf_len |
Defined on file sysfs-class-mic
An Intel MIC device runs a Linux OS during its operation. For debugging purpose and early kernel boot messages, the user can access the card OS log buffer via debugfs. When read, this entry provides the kernel virtual address where the card OS log buffer length can be read. This entry is written by host configuration daemon to set the log buffer length address. The correct log buffer length address to be written can be found in the System.map file of the card OS.
/sys/class/mic/mic<X>/ramdisk |
Defined on file sysfs-class-mic
When read, this sysfs entry provides the path name under /lib/firmware/ where the ramdisk image to be used during card OS boot can be found. The entry can be written to change the ramdisk image location under /lib/firmware/.
/sys/class/mic/mic<X>/shutdown_status |
Defined on file sysfs-class-mic
An Intel MIC device runs a Linux OS during its operation. This OS can shutdown because of various reasons. When read, this entry provides the status on why the card OS was shutdown. Possible values are:
“nop” |
shutdown status is not applicable, when the card OS is “online” |
“crashed” |
Shutdown because of a HW or SW crash. |
“halted” |
Shutdown because of a halt command. |
“poweroff” |
Shutdown because of a poweroff command. |
“restart” |
Shutdown because of a restart command. |
/sys/class/mic/mic<X>/state |
Defined on file sysfs-class-mic
When read, this entry provides the current state of an Intel MIC device in the context of the card OS. Possible values that will be read are:
“ready” |
The MIC device is ready to boot the card OS. On reading this entry after an OSPM resume, a “boot” has to be written to this entry if the card was previously shutdown during OSPM suspend. |
“booting” |
The MIC device has initiated booting a card OS. |
“online” |
The MIC device has completed boot and is online |
“shutting_down” |
The card OS is shutting down. |
“resetting” |
A reset has been initiated for the MIC device |
“reset_failed” |
The MIC device has failed to reset. |
When written, this sysfs entry triggers different state change operations depending upon the current state of the card OS. Acceptable values are:
“boot” |
Boot the card OS image specified by the combination of firmware, ramdisk, cmdline and bootmode sysfs entries. |
“reset” |
Initiates device reset. |
“shutdown” |
Initiates card OS shutdown. |
/sys/class/mic/mic<X>/stepping |
Defined on file sysfs-class-mic
Provides information about the silicon stepping for an Intel MIC device. For example - “A0” or “B0”
/sys/class/misc/drivers/dw-xdata-pcie.<device>/write |
Defined on file sysfs-driver-xdata
Allows the user to enable the PCIe traffic generator which will create write TLPs frames - from the Root Complex to the Endpoint direction or to disable the PCIe traffic generator in all directions.
Write y/1/on to enable, n/0/off to disable
- Usage e.g.
echo 1 > /sys/class/misc/dw-xdata-pcie.<device>/write
- or
echo 0 > /sys/class/misc/dw-xdata-pcie.<device>/write
The user can read the current PCIe link throughput generated through this generator in MB/s.
- Usage e.g.
cat /sys/class/misc/dw-xdata-pcie.<device>/write 204
The file is read and write.
/sys/class/misc/dw-xdata-pcie.<device>/read |
Defined on file sysfs-driver-xdata
Allows the user to enable the PCIe traffic generator which will create read TLPs frames - from the Endpoint to the Root Complex direction or to disable the PCIe traffic generator in all directions.
Write y/1/on to enable, n/0/off to disable
- Usage e.g.
echo 1 > /sys/class/misc/dw-xdata-pcie.<device>/read
- or
echo 0 > /sys/class/misc/dw-xdata-pcie.<device>/read
The user can read the current PCIe link throughput generated through this generator in MB/s.
- Usage e.g.
cat /sys/class/misc/dw-xdata-pcie.<device>/read 199
The file is read and write.
/sys/class/mtd/ |
Defined on file sysfs-class-mtd
The mtd/ class subdirectory belongs to the MTD subsystem (MTD core).
/sys/class/mtd/mtdX/ |
Defined on file sysfs-class-mtd
The /sys/class/mtd/mtd{0,1,2,3,...} directories correspond to each /dev/mtdX character device. These may represent physical/simulated flash devices, partitions on a flash device, or concatenated flash devices.
/sys/class/mtd/mtdX/bad_blocks |
Defined on file sysfs-class-mtd
The number of blocks marked as bad, if any, in this partition.
/sys/class/mtd/mtdX/bbt_blocks |
Defined on file sysfs-class-mtd
The number of blocks that are marked as reserved, if any, in this partition. These are typically used to store the in-flash bad block table (BBT).
/sys/class/mtd/mtdX/bitflip_threshold |
Defined on file sysfs-class-mtd
This allows the user to examine and adjust the criteria by which mtd returns -EUCLEAN from mtd_read() and mtd_read_oob(). If the maximum number of bit errors that were corrected on any single region comprising an ecc step (as reported by the driver) equals or exceeds this value, -EUCLEAN is returned. Otherwise, absent an error, 0 is returned. Higher layers (e.g., UBI) use this return code as an indication that an erase block may be degrading and should be scrutinized as a candidate for being marked as bad.
The initial value may be specified by the flash device driver. If not, then the default value is ecc_strength.
The introduction of this feature brings a subtle change to the meaning of the -EUCLEAN return code. Previously, it was interpreted to mean simply “one or more bit errors were corrected”. Its new interpretation can be phrased as “a dangerously high number of bit errors were corrected on one or more regions comprising an ecc step”. The precise definition of “dangerously high” can be adjusted by the user with bitflip_threshold. Users are discouraged from doing this, however, unless they know what they are doing and have intimate knowledge of the properties of their device. Broadly speaking, bitflip_threshold should be low enough to detect genuine erase block degradation, but high enough to avoid the consequences of a persistent return value of -EUCLEAN on devices where sticky bitflips occur. Note that if bitflip_threshold exceeds ecc_strength, -EUCLEAN is never returned by the read operations. Conversely, if bitflip_threshold is zero, -EUCLEAN is always returned, absent a hard error.
This is generally applicable only to NAND flash devices with ECC capability. It is ignored on devices lacking ECC capability; i.e., devices for which ecc_strength is zero.
/sys/class/mtd/mtdX/corrected_bits |
Defined on file sysfs-class-mtd
The number of bits that have been corrected by means of the device’s ECC.
It will always be a non-negative integer. In the case of devices lacking any ECC capability, it is 0.
/sys/class/mtd/mtdX/dev |
Defined on file sysfs-class-mtd
Major and minor numbers of the character device corresponding to this MTD device (in <major>:<minor> format). This is the read-write device so <minor> will be even.
/sys/class/mtd/mtdX/ecc_failures |
Defined on file sysfs-class-mtd
The number of failures reported by this device’s ECC. Typically, these failures are associated with failed read operations.
It will always be a non-negative integer. In the case of devices lacking any ECC capability, it is 0.
/sys/class/mtd/mtdX/ecc_step_size |
Defined on file sysfs-class-mtd
The size of a single region covered by ECC, known as the ECC step. Devices may have several equally sized ECC steps within each writesize region.
It will always be a non-negative integer. In the case of devices lacking any ECC capability, it is 0.
/sys/class/mtd/mtdX/ecc_strength |
Defined on file sysfs-class-mtd
Maximum number of bit errors that the device is capable of correcting within each region covering an ECC step (see ecc_step_size). This will always be a non-negative integer.
In the case of devices lacking any ECC capability, it is 0.
/sys/class/mtd/mtdX/erasesize |
Defined on file sysfs-class-mtd
“Major” erase size for the device. If numeraseregions is zero, this is the eraseblock size for the entire device. Otherwise, the MEMGETREGIONCOUNT/MEMGETREGIONINFO ioctls can be used to determine the actual eraseblock layout.
/sys/class/mtd/mtdX/flags |
Defined on file sysfs-class-mtd
A hexadecimal value representing the device flags, ORed together:
0x0400: MTD_WRITEABLE - device is writable 0x0800: MTD_BIT_WRITEABLE - single bits can be flipped 0x1000: MTD_NO_ERASE - no erase necessary 0x2000: MTD_POWERUP_LOCK - always locked after reset
/sys/class/mtd/mtdX/name |
Defined on file sysfs-class-mtd
A human-readable ASCII name for the device or partition. This will match the name in /proc/mtd .
/sys/class/mtd/mtdX/numeraseregions |
Defined on file sysfs-class-mtd
For devices that have variable eraseblock sizes, this provides the total number of erase regions. Otherwise, it will read back as zero.
/sys/class/mtd/mtdX/offset |
Defined on file sysfs-class-mtd
For a partition, the offset of that partition from the start of the parent (another partition or a flash device) in bytes. This attribute is absent on flash devices, so it can be used to distinguish them from partitions.
/sys/class/mtd/mtdX/oobavail |
Defined on file sysfs-class-mtd
Number of bytes available for a client to place data into the out of band area.
/sys/class/mtd/mtdX/oobsize |
Defined on file sysfs-class-mtd
Number of OOB bytes per page.
/sys/class/mtd/mtdX/size |
Defined on file sysfs-class-mtd
Total size of the device/partition, in bytes.
/sys/class/mtd/mtdX/type |
Defined on file sysfs-class-mtd
One of the following ASCII strings, representing the device type:
absent, ram, rom, nor, nand, mlc-nand, dataflash, ubi, unknown
/sys/class/mtd/mtdX/writesize |
Defined on file sysfs-class-mtd
Minimal writable flash unit size. This will always be a positive integer.
In the case of NOR flash it is 1 (even though individual bits can be cleared).
In the case of NAND flash it is one NAND page (or a half page, or a quarter page).
In the case of ECC NOR, it is the ECC block size.
/sys/class/mtd/mtdXro/ |
Defined on file sysfs-class-mtd
These directories provide the corresponding read-only device nodes for /sys/class/mtd/mtdX/ .
/sys/class/mtd/mtdXro/dev |
Defined on file sysfs-class-mtd
Major and minor numbers of the character device corresponding to the read-only variant of the MTD device (in <major>:<minor> format). In this case <minor> will be odd.
/sys/class/mux/ |
Defined on file sysfs-class-mux
The mux/ class sub-directory belongs to the Generic MUX Framework and provides a sysfs interface for using MUX controllers.
/sys/class/mux/muxchip<N>/ |
Defined on file sysfs-class-mux
A /sys/class/mux/muxchipN directory is created for each probed MUX chip where N is a simple enumeration.
/sys/class/net/<bridge iface>/bridge/group_fwd_mask |
Defined on file sysfs-class-net
Bitmask to allow forwarding of link local frames with address 01-80-C2-00-00-0X on a bridge device. Only values that set bits not matching BR_GROUPFWD_RESTRICTED in net/bridge/br_private.h allowed. Default value 0 does not forward any link local frames.
Restricted bits:
0 |
01-80-C2-00-00-00 Bridge Group Address used for STP |
1 |
01-80-C2-00-00-01 (MAC Control) 802.3 used for MAC PAUSE |
2 |
01-80-C2-00-00-02 (Link Aggregation) 802.3ad |
Any values not setting these bits can be used. Take special care when forwarding control frames e.g. 802.1X-PAE or LLDP.
/sys/class/net/<iface>/addr_assign_type |
Defined on file sysfs-class-net
Indicates the address assignment type. Possible values are:
0 |
permanent address |
1 |
randomly generated |
2 |
stolen from another device |
3 |
set using dev_set_mac_address |
/sys/class/net/<iface>/addr_len |
Defined on file sysfs-class-net
Indicates the hardware address size in bytes. Values vary based on the lower-level protocol used by the interface (Ethernet, FDDI, ATM, IEEE 802.15.4...). See include/uapi/linux/if_*.h for actual values.
/sys/class/net/<iface>/address |
Defined on file sysfs-class-net
Hardware address currently assigned to this interface. Format is a string, e.g: 00:11:22:33:44:55 for an Ethernet MAC address.
/sys/class/net/<iface>/broadcast |
Defined on file sysfs-class-net
Hardware broadcast address for this interface. Format is a string, e.g: ff:ff:ff:ff:ff:ff for an Ethernet broadcast MAC address.
/sys/class/net/<iface>/carrier |
Defined on file sysfs-class-net
Indicates the current physical link state of the interface. Possible values are:
0 |
physical link is down |
1 |
physical link is up |
Note: some special devices, e.g: bonding and team drivers will allow this attribute to be written to force a link state for operating correctly and designating another fallback interface.
/sys/class/net/<iface>/carrier_changes |
Defined on file sysfs-class-net
32-bit unsigned integer counting the number of times the link has seen a change from UP to DOWN and vice versa
/sys/class/net/<iface>/carrier_down_count |
Defined on file sysfs-class-net
32-bit unsigned integer counting the number of times the link has been down
/sys/class/net/<iface>/carrier_up_count |
Defined on file sysfs-class-net
32-bit unsigned integer counting the number of times the link has been up
/sys/class/net/<iface>/cdc_ncm/bmNtbFormatsSupported |
Defined on file sysfs-class-net-cdc_ncm
Bit 0: 16-bit NTB supported (set to 1)
Bit 1: 32-bit NTB supported
Bits 2 – 15: reserved (reset to zero; must be ignored by host)
/sys/class/net/<iface>/cdc_ncm/dwNtbInMaxSize |
Defined on file sysfs-class-net-cdc_ncm
IN NTB Maximum Size in bytes
/sys/class/net/<iface>/cdc_ncm/dwNtbOutMaxSize |
Defined on file sysfs-class-net-cdc_ncm
OUT NTB Maximum Size
/sys/class/net/<iface>/cdc_ncm/min_tx_pkt |
Defined on file sysfs-class-net-cdc_ncm
The driver will pad NCM Transfer Blocks (NTBs) longer than this to tx_max, allowing the device to receive tx_max sized frames with no terminating short packet. NTBs shorter than this limit are transmitted as-is, without any padding, and are terminated with a short USB packet.
Padding to tx_max allows the driver to transmit NTBs back-to-back without any interleaving short USB packets. This reduces the number of short packet interrupts in the device, and represents a tradeoff between USB bus bandwidth and device DMA optimization.
Set to 0 to pad all frames. Set greater than tx_max to disable all padding.
/sys/class/net/<iface>/cdc_ncm/ndp_to_end |
Defined on file sysfs-class-net-cdc_ncm
Boolean attribute showing the status of the “NDP to end” quirk. Defaults to ‘N’, except for devices already known to need it enabled.
The “NDP to end” quirk makes the driver place the NDP (the packet index table) after the payload. The NCM specification does not mandate this, but some devices are known to be more restrictive. Write ‘Y’ to this attribute for temporary testing of a suspect device failing to work with the default driver settings.
A device entry should be added to the driver if this quirk is found to be required.
/sys/class/net/<iface>/cdc_ncm/rx_max |
Defined on file sysfs-class-net-cdc_ncm
The maximum NTB size for RX. Cannot exceed the maximum value supported by the device. Must allow at least one max sized datagram plus headers.
The actual limits are device dependent. See dwNtbInMaxSize.
Note: Some devices will silently ignore changes to this value, resulting in oversized NTBs and corresponding framing errors.
/sys/class/net/<iface>/cdc_ncm/tx_max |
Defined on file sysfs-class-net-cdc_ncm
The maximum NTB size for TX. Cannot exceed the maximum value supported by the device. Must allow at least one max sized datagram plus headers.
The actual limits are device dependent. See dwNtbOutMaxSize.
/sys/class/net/<iface>/cdc_ncm/tx_timer_usecs |
Defined on file sysfs-class-net-cdc_ncm
Datagram aggregation timeout in µs. The driver will wait up to 3 times this timeout for more datagrams to aggregate before transmitting an NTB frame.
Valid range: 5 to 4000000
Set to 0 to disable aggregation.
The following read-only attributes all represent fields of the structure defined in section 6.2.1 “GetNtbParameters” of “Universal Serial Bus Communications Class Subclass Specifications for Network Control Model Devices” (CDC NCM), Revision 1.0 (Errata 1), November 24, 2010 from USB Implementers Forum, Inc. The descriptions are quoted from table 6-3 of CDC NCM: “NTB Parameter Structure”.
/sys/class/net/<iface>/cdc_ncm/wNdpInAlignment |
Defined on file sysfs-class-net-cdc_ncm
NDP alignment modulus for NTBs on the IN pipe. Shall be a power of 2, and shall be at least 4.
/sys/class/net/<iface>/cdc_ncm/wNdpInDivisor |
Defined on file sysfs-class-net-cdc_ncm
Divisor used for IN NTB Datagram payload alignment
/sys/class/net/<iface>/cdc_ncm/wNdpInPayloadRemainder |
Defined on file sysfs-class-net-cdc_ncm
Remainder used to align input datagram payload within the NTB: (Payload Offset) mod (wNdpInDivisor) = wNdpInPayloadRemainder
/sys/class/net/<iface>/cdc_ncm/wNdpOutAlignment |
Defined on file sysfs-class-net-cdc_ncm
NDP alignment modulus for use in NTBs on the OUT pipe. Shall be a power of 2, and shall be at least 4.
/sys/class/net/<iface>/cdc_ncm/wNdpOutDivisor |
Defined on file sysfs-class-net-cdc_ncm
OUT NTB Datagram alignment modulus
/sys/class/net/<iface>/cdc_ncm/wNdpOutPayloadRemainder |
Defined on file sysfs-class-net-cdc_ncm
Remainder used to align output datagram payload offsets within the NTB: Padding, shall be transmitted as zero by function, and ignored by host. (Payload Offset) mod (wNdpOutDivisor) = wNdpOutPayloadRemainder
/sys/class/net/<iface>/cdc_ncm/wNtbOutMaxDatagrams |
Defined on file sysfs-class-net-cdc_ncm
Maximum number of datagrams that the host may pack into a single OUT NTB. Zero means that the device imposes no limit.
/sys/class/net/<iface>/dev_id |
Defined on file sysfs-class-net
Indicates the device unique identifier. Format is an hexadecimal value. This is used to disambiguate interfaces which might be stacked (e.g: VLAN interfaces) but still have the same MAC address as their parent device.
/sys/class/net/<iface>/dev_port |
Defined on file sysfs-class-net
Indicates the port number of this network device, formatted as a decimal value. Some NICs have multiple independent ports on the same PCI bus, device and function. This attribute allows userspace to distinguish the respective interfaces.
Note: some device drivers started to use ‘dev_id’ for this purpose since long before 3.15 and have not adopted the new attribute ever since. To query the port number, some tools look exclusively at ‘dev_port’, while others only consult ‘dev_id’. If a network device has multiple client adapter ports as described in the previous paragraph and does not set this attribute to its port number, it’s a kernel bug.
/sys/class/net/<iface>/dormant |
Defined on file sysfs-class-net
Indicates whether the interface is in dormant state. Possible values are: 0: interface is not dormant 1: interface is dormant
This attribute can be used by supplicant software to signal that the device is not usable unless some supplicant-based authentication is performed (e.g: 802.1x). ‘link_mode’ attribute will also reflect the dormant state.
/sys/class/net/<iface>/dsa/tagging |
Defined on file sysfs-class-net-dsa
On read, this file returns a string indicating the type of tagging protocol used by the DSA network devices that are attached to this master interface. On write, this file changes the tagging protocol of the attached DSA switches, if this operation is supported by the driver. Changing the tagging protocol must be done with the DSA interfaces and the master interface all administratively down. See the “name” field of each registered struct dsa_device_ops for a list of valid values.
/sys/class/net/<iface>/duplex |
Defined on file sysfs-class-net
Indicates the interface latest or current duplex value. Possible values are:
half |
half duplex |
full |
full duplex |
Note: This attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).
/sys/class/net/<iface>/flags |
Defined on file sysfs-class-net
Indicates the interface flags as a bitmask in hexadecimal. See include/uapi/linux/if.h for a list of all possible values and the flags semantics.
/sys/class/net/<iface>/fwinfo |
Defined on file sysfs-class-net-janz-ican3
Firmware stamp of ican3 module Read-only: 32 byte string identification of the ICAN3 module (known values: “JANZ-ICAN3 ICANOS 1.xx”, “JANZ-ICAN3 CAL/CANopen 1.xx”)
/sys/class/net/<iface>/grcan/enable0 |
Defined on file sysfs-class-net-grcan
Hardware configuration of physical interface 0. This file reads and writes the “Enable 0” bit of the configuration register. Possible values: 0 or 1. See the GRCAN chapter of the GRLIB IP core library documentation for details. The default value is 0 or set by the module parameter grcan.enable0 and can be read at /sys/module/grcan/parameters/enable0.
/sys/class/net/<iface>/grcan/enable1 |
Defined on file sysfs-class-net-grcan
Hardware configuration of physical interface 1. This file reads and writes the “Enable 1” bit of the configuration register. Possible values: 0 or 1. See the GRCAN chapter of the GRLIB IP core library documentation for details. The default value is 0 or set by the module parameter grcan.enable1 and can be read at /sys/module/grcan/parameters/enable1.
/sys/class/net/<iface>/grcan/select |
Defined on file sysfs-class-net-grcan
Configuration of which physical interface to be used. Possible values: 0 or 1. See the GRCAN chapter of the GRLIB IP core library documentation for details. The default value is 0 or is set by the module parameter grcan.select and can be read at /sys/module/grcan/parameters/select.
/sys/class/net/<iface>/ifalias |
Defined on file sysfs-class-net
Indicates/stores an interface alias name as a string. This can be used for system management purposes.
/sys/class/net/<iface>/ifindex |
Defined on file sysfs-class-net
Indicates the system-wide interface unique index identifier as a decimal number. This attribute is used for mapping an interface identifier to an interface name. It is used throughout the networking stack for specifying the interface specific requests/events.
/sys/class/net/<iface>/iflink |
Defined on file sysfs-class-net
Indicates the system-wide interface unique index identifier a the interface is linked to. Format is decimal. This attribute is used to resolve interfaces chaining, linking and stacking. Physical interfaces have the same ‘ifindex’ and ‘iflink’ values.
/sys/class/net/<iface>/link_mode |
Defined on file sysfs-class-net
Indicates the interface link mode, as a decimal number. This attribute should be used in conjunction with ‘dormant’ attribute to determine the interface usability. Possible values:
0 |
default link mode |
1 |
dormant link mode |
/sys/class/net/<iface>/mtu |
Defined on file sysfs-class-net
Indicates the interface currently configured MTU value, in bytes, and in decimal format. Specific values depends on the lower-level interface protocol used. Ethernet devices will show a ‘mtu’ attribute value of 1500 unless changed.
/sys/class/net/<iface>/name_assign_type |
Defined on file sysfs-class-net
Indicates the name assignment type. Possible values are:
1 |
enumerated by the kernel, possibly in an unpredictable way |
2 |
predictably named by the kernel |
3 |
named by userspace |
4 |
renamed |
/sys/class/net/<iface>/netdev_group |
Defined on file sysfs-class-net
Indicates the interface network device group, as a decimal integer. Default value is 0 which corresponds to the initial network devices group. The group can be changed to affect routing decisions (see: net/ipv4/fib_rules and net/ipv6/fib6_rules.c).
/sys/class/net/<iface>/operstate |
Defined on file sysfs-class-net
Indicates the interface RFC2863 operational state as a string.
Possible values are:
“unknown”, “notpresent”, “down”, “lowerlayerdown”, “testing”, “dormant”, “up”.
/sys/class/net/<iface>/peak_usb/can_channel_id |
Defined on file sysfs-class-net-peak_usb
PEAK PCAN-USB devices support user-configurable CAN channel identifiers. Contrary to a USB serial number, these identifiers are writable and can be set per CAN interface. This means that if a USB device exports multiple CAN interfaces, each of them can be assigned a unique channel ID. This attribute provides read-only access to the currently configured value of the channel identifier. Depending on the device type, the identifier has a length of 8 or 32 bit. The value read from this attribute is always an 8 digit 32 bit hexadecimal value in big endian format. If the device only supports an 8 bit identifier, the upper 24 bit of the value are set to zero.
/sys/class/net/<iface>/phydev |
Defined on file sysfs-class-net
Symbolic link to the PHY device this network device is attached to.
/sys/class/net/<iface>/phys_port_id |
Defined on file sysfs-class-net
Indicates the interface unique physical port identifier within the NIC, as a string.
/sys/class/net/<iface>/phys_port_name |
Defined on file sysfs-class-net
Indicates the interface physical port name within the NIC, as a string.
/sys/class/net/<iface>/phys_switch_id |
Defined on file sysfs-class-net
Indicates the unique physical switch identifier of a switch this port belongs to, as a string.
/sys/class/net/<iface>/qmi/add_mux |
Defined on file sysfs-class-net-qmi
Unsigned integer.
Write a number ranging from 1 to 254 to add a qmap mux based network device, supported by recent Qualcomm based modems.
The network device will be called qmimux.
Userspace is in charge of managing the qmux network device activation and data stream setup on the modem side by using the proper QMI protocol requests.
/sys/class/net/<iface>/qmi/del_mux |
Defined on file sysfs-class-net-qmi
Unsigned integer.
Write a number ranging from 1 to 254 to delete a previously created qmap mux based network device.
/sys/class/net/<iface>/qmi/pass_through |
Defined on file sysfs-class-net-qmi
Boolean. Default: ‘N’
Set this to ‘Y’ to enable ‘pass-through’ mode, allowing packets in MAP format to be passed on to the stack.
Normally the rmnet driver (CONFIG_RMNET) is then used to process and demultiplex these packets.
‘Pass-through’ mode can be enabled when the device is in ‘raw-ip’ mode only.
/sys/class/net/<iface>/qmi/raw_ip |
Defined on file sysfs-class-net-qmi
Boolean. Default: ‘N’
Set this to ‘Y’ to change the network device link framing from ‘802.3’ to ‘raw-ip’.
The netdev will change to reflect the link framing mode. The netdev is an ordinary ethernet device in ‘802.3’ mode, and the driver expects to exchange frames with an ethernet header over the USB link. The netdev is a headerless p-t-p device in ‘raw-ip’ mode, and the driver expects to echange IPv4 or IPv6 packets without any L2 header over the USB link.
Userspace is in full control of firmware configuration through the delegation of the QMI protocol. Userspace is responsible for coordination of driver and firmware link framing mode, changing this setting to ‘Y’ if the firmware is configured for ‘raw-ip’ mode.
/sys/class/net/<iface>/queues/rx-<queue>/rps_cpus |
Defined on file sysfs-class-net-queues
Mask of the CPU(s) currently enabled to participate into the Receive Packet Steering packet processing flow for this network device queue. Possible values depend on the number of available CPU(s) in the system.
/sys/class/net/<iface>/queues/rx-<queue>/rps_flow_cnt |
Defined on file sysfs-class-net-queues
Number of Receive Packet Steering flows being currently processed by this particular network device receive queue.
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/hold_time |
Defined on file sysfs-class-net-queues
Indicates the hold time in milliseconds to measure the slack of this particular network device transmit queue. Default value is 1000.
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/inflight |
Defined on file sysfs-class-net-queues
Indicates the number of bytes (objects) in flight on this network device transmit queue.
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/limit |
Defined on file sysfs-class-net-queues
Indicates the current limit of bytes allowed to be queued on this network device transmit queue. This value is clamped to be within the bounds defined by limit_max and limit_min.
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/limit_max |
Defined on file sysfs-class-net-queues
Indicates the absolute maximum limit of bytes allowed to be queued on this network device transmit queue. See include/linux/dynamic_queue_limits.h for the default value.
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/limit_min |
Defined on file sysfs-class-net-queues
Indicates the absolute minimum limit of bytes allowed to be queued on this network device transmit queue. Default value is 0.
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/stall_cnt |
Defined on file sysfs-class-net-queues
Number of detected Tx completion stalls.
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/stall_max |
Defined on file sysfs-class-net-queues
Longest detected Tx completion stall. Write 0 to clear.
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/stall_thrs |
Defined on file sysfs-class-net-queues
Tx completion stall detection threshold in ms. Kernel will guarantee to detect all stalls longer than this threshold but may also detect stalls longer than half of the threshold.
/sys/class/net/<iface>/queues/tx-<queue>/tx_maxrate |
Defined on file sysfs-class-net-queues
A Mbps max-rate set for the queue, a value of zero means disabled, default is disabled.
/sys/class/net/<iface>/queues/tx-<queue>/tx_timeout |
Defined on file sysfs-class-net-queues
Indicates the number of transmit timeout events seen by this network interface transmit queue.
/sys/class/net/<iface>/queues/tx-<queue>/xps_cpus |
Defined on file sysfs-class-net-queues
Mask of the CPU(s) currently enabled to participate into the Transmit Packet Steering packet processing flow for this network device transmit queue. Possible values depend on the number of available CPU(s) in the system.
/sys/class/net/<iface>/queues/tx-<queue>/xps_rxqs |
Defined on file sysfs-class-net-queues
Mask of the receive queue(s) currently enabled to participate into the Transmit Packet Steering packet processing flow for this network device transmit queue. Possible values depend on the number of available receive queue(s) in the network device. Default is disabled.
/sys/class/net/<iface>/speed |
Defined on file sysfs-class-net
Indicates the interface latest or current speed value. Value is an integer representing the link speed in Mbits/sec.
Note: this attribute is only valid for interfaces that implement the ethtool get_link_ksettings method (mostly Ethernet).
/sys/class/net/<iface>/statistics/collisions |
Defined on file sysfs-class-net-statistics
Indicates the number of collisions seen by this network device. This value might not be relevant with all MAC layers.
/sys/class/net/<iface>/statistics/multicast |
Defined on file sysfs-class-net-statistics
Indicates the number of multicast packets received by this network device.
/sys/class/net/<iface>/statistics/rx_bytes |
Defined on file sysfs-class-net-statistics
Indicates the number of bytes received by this network device. See the network driver for the exact meaning of when this value is incremented.
/sys/class/net/<iface>/statistics/rx_compressed |
Defined on file sysfs-class-net-statistics
Indicates the number of compressed packets received by this network device. This value might only be relevant for interfaces that support packet compression (e.g: PPP).
/sys/class/net/<iface>/statistics/rx_crc_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of packets received with a CRC (FCS) error by this network device. Note that the specific meaning might depend on the MAC layer used by the interface.
/sys/class/net/<iface>/statistics/rx_dropped |
Defined on file sysfs-class-net-statistics
Indicates the number of packets received by the network device but dropped, that are not forwarded to the upper layers for packet processing. See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/rx_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of receive errors on this network device. See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/rx_fifo_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of receive FIFO errors seen by this network device. See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/rx_frame_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of received frames with error, such as alignment errors. Note that the specific meaning depends on on the MAC layer protocol used. See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/rx_length_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of received error packet with a length error, oversized or undersized. See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/rx_missed_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of received packets that have been missed due to lack of capacity in the receive side. See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/rx_nohandler |
Defined on file sysfs-class-net-statistics
Indicates the number of received packets that were dropped on an inactive device by the network core.
/sys/class/net/<iface>/statistics/rx_over_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of received packets that are oversized compared to what the network device is configured to accept (e.g: larger than MTU). See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/rx_packets |
Defined on file sysfs-class-net-statistics
Indicates the total number of good packets received by this network device.
/sys/class/net/<iface>/statistics/tx_aborted_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of packets that have been aborted during transmission by a network device (e.g: because of a medium collision). See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/tx_bytes |
Defined on file sysfs-class-net-statistics
Indicates the number of bytes transmitted by a network device. See the network driver for the exact meaning of this value, in particular whether this accounts for all successfully transmitted packets or all packets that have been queued for transmission.
/sys/class/net/<iface>/statistics/tx_carrier_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of packets that could not be transmitted because of carrier errors (e.g: physical link down). See the network driver for the exact meaning of this value.
/sys/class/net/<iface>/statistics/tx_compressed |
Defined on file sysfs-class-net-statistics
Indicates the number of transmitted compressed packets. Note this might only be relevant for devices that support compression (e.g: PPP).
/sys/class/net/<iface>/statistics/tx_dropped |
Defined on file sysfs-class-net-statistics
Indicates the number of packets dropped during transmission. See the driver for the exact reasons as to why the packets were dropped.
/sys/class/net/<iface>/statistics/tx_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of packets in error during transmission by a network device. See the driver for the exact reasons as to why the packets were dropped.
/sys/class/net/<iface>/statistics/tx_fifo_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of packets having caused a transmit FIFO error. See the driver for the exact reasons as to why the packets were dropped.
/sys/class/net/<iface>/statistics/tx_heartbeat_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of packets transmitted that have been reported as heartbeat errors. See the driver for the exact reasons as to why the packets were dropped.
/sys/class/net/<iface>/statistics/tx_packets |
Defined on file sysfs-class-net-statistics
Indicates the number of packets transmitted by a network device. See the driver for whether this reports the number of all attempted or successful transmissions.
/sys/class/net/<iface>/statistics/tx_window_errors |
Defined on file sysfs-class-net-statistics
Indicates the number of packets not successfully transmitted due to a window collision. The specific meaning depends on the MAC layer used. On Ethernet this is usually used to report late collisions errors.
/sys/class/net/<iface>/termination |
Defined on file sysfs-class-net-janz-ican3
Value representing the can bus termination
Default: 1 (termination active) Reading: get actual termination state Writing: set actual termination state (0=no termination, 1=termination active)
/sys/class/net/<iface>/testing |
Defined on file sysfs-class-net
Indicates whether the interface is under test. Possible values are:
0 |
interface is not being tested |
1 |
interface is being tested |
When an interface is under test, it cannot be expected to pass packets as normal.
/sys/class/net/<iface>/threaded |
Defined on file sysfs-class-net
Boolean value to control the threaded mode per device. User could set this value to enable/disable threaded mode for all napi belonging to this device, without the need to do device up/down.
Possible values: == ================================== 0 threaded mode disabled for this dev 1 threaded mode enabled for this dev == ==================================
/sys/class/net/<iface>/tx_queue_len |
Defined on file sysfs-class-net
Indicates the interface transmit queue len in number of packets, as an integer value. Value depend on the type of interface, Ethernet network adapters have a default value of 1000 unless configured otherwise
/sys/class/net/<iface>/type |
Defined on file sysfs-class-net
Indicates the interface protocol type as a decimal value. See include/uapi/linux/if_arp.h for all possible values.
/sys/class/net/<qmimux iface>/qmap/mux_id |
Defined on file sysfs-class-net-qmi
Unsigned integer
Indicates the mux id associated to the qmimux network interface during its creation.
/sys/class/ocxl/<afu name>/afu_version |
Defined on file sysfs-class-ocxl
read only Version of the AFU, in the format <major>:<minor> Reflects what is read in the configuration space of the AFU
/sys/class/ocxl/<afu name>/contexts |
Defined on file sysfs-class-ocxl
read only Number of contexts for the AFU, in the format <n>/<max> where:
n
number of currently active contexts, for debug
max
maximum number of contexts supported by the AFU
/sys/class/ocxl/<afu name>/global_mmio_area |
Defined on file sysfs-class-ocxl
read/write Give access the global mmio area for the AFU
/sys/class/ocxl/<afu name>/global_mmio_size |
Defined on file sysfs-class-ocxl
read only Size of the global mmio area, as defined in the configuration space of the AFU
/sys/class/ocxl/<afu name>/pp_mmio_size |
Defined on file sysfs-class-ocxl
read only Size of the per-process mmio area, as defined in the configuration space of the AFU
/sys/class/ocxl/<afu name>/reload_on_reset |
Defined on file sysfs-class-ocxl
read/write Control whether the FPGA is reloaded on a link reset. Enabled through a vendor-specific logic block on the FPGA.
0
Do not reload FPGA image from flash
1
Reload FPGA image from flash
unavailable
The device does not support this capability
/sys/class/pktcdvd/add |
/sys/class/pktcdvd/remove |
/sys/class/pktcdvd/device_map |
Defined on file sysfs-class-pktcdvd
add |
(WO) Write a block device id (major:minor) to create a new pktcdvd device and map it to the block device. |
remove |
(WO) Write the pktcdvd device id (major:minor) to remove the pktcdvd device. |
device_map |
(RO) Shows the device mapping in format: pktcdvd[0-7] <pktdevid> <blkdevid> |
/sys/class/pktcdvd/pktcdvd[0-7]/dev |
/sys/class/pktcdvd/pktcdvd[0-7]/uevent |
Defined on file sysfs-class-pktcdvd
dev: (RO) Device id
uevent: (WO) To send a uevent
/sys/class/pktcdvd/pktcdvd[0-7]/stat/packets_started |
/sys/class/pktcdvd/pktcdvd[0-7]/stat/packets_finished |
/sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_written |
/sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_read |
/sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_read_gather |
/sys/class/pktcdvd/pktcdvd[0-7]/stat/reset |
Defined on file sysfs-class-pktcdvd
packets_started: (RO) Number of started packets.
packets_finished: (RO) Number of finished packets.
kb_written: (RO) kBytes written.
kb_read: (RO) kBytes read.
kb_read_gather: (RO) kBytes read to fill write packets.
- reset: (WO) Write any value to it to reset
pktcdvd device statistic values, like bytes read/written.
/sys/class/pktcdvd/pktcdvd[0-7]/write_queue/size |
/sys/class/pktcdvd/pktcdvd[0-7]/write_queue/congestion_off |
/sys/class/pktcdvd/pktcdvd[0-7]/write_queue/congestion_on |
Defined on file sysfs-class-pktcdvd
size |
(RO) Contains the size of the bio write queue. |
congestion_off |
(RW) If bio write queue size is below this mark, accept new bio requests from the block layer. |
congestion_on |
(RW) If bio write queue size is higher as this mark, do no longer accept bio write requests from the block layer and wait till the pktcdvd device has processed enough bio’s so that bio write queue size is below congestion off mark. A value of <= 0 disables congestion control. |
Example:
To use the pktcdvd sysfs interface directly, you can do:
# create a new pktcdvd device mapped to /dev/hdc
echo "22:0" >/sys/class/pktcdvd/add
cat /sys/class/pktcdvd/device_map
# assuming device pktcdvd0 was created, look at stat's
cat /sys/class/pktcdvd/pktcdvd0/stat/kb_written
# print the device id of the mapped block device
fgrep pktcdvd0 /sys/class/pktcdvd/device_map
# remove device, using pktcdvd0 device id 253:0
echo "253:0" >/sys/class/pktcdvd/remove
/sys/class/power/ds2760-battery.*/charge_full |
Defined on file sysfs-class-power
This file is writeable and can be used to set the assumed battery ‘full level’. As batteries age, this value has to be amended over time.
/sys/class/power/ds2760-battery.*/charge_now |
Defined on file sysfs-class-power
This file is writeable and can be used to set the current coloumb counter value inside the battery monitor chip. This is needed for unavoidable corrections of aging batteries. A userspace daemon can monitor the battery charging logic and once the counter drops out of considerable bounds, take appropriate action.
/sys/class/power_supply/<battery_name>/eppid |
Defined on file sysfs-platform-dell-wmi-ddv
Reports the Dell ePPID (electronic Piece Part Identification) of the ACPI battery.
See Dell DDV WMI interface driver (dell-wmi-ddv) for details.
/sys/class/power_supply/<supply_name>/alarm |
Defined on file sysfs-class-power-surface
Battery trip point. When the remaining battery capacity crosses this value in either direction, the system will be notified and if necessary woken.
Set to zero to clear/disable.
Access: Read, Write
Valid values: In micro-Wh or micro-Ah, depending on the power unit of the battery
/sys/class/power_supply/<supply_name>/capacity |
Defined on file sysfs-class-power
Fine grain representation of battery capacity.
Access: Read
Valid values: 0 - 100 (percent)
/sys/class/power_supply/<supply_name>/capacity_alert_max |
Defined on file sysfs-class-power
Maximum battery capacity trip-wire value where the supply will notify user-space of the event. This is normally used for the battery discharging scenario where user-space needs to know the battery has dropped to an upper level so it can take appropriate action (e.g. warning user that battery level is low).
Access: Read, Write
Valid values: 0 - 100 (percent)
/sys/class/power_supply/<supply_name>/capacity_alert_min |
Defined on file sysfs-class-power
Minimum battery capacity trip-wire value where the supply will notify user-space of the event. This is normally used for the battery discharging scenario where user-space needs to know the battery has dropped to a lower level so it can take appropriate action (e.g. warning user that battery level is critically low).
Access: Read, Write
Valid values: 0 - 100 (percent)
/sys/class/power_supply/<supply_name>/capacity_error_margin |
Defined on file sysfs-class-power
Battery capacity measurement becomes unreliable without recalibration. This values provides the maximum error margin expected to exist by the fuel gauge in percent. Values close to 0% will be returned after (re-)calibration has happened. Over time the error margin will increase. 100% means, that the capacity related values are basically completely useless.
Access: Read
Valid values: 0 - 100 (percent)
/sys/class/power_supply/<supply_name>/capacity_level |
Defined on file sysfs-class-power
Coarse representation of battery capacity.
Access: Read
- Valid values:
“Unknown”, “Critical”, “Low”, “Normal”, “High”, “Full”
/sys/class/power_supply/<supply_name>/charge_behaviour |
Defined on file sysfs-class-power
Represents the charging behaviour.
Access: Read, Write
- Valid values:
auto:
Charge normally, respect thresholds
inhibit-charge:
Do not charge while AC is attached
force-discharge:
Force discharge while AC is attached
/sys/class/power_supply/<supply_name>/charge_control_end_threshold |
Defined on file sysfs-class-power
Represents a battery percentage level, above which charging will stop. Not all hardware is capable of setting this to an arbitrary percentage. Drivers will round written values to the nearest supported value. Reading back the value will show the actual threshold set by the driver.
Access: Read, Write
Valid values: 0 - 100 (percent)
/sys/class/power_supply/<supply_name>/charge_control_limit |
Defined on file sysfs-class-power
Maximum allowable charging current. Used for charge rate throttling for thermal cooling or improving battery health.
Access: Read, Write
Valid values: Represented in microamps
/sys/class/power_supply/<supply_name>/charge_control_limit_max |
Defined on file sysfs-class-power
Maximum legal value for the charge_control_limit property.
Access: Read
Valid values: Represented in microamps
/sys/class/power_supply/<supply_name>/charge_control_start_threshold |
Defined on file sysfs-class-power
Represents a battery percentage level, below which charging will begin.
Access: Read, Write Valid values: 0 - 100 (percent)
/sys/class/power_supply/<supply_name>/charge_term_current |
Defined on file sysfs-class-power
Reports the charging current value which is used to determine when the battery is considered full and charging should end.
Access: Read
Valid values: Represented in microamps
/sys/class/power_supply/<supply_name>/charge_type |
Defined on file sysfs-class-power
Select the charging algorithm to use for a battery.
- Standard:
Fully charge the battery at a moderate rate.
- Fast:
Quickly charge the battery using fast-charge technology. This is typically harder on the battery than standard charging and may lower its lifespan.
- Trickle:
Users who primarily operate the system while plugged into an external power source can extend battery life with this mode. Vendor tooling may call this “Primarily AC Use”.
- Adaptive:
Automatically optimize battery charge rate based on typical usage pattern.
- Custom:
Use the charge_control_* properties to determine when to start and stop charging. Advanced users can use this to drastically extend battery life.
- Long Life:
The charger reduces its charging rate in order to prolong the battery health.
- Bypass:
The charger bypasses the charging path around the integrated converter allowing for a “smart” wall adaptor to perform the power conversion externally.
Access: Read, Write
- Valid values:
“Unknown”, “N/A”, “Trickle”, “Fast”, “Standard”, “Adaptive”, “Custom”, “Long Life”, “Bypass”
/sys/class/power_supply/<supply_name>/current_avg |
Defined on file sysfs-class-power
Battery:
Reports an average IBAT current reading for the battery, over a fixed period. Normally devices will provide a fixed interval in which they average readings to smooth out the reported value.
USB:
Reports an average IBUS current reading over a fixed period. Normally devices will provide a fixed interval in which they average readings to smooth out the reported value.
Access: Read
Valid values: Represented in microamps. Negative values are used for discharging batteries, positive values for charging batteries and for USB IBUS current.
/sys/class/power_supply/<supply_name>/current_max |
Defined on file sysfs-class-power
Battery:
Reports the maximum IBAT current allowed into the battery.
USB:
Reports the maximum IBUS current the supply can support.
Access: Read Valid values: Represented in microamps
/sys/class/power_supply/<supply_name>/current_now |
Defined on file sysfs-class-power
Battery:
Reports an instant, single IBAT current reading for the battery. This value is not averaged/smoothed.
Access: Read
USB:
Reports the IBUS current supplied now. This value is generally read-only reporting, unless the ‘online’ state of the supply is set to be programmable, in which case this value can be set within the reported min/max range.
Access: Read, Write
Valid values: Represented in microamps. Negative values are used for discharging batteries, positive values for charging batteries and for USB IBUS current.
/sys/class/power_supply/<supply_name>/cycle_count |
Defined on file sysfs-class-power
Reports the number of full charge + discharge cycles the battery has undergone.
Access: Read
- Valid values:
Integer > 0: representing full cycles Integer = 0: cycle_count info is not available
USB Properties
/sys/class/power_supply/<supply_name>/health |
Defined on file sysfs-class-power
Reports the health of the battery or battery side of charger functionality.
Access: Read
- Valid values:
“Unknown”, “Good”, “Overheat”, “Dead”, “Over voltage”, “Unspecified failure”, “Cold”, “Watchdog timer expire”, “Safety timer expire”, “Over current”, “Calibration required”, “Warm”, “Cool”, “Hot”, “No battery”
/sys/class/power_supply/<supply_name>/input_current_limit |
Defined on file sysfs-class-power
Details the incoming IBUS current limit currently set in the supply. Normally this is configured based on the type of connection made (e.g. A configured SDP should output a maximum of 500mA so the input current limit is set to the same value). Use preferably input_power_limit, and for problems that can be solved using power limit use input_current_limit.
Access: Read, Write
Valid values: Represented in microamps
/sys/class/power_supply/<supply_name>/input_power_limit |
Defined on file sysfs-class-power
This entry configures the incoming power limit currently set in the supply. Normally this is configured based on system-level knowledge or user input. Use preferably this feature to limit the incoming power and use current/voltage limit only for problems that can be solved using power limit.
Access: Read, Write
Valid values: Represented in microwatts
/sys/class/power_supply/<supply_name>/input_voltage_limit |
Defined on file sysfs-class-power
This entry configures the incoming VBUS voltage limit currently set in the supply. Normally this is configured based on system-level knowledge or user input (e.g. This is part of the Pixel C’s thermal management strategy to effectively limit the input power to 5V when the screen is on to meet Google’s skin temperature targets). Note that this feature should not be used for safety critical things. Use preferably input_power_limit, and for problems that can be solved using power limit use input_voltage_limit.
Access: Read, Write
Valid values: Represented in microvolts
/sys/class/power_supply/<supply_name>/manufacture_day |
Defined on file sysfs-class-power
Reports the day of month when the device has been manufactured.
Access: Read Valid values: 1-31
/sys/class/power_supply/<supply_name>/manufacture_month |
Defined on file sysfs-class-power
Reports the month when the device has been manufactured.
Access: Read
Valid values: 1-12
/sys/class/power_supply/<supply_name>/manufacture_year |
Defined on file sysfs-class-power
Reports the year (following Gregorian calendar) when the device has been manufactured.
Access: Read
Valid values: Reported as integer
/sys/class/power_supply/<supply_name>/manufacturer |
Defined on file sysfs-class-power
Reports the name of the device manufacturer.
Access: Read Valid values: Represented as string
/sys/class/power_supply/<supply_name>/model_name |
Defined on file sysfs-class-power
Reports the name of the device model.
Access: Read Valid values: Represented as string
/sys/class/power_supply/<supply_name>/online |
Defined on file sysfs-class-power
Indicates if VBUS is present for the supply. When the supply is online, and the supply allows it, then it’s possible to switch between online states (e.g. Fixed -> Programmable for a PD_PPS USB supply so voltage and current can be controlled).
Access: Read, Write
Valid values:
0:
Offline
1:
Online Fixed - Fixed Voltage Supply
2:
Online Programmable - Programmable Voltage Supply
/sys/class/power_supply/<supply_name>/precharge_current |
Defined on file sysfs-class-power
Reports the charging current applied during pre-charging phase for a battery charge cycle.
Access: Read
Valid values: Represented in microamps
/sys/class/power_supply/<supply_name>/present |
Defined on file sysfs-class-power
Reports whether a battery is present or not in the system. If the property does not exist, the battery is considered to be present.
Access: Read
Valid values:
0:
Absent
1:
Present
/sys/class/power_supply/<supply_name>/serial_number |
Defined on file sysfs-class-power
Reports the serial number of the device.
Access: Read Valid values: Represented as string
/sys/class/power_supply/<supply_name>/status |
Defined on file sysfs-class-power
Represents the charging status of the battery. Normally this is read-only reporting although for some supplies this can be used to enable/disable charging to the battery.
Access: Read, Write
- Valid values:
“Unknown”, “Charging”, “Discharging”, “Not charging”, “Full”
/sys/class/power_supply/<supply_name>/technology |
Defined on file sysfs-class-power
Describes the battery technology supported by the supply.
Access: Read
- Valid values:
“Unknown”, “NiMH”, “Li-ion”, “Li-poly”, “LiFe”, “NiCd”, “LiMn”
/sys/class/power_supply/<supply_name>/temp |
Defined on file sysfs-class-power
Battery:
Reports the current TBAT battery temperature reading.
USB:
Reports the current supply temperature reading. This would normally be the internal temperature of the device itself (e.g TJUNC temperature of an IC)
Access: Read
Valid values: Represented in 1/10 Degrees Celsius
/sys/class/power_supply/<supply_name>/temp_alert_max |
Defined on file sysfs-class-power
Battery:
Maximum TBAT temperature trip-wire value where the supply will notify user-space of the event.
USB:
Maximum supply temperature trip-wire value where the supply will notify user-space of the event.
This is normally used for the charging scenario where user-space needs to know if the temperature has crossed an upper threshold so it can take appropriate action (e.g. warning user that the temperature is critically high, and charging has stopped).
Access: Read
Valid values: Represented in 1/10 Degrees Celsius
/sys/class/power_supply/<supply_name>/temp_alert_min |
Defined on file sysfs-class-power
Battery:
Minimum TBAT temperature trip-wire value where the supply will notify user-space of the event.
USB:
Minimum supply temperature trip-wire value where the supply will notify user-space of the event.
This is normally used for the charging scenario where user-space needs to know if the temperature has crossed a lower threshold so it can take appropriate action (e.g. warning user that temperature level is high, and charging current has been reduced accordingly to remedy the situation).
Access: Read
Valid values: Represented in 1/10 Degrees Celsius
/sys/class/power_supply/<supply_name>/temp_max |
Defined on file sysfs-class-power
Battery:
Reports the maximum allowed TBAT battery temperature for charging.
USB:
Reports the maximum allowed supply temperature for operation.
Access: Read
Valid values: Represented in 1/10 Degrees Celsius
/sys/class/power_supply/<supply_name>/temp_min |
Defined on file sysfs-class-power
Battery:
Reports the minimum allowed TBAT battery temperature for charging.
USB:
Reports the minimum allowed supply temperature for operation.
Access: Read
Valid values: Represented in 1/10 Degrees Celsius
/sys/class/power_supply/<supply_name>/type |
Defined on file sysfs-class-power
Describes the main type of the supply.
Access: Read Valid values: “Battery”, “UPS”, “Mains”, “USB”, “Wireless”
Battery and USB properties
/sys/class/power_supply/<supply_name>/usb_type |
Defined on file sysfs-class-power
Reports what type of USB connection is currently active for the supply, for example it can show if USB-PD capable source is attached.
Access: For power-supplies which consume USB power such as battery charger chips, this indicates the type of the connected USB power source and is Read-Only.
For power-supplies which act as a USB power-source such as e.g. the UCS1002 USB Port Power Controller this is writable.
- Valid values:
“Unknown”, “SDP”, “DCP”, “CDP”, “ACA”, “C”, “PD”, “PD_DRP”, “PD_PPS”, “BrickID”
Device Specific Properties
/sys/class/power_supply/<supply_name>/voltage_avg |
Defined on file sysfs-class-power
Reports an average VBAT voltage reading for the battery, over a fixed period. Normally devices will provide a fixed interval in which they average readings to smooth out the reported value.
Access: Read
Valid values: Represented in microvolts
/sys/class/power_supply/<supply_name>/voltage_max |
Defined on file sysfs-class-power
Battery:
Reports the maximum safe VBAT voltage permitted for the battery, during charging.
USB:
Reports the maximum VBUS voltage the supply can support.
Access: Read
Valid values: Represented in microvolts
/sys/class/power_supply/<supply_name>/voltage_min |
Defined on file sysfs-class-power
Battery:
Reports the minimum safe VBAT voltage permitted for the battery, during discharging.
USB:
Reports the minimum VBUS voltage the supply can support.
Access: Read
Valid values: Represented in microvolts
/sys/class/power_supply/<supply_name>/voltage_now |
Defined on file sysfs-class-power
Battery:
Reports an instant, single VBAT voltage reading for the battery. This value is not averaged/smoothed.
Access: Read
USB:
Reports the VBUS voltage supplied now. This value is generally read-only reporting, unless the ‘online’ state of the supply is set to be programmable, in which case this value can be set within the reported min/max range.
Access: Read, Write
Valid values: Represented in microvolts
Battery Properties
/sys/class/power_supply/bq24257-charger/high_impedance_enable |
Defined on file sysfs-class-power
This entry allows enabling the high-impedance mode of bq24257-type charger devices. If enabled, it places the charger IC into low power standby mode with the switch mode controller disabled. When disabled, the charger operates normally. See device datasheet for details.
Valid values:
1: enabled
0: disabled
/sys/class/power_supply/bq24257-charger/in_dpm_voltage |
Defined on file sysfs-class-power
This entry configures the input dynamic power path management voltage of bq24257-type charger devices. Once the supply drops to the configured voltage, the input current limit is reduced down to prevent the further drop of the supply. When the IC enters this mode, the charge current is lower than the set value. See device datasheet for details.
Valid values:
4200000, 4280000, 4360000, 4440000, 4520000, 4600000, 4680000, 4760000 (all uV)
/sys/class/power_supply/bq24257-charger/ovp_voltage |
Defined on file sysfs-class-power
This entry configures the overvoltage protection feature of bq24257- type charger devices. This feature protects the device and other components against damage from overvoltage on the input supply. See device datasheet for details.
Valid values:
6000000, 6500000, 7000000, 8000000, 9000000, 9500000, 10000000, 10500000 (all uV)
/sys/class/power_supply/bq24257-charger/sysoff_enable |
Defined on file sysfs-class-power
This entry allows enabling the sysoff mode of bq24257-type charger devices. If enabled and the input is removed, the internal battery FET is turned off in order to reduce the leakage from the BAT pin to less than 1uA. Note that on some devices/systems this disconnects the battery from the system. See device datasheet for details.
Valid values:
1: enabled
0: disabled
/sys/class/power_supply/ltc4162-l/arm_ship_mode |
Defined on file sysfs-class-power-ltc4162l
The charger will normally drain the battery while inactive, typically drawing about 54 microamps. Write a “1” to this property to arm a special “ship” mode that extends shelf life by reducing the leakage to about 2.8 microamps. The chip will remain in this mode (and no longer respond to I2C commands) until some external power-supply is attached raising the input voltage above 1V. It will then automatically revert to “0”. Writing a “0” to the property cancels the “ship” mode request. The ship mode, when armed, activates once the input voltage drops below 1V.
Access: Read, Write
Valid values: 0 (disable) or 1 (enable)
/sys/class/power_supply/ltc4162-l/charge_status |
Defined on file sysfs-class-power-ltc4162l
Detailed charge status information as reported by the chip.
Access: Read
- Valid values:
ilim_reg_active thermal_reg_active vin_uvcl_active iin_limit_active constant_current constant_voltage charger_off
/sys/class/power_supply/ltc4162-l/force_telemetry |
Defined on file sysfs-class-power-ltc4162l
To save battery current, the measurement system is disabled if the battery is the only source of power. This affects all voltage, current and temperature measurements. Write a “1” to this to keep performing telemetry once every few seconds, even when running on battery (as reported by the online property, which is “1” when external power is available and “0” when the system runs on battery).
Access: Read, Write
Valid values: 0 (disabled) or 1 (enabled)
/sys/class/power_supply/ltc4162-l/ibat |
Defined on file sysfs-class-power-ltc4162l
Battery input current as measured by the charger. Negative value means that the battery is discharging.
Access: Read
Valid values: Signed value in microamps
/sys/class/power_supply/ltc4162-l/vbat |
Defined on file sysfs-class-power-ltc4162l
Battery voltage as measured by the charger.
Access: Read
Valid values: In microvolts
/sys/class/power_supply/ltc4162-l/vbat_avg |
Defined on file sysfs-class-power-ltc4162l
Battery voltage, averaged over time, as measured by the charger.
Access: Read
Valid values: In microvolts
/sys/class/power_supply/max14577-charger/device/fast_charge_timer |
Defined on file sysfs-class-power
This entry shows and sets the maximum time the max14577 charger operates in fast-charge mode. When the timer expires the device will terminate fast-charge mode (charging current will drop to 0 A) and will trigger interrupt.
Valid values:
5, 6 or 7 (hours),
0: disabled.
/sys/class/power_supply/max77693-charger/device/fast_charge_timer |
Defined on file sysfs-class-power
This entry shows and sets the maximum time the max77693 charger operates in fast-charge mode. When the timer expires the device will terminate fast-charge mode (charging current will drop to 0 A) and will trigger interrupt.
Valid values:
4 - 16 (hours), step by 2 (rounded down)
0: disabled.
/sys/class/power_supply/max77693-charger/device/top_off_threshold_current |
Defined on file sysfs-class-power
This entry shows and sets the charging current threshold for entering top-off charging mode. When charging current in fast charge mode drops below this value, the charger will trigger interrupt and start top-off charging mode.
Valid values:
100000 - 200000 (microamps), step by 25000 (rounded down)
200000 - 350000 (microamps), step by 50000 (rounded down)
0: disabled.
/sys/class/power_supply/max77693-charger/device/top_off_timer |
Defined on file sysfs-class-power
This entry shows and sets the maximum time the max77693 charger operates in top-off charge mode. When the timer expires the device will terminate top-off charge mode (charging current will drop to 0 A) and will trigger interrupt.
Valid values:
0 - 70 (minutes), step by 10 (rounded down)
/sys/class/power_supply/mp2629_battery/batt_impedance_compen |
Defined on file sysfs-class-power-mp2629
Represents a battery impedance compensation to accelerate charging.
Access: Read, Write
Valid values: Represented in milli-ohms. Valid range is [0, 140].
/sys/class/power_supply/rt9467-*/sysoff_enable |
Defined on file sysfs-class-power-rt9467
This entry allows enabling the sysoff mode of rt9467 charger devices. If enabled and the input is removed, the internal battery FET is turned off to reduce the leakage from the BAT pin. See device datasheet for details. It’s commonly used when the product enter shipping stage. After entering shipping mode, only ‘VBUS’ or ‘Power key” pressed can make it leave this mode. ‘Disable’ also can help to leave it, but it’s more like to abort the action before the device really enter shipping mode.
Access: Read, Write Valid values: - 1: enabled - 0: disabled
/sys/class/power_supply/rt9471-*/port_detect_enable |
Defined on file sysfs-class-power-rt9471
This entry allows enabling the USB BC12 port detect function of rt9471 charger devices. If enabled and VBUS is inserted, device will start to do the BC12 port detect and report the usb port type when port detect is done. See datasheet for details. Normally controlled when TypeC/USBPD port integrated.
Access: Read, Write Valid values: - 1: enabled - 0: disabled
/sys/class/power_supply/rt9471-*/sysoff_enable |
Defined on file sysfs-class-power-rt9471
This entry allows enabling the sysoff mode of rt9471 charger devices. If enabled and the input is removed, the internal battery FET is turned off to reduce the leakage from the BAT pin. See device datasheet for details. It’s commonly used when the product enter shipping stage. After entering shipping mode, only ‘VBUS’ or ‘Power key” pressed can make it leave this mode. ‘Disable’ also can help to leave it, but it’s more like to abort the action before the device really enter shipping mode.
Access: Read, Write Valid values: - 1: enabled - 0: disabled
/sys/class/power_supply/twl4030_ac/mode |
Defined on file sysfs-class-power-twl4030
Changing mode for ‘ac’ port. Writing to this can disable charging.
Possible values are:
“auto”
draw power as appropriate for detected power source and battery status.
“off”
do not draw any power.
/sys/class/power_supply/twl4030_usb/mode |
Defined on file sysfs-class-power-twl4030
Changing mode for USB port. Writing to this can disable charging.
Possible values are:
“auto”
draw power as appropriate for detected power source and battery status.
“off”
do not draw any power.
“continuous”
activate mode described as “linear” in TWL data sheets. This uses whatever current is available and doesn’t switch off when voltage drops.
This is useful for unstable power sources such as bicycle dynamo, but care should be taken that battery is not over-charged.
/sys/class/power_supply/wilco-charger/charge_control_end_threshold |
Defined on file sysfs-class-power-wilco
Used when charge_type=”Custom”, as described above. Measured in percentages. The valid range is [55, 100].
/sys/class/power_supply/wilco-charger/charge_control_start_threshold |
Defined on file sysfs-class-power-wilco
Used when charge_type=”Custom”, as described above. Measured in percentages. The valid range is [50, 95].
/sys/class/power_supply/wilco-charger/charge_type |
Defined on file sysfs-class-power-wilco
What charging algorithm to use:
- Standard:
Fully charges battery at a standard rate.
- Adaptive:
Battery settings adaptively optimized based on typical battery usage pattern.
- Fast:
Battery charges over a shorter period.
- Trickle:
Extends battery lifespan, intended for users who primarily use their Chromebook while connected to AC.
- Custom:
A low and high threshold percentage is specified. Charging begins when level drops below charge_control_start_threshold, and ceases when level is above charge_control_end_threshold.
- Long Life:
Customized charge rate for last longer battery life. On Wilco device this mode is pre-configured in the factory through EC’s private PID. Switching to a different mode will be denied by Wilco EC when Long Life mode is enabled.
/sys/class/powercap/ |
Defined on file sysfs-class-powercap
The powercap/ class sub directory belongs to the power cap subsystem. Refer to Power Capping Framework for details.
/sys/class/powercap/.../<power zone>/constraint_X_max_time_window_us |
Defined on file sysfs-class-powercap
Maximum allowed time window in micro seconds for this constraint. Here “X” can have values from 0 to max integer.
/sys/class/powercap/.../<power zone>/constraint_X_min_time_window_us |
Defined on file sysfs-class-powercap
Minimum allowed time window in micro seconds for this constraint. Here “X” can have values from 0 to max integer.
/sys/class/powercap/.../<power zone>/constraint_X_name |
Defined on file sysfs-class-powercap
Each power zone can define one or more constraints. Each constraint can have an optional name. Here “X” can have values from 0 to max integer.
/sys/class/powercap/.../<power zone>/constraint_X_power_limit_uw |
Defined on file sysfs-class-powercap
Power limit in micro-watts should be applicable for the time window specified by “constraint_X_time_window_us”. Here “X” can have values from 0 to max integer.
/sys/class/powercap/.../<power zone>/constraint_X_time_window_us |
Defined on file sysfs-class-powercap
Time window in micro seconds. This is used along with constraint_X_power_limit_uw to define a power constraint. Here “X” can have values from 0 to max integer.
/sys/class/powercap/.../<power zone>/enabled |
Defined on file sysfs-class-powercap
This allows to enable/disable power capping at power zone level. This applies to current power zone and its children.
/sys/class/powercap/.../<power zone>/energy_uj |
Defined on file sysfs-class-powercap
Current energy counter in micro-joules. Write “0” to reset. If the counter can not be reset, then this attribute is read-only.
/sys/class/powercap/.../<power zone>/max_energy_range_uj |
Defined on file sysfs-class-powercap
Range of the above energy counter in micro-joules.
/sys/class/powercap/.../<power zone>/max_power_range_uw |
Defined on file sysfs-class-powercap
Range of the above power value in micro-watts.
/sys/class/powercap/.../<power zone>/name |
Defined on file sysfs-class-powercap
Specifies the name of this power zone.
/sys/class/powercap/.../<power zone>/power_uw |
Defined on file sysfs-class-powercap
Current power in micro-watts.
/sys/class/powercap/<control type> |
Defined on file sysfs-class-powercap
A <control type> is a unique name under /sys/class/powercap. Here <control type> determines how the power is going to be controlled. A <control type> can contain multiple power zones.
/sys/class/powercap/<control type>/.../constraint_X_max_power_uw |
Defined on file sysfs-class-powercap
Maximum allowed power in micro watts for this constraint. Here “X” can have values from 0 to max integer.
/sys/class/powercap/<control type>/.../constraint_X_min_power_uw |
Defined on file sysfs-class-powercap
Minimum allowed power in micro watts for this constraint. Here “X” can have values from 0 to max integer.
/sys/class/powercap/<control type>/<power zone> |
Defined on file sysfs-class-powercap
A power zone is a single or a collection of devices, which can be independently monitored and controlled. A power zone sysfs entry is qualified with the name of the <control type>. E.g. intel-rapl:0:1:1.
/sys/class/powercap/<control type>/<power zone>/<child power zone> |
Defined on file sysfs-class-powercap
Power zones may be organized in a hierarchy in which child power zones provide monitoring and control for a subset of devices under the parent. For example, if there is a parent power zone for a whole CPU package, each CPU core in it can be a child power zone.
/sys/class/powercap/<control type>/enabled |
Defined on file sysfs-class-powercap
This allows to enable/disable power capping for a “control type”. This status affects every power zone using this “control_type.
/sys/class/pps/ |
Defined on file sysfs-pps
The /sys/class/pps/ directory will contain files and directories that will provide a unified interface to the PPS sources.
/sys/class/pps/ppsX/ |
Defined on file sysfs-pps
The /sys/class/pps/ppsX/ directory is related to X-th PPS source into the system. Each directory will contain files to manage and control its PPS source.
/sys/class/pps/ppsX/assert |
Defined on file sysfs-pps
The /sys/class/pps/ppsX/assert file reports the assert events and the assert sequence number of the X-th source in the form:
<secs>.<nsec>#<sequence>
If the source has no assert events the content of this file is empty.
/sys/class/pps/ppsX/clear |
Defined on file sysfs-pps
The /sys/class/pps/ppsX/clear file reports the clear events and the clear sequence number of the X-th source in the form:
<secs>.<nsec>#<sequence>
If the source has no clear events the content of this file is empty.
/sys/class/pps/ppsX/echo |
Defined on file sysfs-pps
The /sys/class/pps/ppsX/echo file reports if the X-th does or does not support an “echo” function.
/sys/class/pps/ppsX/mode |
Defined on file sysfs-pps
The /sys/class/pps/ppsX/mode file reports the functioning mode of the X-th source in hexadecimal encoding.
Please, refer to linux/include/linux/pps.h for further info.
/sys/class/pps/ppsX/name |
Defined on file sysfs-pps
The /sys/class/pps/ppsX/name file reports the name of the X-th source.
/sys/class/pps/ppsX/path |
Defined on file sysfs-pps
The /sys/class/pps/ppsX/path file reports the path name of the device connected with the X-th source.
If the source is not connected with any device the content of this file is empty.
/sys/class/ptp/ |
Defined on file sysfs-ptp
This directory contains files and directories providing a standardized interface to the ancillary features of PTP hardware clocks.
/sys/class/ptp/ptp<N>/ |
Defined on file sysfs-ptp
This directory contains the attributes of the Nth PTP hardware clock registered into the PTP class driver subsystem.
/sys/class/ptp/ptp<N>/clock_name |
Defined on file sysfs-ptp
This file contains the name of the PTP hardware clock as a human readable string. The purpose of this attribute is to provide the user with a “friendly name” and to help distinguish PHY based devices from MAC based ones. The string does not necessarily have to be any kind of unique id.
/sys/class/ptp/ptp<N>/extts_enable |
Defined on file sysfs-ptp
This write-only file enables or disables external timestamps. To enable external timestamps, write the channel index followed by a “1” into the file. To disable external timestamps, write the channel index followed by a “0” into the file.
/sys/class/ptp/ptp<N>/fifo |
Defined on file sysfs-ptp
This file provides timestamps on external events, in the form of three integers: channel index, seconds, and nanoseconds.
/sys/class/ptp/ptp<N>/max_adjustment |
Defined on file sysfs-ptp
This file contains the PTP hardware clock’s maximum frequency adjustment value (a positive integer) in parts per billion.
/sys/class/ptp/ptp<N>/max_vclocks |
Defined on file sysfs-ptp
This file contains the maximum number of ptp vclocks. Write integer to re-configure it.
/sys/class/ptp/ptp<N>/n_alarms |
Defined on file sysfs-ptp
This file contains the number of periodic or one shot alarms offer by the PTP hardware clock.
/sys/class/ptp/ptp<N>/n_external_timestamps |
Defined on file sysfs-ptp
This file contains the number of external timestamp channels offered by the PTP hardware clock.
/sys/class/ptp/ptp<N>/n_periodic_outputs |
Defined on file sysfs-ptp
This file contains the number of programmable periodic output channels offered by the PTP hardware clock.
/sys/class/ptp/ptp<N>/n_pins |
Defined on file sysfs-ptp
This file contains the number of programmable pins offered by the PTP hardware clock.
/sys/class/ptp/ptp<N>/n_vclocks |
Defined on file sysfs-ptp
This file contains the number of virtual PTP clocks in use. By default, the value is 0 meaning that only the physical clock is in use. Setting the value creates the corresponding number of virtual clocks and causes the physical clock to become free running. Setting the value back to 0 deletes the virtual clocks and switches the physical clock back to normal, adjustable operation.
/sys/class/ptp/ptp<N>/period |
Defined on file sysfs-ptp
This write-only file enables or disables periodic outputs. To enable a periodic output, write five integers into the file: channel index, start time seconds, start time nanoseconds, period seconds, and period nanoseconds. To disable a periodic output, set all the seconds and nanoseconds values to zero.
/sys/class/ptp/ptp<N>/pins |
Defined on file sysfs-ptp
This directory contains one file for each programmable pin offered by the PTP hardware clock. The file name is the hardware dependent pin name. Reading from this file produces two numbers, the assigned function (see the PTP_PF_ enumeration values in linux/ptp_clock.h) and the channel number. The function and channel assignment may be changed by two writing numbers into the file.
/sys/class/ptp/ptp<N>/pps_available |
Defined on file sysfs-ptp
This file indicates whether the PTP hardware clock supports a Pulse Per Second to the host CPU. Reading “1” means that the PPS is supported, while “0” means not supported.
/sys/class/ptp/ptp<N>/pps_enable |
Defined on file sysfs-ptp
This write-only file enables or disables delivery of PPS events to the Linux PPS subsystem. To enable PPS events, write a “1” into the file. To disable events, write a “0” into the file.
/sys/class/pwm/ |
Defined on file sysfs-class-pwm
The pwm/ class sub-directory belongs to the Generic PWM Framework and provides a sysfs interface for using PWM channels.
/sys/class/pwm/pwmchip<N>/ |
Defined on file sysfs-class-pwm
A /sys/class/pwm/pwmchipN directory is created for each probed PWM controller/chip where N is the base of the PWM chip.
/sys/class/pwm/pwmchip<N>/export |
Defined on file sysfs-class-pwm
Exports a PWM channel from the PWM chip for sysfs control. Value is between 0 and /sys/class/pwm/pwmchipN/npwm - 1.
/sys/class/pwm/pwmchip<N>/npwm |
Defined on file sysfs-class-pwm
The number of PWM channels supported by the PWM chip.
/sys/class/pwm/pwmchip<N>/pwmX |
Defined on file sysfs-class-pwm
A /sys/class/pwm/pwmchipN/pwmX directory is created for each exported PWM channel where X is the exported PWM channel number.
/sys/class/pwm/pwmchip<N>/pwmX/capture |
Defined on file sysfs-class-pwm
Capture information about a PWM signal. The output format is a pair unsigned integers (period and duty cycle), separated by a single space.
/sys/class/pwm/pwmchip<N>/pwmX/duty_cycle |
Defined on file sysfs-class-pwm
Sets the PWM signal duty cycle in nanoseconds.
/sys/class/pwm/pwmchip<N>/pwmX/enable |
Defined on file sysfs-class-pwm
Enable/disable the PWM signal. 0 is disabled 1 is enabled
/sys/class/pwm/pwmchip<N>/pwmX/period |
Defined on file sysfs-class-pwm
Sets the PWM signal period in nanoseconds.
/sys/class/pwm/pwmchip<N>/pwmX/polarity |
Defined on file sysfs-class-pwm
Sets the output polarity of the PWM signal to “normal” or “inversed”.
/sys/class/pwm/pwmchip<N>/unexport |
Defined on file sysfs-class-pwm
Unexports a PWM channel.
/sys/class/rapidio_port |
Defined on file sysfs-class-rapidio
On-chip RapidIO controllers and PCIe-to-RapidIO bridges (referenced as “Master Port” or “mport”) are presented in sysfs as the special class of devices: “rapidio_port”. The /sys/class/rapidio_port subdirectory contains individual subdirectories named as “rapidioN” where N = mport ID registered with RapidIO subsystem.
NOTE: An mport ID is not a RapidIO destination ID assigned to a given local mport device.
/sys/class/rapidio_port/rapidio<N>/port_destid |
Defined on file sysfs-class-rapidio
(RO) reports RapidIO destination ID assigned to the given RapidIO mport device. If value 0xFFFFFFFF is returned this means that no valid destination ID have been assigned to the mport (yet). Normally, before enumeration/discovery have been executed only fabric enumerating mports have a valid destination ID assigned to them using “hdid=...” rapidio module parameter.
After enumeration or discovery was performed for a given mport device, the corresponding subdirectory will also contain subdirectories for each child RapidIO device connected to the mport.
The example below shows mport device subdirectory with several child RapidIO devices attached to it:
[rio@rapidio ~]$ ls /sys/class/rapidio_port/rapidio0/ -l
total 0
drwxr-xr-x 3 root root 0 Feb 11 15:10 00:e:0001
drwxr-xr-x 3 root root 0 Feb 11 15:10 00:e:0004
drwxr-xr-x 3 root root 0 Feb 11 15:10 00:e:0007
drwxr-xr-x 3 root root 0 Feb 11 15:10 00:s:0002
drwxr-xr-x 3 root root 0 Feb 11 15:10 00:s:0003
drwxr-xr-x 3 root root 0 Feb 11 15:10 00:s:0005
lrwxrwxrwx 1 root root 0 Feb 11 15:11 device -> ../../../0000:01:00.0
-r--r--r-- 1 root root 4096 Feb 11 15:11 port_destid
drwxr-xr-x 2 root root 0 Feb 11 15:11 power
lrwxrwxrwx 1 root root 0 Feb 11 15:04 subsystem -> ../../../../../../class/rapidio_port
-r--r--r-- 1 root root 4096 Feb 11 15:11 sys_size
-rw-r--r-- 1 root root 4096 Feb 11 15:04 uevent
/sys/class/rapidio_port/rapidio<N>/sys_size |
Defined on file sysfs-class-rapidio
(RO) reports RapidIO common transport system size:
0 = small (8-bit destination ID, max. 256 devices),
1 = large (16-bit destination ID, max. 65536 devices).
/sys/class/rc/ |
Defined on file sysfs-class-rc
The rc/ class sub-directory belongs to the Remote Controller core and provides a sysfs interface for configuring infrared remote controller receivers.
/sys/class/rc/rc<N>/ |
Defined on file sysfs-class-rc
A /sys/class/rc/rcN directory is created for each remote control receiver device where N is the number of the receiver.
/sys/class/rc/rc<N>/filter |
Defined on file sysfs-class-rc
Sets the scancode filter expected value.
Use in combination with /sys/class/rc/rcN/filter_mask to set the expected value of the bits set in the filter mask. If the hardware supports it then scancodes which do not match the filter will be ignored. Otherwise the write will fail with an error.
This value may be reset to 0 if the current protocol is altered.
/sys/class/rc/rc<N>/filter_mask |
Defined on file sysfs-class-rc
Sets the scancode filter mask of bits to compare. Use in combination with /sys/class/rc/rcN/filter to set the bits of the scancode which should be compared against the expected value. A value of 0 disables the filter to allow all valid scancodes to be processed.
If the hardware supports it then scancodes which do not match the filter will be ignored. Otherwise the write will fail with an error.
This value may be reset to 0 if the current protocol is altered.
/sys/class/rc/rc<N>/protocols |
Defined on file sysfs-class-rc
Reading this file returns a list of available protocols, something like:
"rc5 [rc6] nec jvc [sony]"
Enabled protocols are shown in [] brackets.
Writing “+proto” will add a protocol to the list of enabled protocols.
Writing “-proto” will remove a protocol from the list of enabled protocols.
Writing “proto” will enable only “proto”.
Writing “none” will disable all protocols.
Write fails with EINVAL if an invalid protocol combination or unknown protocol name is used.
/sys/class/rc/rc<N>/wakeup_data |
Defined on file sysfs-class-rc-nuvoton
Reading this file returns the stored CIR wakeup sequence. It starts with a pulse, followed by a space, pulse etc. All values are in microseconds. The same format can be used to store a wakeup sequence in the Nuvoton chip by writing to this file.
Note: Some systems reset the stored wakeup sequence to a factory default on each boot. On such systems store the wakeup sequence in a file and set it on boot using e.g. a udev rule.
/sys/class/rc/rc<N>/wakeup_filter |
Defined on file sysfs-class-rc
Sets the scancode wakeup filter expected value.
Use in combination with /sys/class/rc/rcN/wakeup_filter_mask to set the expected value of the bits set in the wakeup filter mask to trigger a system wake event.
If the hardware supports it and wakeup_filter_mask is not 0 then scancodes which match the filter will wake the system from e.g. suspend to RAM or power off.
Otherwise the write will fail with an error.
This value may be reset to 0 if the wakeup protocol is altered.
/sys/class/rc/rc<N>/wakeup_filter_mask |
Defined on file sysfs-class-rc
Sets the scancode wakeup filter mask of bits to compare.
Use in combination with /sys/class/rc/rcN/wakeup_filter to set the bits of the scancode which should be compared against the expected value to trigger a system wake event.
If the hardware supports it and wakeup_filter_mask is not 0 then scancodes which match the filter will wake the system from e.g. suspend to RAM or power off.
Otherwise the write will fail with an error.
This value may be reset to 0 if the wakeup protocol is altered.
/sys/class/rc/rc<N>/wakeup_protocols |
Defined on file sysfs-class-rc
Reading this file returns a list of available protocols to use for the wakeup filter, something like:
"rc-5 nec nec-x rc-6-0 rc-6-6a-24 [rc-6-6a-32] rc-6-mce"
Note that protocol variants are listed, so “nec”, “sony”, “rc-5”, “rc-6” have their different bit length encodings listed if available.
The enabled wakeup protocol is shown in [] brackets.
Only one protocol can be selected at a time.
Writing “proto” will use “proto” for wakeup events.
Writing “none” will disable wakeup.
Write fails with EINVAL if an invalid protocol combination or unknown protocol name is used, or if wakeup is not supported by the hardware.
/sys/class/regulator/.../bypass |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called bypass. This indicates if the device is in bypass mode.
This will be one of the following strings:
‘enabled’
‘disabled’
‘unknown’
‘enabled’ means the regulator is in bypass mode.
‘disabled’ means that the regulator is regulating.
‘unknown’ means software cannot determine the state, or the reported state is invalid.
/sys/class/regulator/.../fail |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called fail. This indicates if the device reports an output failure (1) or not (0).
/sys/class/regulator/.../max_microamps |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called max_microamps. This holds the maximum safe working regulator output current limit setting for this domain measured in microamps, for regulators which support current constraints.
NOTE: this will return the string ‘constraint not defined’ if the power domain has no max microamps constraint defined by platform code.
/sys/class/regulator/.../max_microvolts |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called max_microvolts. This holds the maximum safe working regulator output voltage setting for this domain measured in microvolts, for regulators which support voltage constraints.
NOTE: this will return the string ‘constraint not defined’ if the power domain has no max microvolts constraint defined by platform code.
/sys/class/regulator/.../microamps |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called microamps. This holds the regulator output current limit setting measured in microamps (i.e. E-6 Amps), for regulators which can report the control input for a current limit.
NOTE: This value should not be used to determine the regulator output current level as this value is the same regardless of whether the regulator is enabled or disabled.
/sys/class/regulator/.../microvolts |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called microvolts. This holds the regulator output voltage setting measured in microvolts (i.e. E-6 Volts), for regulators which can report the control input for voltage.
NOTE: This value should not be used to determine the regulator output voltage level as this value is the same regardless of whether the regulator is enabled or disabled.
/sys/class/regulator/.../min_microamps |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called min_microamps. This holds the minimum safe working regulator output current limit setting for this domain measured in microamps, for regulators which support current constraints.
NOTE: this will return the string ‘constraint not defined’ if the power domain has no min microamps constraint defined by platform code.
/sys/class/regulator/.../min_microvolts |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called min_microvolts. This holds the minimum safe working regulator output voltage setting for this domain measured in microvolts, for regulators which support voltage constraints.
NOTE: this will return the string ‘constraint not defined’ if the power domain has no min microvolts constraint defined by platform code.
/sys/class/regulator/.../name |
Defined on file sysfs-class-regulator
Each regulator directory will contain a field called name. This holds a string identifying the regulator for display purposes.
NOTE: this will be empty if no suitable name is provided by platform or regulator drivers.
/sys/class/regulator/.../num_users |
Defined on file sysfs-class-regulator
Each regulator directory will contain a field called
num_users. This holds the number of consumer devices that
have called regulator_enable()
on this regulator.
/sys/class/regulator/.../opmode |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called opmode. This holds the current regulator operating mode, for regulators which can report that control input value.
The opmode value can be one of the following strings:
‘fast’
‘normal’
‘idle’
‘standby’
‘unknown’
The modes are described in include/linux/regulator/consumer.h
NOTE: This value should not be used to determine the regulator output operating mode as this value is the same regardless of whether the regulator is enabled or disabled. A “status” attribute may be available to determine the actual mode.
/sys/class/regulator/.../over_current |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called over_current. This indicates if the device reports an over-current fault (1) or not (0).
/sys/class/regulator/.../over_current_warn |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called over_current_warn. This indicates if the device reports an over-current warning (1) or not (0).
/sys/class/regulator/.../over_temp |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called over_temp. This indicates if the device reports an over-temperature fault (1) or not (0).
/sys/class/regulator/.../over_temp_warn |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called over_temp_warn. This indicates if the device reports an over-temperature warning (1) or not (0).
/sys/class/regulator/.../over_voltage_warn |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called over_voltage_warn. This indicates if the device reports an over-voltage warning (1) or not (0).
/sys/class/regulator/.../parent |
Defined on file sysfs-class-regulator
Some regulator directories will contain a link called parent. This points to the parent or supply regulator if one exists.
/sys/class/regulator/.../regulation_out |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called regulation_out. This indicates if the device reports an out-of-regulation fault (1) or not (0).
/sys/class/regulator/.../requested_microamps |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called requested_microamps. This holds the total requested load current in microamps for this regulator from all its consumer devices.
/sys/class/regulator/.../state |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called state. This reports the regulator enable control, for regulators which can report that input value.
This will be one of the following strings:
‘enabled’ ‘disabled’ ‘unknown’
‘enabled’ means the regulator output is ON and is supplying power to the system (assuming no error prevents it).
‘disabled’ means the regulator output is OFF and is not supplying power to the system (unless some non-Linux control has enabled it).
‘unknown’ means software cannot determine the state, or the reported state is invalid.
NOTE: this field can be used in conjunction with microvolts or microamps to determine configured regulator output levels.
/sys/class/regulator/.../status |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called “status”. This reports the current regulator status, for regulators which can report that output value.
This will be one of the following strings:
off
on
error
fast
normal
idle
standby
“off” means the regulator is not supplying power to the system.
“on” means the regulator is supplying power to the system, and the regulator can’t report a detailed operation mode.
“error” indicates an out-of-regulation status such as being disabled due to thermal shutdown, or voltage being unstable because of problems with the input power supply.
“fast”, “normal”, “idle”, and “standby” are all detailed regulator operation modes (described elsewhere). They imply “on”, but provide more detail.
Note that regulator status is a function of many inputs, not limited to control inputs from Linux. For example, the actual load presented may trigger “error” status; or a regulator may be enabled by another user, even though Linux did not enable it.
/sys/class/regulator/.../suspend_disk_microvolts |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_disk_microvolts. This holds the regulator output voltage setting for this domain measured in microvolts when the system is suspended to disk, for voltage regulators implementing suspend voltage configuration constraints.
/sys/class/regulator/.../suspend_disk_mode |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_disk_mode. This holds the regulator operating mode setting for this domain when the system is suspended to disk, for regulators implementing suspend mode configuration constraints.
/sys/class/regulator/.../suspend_disk_state |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_disk_state. This holds the regulator operating state when suspended to disk, for regulators implementing suspend configuration constraints.
This will be one of the same strings reported by the “state” attribute.
/sys/class/regulator/.../suspend_mem_microvolts |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_mem_microvolts. This holds the regulator output voltage setting for this domain measured in microvolts when the system is suspended to memory, for voltage regulators implementing suspend voltage configuration constraints.
/sys/class/regulator/.../suspend_mem_mode |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_mem_mode. This holds the regulator operating mode setting for this domain when the system is suspended to memory, for regulators implementing suspend mode configuration constraints.
/sys/class/regulator/.../suspend_mem_state |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_mem_state. This holds the regulator operating state when suspended to memory, for regulators implementing suspend configuration constraints.
This will be one of the same strings reported by the “state” attribute.
/sys/class/regulator/.../suspend_standby_microvolts |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_standby_microvolts. This holds the regulator output voltage setting for this domain measured in microvolts when the system is suspended to standby, for voltage regulators implementing suspend voltage configuration constraints.
/sys/class/regulator/.../suspend_standby_mode |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_standby_mode. This holds the regulator operating mode setting for this domain when the system is suspended to standby, for regulators implementing suspend mode configuration constraints.
/sys/class/regulator/.../suspend_standby_state |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called suspend_standby_state. This holds the regulator operating state when suspended to standby, for regulators implementing suspend configuration constraints.
This will be one of the same strings reported by the “state” attribute.
/sys/class/regulator/.../type |
Defined on file sysfs-class-regulator
Each regulator directory will contain a field called type. This holds the regulator type.
This will be one of the following strings:
‘voltage’
‘current’
‘unknown’
‘voltage’ means the regulator output voltage can be controlled by software.
‘current’ means the regulator output current limit can be controlled by software.
‘unknown’ means software cannot control either voltage or current limit.
/sys/class/regulator/.../under_voltage |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called under_voltage. This indicates if the device reports an under-voltage fault (1) or not (0).
/sys/class/regulator/.../under_voltage_warn |
Defined on file sysfs-class-regulator
Some regulator directories will contain a field called under_voltage_warn. This indicates if the device reports an under-voltage warning (1) or not (0).
/sys/class/remoteproc/.../coredump |
Defined on file sysfs-class-remoteproc
Remote processor coredump configuration
Reports the coredump configuration of the remote processor, which will be one of:
“disabled” “enabled” “inline”
“disabled” means no dump will be collected.
“enabled” means when the remote processor’s coredump is collected it will be copied to a separate buffer and that buffer is exposed to userspace.
“inline” means when the remote processor’s coredump is collected userspace will directly read from the remote processor’s device memory. Extra buffer will not be used to copy the dump. Also recovery process will not proceed until all data is read by userspace.
/sys/class/remoteproc/.../firmware |
Defined on file sysfs-class-remoteproc
Remote processor firmware
Reports the name of the firmware currently loaded to the remote processor.
To change the running firmware, ensure the remote processor is stopped (using /sys/class/remoteproc/.../state) and write a new filename.
/sys/class/remoteproc/.../name |
Defined on file sysfs-class-remoteproc
Remote processor name
Reports the name of the remote processor. This can be used by userspace in exactly identifying a remote processor and ease up the usage in modifying the ‘firmware’ or ‘state’ files.
/sys/class/remoteproc/.../recovery |
Defined on file sysfs-class-remoteproc
Remote processor recovery mechanism
Reports the recovery mechanism of the remote processor, which will be one of:
“enabled” “disabled”
“enabled” means, the remote processor will be automatically recovered whenever it crashes. Moreover, if the remote processor crashes while recovery is disabled, it will be automatically recovered too as soon as recovery is enabled.
“disabled” means, a remote processor will remain in a crashed state if it crashes. This is useful for debugging purposes; without it, debugging a crash is substantially harder.
/sys/class/remoteproc/.../state |
Defined on file sysfs-class-remoteproc
Remote processor state
Reports the state of the remote processor, which will be one of:
“offline”
“suspended”
“running”
“crashed”
“invalid”
“offline” means the remote processor is powered off.
“suspended” means that the remote processor is suspended and must be woken to receive messages.
“running” is the normal state of an available remote processor
“crashed” indicates that a problem/crash has been detected on the remote processor.
“invalid” is returned if the remote processor is in an unknown state.
Writing this file controls the state of the remote processor. The following states can be written:
“start”
“stop”
Writing “start” will attempt to start the processor running the firmware indicated by, or written to, /sys/class/remoteproc/.../firmware. The remote processor should transition to “running” state.
Writing “stop” will attempt to halt the remote processor and return it to the “offline” state.
/sys/class/rnbd-client |
Defined on file sysfs-class-rnbd-client
Provide information about RNBD-client. All sysfs files that are not read-only provide the usage information on read:
Example:
# cat /sys/class/rnbd-client/ctl/map_device
> Usage: echo "sessname=<name of the rtrs session> path=<[srcaddr,]dstaddr>
> [path=<[srcaddr,]dstaddr>] device_path=<full path on remote side>
> [access_mode=<ro|rw|migration>] > map_device
>
> addr ::= [ ip:<ipv4> | ip:<ipv6> | gid:<gid> ]
/sys/class/rnbd-client/ctl/devices/ |
Defined on file sysfs-class-rnbd-client
For each device mapped on the client a new symbolic link is created as /sys/class/rnbd-client/ctl/devices/<device_id>@<session_name>, which points to the block device created by rnbd (/sys/block/rnbd<N>/). The <device_id> of each device is created as follows:
If the ‘device_path’ provided during mapping contains slashes (“/”), they are replaced by exclamation mark (“!”) and used as as the <device_id>. Otherwise, the <device_id> will be the same as the “device_path” provided.
/sys/class/rnbd-client/ctl/map_device |
Defined on file sysfs-class-rnbd-client
Expected format is the following:
sessname=<name of the rtrs session>
path=<[srcaddr,]dstaddr> [path=<[srcaddr,]dstaddr> ...]
device_path=<full path on remote side>
[access_mode=<ro|rw|migration>]
Where:
- sessname:
accepts a string not bigger than 256 chars, which identifies a given session on the client and on the server. I.e. “clt_hostname-srv_hostname” could be a natural choice.
- path:
describes a connection between the client and the server by specifying destination and, when required, the source address. The addresses are to be provided in the following format:
ip:<IPv6> ip:<IPv4> gid:<GID>
for example:
path=ip:10.0.0.66
The single addr is treated as the destination. The connection will be established to this server from any client IP address.
path=ip:10.0.0.66,ip:10.0.1.66
First addr is the source address and the second is the destination.
If multiple “path=” options are specified multiple connection will be established and data will be sent according to the selected multipath policy (see RTRS mp_policy sysfs entry description).
- device_path:
Path to the block device on the server side. Path is specified relative to the directory on server side configured in the ‘dev_search_path’ module parameter of the rnbd_server. The rnbd_server prepends the <device_path> received from client with <dev_search_path> and tries to open the <dev_search_path>/<device_path> block device. On success, a /dev/rnbd<N> device file, a /sys/block/rnbd<N>/ directory and an entry in /sys/class/rnbd-client/ctl/devices will be created.
If ‘dev_search_path’ contains ‘%SESSNAME%’, then each session can have different devices namespace, e.g. server was configured with the following parameter “dev_search_path=/run/rnbd-devs/%SESSNAME%”, client has this string “sessname=blya device_path=sda”, then server will try to open: /run/rnbd-devs/blya/sda.
- access_mode:
the access_mode parameter specifies if the device is to be mapped as “ro” read-only or “rw” read-write. The server allows a device to be exported in rw mode only once. The “migration” access mode has to be specified if a second mapping in read-write mode is desired.
By default “rw” is used.
- nr_poll_queues
specifies the number of poll-mode queues. If the IO has HIPRI flag, the block-layer will send the IO via the poll-mode queue. For fast network and device the polling is faster than interrupt-base IO handling because it saves time for context switching, switching to another process, handling the interrupt and switching back to the issuing process.
Set -1 if you want to set it as the number of CPUs By default rnbd client creates only irq-mode queues.
NOTICE: MUST make a unique session for a device using the poll-mode queues.
Exit Codes:
If the device is already mapped it will fail with EEXIST. If the input has an invalid format it will return EINVAL. If the device path cannot be found on the server, it will fail with ENOENT.
Finding device file after mapping
After mapping, the device file can be found by: o The symlink /sys/class/rnbd-client/ctl/devices/<device_id>@<session_name> points to /sys/block/<dev-name>. The last part of the symlink destination is the same as the device name. By extracting the last part of the path the path to the device /dev/<dev-name> can be build.
/dev/block/$(cat /sys/class/rnbd-client/ctl/devices/<device_id>@<session_name>/dev)
How to find the <device_id> of the device is described on the next section.
/sys/class/rnbd-server |
Defined on file sysfs-class-rnbd-server
provide information about RNBD-server.
/sys/class/rnbd-server/ctl/ |
Defined on file sysfs-class-rnbd-server
When a client maps a device, a directory entry with the name of the block device is created under /sys/class/rnbd-server/ctl/devices/.
/sys/class/rnbd-server/ctl/devices/<device_name>/block_dev |
Defined on file sysfs-class-rnbd-server
Is a symlink to the sysfs entry of the exported device.
Example: block_dev -> ../../../../class/block/ram0
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/ |
Defined on file sysfs-class-rnbd-server
For each client a particular device is exported to, following directory will be created:
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/
When the device is unmapped by that client, the directory will be removed.
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/access_mode |
Defined on file sysfs-class-rnbd-server
Contains the device access mode: ro, rw or migration.
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/force_close |
Defined on file sysfs-class-rnbd-server
Write “1” to the file to close the device on server side. Please note that the client side device will not be closed, read or write to the device will get -ENOTCONN.
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/mapping_path |
Defined on file sysfs-class-rnbd-server
Contains the relative device path provided by the user during mapping.
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/read_only |
Defined on file sysfs-class-rnbd-server
Contains ‘1’ if device is mapped read-only, otherwise ‘0’.
/sys/class/rtc/ |
Defined on file sysfs-class-rtc
The rtc/ class subdirectory belongs to the RTC subsystem.
/sys/class/rtc/rtc0/device/rtc_calibration |
Defined on file sysfs-class-rtc-rtc0-device-rtc_calibration
Attribute for calibrating ST-Ericsson AB8500 Real Time Clock The rtc_calibration attribute allows the userspace to calibrate the AB8500.s 32KHz Real Time Clock. Every 60 seconds the AB8500 will correct the RTC’s value by adding to it the value of this attribute.
The range of the attribute is -127 to +127 in units of 30.5 micro-seconds (half-parts-per-million of the 32KHz clock)
Users: The /vendor/st-ericsson/base_utilities/core/rtc_calibration daemon uses this interface.
/sys/class/rtc/rtcX/ |
Defined on file sysfs-class-rtc
The /sys/class/rtc/rtc{0,1,2,3,...} directories correspond to each RTC device.
/sys/class/rtc/rtcX/date |
Defined on file sysfs-class-rtc
(RO) RTC-provided date in YYYY-MM-DD format
/sys/class/rtc/rtcX/hctosys |
Defined on file sysfs-class-rtc
(RO) 1 if the RTC provided the system time at boot via the CONFIG_RTC_HCTOSYS kernel option, 0 otherwise
/sys/class/rtc/rtcX/max_user_freq |
Defined on file sysfs-class-rtc
(RW) The maximum interrupt rate an unprivileged user may request from this RTC.
/sys/class/rtc/rtcX/name |
Defined on file sysfs-class-rtc
(RO) The name of the RTC corresponding to this sysfs directory
/sys/class/rtc/rtcX/offset |
Defined on file sysfs-class-rtc
(RW) The amount which the rtc clock has been adjusted in firmware. Visible only if the driver supports clock offset adjustment. The unit is parts per billion, i.e. The number of clock ticks which are added to or removed from the rtc’s base clock per billion ticks. A positive value makes a day pass more slowly, longer, and a negative value makes a day pass more quickly.
/sys/class/rtc/rtcX/range |
Defined on file sysfs-class-rtc
Valid time range for the RTC, as seconds from epoch, formatted as [min, max]
/sys/class/rtc/rtcX/since_epoch |
Defined on file sysfs-class-rtc
(RO) RTC-provided time as the number of seconds since the epoch
/sys/class/rtc/rtcX/time |
Defined on file sysfs-class-rtc
(RO) RTC-provided time in 24-hour notation (hh:mm:ss)
/sys/class/rtc/rtcX/wakealarm |
Defined on file sysfs-class-rtc
(RW) The time at which the clock will generate a system wakeup event. This is a one shot wakeup event, so must be reset after wake if a daily wakeup is required. Format is seconds since the epoch by default, or if there’s a leading +, seconds in the future, or if there is a leading +=, seconds ahead of the current alarm.
/sys/class/rtrs-client |
Defined on file sysfs-class-rtrs-client
When a user of RTRS API creates a new session, a directory entry with the name of that session is created under /sys/class/rtrs-client/<session-name>/
/sys/class/rtrs-client/<session-name>/add_path |
Defined on file sysfs-class-rtrs-client
RW, adds a new path (connection) to an existing session. Expected format is the following:
<[source addr,]destination addr>
*addr ::= [ ip:<ipv4|ipv6> | gid:<gid> ]
/sys/class/rtrs-client/<session-name>/max_reconnect_attempts |
Defined on file sysfs-class-rtrs-client
Maximum number reconnect attempts the client should make before giving up after connection breaks unexpectedly.
/sys/class/rtrs-client/<session-name>/mp_policy |
Defined on file sysfs-class-rtrs-client
Multipath policy specifies which path should be selected on each IO:
- round-robin (0):
select path in per CPU round-robin manner.
- min-inflight (1):
select path with minimum inflights.
- min-latency (2):
select path with minimum latency.
/sys/class/rtrs-client/<session-name>/paths/ |
Defined on file sysfs-class-rtrs-client
Each path belonging to a given session is listed here by its source and destination address. When a new path is added to a session by writing to the “add_path” entry, a directory <src@dst> is created.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/cur_latency |
Defined on file sysfs-class-rtrs-client
RO, Contains the latency time calculated by the heart-beat messages. Whenever the client sends heart-beat message, it checks the time gap between sending the heart-beat message and receiving the ACK. This value can be changed regularly.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/disconnect |
Defined on file sysfs-class-rtrs-client
Write “1” to the file in order to disconnect the path. Operation blocks until RTRS path is disconnected.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/dst_addr |
Defined on file sysfs-class-rtrs-client
RO, Contains the destination address of the path
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/hca_name |
Defined on file sysfs-class-rtrs-client
RO, Contains the name of HCA the connection established on.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/hca_port |
Defined on file sysfs-class-rtrs-client
RO, Contains the port number of active port traffic is going through.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/reconnect |
Defined on file sysfs-class-rtrs-client
Write “1” to the file in order to reconnect the path. Operation is blocking and returns 0 if reconnect was successful.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/remove_path |
Defined on file sysfs-class-rtrs-client
Write “1” to the file in order to disconnected and remove the path from the session. Operation blocks until the path is disconnected and removed from the session.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/src_addr |
Defined on file sysfs-class-rtrs-client
RO, Contains the source address of the path
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/state |
Defined on file sysfs-class-rtrs-client
RO, Contains “connected” if the session is connected to the peer and fully functional. Otherwise the file contains “disconnected”
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/stats/cpu_migration |
Defined on file sysfs-class-rtrs-client
RTRS expects that each HCA IRQ is pinned to a separate CPU. If it’s not the case, the processing of an I/O response could be processed on a different CPU than where it was originally submitted. This file shows how many interrupts where generated on a non expected CPU.
- “from:”
is the CPU on which the IRQ was expected, but not generated.
- “to:”
is the CPU on which the IRQ was generated, but not expected.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/stats/rdma |
Defined on file sysfs-class-rtrs-client
Contains statistics regarding rdma operations and inflight operations. The output consists of 6 values:
<read-count> <read-total-size> <write-count> \
<write-total-size> <inflights> <failovered>
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/stats/reconnects |
Defined on file sysfs-class-rtrs-client
Contains 2 unsigned int values, the first one records number of successful reconnects in the path lifetime, the second one records number of failed reconnects in the path lifetime.
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/stats/reset_all |
Defined on file sysfs-class-rtrs-client
RW, Read will return usage help, write 0 will clear all the statistics.
/sys/class/rtrs-server |
Defined on file sysfs-class-rtrs-server
When a user of RTRS API creates a new session on a client side, a directory entry with the name of that session is created in here.
/sys/class/rtrs-server/<session-name>/paths/ |
Defined on file sysfs-class-rtrs-server
When new path is created by writing to “add_path” entry on client side, a directory entry named as <source address>@<destination address> is created on server.
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/disconnect |
Defined on file sysfs-class-rtrs-server
When “1” is written to the file, the RTRS session is being disconnected. Operations is non-blocking and returns control immediately to the caller.
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/dst_addr |
Defined on file sysfs-class-rtrs-server
RO, Contains the destination address of the path
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/hca_name |
Defined on file sysfs-class-rtrs-server
RO, Contains the name of HCA the connection established on.
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/hca_port |
Defined on file sysfs-class-rtrs-server
RO, Contains the port number of active port traffic is going through.
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/src_addr |
Defined on file sysfs-class-rtrs-server
RO, Contains the source address of the path
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/stats/rdma |
Defined on file sysfs-class-rtrs-server
Contains statistics regarding rdma operations and inflight operations. The output consists of 5 values: <read-count> <read-total-size> <write-count> <write-total-size> <inflights>
/sys/class/scsi_device/*/device/dyn_cap_needed |
Defined on file sysfs-driver-ufs
This file shows the amount of physical memory needed to be removed from the physical memory resources pool of the particular logical unit. The full information about the attribute could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/boot_lun_id |
Defined on file sysfs-driver-ufs
This file shows boot LUN information. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/context_capabilities |
Defined on file sysfs-driver-ufs
This file shows the context capabilities. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/data_reliability |
Defined on file sysfs-driver-ufs
This file defines the device behavior when a power failure occurs during a write operation. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/erase_block_size |
Defined on file sysfs-driver-ufs
This file shows the erase block size. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/large_unit_granularity |
Defined on file sysfs-driver-ufs
This file shows the granularity of the LUN. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/logical_block_count |
Defined on file sysfs-driver-ufs
This file shows total number of addressable logical blocks. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/logical_block_size |
Defined on file sysfs-driver-ufs
This file shows the size of addressable logical blocks (calculated as an exponent with base 2). This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/lun_memory_type |
Defined on file sysfs-driver-ufs
This file shows LUN memory type. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/lun_queue_depth |
Defined on file sysfs-driver-ufs
This file shows LUN queue depth. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/lun_write_protect |
Defined on file sysfs-driver-ufs
This file shows LUN write protection status. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/physical_memory_resourse_count |
Defined on file sysfs-driver-ufs
This file shows the total physical memory resources. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/provisioning_type |
Defined on file sysfs-driver-ufs
This file shows the thin provisioning type. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/psa_sensitive |
Defined on file sysfs-driver-ufs
This file shows PSA sensitivity. This is one of the UFS unit descriptor parameters. The full information about the descriptor could be found at UFS specifications 2.1.
The file is read only.
/sys/class/scsi_device/*/device/unit_descriptor/wb_buf_alloc_units |
Defined on file sysfs-driver-ufs
This entry shows the configured size of WriteBooster buffer. 0400h corresponds to 4GB.
The file is read only.
/sys/class/scsi_host/hostX/acciopath_status |
Defined on file sysfs-class-scsi_host
This file contains the current status of the “SSD Smart Path” feature of HP Smart Array RAID controllers using the hpsa driver. SSD Smart Path, when enabled permits the driver to send i/o requests directly to physical devices that are part of a logical drive, bypassing the controllers firmware RAID stack for a performance advantage when possible. A value of ‘1’ indicates the feature is enabled, and the controller may use the direct i/o path to physical devices. A value of zero means the feature is disabled and the controller may not use the direct i/o path to physical devices. This setting is controller wide, affecting all configured logical drives on the controller. This file is readable and writable.
/sys/class/scsi_host/hostX/ahci_host_version |
Defined on file sysfs-class-scsi_host
(RO) Display the version of the AHCI spec implemented by the host.
/sys/class/scsi_host/hostX/ahci_port_cmd |
/sys/class/scsi_host/hostX/ahci_host_caps |
/sys/class/scsi_host/hostX/ahci_host_cap2 |
Defined on file sysfs-class-scsi_host
[to be documented]
/sys/class/scsi_host/hostX/em_buffer |
Defined on file sysfs-class-scsi_host
(RW) Allows access to AHCI EM (enclosure management) buffer directly if the host supports EM.
For eg. the AHCI driver supports SGPIO EM messages but the SATA/AHCI specs do not define the SGPIO message format of the EM buffer. Different hardware(HW) vendors may have different definitions. With the em_buffer attribute, this issue can be solved by allowing HW vendors to provide userland drivers and tools for their SGPIO initiators.
/sys/class/scsi_host/hostX/em_message_supported |
Defined on file sysfs-class-scsi_host
(RO) Displays supported enclosure management message types.
/sys/class/scsi_host/hostX/em_message |
/sys/class/scsi_host/hostX/em_message_type |
Defined on file sysfs-class-scsi_host
em_message: (RW) Enclosure management support. For the LED protocol, writes and reads correspond to the LED message format as defined in the AHCI spec.
The user must turn sw_activity (under /sys/block/*/device/) OFF it they wish to control the activity LED via the em_message file.
em_message_type: (RO) Displays the current enclosure management protocol that is being used by the driver (for eg. LED, SAF-TE, SES-2, SGPIO etc).
/sys/class/scsi_host/hostX/isci_id |
Defined on file sysfs-class-scsi_host
This file contains the enumerated host ID for the Intel SCU controller. The Intel(R) C600 Series Chipset SATA/SAS Storage Control Unit embeds up to two 4-port controllers in a single PCI device. The controllers are enumerated in order which usually means the lowest number scsi_host corresponds with the first controller, but this association is not guaranteed. The ‘isci_id’ attribute unambiguously identifies the controller index: ‘0’ for the first controller, ‘1’ for the second.
/sys/class/scsi_host/hostX/link_power_management_policy |
Defined on file sysfs-class-scsi_host
(RW) This parameter allows the user to read and set the link (interface) power management.
There are four possible options:
min_power: Tell the controller to try to make the link use the least possible power when possible. This may sacrifice some performance due to increased latency when coming out of lower power states.
max_performance: Generally, this means no power management. Tell the controller to have performance be a priority over power management.
medium_power: Tell the controller to enter a lower power state when possible, but do not enter the lowest power state, thus improving latency over min_power setting.
med_power_with_dipm: Identical to the existing medium_power setting except that it enables dipm (device initiated power management) on top, which makes it match the Windows IRST (Intel Rapid Storage Technology) driver settings. This setting is also close to min_power, except that:
It does not use host-initiated slumber mode, but it does allow device-initiated slumber
It does not enable low power device sleep mode (DevSlp).
/sys/class/scsi_tape/*/stats/in_flight |
Defined on file sysfs-class-scsi_tape
Show the number of I/Os currently in-flight between the st module and the SCSI mid-layer.
/sys/class/scsi_tape/*/stats/io_ns |
Defined on file sysfs-class-scsi_tape
Shows the total amount of time spent waiting for all I/O to and from the tape drive to complete. This includes all reads, writes, and other SCSI commands issued to the tape drive. An example of other SCSI commands would be tape movement such as a rewind when a rewind tape device is closed. This item is measured in nanoseconds.
To determine the amount of time spent waiting for other I/O to complete subtract read_ns and write_ns from this value.
/sys/class/scsi_tape/*/stats/other_cnt |
Defined on file sysfs-class-scsi_tape
The number of I/O requests issued to the tape drive other than SCSI read/write requests.
/sys/class/scsi_tape/*/stats/read_byte_cnt |
Defined on file sysfs-class-scsi_tape
Shows the total number of bytes requested from the tape drive. This value is presented in bytes because tape drives support variable length block sizes.
/sys/class/scsi_tape/*/stats/read_cnt |
Defined on file sysfs-class-scsi_tape
Shows the total number of read requests issued to the tape drive.
/sys/class/scsi_tape/*/stats/read_ns |
Defined on file sysfs-class-scsi_tape
Shows the total amount of time in nanoseconds waiting for read I/O requests to complete.
/sys/class/scsi_tape/*/stats/resid_cnt |
Defined on file sysfs-class-scsi_tape
Shows the number of times we found that a residual >0 was found when the SCSI midlayer indicated that there was an error. For reads this may be a case of someone issuing reads greater than the block size.
/sys/class/scsi_tape/*/stats/write_byte_cnt |
Defined on file sysfs-class-scsi_tape
Shows the total number of bytes written to the tape drive. This value is presented in bytes because tape drives support variable length block sizes.
/sys/class/scsi_tape/*/stats/write_cnt |
Defined on file sysfs-class-scsi_tape
Shows the total number of write requests issued to the tape drive.
/sys/class/scsi_tape/*/stats/write_ms |
Defined on file sysfs-class-scsi_tape
Shows the total amount of time in nanoseconds waiting for write I/O requests to complete.
/sys/class/spi_master/spi<bus>/spi<bus>.<dev>/fram |
Defined on file sysfs-class-spi-eeprom
Contains the FRAM binary data. Same as EEPROM, just another file name to indicate that it employs ferroelectric process. It performs write operations at bus speed - no write delays.
/sys/class/spi_master/spi<bus>/spi<bus>.<dev>/sernum |
Defined on file sysfs-class-spi-eeprom
Contains the serial number of the Cypress FRAM (FM25VN) if it is present. It will be displayed as a 8 byte hex string, as read from the device.
This is a read-only attribute.
/sys/class/stm/<stm>/channels |
Defined on file sysfs-class-stm
Shows the number of channels per master on this STM device.
/sys/class/stm/<stm>/hw_override |
Defined on file sysfs-class-stm
Reads as 0 if master numbers in the STP stream produced by this stm device will match the master numbers assigned by the software or 1 if the stm hardware overrides software assigned masters.
/sys/class/stm/<stm>/masters |
Defined on file sysfs-class-stm
Shows first and last available to software master numbers on this STM device.
/sys/class/stm_source/<stm_source>/stm_source_link |
Defined on file sysfs-class-stm_source
stm_source device linkage to stm device, where its tracing data is directed. Reads return an existing connection or “<none>” if this stm_source is not connected to any stm device yet. Write an existing (registered) stm device’s name here to connect that device. If a device is already connected to this stm_source, it will first be disconnected.
/sys/class/switchtec |
Defined on file sysfs-class-switchtec
The switchtec class subsystem folder. Each registered switchtec driver is represented by a switchtecX subfolder (X being an integer >= 0).
/sys/class/switchtec/switchtec[0-9]+/component_id |
Defined on file sysfs-class-switchtec
Component identifier as stored in the hardware (eg. PM8543) (read only) Values: arbitrary string.
/sys/class/switchtec/switchtec[0-9]+/component_revision |
Defined on file sysfs-class-switchtec
Component revision stored in the hardware (read only) Values: integer.
/sys/class/switchtec/switchtec[0-9]+/component_vendor |
Defined on file sysfs-class-switchtec
Component vendor as stored in the hardware (eg. MICROSEM) (read only) Values: arbitrary string.
/sys/class/switchtec/switchtec[0-9]+/device_version |
Defined on file sysfs-class-switchtec
Device version as stored in the hardware (read only) Values: integer.
/sys/class/switchtec/switchtec[0-9]+/fw_version |
Defined on file sysfs-class-switchtec
Currently running firmware version (read only) Values: integer (in hexadecimal).
/sys/class/switchtec/switchtec[0-9]+/partition |
Defined on file sysfs-class-switchtec
Partition number for this device in the switch (read only) Values: integer.
/sys/class/switchtec/switchtec[0-9]+/partition_count |
Defined on file sysfs-class-switchtec
Total number of partitions in the switch (read only) Values: integer.
/sys/class/switchtec/switchtec[0-9]+/product_id |
Defined on file sysfs-class-switchtec
Product identifier as stored in the hardware (eg. PSX 48XG3) (read only) Values: arbitrary string.
/sys/class/switchtec/switchtec[0-9]+/product_revision |
Defined on file sysfs-class-switchtec
Product revision stored in the hardware (eg. RevB) (read only) Values: arbitrary string.
/sys/class/switchtec/switchtec[0-9]+/product_vendor |
Defined on file sysfs-class-switchtec
Product vendor as stored in the hardware (eg. MICROSEM) (read only) Values: arbitrary string.
/sys/class/tee/tee{,priv}X/rpmb_routing_model |
Defined on file sysfs-class-tee
RPMB frames can be routed to the RPMB device via the user-space daemon tee-supplicant or the RPMB subsystem in the kernel. The value “user” means that the driver will route the RPMB frames via user space. Conversely, “kernel” means that the frames are routed via the RPMB subsystem without assistance from tee-supplicant. It should be assumed that RPMB frames are routed via user space if the variable is absent. The primary purpose of this variable is to let systemd know whether tee-supplicant is needed in the early boot with initramfs.
/sys/class/thermal/cooling_deviceX/cur_state |
Defined on file sysfs-class-thermal
The current cooling state of this cooling device. The value can any integer numbers between 0 and max_state:
cur_state == 0 means no cooling
cur_state == max_state means the maximum cooling.
RW, Required
/sys/class/thermal/cooling_deviceX/max_state |
Defined on file sysfs-class-thermal
The maximum permissible cooling state of this cooling device.
RO, Required
/sys/class/thermal/cooling_deviceX/stats/reset |
Defined on file sysfs-class-thermal
Writing any value resets the cooling device’s statistics.
WO, Required
/sys/class/thermal/cooling_deviceX/stats/time_in_state_ms: |
Defined on file sysfs-class-thermal
The amount of time spent by the cooling device in various cooling states. The output will have “<state> <time>” pair in each line, which will mean this cooling device spent <time> msec of time at <state>.
Output will have one line for each of the supported states.
RO, Required
/sys/class/thermal/cooling_deviceX/stats/total_trans |
Defined on file sysfs-class-thermal
A single positive value showing the total number of times the state of a cooling device is changed.
RO, Required
/sys/class/thermal/cooling_deviceX/stats/trans_table |
Defined on file sysfs-class-thermal
This gives fine grained information about all the cooling state transitions. The cat output here is a two dimensional matrix, where an entry <i,j> (row i, column j) represents the number of transitions from State_i to State_j. If the transition table is bigger than PAGE_SIZE, reading this will return an -EFBIG error.
RO, Required
/sys/class/thermal/cooling_deviceX/type |
Defined on file sysfs-class-thermal
String which represents the type of device, e.g:
for generic ACPI: should be “Fan”, “Processor” or “LCD”
for memory controller device on intel_menlow platform: should be “Memory controller”.
RO, Required
/sys/class/thermal/thermal_zoneX/available_policies |
Defined on file sysfs-class-thermal
Available thermal governors which can be used for a particular zone.
RO, Required
/sys/class/thermal/thermal_zoneX/cdevY |
Defined on file sysfs-class-thermal
Sysfs link to the thermal cooling device node where the sys I/F for cooling device throttling control represents.
RO, Optional
/sys/class/thermal/thermal_zoneX/cdevY_trip_point |
Defined on file sysfs-class-thermal
The trip point in this thermal zone which cdev[0-*] is associated with; -1 means the cooling device is not associated with any trip point.
RO, Optional
/sys/class/thermal/thermal_zoneX/cdevY_weight |
Defined on file sysfs-class-thermal
The influence of cdev[0-*] in this thermal zone. This value is relative to the rest of cooling devices in the thermal zone. For example, if a cooling device has a weight double than that of other, it’s twice as effective in cooling the thermal zone.
RW, Optional
/sys/class/thermal/thermal_zoneX/emul_temp |
Defined on file sysfs-class-thermal
Interface to set the emulated temperature method in thermal zone (sensor). After setting this temperature, the thermal zone may pass this temperature to platform emulation function if registered or cache it locally. This is useful in debugging different temperature threshold and its associated cooling action. This is write only node and writing 0 on this node should disable emulation.
Unit: millidegree Celsius
WO, Optional
- WARNING:
Be careful while enabling this option on production systems, because userland can easily disable the thermal policy by simply flooding this sysfs node with low temperature values.
/sys/class/thermal/thermal_zoneX/integral_cutoff |
Defined on file sysfs-class-thermal
Temperature offset from the desired temperature trip point above which the integral term of the power allocator governor’s PID controller starts accumulating errors. For example, if integral_cutoff is 0, then the integral term only accumulates error when temperature is above the desired temperature trip point. For more information see Power allocator governor tunables
Unit: millidegree Celsius
RW, Optional
/sys/class/thermal/thermal_zoneX/k_d |
Defined on file sysfs-class-thermal
The derivative term of the power allocator governor’s PID controller. For more information see Power allocator governor tunables
RW, Optional
/sys/class/thermal/thermal_zoneX/k_i |
Defined on file sysfs-class-thermal
The integral term of the power allocator governor’s PID controller. This term allows the PID controller to compensate for long term drift. For more information see Power allocator governor tunables
RW, Optional
/sys/class/thermal/thermal_zoneX/k_po |
Defined on file sysfs-class-thermal
The proportional term of the power allocator governor’s PID controller during temperature overshoot. Temperature overshoot is when the current temperature is above the “desired temperature” trip point. For more information see Power allocator governor tunables
RW, Optional
/sys/class/thermal/thermal_zoneX/k_pu |
Defined on file sysfs-class-thermal
The proportional term of the power allocator governor’s PID controller during temperature undershoot. Temperature undershoot is when the current temperature is below the “desired temperature” trip point. For more information see Power allocator governor tunables
RW, Optional
/sys/class/thermal/thermal_zoneX/mode |
Defined on file sysfs-class-thermal
One of the predefined values in [enabled, disabled]. This file gives information about the algorithm that is currently managing the thermal zone. It can be either default kernel based algorithm or user space application.
- enabled
enable Kernel Thermal management.
- disabled
Preventing kernel thermal zone driver actions upon trip points so that user application can take full charge of the thermal management.
RW, Optional
/sys/class/thermal/thermal_zoneX/offset |
Defined on file sysfs-class-thermal
The offset constant used in a linear extrapolation model to determine a hotspot temperature based off the sensor’s raw readings. It is up to the device driver to determine the usage of these values.
RW, Optional
/sys/class/thermal/thermal_zoneX/policy |
Defined on file sysfs-class-thermal
One of the various thermal governors used for a particular zone.
RW, Required
/sys/class/thermal/thermal_zoneX/slope |
Defined on file sysfs-class-thermal
The slope constant used in a linear extrapolation model to determine a hotspot temperature based off the sensor’s raw readings. It is up to the device driver to determine the usage of these values.
RW, Optional
/sys/class/thermal/thermal_zoneX/sustainable_power |
Defined on file sysfs-class-thermal
An estimate of the sustained power that can be dissipated by the thermal zone. Used by the power allocator governor. For more information see Power allocator governor tunables
Unit: milliwatts
RW, Optional
/sys/class/thermal/thermal_zoneX/temp |
Defined on file sysfs-class-thermal
Current temperature as reported by thermal zone (sensor).
Unit: millidegree Celsius
RO, Required
/sys/class/thermal/thermal_zoneX/trip_point_Y_hyst |
Defined on file sysfs-class-thermal
The hysteresis value for a trip point, represented as an integer.
Unit: Celsius
RW, Optional
/sys/class/thermal/thermal_zoneX/trip_point_Y_temp |
Defined on file sysfs-class-thermal
The temperature above which trip point will be fired.
Unit: millidegree Celsius
RO, Optional
/sys/class/thermal/thermal_zoneX/trip_point_Y_type |
Defined on file sysfs-class-thermal
Strings which indicate the type of the trip point.
E.g. it can be one of critical, hot, passive, active[0-*] for ACPI thermal zone.
RO, Optional
/sys/class/thermal/thermal_zoneX/type |
Defined on file sysfs-class-thermal
Strings which represent the thermal zone type. This is given by thermal zone driver as part of registration. E.g: “acpitz” indicates it’s an ACPI thermal device. In order to keep it consistent with hwmon sys attribute; this should be a short, lowercase string, not containing spaces nor dashes.
RO, Required
/sys/class/timecard/ |
Defined on file sysfs-timecard
This directory contains files and directories providing a standardized interface to the ancillary features of the OpenCompute timecard.
/sys/class/timecard/ocpN/ |
Defined on file sysfs-timecard
This directory contains the attributes of the Nth timecard registered.
/sys/class/timecard/ocpN/available_clock_sources |
Defined on file sysfs-timecard
(RO) The list of available time sources that the PHC uses for clock adjustments.
NONE |
no adjustments |
PPS |
adjustments come from the PPS1 selector (default) |
TOD |
adjustments from the GNSS/TOD module |
IRIG |
adjustments from external IRIG-B signal |
DCF |
adjustments from external DCF signal |
/sys/class/timecard/ocpN/available_sma_inputs |
Defined on file sysfs-timecard
(RO) Set of available destinations (sinks) for a SMA input signal.
10Mhz |
signal is used as the 10Mhz reference clock |
PPS1 |
signal is sent to the PPS1 selector |
PPS2 |
signal is sent to the PPS2 selector |
TS1 |
signal is sent to timestamper 1 |
TS2 |
signal is sent to timestamper 2 |
TS3 |
signal is sent to timestamper 3 |
TS4 |
signal is sent to timestamper 4 |
IRIG |
signal is sent to the IRIG-B module |
DCF |
signal is sent to the DCF module |
FREQ1 |
signal is sent to frequency counter 1 |
FREQ2 |
signal is sent to frequency counter 2 |
FREQ3 |
signal is sent to frequency counter 3 |
FREQ4 |
signal is sent to frequency counter 4 |
None |
signal input is disabled |
/sys/class/timecard/ocpN/available_sma_outputs |
Defined on file sysfs-timecard
(RO) Set of available sources for a SMA output signal.
10Mhz |
output is from the 10Mhz reference clock |
PHC |
output PPS is from the PHC clock |
MAC |
output PPS is from the Miniature Atomic Clock |
GNSS1 |
output PPS is from the first GNSS module |
GNSS2 |
output PPS is from the second GNSS module |
IRIG |
output is from the PHC, in IRIG-B format |
DCF |
output is from the PHC, in DCF format |
GEN1 |
output is from frequency generator 1 |
GEN2 |
output is from frequency generator 2 |
GEN3 |
output is from frequency generator 3 |
GEN4 |
output is from frequency generator 4 |
GND |
output is GND |
VCC |
output is VCC |
/sys/class/timecard/ocpN/clock_source |
Defined on file sysfs-timecard
(RW) Contains the current synchronization source used by the PHC. May be changed by writing one of the listed values from the available_clock_sources attribute set.
/sys/class/timecard/ocpN/clock_status_drift |
Defined on file sysfs-timecard
(RO) Contains the current drift value used by the firmware for internal disciplining of the atomic clock.
/sys/class/timecard/ocpN/clock_status_offset |
Defined on file sysfs-timecard
(RO) Contains the current offset value used by the firmware for internal disciplining of the atomic clock.
/sys/class/timecard/ocpN/freqX |
Defined on file sysfs-timecard
(RO) Optional directory containing the sysfs nodes for frequency counter <X>.
/sys/class/timecard/ocpN/freqX/frequency |
Defined on file sysfs-timecard
(RO) Contains the measured frequency over the specified measurement period.
/sys/class/timecard/ocpN/freqX/seconds |
Defined on file sysfs-timecard
(RW) Specifies the number of seconds from 0-255 that the frequency should be measured over. Write 0 to disable.
/sys/class/timecard/ocpN/genX |
Defined on file sysfs-timecard
(RO) Optional directory containing the sysfs nodes for frequency generator <X>.
/sys/class/timecard/ocpN/genX/duty |
Defined on file sysfs-timecard
(RO) Specifies the signal duty cycle as a percentage from 1-99.
/sys/class/timecard/ocpN/genX/period |
Defined on file sysfs-timecard
(RO) Specifies the signal period in nanoseconds.
/sys/class/timecard/ocpN/genX/phase |
Defined on file sysfs-timecard
(RO) Specifies the signal phase offset in nanoseconds.
/sys/class/timecard/ocpN/genX/polarity |
Defined on file sysfs-timecard
(RO) Specifies the signal polarity, either 1 or 0.
/sys/class/timecard/ocpN/genX/running |
Defined on file sysfs-timecard
(RO) Either 0 or 1, showing if the signal generator is running.
/sys/class/timecard/ocpN/genX/signal |
Defined on file sysfs-timecard
(RW) Used to start the signal generator, and summarize the current status.
The signal generator may be started by writing the signal period, followed by the optional signal values. If the optional values are not provided, they default to the current settings, which may be obtained from the other sysfs nodes.
period [duty [phase [polarity]]]
echo 500000000 > signal # 1/2 second period echo 1000000 40 100 > signal echo 0 > signal # turn off generator
Period and phase are specified in nanoseconds. Duty cycle is a percentage from 1-99. Polarity is 1 or 0.
Reading this node will return:
period duty phase polarity start_time
/sys/class/timecard/ocpN/genX/start |
Defined on file sysfs-timecard
(RO) Shows the time in <sec>.<nsec> that the signal generator started running.
/sys/class/timecard/ocpN/gnss_sync |
Defined on file sysfs-timecard
(RO) Indicates whether a valid GNSS signal is received, or when the signal was lost.
/sys/class/timecard/ocpN/i2c |
Defined on file sysfs-timecard
This optional attribute links to the associated i2c device.
/sys/class/timecard/ocpN/irig_b_mode |
Defined on file sysfs-timecard
(RW) An integer from 0-7 indicating the timecode format of the IRIG-B output signal: B00<n>
/sys/class/timecard/ocpN/pps |
Defined on file sysfs-timecard
This optional attribute links to the associated PPS device.
/sys/class/timecard/ocpN/ptp |
Defined on file sysfs-timecard
This attribute links to the associated PTP device.
/sys/class/timecard/ocpN/serialnum |
Defined on file sysfs-timecard
(RO) Provides the serial number of the timecard.
/sys/class/timecard/ocpN/sma1 |
/sys/class/timecard/ocpN/sma2 |
/sys/class/timecard/ocpN/sma3 |
/sys/class/timecard/ocpN/sma4 |
Defined on file sysfs-timecard
(RW) These attributes specify the direction of the signal on the associated SMA connectors, and also the signal sink or source.
The display format of the attribute is a space separated list of signals, prefixed by the input/output direction.
The signal direction may be changed (if supported) by prefixing the signal list with either “in:” or “out:”. If neither prefix is present, then the direction is unchanged.
The output signal may be changed by writing one of the listed values from the available_sma_outputs attribute set.
The input destinations may be changed by writing multiple values from the available_sma_inputs attribute set, separated by spaces. If there are duplicated input destinations between connectors, the lowest numbered SMA connector is given priority.
Note that not all input combinations may make sense.
The 10Mhz reference clock input is currently only valid on SMA1 and may not be combined with other destination sinks.
/sys/class/timecard/ocpN/tod_correction |
Defined on file sysfs-timecard
(RW) The incoming GNSS signal is in UTC time, and the NMEA format messages do not provide a TAI offset. This sets the correction value for the incoming time.
If UBX_LS is enabled, this should be 0, and the offset is taken from the UBX-NAV-TIMELS message.
/sys/class/timecard/ocpN/ts_window_adjust |
Defined on file sysfs-timecard
(RW) When retrieving the PHC with the PTP SYS_OFFSET_EXTENDED ioctl, a system timestamp is made before and after the PHC time is retrieved. The midpoint between the two system timestamps is usually taken to be the SYS time associated with the PHC time. This estimate may be wrong, as it depends on PCI latencies, and when the PHC time was latched
The attribute value reduces the end timestamp by the given number of nanoseconds, so the computed midpoint matches the retrieved PHC time.
The initial value is set based on measured PCI latency and the estimated point where the FPGA latches the PHC time. This value may be changed by writing an unsigned integer.
/sys/class/timecard/ocpN/tty |
Defined on file sysfs-timecard
(RO) Directory containing the sysfs nodes for TTY attributes
/sys/class/timecard/ocpN/tty/ttyGNSS |
/sys/class/timecard/ocpN/tty/ttyGNSS2 |
Defined on file sysfs-timecard
(RO) These optional attributes contain names of the TTY serial ports associated with the GNSS devices.
/sys/class/timecard/ocpN/tty/ttyMAC |
Defined on file sysfs-timecard
(RO) This optional attribute contains name of the TTY serial port associated with the Miniature Atomic Clock.
/sys/class/timecard/ocpN/tty/ttyNMEA |
Defined on file sysfs-timecard
(RO) This optional attribute contains name of the TTY serial port which outputs the PHC time in NMEA ZDA format.
/sys/class/timecard/ocpN/utc_tai_offset |
Defined on file sysfs-timecard
(RW) The DCF and IRIG output signals are in UTC, while the TimeCard operates on TAI. This attribute allows setting the offset in seconds, which is added to the TAI timebase for these formats.
The offset may be changed by writing an unsigned integer.
/sys/class/tpm/tpmX/ppi/ |
Defined on file sysfs-driver-ppi
This folder includes the attributes related with PPI (Physical Presence Interface). Only if TPM is supported by BIOS, this folder makes sense. The folder path can be got by command ‘find /sys/ -name ‘pcrs’’. For the detail information of PPI, please refer to the PPI specification from
http://www.trustedcomputinggroup.org/
In Linux 4.2 ppi was moved to the character device directory. A symlink from tpmX/device/ppi to tpmX/ppi to provide backwards compatibility.
/sys/class/tpm/tpmX/ppi/request |
Defined on file sysfs-driver-ppi
This attribute shows the request for an operation to be executed in the pre-OS environment. It is the only input from the OS to the pre-OS environment. The request should be an integer value range from 1 to 160, and 0 means no request. This file can be read and written.
/sys/class/tpm/tpmX/ppi/response |
Defined on file sysfs-driver-ppi
This attribute shows the response to the most recent operation request it acted upon. The format is “<request> <response num> : <response description>”. This file is readonly.
/sys/class/tpm/tpmX/ppi/tcg_operations |
Defined on file sysfs-driver-ppi
This attribute shows whether it is allowed to request an operation to be executed in the pre-OS environment by the BIOS for the requests defined by TCG, i.e. requests from 1 to 22. The format is “<request> <status num>: <status description>”. This attribute is only supported by PPI version 1.2+. This file is readonly.
/sys/class/tpm/tpmX/ppi/transition_action |
Defined on file sysfs-driver-ppi
This attribute shows the platform-specific action that should take place in order to transition to the BIOS for execution of a requested operation. The format is “<action num>: <action description>”. This file is readonly.
/sys/class/tpm/tpmX/ppi/version |
Defined on file sysfs-driver-ppi
This attribute shows the version of the PPI supported by the platform. This file is readonly.
/sys/class/tpm/tpmX/ppi/vs_operations |
Defined on file sysfs-driver-ppi
This attribute shows whether it is allowed to request an operation to be executed in the pre-OS environment by the BIOS for the verdor specific requests, i.e. requests from 128 to 255. The format is same with tcg_operations. This attribute is also only supported by PPI version 1.2+. This file is readonly.
/sys/class/tty/console/active |
Defined on file sysfs-tty
Shows the list of currently configured console devices, like ‘tty1 ttyS0’. The last entry in the file is the active device connected to /dev/console. The file supports poll() to detect virtual console switches.
/sys/class/tty/tty<x>/active |
Defined on file sysfs-tty
Shows the currently active virtual console device, like ‘tty1’. The file supports poll() to detect virtual console switches.
/sys/class/tty/ttyS<x>/close_delay |
Defined on file sysfs-tty
Show the closing delay time for this port in centiseconds.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/closing_wait |
Defined on file sysfs-tty
Show the close wait time for this port in centiseconds.
Waiting forever is represented as 0. If waiting on close is disabled then the value is 65535.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/console |
Defined on file sysfs-tty
Allows user to detach or attach back the given device as kernel console. It shows and accepts a boolean variable.
/sys/class/tty/ttyS<x>/custom_divisor |
Defined on file sysfs-tty
Show the custom divisor if any that is set on this port.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/flags |
Defined on file sysfs-tty
Show the tty port status flags for this port.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/io_type |
Defined on file sysfs-tty
Show the I/O type that is to be used with the iomem base address.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/iomem_base |
Defined on file sysfs-tty
The I/O memory base for this port.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/iomem_reg_shift |
Defined on file sysfs-tty
Show the register shift indicating the spacing to be used for accesses on this iomem address.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/irq |
Defined on file sysfs-tty
Shows the current primary interrupt for this port.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/line |
Defined on file sysfs-tty
Shows the current tty line number for this port.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/port |
Defined on file sysfs-tty
Shows the current tty port I/O address for this port.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/rx_trig_bytes |
Defined on file sysfs-tty
Shows current RX interrupt trigger bytes or sets the user specified value to change it for the FIFO buffer. Users can show or set this value regardless of opening the serial device file or not.
The RX trigger can be set one of four kinds of values for UART serials. When users input a meaning less value to this I/F, the RX trigger is changed to the nearest lower value for the device specification. For example, when user sets 7bytes on 16550A, which has 1/4/8/14 bytes trigger, the RX trigger is automatically changed to 4 bytes.
/sys/class/tty/ttyS<x>/type |
Defined on file sysfs-tty
Shows the current tty type for this port.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/uartclk |
Defined on file sysfs-tty
Shows the current uartclk value associated with the UART port in serial_core, that is bound to TTY like ttyS0. uartclk = 16 * baud_base
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/tty/ttyS<x>/xmit_fifo_size |
Defined on file sysfs-tty
Show the transmit FIFO size for this port.
These sysfs values expose the TIOCGSERIAL interface via sysfs rather than via ioctls.
/sys/class/typec/<port>-<plug>/number_of_alternate_modes |
Defined on file sysfs-class-typec
Shows the number of alternate modes which are advertised by the plug associated with a particular cable during Power Delivery discovery. This file remains hidden until a value greater than or equal to 0 is set by Type C port driver.
USB Type-C partner/cable Power Delivery Identity objects
NOTE: The following attributes will be applicable to both partner (e.g /sys/class/typec/port0-partner/) and cable (e.g /sys/class/typec/port0-cable/) devices. Consequently, the example file paths below are prefixed with “/sys/class/typec/<port>-{partner|cable}/” to reflect this.
/sys/class/typec/<port>-cable/plug_type |
Defined on file sysfs-class-typec
Shows type of the plug on the cable:
type-a - Standard A
type-b - Standard B
type-c
captive
/sys/class/typec/<port>-cable/type |
Defined on file sysfs-class-typec
USB Power Delivery Specification defines a set of product types for the cables. This file will show the product type of the cable if it is known. If the product type of the cable is not visible to the device driver, this file will not exist.
When the cable product type is detected, uvevent is also raised with PRODUCT_TYPE showing the product type of the cable.
Valid values:
undefined |
|
active |
Active Cable |
passive |
Passive Cable |
/sys/class/typec/<port>-partner/accessory_mode |
Defined on file sysfs-class-typec
Shows the Accessory Mode name when the partner is an Accessory. The Accessory Modes are defined in USB Type-C Specification.
/sys/class/typec/<port>-partner/identity/ |
Defined on file sysfs-class-typec
This directory appears only if the port device driver is capable of showing the result of Discover Identity USB power delivery command. That will not always be possible even when USB power delivery is supported, for example when USB power delivery communication for the port is mostly handled in firmware. If the directory exists, it will have an attribute file for every VDO in Discover Identity command result.
/sys/class/typec/<port>-partner/number_of_alternate_modes |
Defined on file sysfs-class-typec
Shows the number of alternate modes which are advertised by the partner during Power Delivery discovery. This file remains hidden until a value greater than or equal to 0 is set by Type C port driver.
/sys/class/typec/<port>-partner/supports_usb_power_delivery |
Defined on file sysfs-class-typec
Shows if the partner supports USB Power Delivery communication: Valid values: yes, no
/sys/class/typec/<port>-partner/type |
Defined on file sysfs-class-typec
USB Power Delivery Specification defines a set of product types for the partner devices. This file will show the product type of the partner if it is known. Dual-role capable partners will have both UFP and DFP product types defined, but only one that matches the current role will be active at the time. If the product type of the partner is not visible to the device driver, this file will not exist.
When the partner product type is detected, or changed with role swap, uvevent is also raised that contains PRODUCT_TYPE=<product type> (for example PRODUCT_TYPE=hub).
Valid values:
UFP / device role ====================== ========================== undefined - hub PDUSB Hub peripheral PDUSB Peripheral psd Power Bank ama Alternate Mode Adapter ====================== ==========================
DFP / host role ====================== ========================== undefined - hub PDUSB Hub host PDUSB Host power_brick Power Brick amc Alternate Mode Controller ====================== ==========================
/sys/class/typec/<port>-partner/usb_mode |
Defined on file sysfs-class-typec
The USB Modes that the partner device supports. The active mode is displayed in brackets. The active USB mode can be changed by writing to this file when the port driver is able to send Data Reset Message to the partner. That requires USB Power Delivery contract between the partner and the port.
Valid values: - usb2 (USB 2.0) - usb3 (USB 3.2) - usb4 (USB4)
USB Type-C cable devices (eg. /sys/class/typec/port0-cable/)
Note: Electronically Marked Cables will have a device also for one cable plug (eg. /sys/class/typec/port0-plug0). If the cable is active and has also SOP Double Prime controller (USB Power Deliver specification ch. 2.4) it will have second device also for the other plug. Both plugs may have alternate modes as described in USB Type-C and USB Power Delivery specifications.
/sys/class/typec/<port>-{partner|cable}/identity/ |
Defined on file sysfs-class-typec
This directory appears only if the port device driver is capable of showing the result of Discover Identity USB power delivery command. That will not always be possible even when USB power delivery is supported, for example when USB power delivery communication for the port is mostly handled in firmware. If the directory exists, it will have an attribute file for every VDO in Discover Identity command result.
/sys/class/typec/<port>-{partner|cable}/identity/cert_stat |
Defined on file sysfs-class-typec
Cert Stat VDO part of Discover Identity command result. The value will show 0 until Discover Identity command result becomes available. The value can be polled.
/sys/class/typec/<port>-{partner|cable}/identity/id_header |
Defined on file sysfs-class-typec
ID Header VDO part of Discover Identity command result. The value will show 0 until Discover Identity command result becomes available. The value can be polled.
/sys/class/typec/<port>-{partner|cable}/identity/product |
Defined on file sysfs-class-typec
Product VDO part of Discover Identity command result. The value will show 0 until Discover Identity command result becomes available. The value can be polled.
/sys/class/typec/<port>-{partner|cable}/identity/product_type_vdo1 |
Defined on file sysfs-class-typec
1st Product Type VDO of Discover Identity command result. The value will show 0 until Discover Identity command result becomes available and a valid Product Type VDO is returned.
/sys/class/typec/<port>-{partner|cable}/identity/product_type_vdo2 |
Defined on file sysfs-class-typec
2nd Product Type VDO of Discover Identity command result. The value will show 0 until Discover Identity command result becomes available and a valid Product Type VDO is returned.
/sys/class/typec/<port>-{partner|cable}/identity/product_type_vdo3 |
Defined on file sysfs-class-typec
3rd Product Type VDO of Discover Identity command result. The value will show 0 until Discover Identity command result becomes available and a valid Product Type VDO is returned.
USB Type-C port alternate mode devices.
/sys/class/typec/<port>-{partner|cable}/usb_power_delivery_revision |
Defined on file sysfs-class-typec
Revision number of the supported USB Power Delivery specification of the port partner or cable, or 0.0 when USB Power Delivery is not supported.
Example values: - “2.0”: USB Power Delivery Release 2.0 - “3.0”: USB Power Delivery Release 3.0 - “3.1”: USB Power Delivery Release 3.1
/sys/class/typec/<port>/<alt mode>/supported_roles |
Defined on file sysfs-class-typec
Space separated list of the supported roles.
Valid values: source, sink
/sys/class/typec/<port>/data_role |
Defined on file sysfs-class-typec
The supported USB data roles. This attribute can be used for requesting data role swapping on the port. Swapping is supported as synchronous operation, so write(2) to the attribute will not return until the operation has finished. The attribute is notified about role changes so that poll(2) on the attribute wakes up. Change on the role will also generate uevent KOBJ_CHANGE on the port. The current role is show in brackets, for example “[host] device” when DRP port is in host mode.
Valid values: host, device
/sys/class/typec/<port>/orientation |
Defined on file sysfs-class-typec
Indicates the active orientation of the Type-C connector. Valid values: - “normal”: CC1 orientation - “reverse”: CC2 orientation - “unknown”: Orientation cannot be determined.
/sys/class/typec/<port>/port_type |
Defined on file sysfs-class-typec
Indicates the type of the port. This attribute can be used for requesting a change in the port type. Port type change is supported as a synchronous operation, so write(2) to the attribute will not return until the operation has finished.
Valid values:
source |
(The port will behave as source only DFP port) |
sink |
(The port will behave as sink only UFP port) |
dual |
(The port will behave as dual-role-data and dual-role-power port) |
/sys/class/typec/<port>/power_operation_mode |
Defined on file sysfs-class-typec
Shows the current power operational mode the port is in. The power operation mode means current level for VBUS. In case USB Power Delivery communication is used for negotiating the levels, power operation mode should show “usb_power_delivery”.
Valid values:
default
1.5A
3.0A
usb_power_delivery
/sys/class/typec/<port>/power_role |
Defined on file sysfs-class-typec
The supported power roles. This attribute can be used to request power role swap on the port. Swapping is supported as synchronous operation, so write(2) to the attribute will not return until the operation has finished. The attribute is notified about role changes so that poll(2) on the attribute wakes up. Change on the role will also generate uevent KOBJ_CHANGE. The current role is show in brackets, for example “[source] sink” when in source mode.
Valid values: source, sink
/sys/class/typec/<port>/preferred_role |
Defined on file sysfs-class-typec
The user space can notify the driver about the preferred role. It should be handled as enabling of Try.SRC or Try.SNK, as defined in USB Type-C specification, in the port drivers. By default the preferred role should come from the platform.
Valid values: source, sink, none (to remove preference)
/sys/class/typec/<port>/select_usb_power_delivery |
Defined on file sysfs-class-typec
Lists the USB Power Delivery Capabilities that the port can advertise to the partner. The currently used capabilities are in brackets. Selection happens by writing to the file.
/sys/class/typec/<port>/supported_accessory_modes |
Defined on file sysfs-class-typec
Space separated list of accessory modes, defined in the USB Type-C specification, the port supports.
/sys/class/typec/<port>/usb_capability |
Defined on file sysfs-class-typec
Lists the supported USB Modes. The default USB mode that is used next time with the Enter_USB Message is in brackets. The default mode can be changed by writing to the file when supported by the driver.
Valid values: - usb2 (USB 2.0) - usb3 (USB 3.2) - usb4 (USB4)
USB Type-C partner devices (eg. /sys/class/typec/port0-partner/)
/sys/class/typec/<port>/usb_power_delivery_revision |
Defined on file sysfs-class-typec
Revision number of the supported USB Power Delivery specification, or 0.0 when USB Power Delivery is not supported.
Example values: - “2.0”: USB Power Delivery Release 2.0 - “3.0”: USB Power Delivery Release 3.0 - “3.1”: USB Power Delivery Release 3.1
/sys/class/typec/<port>/usb_typec_revision |
Defined on file sysfs-class-typec
Revision number of the supported USB Type-C specification.
/sys/class/typec/<port>/vconn_source |
Defined on file sysfs-class-typec
Shows is the port VCONN Source. This attribute can be used to request VCONN swap to change the VCONN Source during connection when both the port and the partner support USB Power Delivery. Swapping is supported as synchronous operation, so write(2) to the attribute will not return until the operation has finished. The attribute is notified about VCONN source changes so that poll(2) on the attribute wakes up. Change on VCONN source also generates uevent KOBJ_CHANGE.
Valid values:
“no” when the port is not the VCONN Source
“yes” when the port is the VCONN Source
/sys/class/uacce/<dev_name>/algorithms |
Defined on file sysfs-driver-uacce
Algorithms supported by this accelerator, separated by new line. Can be any string and up to userspace to parse.
/sys/class/uacce/<dev_name>/api |
Defined on file sysfs-driver-uacce
Api of the device Can be any string and up to userspace to parse. Application use the api to match the correct driver
/sys/class/uacce/<dev_name>/available_instances |
Defined on file sysfs-driver-uacce
Available instances left of the device Return -ENODEV if uacce_ops get_available_instances is not provided
/sys/class/uacce/<dev_name>/flags |
Defined on file sysfs-driver-uacce
Attributes of the device, see UACCE_DEV_xxx flag defined in uacce.h
/sys/class/uacce/<dev_name>/isolate |
Defined on file sysfs-driver-uacce
(R) A sysfs node that read the device isolated state. The value 1 means the device is unavailable. The 0 means the device is available.
/sys/class/uacce/<dev_name>/isolate_strategy |
Defined on file sysfs-driver-uacce
(RW) A sysfs node that configure the error threshold for the hardware isolation strategy. This size is a configured integer value, which is the number of threshold for hardware errors occurred in one hour. The default is 0. 0 means never isolate the device. The maximum value is 65535. You can write a number of threshold based on your hardware.
/sys/class/uacce/<dev_name>/region_dus_size |
Defined on file sysfs-driver-uacce
Size (bytes) of dus region queue file
/sys/class/uacce/<dev_name>/region_mmio_size |
Defined on file sysfs-driver-uacce
Size (bytes) of mmio region queue file
/sys/class/udc/udc.name/device/gadget/video4linux/video.name/function_name |
Defined on file configfs-usb-gadget-uvc
UVC configfs function instance name
/sys/class/usb_power_delivery |
Defined on file sysfs-class-usb_power_delivery
Directory for USB Power Delivery devices.
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/dual_role_data |
Defined on file sysfs-class-usb_power_delivery
This file shows the value of the Dual-Role Data bit in vSafe5V Fixed Supply Object. Dual role data means ability act as both USB host and USB device.
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/dual_role_power |
Defined on file sysfs-class-usb_power_delivery
This file contains boolean value that tells does the device support both source and sink power roles.
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/unchunked_extended_messages_supported |
Defined on file sysfs-class-usb_power_delivery
This file shows the value of the Unchunked Extended Messages Supported bit in vSafe5V Fixed Supply Object.
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/unconstrained_power |
Defined on file sysfs-class-usb_power_delivery
This file shows the value of the Unconstrained Power bit in vSafe5V Fixed Supply Object. The bit is set when an external source of power, powerful enough to power the entire system on its own, is available for the device.
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/usb_communication_capable |
Defined on file sysfs-class-usb_power_delivery
This file shows the value of the USB Communication Capable bit in vSafe5V Fixed Supply Object.
/sys/class/usb_power_delivery/.../<capability>/<position>:battery |
Defined on file sysfs-class-usb_power_delivery
Battery PDO.
/sys/class/usb_power_delivery/.../<capability>/<position>:battery/maximum_voltage |
Defined on file sysfs-class-usb_power_delivery
Maximum Voltage in millivolts.
/sys/class/usb_power_delivery/.../<capability>/<position>:battery/minimum_voltage |
Defined on file sysfs-class-usb_power_delivery
Minimum Voltage in millivolts.
/sys/class/usb_power_delivery/.../<capability>/<position>:fixed_supply |
Defined on file sysfs-class-usb_power_delivery
Devices containing the attributes (the bit fields) defined for Fixed Supplies.
The device “1:fixed_supply” is special. USB Power Delivery Specification dictates that the first PDO (at object position 1), and the only mandatory PDO, is always the vSafe5V Fixed Supply Object. vSafe5V Object has additional fields defined for it that the other Fixed Supply Objects do not have and that are related to the USB capabilities rather than power capabilities.
/sys/class/usb_power_delivery/.../<capability>/<position>:fixed_supply/voltage |
Defined on file sysfs-class-usb_power_delivery
The voltage the supply supports in millivolts.
/sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply |
Defined on file sysfs-class-usb_power_delivery
Programmable Power Supply (PPS) Augmented PDO (APDO).
/sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/maximum_current |
Defined on file sysfs-class-usb_power_delivery
Maximum Current in milliamperes.
/sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/maximum_voltage |
Defined on file sysfs-class-usb_power_delivery
Maximum Voltage in millivolts.
/sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/minimum_voltage |
Defined on file sysfs-class-usb_power_delivery
Minimum Voltage in millivolts.
/sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply |
Defined on file sysfs-class-usb_power_delivery
Variable Power Supply PDO.
/sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply/maximum_voltage |
Defined on file sysfs-class-usb_power_delivery
Maximum Voltage in millivolts.
/sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply/minimum_voltage |
Defined on file sysfs-class-usb_power_delivery
Minimum Voltage in millivolts.
/sys/class/usb_power_delivery/.../revision |
Defined on file sysfs-class-usb_power_delivery
File showing the USB Power Delivery Specification Revision used in communication.
/sys/class/usb_power_delivery/.../sink-capabilities |
Defined on file sysfs-class-usb_power_delivery
The sink capability message “Sink_Capabilities” contains a set of Power Data Objects (PDO) just like with source capabilities, but instead of describing the power capabilities, these objects describe the power requirements.
The order of the objects in the sink capability message is the same as with the source capabilities message.
Fixed Supplies
/sys/class/usb_power_delivery/.../sink-capabilities/1:fixed_supply/higher_capability |
Defined on file sysfs-class-usb_power_delivery
This file shows the value of the Higher capability bit in vsafe5V Fixed Supply Object. If the bit is set, then the sink needs more than vsafe5V(eg. 12 V) to provide full functionality. Valid values: 0, 1
/sys/class/usb_power_delivery/.../sink-capabilities/<position>:battery/operational_power |
Defined on file sysfs-class-usb_power_delivery
The operational power that the sink requires at the given voltage range.
Standard Power Range (SPR) Programmable Power Supplies
/sys/class/usb_power_delivery/.../sink-capabilities/<position>:fixed_supply/fast_role_swap_current |
Defined on file sysfs-class-usb_power_delivery
This file contains the value of the “Fast Role Swap USB Type-C Current” field that tells the current level the sink requires after a Fast Role Swap. 0 - Fast Swap not supported” 1 - Default USB Power” 2 - 1.5A@5V” 3 - 3.0A@5V”
Variable Supplies
/sys/class/usb_power_delivery/.../sink-capabilities/<position>:fixed_supply/operational_current |
Defined on file sysfs-class-usb_power_delivery
Operational current of the sink in milliamperes.
/sys/class/usb_power_delivery/.../sink-capabilities/<position>:variable_supply/operational_current |
Defined on file sysfs-class-usb_power_delivery
The operational current in milliamperes that the sink requires at the given Voltage range.
Battery Supplies
/sys/class/usb_power_delivery/.../source-capabilities |
Defined on file sysfs-class-usb_power_delivery
The source capabilities message “Source_Capabilities” contains a set of Power Data Objects (PDO), each representing a type of power supply. The order of the PDO objects is defined in the USB Power Delivery Specification. Each PDO - power supply - will have its own device, and the PDO device name will start with the object position number as the first character followed by the power supply type name (“:” as delimiter).
/sys/class/usb_power_delivery/.../source_capabilities/<position>:<type>
/sys/class/usb_power_delivery/.../source-capabilities/1:fixed_supply/usb_suspend_supported |
Defined on file sysfs-class-usb_power_delivery
This file shows the value of the USB Suspend Supported bit in vSafe5V Fixed Supply Object. If the bit is set then the device will follow the USB 2.0 and USB 3.2 rules for suspend and resume.
/sys/class/usb_power_delivery/.../source-capabilities/<position>:battery/maximum_power |
Defined on file sysfs-class-usb_power_delivery
Maximum allowable Power in milliwatts.
/sys/class/usb_power_delivery/.../source-capabilities/<position>:fixed_supply/maximum_current |
Defined on file sysfs-class-usb_power_delivery
Maximum current of the fixed source supply in milliamperes.
/sys/class/usb_power_delivery/.../source-capabilities/<position>:fixed_supply/peak_current |
Defined on file sysfs-class-usb_power_delivery
This file shows the value of the Fixed Power Source Peak Current Capability field.
/sys/class/usb_power_delivery/.../source-capabilities/<position>:programmable_supply/pps_power_limited |
Defined on file sysfs-class-usb_power_delivery
The PPS Power Limited bit indicates whether or not the source supply will exceed the rated output power if requested.
/sys/class/usb_power_delivery/.../source-capabilities/<position>:variable_supply/maximum_current |
Defined on file sysfs-class-usb_power_delivery
The maximum current in milliamperes that the source can supply at the given Voltage range.
/sys/class/usb_power_delivery/.../version |
Defined on file sysfs-class-usb_power_delivery
This is an optional attribute file showing the version of the specific revision of the USB Power Delivery Specification. In most cases the specification version is not known and the file is not available.
/sys/class/usb_role/ |
Defined on file sysfs-class-usb_role
Place in sysfs for USB Role Switches. USB Role Switch is a device that can select the data role (host or device) for USB port.
/sys/class/usb_role/<switch>/connector |
Defined on file sysfs-class-usb_role
Optional symlink to the USB Type-C connector.
/sys/class/usb_role/<switch>/role |
Defined on file sysfs-class-usb_role
The current role of the switch. This attribute can be used for requesting role swapping with non-USB Type-C ports. With USB Type-C ports, the ABI defined for USB Type-C connector class must be used.
Valid values: - none - host - device
/sys/class/vduse/ |
Defined on file sysfs-class-vduse
The vduse/ class sub-directory belongs to the VDUSE framework and provides a sysfs interface for configuring VDUSE devices.
/sys/class/vduse/<device-name>/ |
Defined on file sysfs-class-vduse
This directory entry is created when a VDUSE device is created via the control device.
/sys/class/vduse/<device-name>/msg_timeout |
Defined on file sysfs-class-vduse
(RW) The timeout (in seconds) for waiting for the control message’s response from userspace. Default value is 30s. Writing a ‘0’ to the file means to disable the timeout.
/sys/class/vduse/control/ |
Defined on file sysfs-class-vduse
This directory entry is created for the control device of VDUSE framework.
/sys/class/wakeup/ |
Defined on file sysfs-class-wakeup
The /sys/class/wakeup/ directory contains pointers to all wakeup sources in the kernel at that moment in time.
/sys/class/wakeup/.../active_count |
Defined on file sysfs-class-wakeup
This file contains the number of times the wakeup source was activated.
/sys/class/wakeup/.../active_time_ms |
Defined on file sysfs-class-wakeup
This file contains the amount of time the wakeup source has been continuously active, in milliseconds. If the wakeup source is not active, this file contains ‘0’.
/sys/class/wakeup/.../event_count |
Defined on file sysfs-class-wakeup
This file contains the number of signaled wakeup events associated with the wakeup source.
/sys/class/wakeup/.../expire_count |
Defined on file sysfs-class-wakeup
This file contains the number of times the wakeup source’s timeout has expired.
/sys/class/wakeup/.../last_change_ms |
Defined on file sysfs-class-wakeup
This file contains the monotonic clock time when the wakeup source was touched last time, in milliseconds.
/sys/class/wakeup/.../max_time_ms |
Defined on file sysfs-class-wakeup
This file contains the maximum amount of time this wakeup source has been continuously active, in milliseconds.
/sys/class/wakeup/.../name |
Defined on file sysfs-class-wakeup
This file contains the name of the wakeup source.
/sys/class/wakeup/.../prevent_suspend_time_ms |
Defined on file sysfs-class-wakeup
The file contains the total amount of time this wakeup source has been preventing autosleep, in milliseconds.
/sys/class/wakeup/.../total_time_ms |
Defined on file sysfs-class-wakeup
This file contains the total amount of time this wakeup source has been active, in milliseconds.
/sys/class/wakeup/.../wakeup_count |
Defined on file sysfs-class-wakeup
This file contains the number of times the wakeup source might abort suspend.
/sys/class/watchdog/watchdog1/access_cs0 |
Defined on file sysfs-class-watchdog
It is a read/write file. This attribute exists only if the system has booted from the alternate flash chip due to expiration of a watchdog timer of AST2400/AST2500 when alternate boot function was enabled with ‘aspeed,alt-boot’ devicetree option for that watchdog or with an appropriate h/w strapping (for WDT2 only).
At alternate flash the ‘access_cs0’ sysfs node provides:
- ast2400:
a way to get access to the primary SPI flash chip at CS0 after booting from the alternate chip at CS1.
- ast2500:
a way to restore the normal address mapping from (CS0->CS1, CS1->CS0) to (CS0->CS0, CS1->CS1).
Clearing the boot code selection and timeout counter also resets to the initial state the chip select line mapping. When the SoC is in normal mapping state (i.e. booted from CS0), clearing those bits does nothing for both versions of the SoC. For alternate boot mode (booted from CS1 due to wdt2 expiration) the behavior differs as described above.
This option can be used with wdt2 (watchdog1) only.
When read, the current status of the boot code selection is shown. When written with any non-zero value, it clears the boot code selection and the timeout counter, which results in chipselect reset for AST2400/AST2500.
/sys/class/watchdog/watchdogn/bootstatus |
Defined on file sysfs-class-watchdog
It is a read only file. It contains status of the watchdog device at boot. It is equivalent to WDIOC_GETBOOTSTATUS of ioctl interface.
/sys/class/watchdog/watchdogn/fw_version |
Defined on file sysfs-class-watchdog
It is a read only file. It contains firmware version of watchdog device.
/sys/class/watchdog/watchdogn/identity |
Defined on file sysfs-class-watchdog
It is a read only file. It contains identity string of watchdog device.
/sys/class/watchdog/watchdogn/nowayout |
Defined on file sysfs-class-watchdog
It is a read/write file. While reading, it gives ‘1’ if the device has the nowayout feature set, otherwise it gives ‘0’. Writing a ‘1’ to the file enables the nowayout feature. Once set, the nowayout feature cannot be disabled, so writing a ‘0’ either has no effect (if the feature was already disabled) or results in a permission error.
/sys/class/watchdog/watchdogn/options |
Defined on file sysfs-class-watchdog
It is a read only file. It contains options of watchdog device.
/sys/class/watchdog/watchdogn/pretimeout |
Defined on file sysfs-class-watchdog
It is a read only file. It specifies the time in seconds before timeout when the pretimeout interrupt is delivered. Pretimeout is an optional feature.
/sys/class/watchdog/watchdogn/pretimeout_available_governors |
Defined on file sysfs-class-watchdog
It is a read only file. It shows the pretimeout governors available for this watchdog.
/sys/class/watchdog/watchdogn/pretimeout_governor |
Defined on file sysfs-class-watchdog
It is a read/write file. When read, the currently assigned pretimeout governor is returned. When written, it sets the pretimeout governor.
/sys/class/watchdog/watchdogn/state |
Defined on file sysfs-class-watchdog
It is a read only file. It gives active/inactive status of watchdog device.
/sys/class/watchdog/watchdogn/status |
Defined on file sysfs-class-watchdog
It is a read only file. It contains watchdog device’s internal status bits. It is equivalent to WDIOC_GETSTATUS of ioctl interface.
/sys/class/watchdog/watchdogn/timeleft |
Defined on file sysfs-class-watchdog
It is a read only file. It contains value of time left for reset generation. It is equivalent to WDIOC_GETTIMELEFT of ioctl interface.
/sys/class/watchdog/watchdogn/timeout |
Defined on file sysfs-class-watchdog
It is a read only file. It is read to know about current value of timeout programmed.
/sys/class/zram-control/ |
Defined on file sysfs-class-zram
The zram-control/ class sub-directory belongs to zram device class
/sys/class/zram-control/hot_add |
Defined on file sysfs-class-zram
RO attribute. Read operation will cause zram to add a new device and return its device id back to user (so one can use /dev/zram<id>), or error code.
/sys/class/zram-control/hot_remove |
Defined on file sysfs-class-zram
WO attribute. Remove a specific /dev/zramX device, where X is a device_id provided by user.
Symbols under /sys/dev¶
/sys/dev |
Defined on file sysfs-dev
The /sys/dev tree provides a method to look up the sysfs path for a device using the information returned from stat(2). There are two directories, ‘block’ and ‘char’, beneath /sys/dev containing symbolic links with names of the form “<major>:<minor>”. These links point to the corresponding sysfs path for the given device.
Example:
$ readlink /sys/dev/block/8:32
../../block/sdc
Entries in /sys/dev/char and /sys/dev/block will be dynamically created and destroyed as devices enter and leave the system.
Users: mdadm <linux-raid@vger.kernel.org>
Symbols under /sys/devices¶
/sys/devices |
Defined on file sysfs-devices
The /sys/devices tree contains a snapshot of the internal state of the kernel device tree. Devices will be added and removed dynamically as the machine runs, and between different kernel versions, the layout of the devices within this tree will change.
Please do not rely on the format of this tree because of this. If a program wishes to find different things in the tree, please use the /sys/class structure and rely on the symlinks there to point to the proper location within the /sys/devices tree of the individual devices. Or rely on the uevent messages to notify programs of devices being added and removed from this tree to find the location of those devices.
Note that sometimes not all devices along the directory chain will have emitted uevent messages, so userspace programs must be able to handle such occurrences.
Users:
/sys/devices/*/<our-device>/fuse |
Defined on file sysfs-driver-tegra-fuse
read-only access to the efuses on Tegra20, Tegra30, Tegra114 and Tegra124 SoC’s from NVIDIA. The efuses contain write once data programmed at the factory. The data is laid out in 32bit words in LSB first format. Each bit represents a single value as decoded from the fuse registers. Bits order/assignment exactly matches the HW registers, including any unused bits.
Users: any user space application which wants to read the efuses on Tegra SoC’s
/sys/devices/*/<our-device>/nvmem |
Defined on file sysfs-driver-jz4780-efuse
read-only access to the efuse on the Ingenic JZ4780 SoC The SoC has a one time programmable 8K efuse that is split into segments. The driver supports read only. The segments are:
0x000 |
64 bit |
Random Number |
0x008 |
128 bit |
Ingenic Chip ID |
0x018 |
128 bit |
Customer ID |
0x028 |
3520 bit |
Reserved |
0x1E0 |
8 bit |
Protect Segment |
0x1E1 |
2296 bit |
HDMI Key |
0x300 |
2048 bit |
Security boot key |
Users: any user space application which wants to read the Chip and Customer ID
/sys/devices/*/xenbus/event_channels |
Defined on file sysfs-devices-xenbus
Number of Xen event channels associated with a kernel based paravirtualized device frontend or backend.
/sys/devices/*/xenbus/events |
Defined on file sysfs-devices-xenbus
Total number of Xen events received for a Xen pv device frontend or backend.
/sys/devices/*/xenbus/jiffies_eoi_delayed |
Defined on file sysfs-devices-xenbus
Summed up time in jiffies the EOI of an interrupt for a Xen pv device has been delayed in order to avoid stalls due to event storms. This value rising is a first sign for a rogue other end of the pv device.
/sys/devices/*/xenbus/spurious_events |
Defined on file sysfs-devices-xenbus
Number of events received for a Xen pv device which did not require any action. Too many spurious events in a row will trigger delayed EOI processing.
/sys/devices/*/xenbus/spurious_threshold |
Defined on file sysfs-devices-xenbus
Controls the tolerated number of subsequent spurious events before delayed EOI processing is triggered for a Xen pv device. Default is 1. This can be modified in case the other end of the pv device is issuing spurious events on a regular basis and is known not to be malicious on purpose. Raising the value for such cases can improve pv device performance.
/sys/devices/.../consumer:<consumer> |
Defined on file sysfs-devices-consumer
The /sys/devices/.../consumer:<consumer> are symlinks to device links where this device is the supplier. <consumer> denotes the name of the consumer in that device link and is of the form bus:device name. There can be zero or more of these symlinks for a given device.
/sys/devices/.../coredump |
Defined on file sysfs-devices-coredump
The /sys/devices/.../coredump attribute is only present when the device is bound to a driver, which provides the .coredump() callback. The attribute is write only. Anything written to this file will trigger the .coredump() callback.
Available when CONFIG_DEV_COREDUMP is enabled.
/sys/devices/.../firmware_node/ |
Defined on file sysfs-devices-firmware_node
The /sys/devices/.../firmware_node directory contains attributes allowing the user space to check and modify some firmware related properties of given device.
/sys/devices/.../firmware_node/description |
Defined on file sysfs-devices-firmware_node
The /sys/devices/.../firmware/description attribute contains a string that describes the device as provided by the _STR method in the ACPI namespace. This attribute is read-only. If the device does not have an _STR method associated with it in the ACPI namespace, this attribute is not present.
/sys/devices/.../intel_spi_bios_locked |
Defined on file sysfs-driver-spi-intel
This attribute allows the user space to check if the Intel SPI flash controller BIOS region is locked for writes.
/sys/devices/.../intel_spi_locked |
Defined on file sysfs-driver-spi-intel
This attribute allows the user space to check if the Intel SPI flash controller locks supported opcodes.
/sys/devices/.../intel_spi_protected |
Defined on file sysfs-driver-spi-intel
This attribute allows the userspace to check if the Intel SPI flash controller is write protected from the host.
/sys/devices/.../iommu |
Defined on file sysfs-class-iommu
IOMMU drivers are able to link the IOMMU for a given device here to allow association of device to IOMMU.
/sys/devices/.../lpss_ltr/ |
Defined on file sysfs-devices-lpss_ltr
The /sys/devices/.../lpss_ltr/ directory is only present for devices included into the Intel Lynxpoint Low Power Subsystem (LPSS). If present, it contains attributes containing the LTR mode and the values of LTR registers of the device.
/sys/devices/.../lpss_ltr/auto_ltr |
Defined on file sysfs-devices-lpss_ltr
The /sys/devices/.../lpss_ltr/auto_ltr attribute contains the current value of the device’s AUTO_LTR register (raw) represented as an 8-digit hexadecimal number.
This attribute is read-only. If the device’s runtime PM status is not “active”, attempts to read from this attribute cause -EAGAIN to be returned.
/sys/devices/.../lpss_ltr/ltr_mode |
Defined on file sysfs-devices-lpss_ltr
The /sys/devices/.../lpss_ltr/ltr_mode attribute contains an integer number (0 or 1) indicating whether or not the devices’ LTR functionality is working in the software mode (1).
This attribute is read-only. If the device’s runtime PM status is not “active”, attempts to read from this attribute cause -EAGAIN to be returned.
/sys/devices/.../lpss_ltr/sw_ltr |
Defined on file sysfs-devices-lpss_ltr
The /sys/devices/.../lpss_ltr/auto_ltr attribute contains the current value of the device’s SW_LTR register (raw) represented as an 8-digit hexadecimal number.
This attribute is read-only. If the device’s runtime PM status is not “active”, attempts to read from this attribute cause -EAGAIN to be returned.
/sys/devices/.../mmc_host/mmcX/mmcX:XXXX/enhanced_area_offset |
Defined on file sysfs-devices-mmc
Enhanced area is a new feature defined in eMMC4.4 standard. eMMC4.4 or later card can support such feature. This kind of area can help to improve the card performance. If the feature is enabled, this attribute will indicate the start address of enhanced data area. If not, this attribute will be -EINVAL. Unit Byte. Format decimal.
/sys/devices/.../mmc_host/mmcX/mmcX:XXXX/enhanced_area_size |
Defined on file sysfs-devices-mmc
Enhanced area is a new feature defined in eMMC4.4 standard. eMMC4.4 or later card can support such feature. This kind of area can help to improve the card performance. If the feature is enabled, this attribute will indicate the size of enhanced data area. If not, this attribute will be -EINVAL. Unit KByte. Format decimal.
/sys/devices/.../online |
Defined on file sysfs-devices-online
The /sys/devices/.../online attribute is only present for devices whose bus types provide .online() and .offline() callbacks. The number read from it (0 or 1) reflects the value of the device’s ‘offline’ field. If that number is 1 and ‘0’ (or ‘n’, or ‘N’) is written to this file, the device bus type’s .offline() callback is executed for the device and (if successful) its ‘offline’ field is updated accordingly. In turn, if that number is 0 and ‘1’ (or ‘y’, or ‘Y’) is written to this file, the device bus type’s .online() callback is executed for the device and (if successful) its ‘offline’ field is updated as appropriate.
After a successful execution of the bus type’s .offline()
callback the device cannot be used for any purpose until either
it is removed (i.e. device_del()
is called for it), or its bus
type’s .online() is executed successfully.
/sys/devices/.../physical_location |
Defined on file sysfs-devices-physical_location
This directory contains information on physical location of the device connection point with respect to the system’s housing.
/sys/devices/.../physical_location/dock |
Defined on file sysfs-devices-physical_location
“Yes” if the device connection point resides in a docking station or a port replicator. “No” otherwise.
/sys/devices/.../physical_location/horizontal_position |
Defined on file sysfs-devices-physical_location
Describes horizontal position of the device connection point on the panel surface.
/sys/devices/.../physical_location/lid |
Defined on file sysfs-devices-physical_location
“Yes” if the device connection point resides on the lid of laptop system. “No” otherwise.
/sys/devices/.../physical_location/panel |
Defined on file sysfs-devices-physical_location
Describes which panel surface of the system’s housing the device connection point resides on.
/sys/devices/.../physical_location/vertical_position |
Defined on file sysfs-devices-physical_location
Describes vertical position of the device connection point on the panel surface.
/sys/devices/.../power/ |
Defined on file sysfs-devices-power
The /sys/devices/.../power directory contains attributes allowing the user space to check and modify some power management related properties of given device.
/sys/devices/.../power/async |
Defined on file sysfs-devices-power
The /sys/devices/.../async attribute allows the user space to enable or diasble the device’s suspend and resume callbacks to be executed asynchronously (ie. in separate threads, in parallel with the main suspend/resume thread) during system-wide power transitions (eg. suspend to RAM, hibernation).
All devices have one of the following two values for the power/async file:
“enabledn” to permit the asynchronous suspend/resume;
“disabledn” to forbid it;
The value of this attribute may be changed by writing either “enabled”, or “disabled” to it.
It generally is unsafe to permit the asynchronous suspend/resume of a device unless it is certain that all of the PM dependencies of the device are known to the PM core. However, for some devices this attribute is set to “enabled” by bus type code or device drivers and in that cases it should be safe to leave the default value.
/sys/devices/.../power/autosuspend_delay_ms |
Defined on file sysfs-devices-power
The /sys/devices/.../power/autosuspend_delay_ms attribute contains the autosuspend delay value (in milliseconds). Some drivers do not want their device to suspend as soon as it becomes idle at run time; they want the device to remain inactive for a certain minimum period of time first. That period is called the autosuspend delay. Negative values will prevent the device from being suspended at run time (similar to writing “on” to the power/control attribute). Values >= 1000 will cause the autosuspend timer expiration to be rounded up to the nearest second.
Not all drivers support this attribute. If it isn’t supported, attempts to read or write it will yield I/O errors.
/sys/devices/.../power/control |
Defined on file sysfs-devices-power
The /sys/devices/.../power/control attribute allows the user space to control the run-time power management of the device.
All devices have one of the following two values for the power/control file:
“auton” to allow the device to be power managed at run time;
“onn” to prevent the device from being power managed;
The default for all devices is “auto”, which means that they may be subject to automatic power management, depending on their drivers. Changing this attribute to “on” prevents the driver from power managing the device at run time. Doing that while the device is suspended causes it to be woken up.
/sys/devices/.../power/pm_qos_latency_tolerance_us |
Defined on file sysfs-devices-power
The /sys/devices/.../power/pm_qos_latency_tolerance_us attribute contains the PM QoS active state latency tolerance limit for the given device in microseconds. That is the maximum memory access latency the device can suffer without any visible adverse effects on user space functionality. If that value is the string “any”, the latency does not matter to user space at all, but hardware should not be allowed to set the latency tolerance for the device automatically.
Reading “auto” from this file means that the maximum memory access latency for the device may be determined automatically by the hardware as needed. Writing “auto” to it allows the hardware to be switched to this mode if there are no other latency tolerance requirements from the kernel side.
This attribute is only present if the feature controlled by it is supported by the hardware.
This attribute has no effect on runtime suspend and resume of devices and on system-wide suspend/resume and hibernation.
/sys/devices/.../power/pm_qos_no_power_off |
Defined on file sysfs-devices-power
The /sys/devices/.../power/pm_qos_no_power_off attribute is used for manipulating the PM QoS “no power off” flag. If set, this flag indicates to the kernel that power should not be removed entirely from the device.
Not all drivers support this attribute. If it isn’t supported, it is not present.
This attribute has no effect on system-wide suspend/resume and hibernation.
/sys/devices/.../power/pm_qos_resume_latency_us |
Defined on file sysfs-devices-power
The /sys/devices/.../power/pm_qos_resume_latency_us attribute contains the PM QoS resume latency limit for the given device, which is the maximum allowed time it can take to resume the device, after it has been suspended at run time, from a resume request to the moment the device will be ready to process I/O, in microseconds. If it is equal to 0, however, this means that the PM QoS resume latency may be arbitrary and the special value “n/a” means that user space cannot accept any resume latency at all for the given device.
Not all drivers support this attribute. If it isn’t supported, it is not present.
This attribute has no effect on system-wide suspend/resume and hibernation.
/sys/devices/.../power/runtime_active_kids |
Defined on file sysfs-devices-power
Reports the runtime PM children usage count of a device, or 0 if the children will be ignored.
/sys/devices/.../power/runtime_active_time |
Defined on file sysfs-devices-power
Reports the total time that the device has been active. Used for runtime PM statistics.
/sys/devices/.../power/runtime_enabled |
Defined on file sysfs-devices-power
Is runtime PM enabled for this device? States are “enabled”, “disabled”, “forbidden” or a combination of the latter two.
/sys/devices/.../power/runtime_status |
Defined on file sysfs-devices-power
The /sys/devices/.../power/runtime_status attribute contains the current runtime PM status of the device, which may be “suspended”, “suspending”, “resuming”, “active”, “error” (fatal error), or “unsupported” (runtime PM is disabled).
/sys/devices/.../power/runtime_suspended_time |
Defined on file sysfs-devices-power
Reports total time that the device has been suspended. Used for runtime PM statistics.
/sys/devices/.../power/runtime_usage |
Defined on file sysfs-devices-power
Reports the runtime PM usage count of a device.
/sys/devices/.../power/wakeup |
Defined on file sysfs-devices-power
The /sys/devices/.../power/wakeup attribute allows the user space to check if the device is enabled to wake up the system from sleep states, such as the memory sleep state (suspend to RAM) and hibernation (suspend to disk), and to enable or disable it to do that as desired.
Some devices support “wakeup” events, which are hardware signals used to activate the system from a sleep state. Such devices have one of the following two values for the sysfs power/wakeup file:
“enabledn” to issue the events;
“disabledn” not to do so;
In that cases the user space can change the setting represented by the contents of this file by writing either “enabled”, or “disabled” to it.
For the devices that are not capable of generating system wakeup events this file is not present. In that case the device cannot be enabled to wake up the system from sleep states.
/sys/devices/.../power/wakeup_abort_count |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_abort_count attribute contains the number of times the processing of a wakeup event associated with the device might have aborted system transition into a sleep state in progress. This attribute is read-only. If the device is not capable to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power/wakeup_active |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_active attribute contains either 1, or 0, depending on whether or not a wakeup event associated with the device is being processed (1). This attribute is read-only. If the device is not capable to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power/wakeup_active_count |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_active_count attribute contains the number of times the processing of wakeup events associated with the device was completed (at the kernel level). This attribute is read-only. If the device is not capable to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power/wakeup_count |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_count attribute contains the number of signaled wakeup events associated with the device. This attribute is read-only. If the device is not capable to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power/wakeup_expire_count |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_expire_count attribute contains the number of times a wakeup event associated with the device has been reported with a timeout that expired. This attribute is read-only. If the device is not capable to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power/wakeup_last_time_ms |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_last_time_ms attribute contains the value of the monotonic clock corresponding to the time of signaling the last wakeup event associated with the device, in milliseconds. This attribute is read-only. If the device is not enabled to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power/wakeup_max_time_ms |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_max_time_ms attribute contains the maximum time of processing a single wakeup event associated with the device, in milliseconds. This attribute is read-only. If the device is not capable to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power/wakeup_prevent_sleep_time_ms |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_prevent_sleep_time_ms attribute contains the total time the device has been preventing opportunistic transitions to sleep states from occurring. This attribute is read-only. If the device is not capable to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power/wakeup_total_time_ms |
Defined on file sysfs-devices-power
The /sys/devices/.../wakeup_total_time_ms attribute contains the total time of processing wakeup events associated with the device, in milliseconds. This attribute is read-only. If the device is not capable to wake up the system from sleep states, this attribute is not present. If the device is not enabled to wake up the system from sleep states, this attribute is empty.
/sys/devices/.../power_resources_D0/ |
Defined on file sysfs-devices-power_resources_D0
The /sys/devices/.../power_resources_D0/ directory is only present for device objects representing ACPI device nodes that use ACPI power resources for power management.
If present, it contains symbolic links to device directories representing ACPI power resources that need to be turned on for the given device node to be in ACPI power state D0. The names of the links are the same as the names of the directories they point to.
/sys/devices/.../power_resources_D1/ |
Defined on file sysfs-devices-power_resources_D1
The /sys/devices/.../power_resources_D1/ directory is only present for device objects representing ACPI device nodes that use ACPI power resources for power management and support ACPI power state D1.
If present, it contains symbolic links to device directories representing ACPI power resources that need to be turned on for the given device node to be in ACPI power state D1. The names of the links are the same as the names of the directories they point to.
/sys/devices/.../power_resources_D2/ |
Defined on file sysfs-devices-power_resources_D2
The /sys/devices/.../power_resources_D2/ directory is only present for device objects representing ACPI device nodes that use ACPI power resources for power management and support ACPI power state D2.
If present, it contains symbolic links to device directories representing ACPI power resources that need to be turned on for the given device node to be in ACPI power state D2. The names of the links are the same as the names of the directories they point to.
/sys/devices/.../power_resources_D3hot/ |
Defined on file sysfs-devices-power_resources_D3hot
The /sys/devices/.../power_resources_D3hot/ directory is only present for device objects representing ACPI device nodes that use ACPI power resources for power management and support ACPI power state D3hot.
If present, it contains symbolic links to device directories representing ACPI power resources that need to be turned on for the given device node to be in ACPI power state D3hot. The names of the links are the same as the names of the directories they point to.
/sys/devices/.../power_resources_wakeup/ |
Defined on file sysfs-devices-power_resources_wakeup
The /sys/devices/.../power_resources_wakeup/ directory is only present for device objects representing ACPI device nodes that require ACPI power resources for wakeup signaling.
If present, it contains symbolic links to device directories representing ACPI power resources that need to be turned on for the given device node to be able to signal wakeup. The names of the links are the same as the names of the directories they point to.
/sys/devices/.../power_state |
Defined on file sysfs-devices-power_state
The /sys/devices/.../power_state attribute is only present for device objects representing ACPI device nodes that provide power management methods.
If present, it contains a string representing the current ACPI power state of the given device node. Its possible values, “D0”, “D1”, “D2”, “D3hot”, and “D3cold”, reflect the power state names defined by the ACPI specification (ACPI 4 and above).
If the device node uses shared ACPI power resources, this state determines a list of power resources required not to be turned off. However, some power resources needed by the device node in higher-power (lower-number) states may also be ON because of some other devices using them at the moment.
This attribute is read-only.
/sys/devices/.../real_power_state |
Defined on file sysfs-devices-real_power_state
The /sys/devices/.../real_power_state attribute is only present for device objects representing ACPI device nodes that provide power management methods and use ACPI power resources for power management.
If present, it contains a string representing the real ACPI power state of the given device node as returned by the _PSC control method or inferred from the configuration of power resources. Its possible values, “D0”, “D1”, “D2”, “D3hot”, and “D3cold”, reflect the power state names defined by the ACPI specification (ACPI 4 and above).
In some situations the value of this attribute may be different from the value of the /sys/devices/.../power_state attribute for the same device object. If that happens, some shared power resources used by the device node are only ON because of some other devices using them at the moment.
This attribute is read-only.
/sys/devices/.../removable |
Defined on file sysfs-devices-removable
Information about whether a given device can be removed from the platform by the user. This is determined by its subsystem in a bus / platform-specific way. This attribute is only present for devices that can support determining such information:
“removable” |
device can be removed from the platform by the user |
“fixed” |
device is fixed to the platform / cannot be removed by the user. |
“unknown” |
The information is unavailable / cannot be deduced. |
Currently this is only supported by USB (which infers the information from a combination of hub descriptor bits and platform-specific data such as ACPI) and PCI (which gets this from ACPI / device tree).
/sys/devices/.../resource_in_use |
Defined on file sysfs-devices-resource_in_use
The /sys/devices/.../resource_in_use attribute is only present for device objects representing ACPI power resources.
If present, it contains a number (0 or 1) representing the current status of the given power resource (0 means that the resource is not in use and therefore it has been turned off).
This attribute is read-only.
/sys/devices/.../software_node/ |
Defined on file sysfs-devices-software_node
This directory contains the details about the device that are assigned in kernel (i.e. software), as opposed to the firmware_node directory which contains the details that are assigned for the device in firmware. The main attributes in the directory will show the properties the device has, and the relationship it has to some of the other devices.
/sys/devices/.../state_synced |
Defined on file sysfs-devices-state_synced
The /sys/devices/.../state_synced attribute is only present for devices whose bus types or driver provides the .sync_state() callback. The number read from it (0 or 1) reflects the value of the device’s ‘state_synced’ field. A value of 0 means the .sync_state() callback hasn’t been called yet. A value of 1 means the .sync_state() callback has been called.
Generally, if a device has sync_state() support and has some of the resources it provides enabled at the time the kernel starts (Eg: enabled by hardware reset or bootloader or anything that run before the kernel starts), then it’ll keep those resources enabled and in a state that’s compatible with the state they were in at the start of the kernel. The device will stop doing this only when the sync_state() callback has been called -- which happens only when all its consumer devices are registered and have probed successfully. Resources that were left disabled at the time the kernel starts are not affected or limited in any way by sync_state() callbacks.
Writing “1” to this file will force a call to the device’s sync_state() function if it hasn’t been called already. The sync_state() call happens independent of the state of the consumer devices.
/sys/devices/.../sun |
Defined on file sysfs-devices-sun
The file contains a Slot-unique ID which provided by the _SUN method in the ACPI namespace. The value is written in Advanced Configuration and Power Interface Specification as follows:
“The _SUN value is required to be unique among the slots of the same type. It is also recommended that this number match the slot number printed on the physical slot whenever possible.”
So reading the sysfs file, we can identify a physical position of the slot in the system.
/sys/devices/.../supplier:<supplier> |
Defined on file sysfs-devices-supplier
The /sys/devices/.../supplier:<supplier> are symlinks to device links where this device is the consumer. <supplier> denotes the name of the supplier in that device link and is of the form bus:device name. There can be zero or more of these symlinks for a given device.
/sys/devices/.../waiting_for_supplier |
Defined on file sysfs-devices-waiting_for_supplier
The /sys/devices/.../waiting_for_supplier attribute is only present when fw_devlink kernel command line option is enabled and is set to something stricter than “permissive”. It is removed once a device probes successfully (because the information is no longer relevant). The number read from it (0 or 1) reflects whether the device is waiting for one or more suppliers to be added and then linked to using device links before the device can probe.
A value of 0 means the device is not waiting for any suppliers to be added before it can probe. A value of 1 means the device is waiting for one or more suppliers to be added before it can probe.
/sys/devices/../../gisb_arb_timeout |
Defined on file sysfs-platform-brcmstb-gisb-arb
Returns the currently configured raw timeout value of the Broadcom Set Top Box internal GISB bus arbiter. Minimum value is 1, and maximum value is 0xffffffff.
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS620A:00/protection_level |
Defined on file sysfs-driver-toshiba_haps
This file controls the built-in accelerometer protection level, valid values are:
0 -> Disabled
1 -> Low
2 -> Medium
3 -> High
The default potection value is set to 2 (Medium).
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS620A:00/reset_protection |
Defined on file sysfs-driver-toshiba_haps
This file turns off the built-in accelerometer for a few seconds and then restore normal operation. Accepting 1 as the only parameter.
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/available_kbd_modes |
Defined on file sysfs-driver-toshiba_acpi
This file shows the supported keyboard backlight modes the system supports, which can be:
0x1 -> FN-Z
0x2 -> AUTO (also called TIMER)
0x8 -> ON
0x10 -> OFF
Note that not all keyboard types support the listed modes. See the entry named “available_kbd_modes”
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/cooling_method |
Defined on file sysfs-driver-toshiba_acpi
This file controls the Cooling Method feature. Reading this file prints two values, the first is the actual cooling method and the second is the maximum cooling method supported. When the maximum cooling method is ONE, valid values are:
0 -> Maximum Performance
1 -> Battery Optimized
When the maximum cooling method is TWO, valid values are:
0 -> Maximum Performance
1 -> Performance
2 -> Battery Optimized
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/fan |
Defined on file sysfs-driver-toshiba_acpi
This file controls the state of the internal fan, valid values are:
0 -> OFF
1 -> ON
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/kbd_backlight_mode |
Defined on file sysfs-driver-toshiba_acpi
This file controls the keyboard backlight operation mode, valid values are:
0x1 -> FN-Z
0x2 -> AUTO (also called TIMER)
0x8 -> ON
0x10 -> OFF
Note that from kernel 3.16 onwards this file accepts all listed parameters, kernel 3.15 only accepts the first two (FN-Z and AUTO). Also note that toggling this value on type 1 devices, requires a reboot for changes to take effect.
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/kbd_backlight_timeout |
Defined on file sysfs-driver-toshiba_acpi
This file controls the timeout of the keyboard backlight whenever the operation mode is set to AUTO (or TIMER), valid values range from 0-60. Note that the kernel 3.15 only had support for the first keyboard type, the kernel 3.16 added support for the second type and the range accepted for type 2 is 1-60. See the entry named “kbd_type”
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/kbd_function_keys |
Defined on file sysfs-driver-toshiba_acpi
This file controls the Special Functions (hotkeys) operation mode, valid values are:
0 -> Normal Operation
1 -> Special Functions
In the “Normal Operation” mode, the F{1-12} keys are as usual and the hotkeys are accessed via FN-F{1-12}. In the “Special Functions” mode, the F{1-12} keys trigger the hotkey and the F{1-12} keys are accessed via FN-F{1-12}. Note that toggling this value requires a reboot for changes to take effect.
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/kbd_type |
Defined on file sysfs-driver-toshiba_acpi
This file shows the current keyboard backlight type, which can be:
1 -> Type 1, supporting modes FN-Z and AUTO
2 -> Type 2, supporting modes TIMER, ON and OFF
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/panel_power_on |
Defined on file sysfs-driver-toshiba_acpi
This file controls whether the laptop should turn ON whenever the LID is opened, valid values are:
0 -> Disabled
1 -> Enabled
Note that toggling this value requires a reboot for changes to take effect.
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/position |
Defined on file sysfs-driver-toshiba_acpi
This file shows the absolute position of the built-in accelereometer.
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/sleep_functions_on_battery |
Defined on file sysfs-driver-toshiba_acpi
This file controls the USB Sleep Functions under battery, and set the level at which point they will be disabled, accepted values can be:
0 -> Disabled
1-100 -> Battery level to disable sleep functions
Currently it prints two values, the first one indicates if the feature is enabled or disabled, while the second one shows the current battery level set. Note that when the value is set to disabled, the sleep function will only work when connected to power.
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/touchpad |
Defined on file sysfs-driver-toshiba_acpi
This files controls the status of the touchpad and pointing stick (if available), valid values are:
0 -> OFF
1 -> ON
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/usb_rapid_charge |
Defined on file sysfs-driver-toshiba_acpi
This file controls the USB Rapid Charge state, which can be:
0 -> Disabled
1 -> Enabled
Note that toggling this value requires a reboot for changes to take effect.
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/usb_sleep_charge |
Defined on file sysfs-driver-toshiba_acpi
This file controls the USB Sleep & Charge charging mode, which can be:
0 -> Disabled (0x00)
1 -> Alternate (0x09)
2 -> Auto (0x21)
3 -> Typical (0x11)
Note that from kernel 4.1 onwards this file accepts all listed values, kernel 4.0 only supports the first three. Note that this feature only works when connected to power, if you want to use it under battery, see the entry named “sleep_functions_on_battery”
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/usb_sleep_music |
Defined on file sysfs-driver-toshiba_acpi
This file controls the Sleep & Music state, which values can be:
0 -> Disabled
1 -> Enabled
Note that this feature only works when connected to power, if you want to use it under battery, see the entry named “sleep_functions_on_battery”
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/usb_three |
Defined on file sysfs-driver-toshiba_acpi
This file controls the USB 3 functionality, valid values are:
0 -> Disabled (Acts as a regular USB 2)
1 -> Enabled (Full USB 3 functionality)
Note that toggling this value requires a reboot for changes to take effect.
Users: KToshiba
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/version |
Defined on file sysfs-driver-toshiba_acpi
This file shows the current version of the driver
Users: KToshiba
/sys/devices/cpu/events/ |
Defined on file sysfs-bus-event_source-devices-events
Generic performance monitoring events
A collection of performance monitoring events that may be supported by many/most CPUs. These events can be monitored using the ‘perf(1)’ tool.
The contents of each file would look like:
event=0xNNNN
where ‘N’ is a hex digit and the number ‘0xNNNN’ shows the “raw code” for the perf event identified by the file’s “basename”.
/sys/devices/hisi_ptt<sicl_id>_<core_id>/requester_filters |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
This directory contains the files providing the PCIe Requester filters information used for PTT trace. Each file is named after the supported Endpoint device name <domain>:<bus>:<device>.<function>.
See the description of the “filter” in HiSilicon PCIe Tune and Trace device for more information.
/sys/devices/hisi_ptt<sicl_id>_<core_id>/requester_filters/<bdf> |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(Read) Indicates the filter value of this Requester filter, which can be used to control the TLP headers to trace by the PTT trace.
/sys/devices/hisi_ptt<sicl_id>_<core_id>/requester_filters/multiselect |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(Read) Indicates if this kind of filter can be selected at the same time as others filters, or must be used on it’s own. 1 indicates the former case and 0 indicates the latter.
/sys/devices/hisi_ptt<sicl_id>_<core_id>/root_port_filters |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
This directory contains the files providing the PCIe Root Port filters information used for PTT trace. Each file is named after the supported Root Port device name <domain>:<bus>:<device>.<function>.
See the description of the “filter” in HiSilicon PCIe Tune and Trace device for more information.
/sys/devices/hisi_ptt<sicl_id>_<core_id>/root_port_filters/<bdf> |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(Read) Indicates the filter value of this Root Port filter, which can be used to control the TLP headers to trace by the PTT trace.
/sys/devices/hisi_ptt<sicl_id>_<core_id>/root_port_filters/multiselect |
Defined on file sysfs-bus-event_source-devices-hisi_ptt
(Read) Indicates if this kind of filter can be selected at the same time as others filters, or must be used on it’s own. 1 indicates the former case and 0 indicates the latter.
/sys/devices/hv_24x7/cpumask |
Defined on file sysfs-bus-event_source-devices-hv_24x7
read only This sysfs file exposes the cpumask which is designated to make HCALLs to retrieve hv-24x7 pmu event counter data.
/sys/devices/hv_24x7/interface/chipspersocket |
Defined on file sysfs-bus-event_source-devices-hv_24x7
read only This sysfs interface exposes the number of chips per socket present in the system.
/sys/devices/hv_24x7/interface/coresperchip |
Defined on file sysfs-bus-event_source-devices-hv_24x7
read only This sysfs interface exposes the number of cores per chip present in the system.
/sys/devices/hv_24x7/interface/sockets |
Defined on file sysfs-bus-event_source-devices-hv_24x7
read only This sysfs interface exposes the number of sockets present in the system.
/sys/devices/hv_gpci/cpumask |
Defined on file sysfs-bus-event_source-devices-hv_gpci
read only This sysfs file exposes the cpumask which is designated to make HCALLs to retrieve hv-gpci pmu event counter data.
/sys/devices/hv_gpci/interface/affinity_domain_via_domain |
Defined on file sysfs-bus-event_source-devices-hv_gpci
admin read only This sysfs file exposes the system topology information by making HCALL H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value AFFINITY_DOMAIN_INFORMATION_BY_DOMAIN(0xB0).
This sysfs file will be created only for power10 and above platforms.
User needs root privileges to read data from this sysfs file.
This sysfs file will be created, only when the HCALL returns “H_SUCCESS”, “H_AUTHORITY” or “H_PARAMETER” as the return type.
HCALL with return error type “H_AUTHORITY” can be resolved during runtime by setting “Enable Performance Information Collection” option.
The end user reading this sysfs file must decode the content as per underlying platform/firmware.
Possible error codes while reading this sysfs file:
- “-EPERM”Partition is not permitted to retrieve performance information,
required to set “Enable Performance Information Collection” option.
- “-EIO”Can’t retrieve system information because of invalid buffer length/invalid address
or because of some hardware error. Refer to getPerfCountInfo documentation for more information.
“-EFBIG” : System information exceeds PAGE_SIZE.
/sys/devices/hv_gpci/interface/affinity_domain_via_partition |
Defined on file sysfs-bus-event_source-devices-hv_gpci
admin read only This sysfs file exposes the system topology information by making HCALL H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value AFFINITY_DOMAIN_INFORMATION_BY_PARTITION(0xB1).
This sysfs file will be created only for power10 and above platforms.
User needs root privileges to read data from this sysfs file.
This sysfs file will be created, only when the HCALL returns “H_SUCCESS”, “H_AUTHORITY” or “H_PARAMETER” as the return type.
HCALL with return error type “H_AUTHORITY” can be resolved during runtime by setting “Enable Performance Information Collection” option.
The end user reading this sysfs file must decode the content as per underlying platform/firmware.
Possible error codes while reading this sysfs file:
- “-EPERM”Partition is not permitted to retrieve performance information,
required to set “Enable Performance Information Collection” option.
- “-EIO”Can’t retrieve system information because of invalid buffer length/invalid address
or because of some hardware error. Refer to getPerfCountInfo documentation for more information.
“-EFBIG” : System information exceeds PAGE_SIZE.
/sys/devices/hv_gpci/interface/affinity_domain_via_virtual_processor |
Defined on file sysfs-bus-event_source-devices-hv_gpci
admin read only This sysfs file exposes the system topology information by making HCALL H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value AFFINITY_DOMAIN_INFORMATION_BY_VIRTUAL_PROCESSOR(0xA0).
This sysfs file will be created only for power10 and above platforms.
User needs root privileges to read data from this sysfs file.
This sysfs file will be created, only when the HCALL returns “H_SUCCESS”, “H_AUTHORITY” or “H_PARAMETER” as the return type.
HCALL with return error type “H_AUTHORITY” can be resolved during runtime by setting “Enable Performance Information Collection” option.
The end user reading this sysfs file must decode the content as per underlying platform/firmware.
Possible error codes while reading this sysfs file:
- “-EPERM”Partition is not permitted to retrieve performance information,
required to set “Enable Performance Information Collection” option.
- “-EIO”Can’t retrieve system information because of invalid buffer length/invalid address
or because of some hardware error. Refer to getPerfCountInfo documentation for more information.
“-EFBIG” : System information exceeds PAGE_SIZE.
/sys/devices/hv_gpci/interface/processor_bus_topology |
Defined on file sysfs-bus-event_source-devices-hv_gpci
admin read only This sysfs file exposes the system topology information by making HCALL H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value PROCESSOR_BUS_TOPOLOGY(0xD0).
This sysfs file will be created only for power10 and above platforms.
User needs root privileges to read data from this sysfs file.
This sysfs file will be created, only when the HCALL returns “H_SUCCESS”, “H_AUTHORITY” or “H_PARAMETER” as the return type.
HCALL with return error type “H_AUTHORITY” can be resolved during runtime by setting “Enable Performance Information Collection” option.
The end user reading this sysfs file must decode the content as per underlying platform/firmware.
Possible error codes while reading this sysfs file:
- “-EPERM”Partition is not permitted to retrieve performance information,
required to set “Enable Performance Information Collection” option.
- “-EIO”Can’t retrieve system information because of invalid buffer length/invalid address
or because of some hardware error. Refer to getPerfCountInfo documentation for more information.
“-EFBIG” : System information exceeds PAGE_SIZE.
/sys/devices/hv_gpci/interface/processor_config |
Defined on file sysfs-bus-event_source-devices-hv_gpci
admin read only This sysfs file exposes the system topology information by making HCALL H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value PROCESSOR_CONFIG(0x90).
This sysfs file will be created only for power10 and above platforms.
User needs root privileges to read data from this sysfs file.
This sysfs file will be created, only when the HCALL returns “H_SUCCESS”, “H_AUTHORITY” or “H_PARAMETER” as the return type.
HCALL with return error type “H_AUTHORITY” can be resolved during runtime by setting “Enable Performance Information Collection” option.
The end user reading this sysfs file must decode the content as per underlying platform/firmware.
Possible error codes while reading this sysfs file:
- “-EPERM”Partition is not permitted to retrieve performance information,
required to set “Enable Performance Information Collection” option.
- “-EIO”Can’t retrieve system information because of invalid buffer length/invalid address
or because of some hardware error. Refer to getPerfCountInfo documentation for more information.
“-EFBIG” : System information exceeds PAGE_SIZE.
/sys/devices/pci0000:00/*/QEMU0001:00/capability for MMIO |
Defined on file sysfs-bus-pci-devices-pvpanic
Read-only attribute. Capabilities of pvpanic device which are supported by QEMU.
Format: %x.
Detailed bit definition refers to section <Bit Definition> from pvpanic device specification: https://git.qemu.org/?p=qemu.git;a=blob_plain;f=docs/specs/pvpanic.txt
/sys/devices/pci0000:00/*/QEMU0001:00/events |
Defined on file sysfs-bus-pci-devices-pvpanic
RW attribute. Set/get which features in-use. This attribute is used to enable/disable feature(s) of pvpanic device. Notice that this value should be a subset of capability.
Format: %x.
Also refer to pvpanic device specification.
/sys/devices/pci0000:00/<dev>/avs/fw_version |
Defined on file sysfs-bus-pci-devices-avs
Version of AudioDSP firmware ASoC avs driver is communicating with.
Format: %d.%d.%d.%d, type:major:minor:build.
/sys/devices/pci0000:00/<dev>/fw_info |
Defined on file sysfs-bus-pci-devices-catpt
Detailed AudioDSP firmware build information including build hash and log-providers hash. This information is obtained during initial handshake with firmware. Format: %s.
/sys/devices/pci0000:00/<dev>/fw_version |
Defined on file sysfs-bus-pci-devices-catpt
Version of AudioDSP firmware ASoC catpt driver is communicating with.
Format: %d.%d.%d.%d, type:major:minor:build.
/sys/devices/platform/*/cnqf_enable |
Defined on file sysfs-amd-pmf
Reading this file tells if the AMD Platform Management(PMF) Cool n Quiet Framework(CnQF) feature is enabled or not.
This feature is not enabled by default and gets only turned on if OEM BIOS passes a “flag” to PMF ACPI function (index 11 or 12) or in case the user writes “on”.
To turn off CnQF user can write “off” to the sysfs node. Note: Systems that support auto mode will not have this sysfs file available.
/sys/devices/platform/.../power_on_reason |
Defined on file sysfs-platform-power-on-reason
Shows system power on reason. The following strings/reasons can be read (the list can be extended): “regular power-up”, “RTC wakeup”, “watchdog timeout”, “software reset”, “reset button action”, “CPU clock failure”, “crystal oscillator failure”, “brown-out reset”, “unknown reason”.
The file is read only.
/sys/devices/platform/.../ufshci_capabilities/man_id |
Defined on file sysfs-driver-ufs
Host Capabilities register group: manufacturer ID register. Symbol - HCMID. This file shows the UFSHCD manufacturer id. The Manufacturer ID is defined by JEDEC in JEDEC-JEP106. The file is read only.
/sys/devices/platform/.../ufshci_capabilities/product_id |
Defined on file sysfs-driver-ufs
Host Capabilities register group: product ID register. Symbol - HCPID. This file shows the UFSHCD product id. The content of this register is vendor specific. The file is read only.
/sys/devices/platform/.../ufshci_capabilities/version |
Defined on file sysfs-driver-ufs
Host Capabilities register group: UFS version register. Symbol - VER. This file shows the UFSHCD version. Example: Version 3.12 would be represented as 0000_0312h. The file is read only.
/sys/devices/platform/8086<x>:00/firmware_version |
Defined on file sysfs-platform-sst-atom
LPE Firmware version for SST driver on all atom platforms (BYT/CHT/Merrifield/BSW). If the FW has never been loaded it will display:
"FW not yet loaded"
If FW has been loaded it will display:
"v01.aa.bb.cc"
aa: Major version is reflecting SoC version:
0d:
BYT FW
0b:
BSW FW
07:
Merrifield FW
bb: Minor version
cc: Build version
/sys/devices/platform/<i2c-demux-name>/available_masters |
Defined on file sysfs-platform-i2c-demux-pinctrl
Reading the file will give you a list of masters which can be selected for a demultiplexed bus. The format is “<index>:<name>”. Example from a Renesas Lager board:
0:/i2c@e6500000 1:/i2c@e6508000
/sys/devices/platform/<i2c-demux-name>/current_master |
Defined on file sysfs-platform-i2c-demux-pinctrl
This file selects/shows the active I2C master for a demultiplexed bus. It uses the <index> value from the file ‘available_masters’.
/sys/devices/platform/<phy-name>/role |
Defined on file sysfs-platform-phy-rcar-gen3-usb2
This file can be read and write. The file can show/change the phy mode for role swap of usb.
Write the following strings to change the mode:
“host” - switching mode from peripheral to host.
“peripheral” - switching mode from host to peripheral.
Read the file, then it shows the following strings:
“host” - The mode is host now.
“peripheral” - The mode is peripheral now.
/sys/devices/platform/<platform>/available_mini_led_mode |
Defined on file sysfs-platform-asus-wmi
List the available mini-led modes.
/sys/devices/platform/<platform>/boot_sound |
Defined on file sysfs-platform-asus-wmi
- Set if the BIOS POST sound is played on boot.
0 - False,
1 - True
/sys/devices/platform/<platform>/camera |
Defined on file sysfs-platform-asus-wmi
Control the camera. 1 means on, 0 means off.
/sys/devices/platform/<platform>/cardr |
Defined on file sysfs-platform-asus-wmi
Control the card reader. 1 means on, 0 means off.
/sys/devices/platform/<platform>/charge_mode |
Defined on file sysfs-platform-asus-wmi
- Get the current charging mode being used:
1 - Barrel connected charger,
2 - USB-C charging
3 - Both connected, barrel used for charging
/sys/devices/platform/<platform>/cpufv |
Defined on file sysfs-platform-asus-wmi
Change CPU clock configuration (write-only). There are three available clock configuration:
0 -> Super Performance Mode
1 -> High Performance Mode
2 -> Power Saving Mode
/sys/devices/platform/<platform>/dgpu_disable |
Defined on file sysfs-platform-asus-wmi
- Disable discrete GPU:
0 - Enable dGPU,
1 - Disable dGPU
/sys/devices/platform/<platform>/egpu_connected |
Defined on file sysfs-platform-asus-wmi
- Show if the egpu (XG Mobile) is correctly connected:
0 - False,
1 - True
/sys/devices/platform/<platform>/egpu_enable |
Defined on file sysfs-platform-asus-wmi
Enable the external GPU paired with ROG X-Flow laptops. Toggling this setting will also trigger ACPI to disable the dGPU:
0 - Disable,
1 - Enable
/sys/devices/platform/<platform>/etr3 |
Defined on file sysfs-platform-intel-pmc
The file exposes “Extended Test Mode Register 3” global reset bits. The bits are used during an Intel platform manufacturing process to indicate that consequent reset of the platform is a “global reset”. This type of reset is required in order for manufacturing configurations to take effect.
Display global reset setting bits for PMC.
bit 31 - global reset is locked
bit 20 - global reset is set
Writing bit 20 value to the etr3 will induce a platform “global reset” upon consequent platform reset, in case the register is not locked. The “global reset bit” should be locked on a production system and the file is in read-only mode.
/sys/devices/platform/<platform>/fan_boost_mode |
Defined on file sysfs-platform-asus-wmi
- Fan boost mode:
0 - normal,
1 - overboost,
2 - silent
/sys/devices/platform/<platform>/force_power |
Defined on file sysfs-platform-intel-wmi-thunderbolt
Modify the platform force power state, influencing Thunderbolt controllers to turn on or off when no devices are connected (write-only) There are two available states:
0 -> Force power disabled
1 -> Force power enabled
/sys/devices/platform/<platform>/gpu_mux_mode |
Defined on file sysfs-platform-asus-wmi
Switch the GPU hardware MUX mode. Laptops with this feature can can be toggled to boot with only the dGPU (discrete mode) or in standard Optimus/Hybrid mode. On switch a reboot is required:
0 - Discrete GPU,
1 - Optimus/Hybrid,
/sys/devices/platform/<platform>/lid_resume |
Defined on file sysfs-platform-asus-wmi
Resume on lid open. 1 means on, 0 means off.
/sys/devices/platform/<platform>/mcu_powersave |
Defined on file sysfs-platform-asus-wmi
- Set if the MCU can go in to low-power mode on system sleep
0 - False,
1 - True
/sys/devices/platform/<platform>/mini_led_mode |
Defined on file sysfs-platform-asus-wmi
- Change the mini-LED mode:
0 - Single-zone,
1 - Multi-zone
2 - Multi-zone strong (available on newer generation mini-led)
/sys/devices/platform/<platform>/nv_dynamic_boost |
Defined on file sysfs-platform-asus-wmi
- Set the dynamic boost limit of the Nvidia dGPU:
min=5, max=25
/sys/devices/platform/<platform>/nv_temp_target |
Defined on file sysfs-platform-asus-wmi
- Set the target temperature limit of the Nvidia dGPU:
min=75, max=87
/sys/devices/platform/<platform>/panel_od |
Defined on file sysfs-platform-asus-wmi
- Enable an LCD response-time boost to reduce or remove ghosting:
0 - Disable,
1 - Enable
/sys/devices/platform/<platform>/ppt_apu_sppt |
Defined on file sysfs-platform-asus-wmi
- Set the APU SPPT limit. Shown on full AMD systems only:
min=5, max=130
/sys/devices/platform/<platform>/ppt_fppt |
Defined on file sysfs-platform-asus-wmi
- Set the Fast Package Power Tracking Limit of CPU. AMD+Nvidia only:
min=5, max=250
/sys/devices/platform/<platform>/ppt_pl1_spl |
Defined on file sysfs-platform-asus-wmi
Set the Package Power Target total of CPU: PL1 on Intel, SPL on AMD. Shown on Intel+Nvidia or AMD+Nvidia based systems:
min=5, max=250
/sys/devices/platform/<platform>/ppt_pl2_sppt |
Defined on file sysfs-platform-asus-wmi
Set the Slow Package Power Tracking Limit of CPU: PL2 on Intel, SPPT, on AMD. Shown on Intel+Nvidia or AMD+Nvidia based systems:
min=5, max=250
/sys/devices/platform/<platform>/ppt_platform_sppt |
Defined on file sysfs-platform-asus-wmi
- Set the platform SPPT limit. Shown on full AMD systems only:
min=5, max=130
/sys/devices/platform/<platform>/throttle_thermal_policy |
Defined on file sysfs-platform-asus-wmi
- Throttle thermal policy mode:
0 - default,
1 - overboost,
2 - silent
/sys/devices/platform/<platform>/tokens/* |
Defined on file sysfs-platform-dell-smbios
A read-only description of Dell platform tokens available on the machine.
Each token attribute is available as a pair of sysfs attributes readable by a process with CAP_SYS_ADMIN.
For example the token ID “5” would be available as the following attributes:
0005_location
0005_value
Tokens will vary from machine to machine, and only tokens available on that machine will be displayed.
/sys/devices/platform/<platform>/touchpad |
Defined on file sysfs-platform-asus-wmi
Control the card touchpad. 1 means on, 0 means off.
/sys/devices/platform/<renesas_usb3's name>/role |
Defined on file sysfs-platform-renesas_usb3
This file can be read and write. The file can show/change the drd mode of usb.
Write the following string to change the mode:
“host” - switching mode from peripheral to host.
“peripheral” - switching mode from host to peripheral.
Read the file, then it shows the following strings:
“host” - The mode is host now.
“peripheral” - The mode is peripheral now.
/sys/devices/platform/HISI04Bx:00/available_inc_dec_lane_types |
/sys/devices/platform/HISI04Bx:00/dec_lane_of_type |
/sys/devices/platform/HISI04Bx:00/inc_lane_of_type |
Defined on file sysfs-devices-platform-kunpeng_hccs
These interfaces under /sys/devices/platform/HISI04Bx/ are used to support the low power consumption feature of some HCCS types by changing the number of lanes used. The interfaces changing the number of lanes used are ‘dec_lane_of_type’ and ‘inc_lane_of_type’ which require root privileges. These interfaces aren’t exposed if no HCCS type on platform support this feature. Please note that decreasing lane number is only allowed if all the specified HCCS ports are not busy.
The low power consumption interfaces are as follows:
available_inc_dec_lane_types: |
(RO) |
available HCCS types (string) to increase and decrease the number of lane used, e.g. HCCS-v2. |
dec_lane_of_type: |
(WO) |
input HCCS type supported decreasing lane to decrease the used lane number of all specified HCCS type ports on platform to the minimum. You can query the ‘cur_lane_num’ to get the minimum lane number after executing successfully. |
inc_lane_of_type: |
(WO) |
input HCCS type supported increasing lane to increase the used lane number of all specified HCCS type ports on platform to the full lane state. |
/sys/devices/platform/HISI04Bx:00/chipX/all_linked |
/sys/devices/platform/HISI04Bx:00/chipX/linked_full_lane |
/sys/devices/platform/HISI04Bx:00/chipX/crc_err_cnt |
Defined on file sysfs-devices-platform-kunpeng_hccs
The /sys/devices/platform/HISI04Bx:00/chipX/ directory contains read-only attributes exposing some summarization information of all HCCS ports under a specified chip. The X in ‘chipX’ indicates the Xth chip on platform.
There are following attributes in this directory:
all_linked: |
(RO) |
if all enabled ports on this chip are linked (bool). |
linked_full_lane: |
(RO) |
if all linked ports on this chip are full lane (bool). |
crc_err_cnt: |
(RO) |
total CRC err count for all ports on this chip. |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/all_linked |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/linked_full_lane |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/crc_err_cnt |
Defined on file sysfs-devices-platform-kunpeng_hccs
The /sys/devices/platform/HISI04Bx:00/chipX/dieY/ directory contains read-only attributes exposing some summarization information of all HCCS ports under a specified die. The Y in ‘dieY’ indicates the hardware id of the die on chip who has chip id X.
There are following attributes in this directory:
all_linked: |
(RO) |
if all enabled ports on this die are linked (bool). |
linked_full_lane: |
(RO) |
if all linked ports on this die are full lane (bool). |
crc_err_cnt: |
(RO) |
total CRC err count for all ports on this die. |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/type |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/lane_mode |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/enable |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/cur_lane_num |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/link_fsm |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/lane_mask |
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/crc_err_cnt |
Defined on file sysfs-devices-platform-kunpeng_hccs
The /sys/devices/platform/HISI04Bx/chipX/dieX/hccsN/ directory contains read-only attributes exposing information about a HCCS port. The N value in ‘hccsN’ indicates this port id. The X in ‘chipX’ indicates the ID of the chip to which the HCCS port belongs. For example, X ranges from to ‘n - 1’ if the chip number on platform is n. The Y in ‘dieY’ indicates the hardware id of the die to which the hccs port belongs. Note: type, lane_mode and enable are fixed attributes on running platform.
The HCCS port have the following attributes:
type: |
(RO) |
port type (string), e.g. HCCS-v1 -> H32 |
lane_mode: |
(RO) |
the lane mode of this port (string), e.g. x8 |
enable: |
(RO) |
indicate if this port is enabled (bool). |
cur_lane_num: |
(RO) |
current lane number of this port. |
link_fsm: |
(RO) |
link finite state machine of this port. |
lane_mask: |
(RO) |
current lane mask of this port, every bit indicates a lane. |
crc_err_cnt: |
(RO) |
CRC err count on this port. |
/sys/devices/platform/HISI04Bx:00/used_types |
Defined on file sysfs-devices-platform-kunpeng_hccs
This interface is used to show all HCCS types used on the platform, like, HCCS-v1, HCCS-v2 and so on.
/sys/devices/platform/_UDC_/gadget/gadget-lunX/nofua |
Defined on file sysfs-devices-platform-_UDC_-gadget
Show or set the reaction on the FUA (Force Unit Access) bit in the SCSI WRITE(10,12) commands when a gadget in USB Mass Storage mode.
Possible values are:
1 -> ignore the FUA flag
0 -> obey the FUA flag
/sys/devices/platform/_UDC_/gadget/suspended |
Defined on file sysfs-devices-platform-_UDC_-gadget
Show the suspend state of an USB composite gadget.
1 -> suspended
0 -> resumed
(_UDC_ is the name of the USB Device Controller driver)
/sys/devices/platform/amba_pl/<dev>/dis_block_break |
Defined on file sysfs-driver-xilinx-tmr-manager
Write any value to it, This control file enables the break signal. This file is write only. Example: # echo <any value> > /sys/devices/platform/amba_pl/44a10000.tmr_manager/dis_block_break
/sys/devices/platform/amba_pl/<dev>/errcnt |
Defined on file sysfs-driver-xilinx-tmr-manager
This control file provides the fault detection count. This file cannot be written. Example: # cat /sys/devices/platform/amba_pl/44a10000.tmr_manager/errcnt 1
/sys/devices/platform/asus_laptop/bluetooth |
Defined on file sysfs-platform-asus-laptop
Control the bluetooth device. 1 means on, 0 means off. This may control the led, the device or both.
Users: Lapsus
/sys/devices/platform/asus_laptop/display |
Defined on file sysfs-platform-asus-laptop
This file allows display switching. The value is composed by 4 bits and defined as follow:
4321
|||`- LCD
||`-- CRT
|`--- TV
`---- DVI
- Ex:
0 (0000b) means no display
3 (0011b) CRT+LCD.
/sys/devices/platform/asus_laptop/gps |
Defined on file sysfs-platform-asus-laptop
Control the gps device. 1 means on, 0 means off.
Users: Lapsus
/sys/devices/platform/asus_laptop/ledd |
Defined on file sysfs-platform-asus-laptop
Some models like the W1N have a LED display that can be used to display several items of information. To control the LED display, use the following:
echo 0x0T000DDD > /sys/devices/platform/asus_laptop/
where T control the 3 letters display, and DDD the 3 digits display. The DDD table can be found in Asus Laptop Extras
/sys/devices/platform/asus_laptop/wimax |
Defined on file sysfs-platform-asus-laptop
Control the wimax device. 1 means on, 0 means off.
/sys/devices/platform/asus_laptop/wlan |
Defined on file sysfs-platform-asus-laptop
Control the wlan device. 1 means on, 0 means off. This may control the led, the device or both.
Users: Lapsus
/sys/devices/platform/asus_laptop/wwan |
Defined on file sysfs-platform-asus-laptop
Control the wwan (3G) device. 1 means on, 0 means off.
/sys/devices/platform/at91_can/net/<iface>/mb0_id |
Defined on file sysfs-platform-at91
Value representing the can_id of mailbox 0.
Default: 0x7ff (standard frame)
Due to a chip bug (errata 50.2.6.3 & 50.3.5.3 in “AT91SAM9263 Preliminary 6249H-ATARM-27-Jul-09”) the contents of mailbox 0 may be send under certain conditions (even if disabled or in rx mode).
The workaround in the errata suggests not to use the mailbox and load it with an unused identifier.
In order to use an extended can_id add the CAN_EFF_FLAG (0x80000000U) to the can_id. Example:
standard id 0x7ff:
echo 0x7ff > /sys/class/net/can0/mb0_id
extended id 0x1fffffff:
echo 0x9fffffff > /sys/class/net/can0/mb0_id
/sys/devices/platform/dmi-ipmi-ssif.*/hosed |
/sys/devices/platform/dmi-ipmi-ssif.*/alerts |
/sys/devices/platform/dmi-ipmi-ssif.*/sent_messages |
/sys/devices/platform/dmi-ipmi-ssif.*/sent_messages_parts |
/sys/devices/platform/dmi-ipmi-ssif.*/received_messages |
/sys/devices/platform/dmi-ipmi-ssif.*/received_message_parts |
/sys/devices/platform/dmi-ipmi-ssif.*/events |
/sys/devices/platform/dmi-ipmi-ssif.*/watchdog_pretimeouts |
/sys/devices/platform/dmi-ipmi-ssif.*/flag_fetches |
/sys/devices/platform/dmi-ipmi-ssif.*/send_retries |
/sys/devices/platform/dmi-ipmi-ssif.*/receive_retries |
/sys/devices/platform/dmi-ipmi-ssif.*/send_errors |
/sys/devices/platform/dmi-ipmi-ssif.*/receive_errors |
Defined on file sysfs-devices-platform-ipmi
hosed |
(RO) Number of times the hardware didn’t follow the state machine. |
alerts |
(RO) Number of alerts received. |
sent_messages |
(RO) Number of total messages sent. |
sent_message_parts |
(RO) Number of message parts sent. Messages may be broken into parts if they are long. |
received_messages |
(RO) Number of message responses received. |
received_message_parts |
(RO) Number of message fragments received. |
events |
(RO) Number of received events. |
watchdog_pretimeouts |
(RO) Number of watchdog pretimeouts. |
flag_fetches |
(RO) Number of times a flag fetch was requested. |
send_retries |
(RO) Number of time a message was retried. |
receive_retries |
(RO) Number of times the receive of a message was retried. |
send_errors |
(RO) Number of times the send of a message failed. |
receive_errors |
(RO) Number of errors in receiving messages. |
/sys/devices/platform/dmi-ipmi-ssif.*/type |
Defined on file sysfs-devices-platform-ipmi
(RO) Shows the IMPI device interface type - “ssif” here.
/sys/devices/platform/docg3/f[0-3]_dps[01]_is_keylocked |
Defined on file sysfs-devices-platform-docg3
Show whether the floor (0 to 4), protection area (0 or 1) is keylocked. Each docg3 chip (or floor) has 2 protection areas, which can cover any part of it, block aligned, called DPS. The protection has information embedded whether it blocks reads, writes or both. The result is:
0 -> the DPS is not keylocked
1 -> the DPS is keylocked
Users: None identified so far.
/sys/devices/platform/docg3/f[0-3]_dps[01]_protection_key |
Defined on file sysfs-devices-platform-docg3
Enter the protection key for the floor (0 to 4), protection area (0 or 1). Each docg3 chip (or floor) has 2 protection areas, which can cover any part of it, block aligned, called DPS. The protection has information embedded whether it blocks reads, writes or both. The protection key is a string of 8 bytes (value 0-255). Entering the correct value toggle the lock, and can be observed through f[0-3]_dps[01]_is_keylocked. Possible values are:
8 bytes
Typical values are:
“00000000”
“12345678”
Users: None identified so far.
/sys/devices/platform/dock.<N>/docked |
Defined on file sysfs-devices-platform-dock
(RO) Value 1 or 0 indicates whether the software believes the laptop is docked in a docking station.
/sys/devices/platform/dock.<N>/flags |
Defined on file sysfs-devices-platform-dock
(RO) Show dock station flags, useful for checking if undock request has been made by the user (from the immediate_undock option).
/sys/devices/platform/dock.<N>/type |
Defined on file sysfs-devices-platform-dock
(RO) Display the dock station type- dock_station, ata_bay or battery_bay.
/sys/devices/platform/dock.<N>/uid |
Defined on file sysfs-devices-platform-dock
(RO) Displays the docking station the laptop is docked to.
/sys/devices/platform/dock.<N>/undock |
Defined on file sysfs-devices-platform-dock
(WO) Writing to this file causes the software to initiate an undock request to the firmware.
/sys/devices/platform/eeepc/available_cpufv |
Defined on file sysfs-platform-eeepc-laptop
List available cpufv modes.
/sys/devices/platform/eeepc/camera |
Defined on file sysfs-platform-eeepc-laptop
Control the camera. 1 means on, 0 means off.
/sys/devices/platform/eeepc/cardr |
Defined on file sysfs-platform-eeepc-laptop
Control the card reader. 1 means on, 0 means off.
/sys/devices/platform/eeepc/cpufv |
Defined on file sysfs-platform-eeepc-laptop
Change CPU clock configuration. On the Eee PC 1000H there are three available clock configuration:
0 -> Super Performance Mode
1 -> High Performance Mode
2 -> Power Saving Mode
On Eee PC 701 there is only 2 available clock configurations. Available configuration are listed in available_cpufv file. Reading this file will show the raw hexadecimal value which is defined as follow:
| 8 bit | 8 bit |
| `---- Current mode
`------------ Availables modes
For example, 0x301 means: mode 1 selected, 3 available modes.
/sys/devices/platform/eeepc/disp |
Defined on file sysfs-platform-eeepc-laptop
This file allows display switching.
1 = LCD
2 = CRT
3 = LCD+CRT
If you run X11, you should use xrandr instead.
/sys/devices/platform/hidma-*/chid |
Defined on file sysfs-platform-hidma
Contains the ID of the channel within the HIDMA instance. It is used to associate a given HIDMA channel with the priority and weight calls in the management interface.
/sys/devices/platform/hidma-mgmt*/chanops/chan*/priority |
Defined on file sysfs-platform-hidma-mgmt
Contains either 0 or 1 and indicates if the DMA channel is a low priority (0) or high priority (1) channel.
/sys/devices/platform/hidma-mgmt*/chanops/chan*/weight |
Defined on file sysfs-platform-hidma-mgmt
Contains 0..15 and indicates the weight of the channel among equal priority channels during round robin scheduling.
/sys/devices/platform/hidma-mgmt*/chreset_timeout_cycles |
Defined on file sysfs-platform-hidma-mgmt
Contains the platform specific cycle value to wait after a reset command is issued. If the value is chosen too short, then the HW will issue a reset failure interrupt. The value is platform specific and should not be changed without consultance.
/sys/devices/platform/hidma-mgmt*/dma_channels |
Defined on file sysfs-platform-hidma-mgmt
Contains the number of dma channels supported by one instance of HIDMA hardware. The value may change from chip to chip.
/sys/devices/platform/hidma-mgmt*/hw_version_major |
Defined on file sysfs-platform-hidma-mgmt
Version number major for the hardware.
/sys/devices/platform/hidma-mgmt*/hw_version_minor |
Defined on file sysfs-platform-hidma-mgmt
Version number minor for the hardware.
/sys/devices/platform/hidma-mgmt*/max_rd_xactions |
Defined on file sysfs-platform-hidma-mgmt
Contains a value between 0 and 31. Maximum number of read transactions that can be issued back to back. Choosing a higher number gives better performance but can also cause performance reduction to other peripherals sharing the same bus.
/sys/devices/platform/hidma-mgmt*/max_read_request |
Defined on file sysfs-platform-hidma-mgmt
Size of each read request. The value needs to be a power of two and can be between 128 and 1024.
/sys/devices/platform/hidma-mgmt*/max_wr_xactions |
Defined on file sysfs-platform-hidma-mgmt
Contains a value between 0 and 31. Maximum number of write transactions that can be issued back to back. Choosing a higher number gives better performance but can also cause performance reduction to other peripherals sharing the same bus.
/sys/devices/platform/hidma-mgmt*/max_write_request |
Defined on file sysfs-platform-hidma-mgmt
Size of each write request. The value needs to be a power of two and can be between 128 and 1024.
/sys/devices/platform/i8042/.../draghys |
Defined on file sysfs-devices-platform-trackpoint
(RW) The drag hysteresis controls how hard it is to drag with z-axis pressed.
/sys/devices/platform/i8042/.../drift_time |
Defined on file sysfs-devices-platform-trackpoint
(RW) This parameter controls the period of time to test for a ‘hands off’ condition (i.e. when no force is applied) before a drift (noise) calibration occurs.
IBM Trackpoints have a feature to compensate for drift by recalibrating themselves periodically. By default, if for 0.5 seconds there is no change in position, it’s used as the new zero. This duration is too low. Often, the calibration happens when the trackpoint is in fact being used.
/sys/devices/platform/i8042/.../ext_dev |
Defined on file sysfs-devices-platform-trackpoint
(RW) Disable (0) or enable (1) external pointing device.
/sys/devices/platform/i8042/.../intertia |
Defined on file sysfs-devices-platform-trackpoint
(RW) Negative inertia factor. High values cause the cursor to snap backward when the trackpoint is released.
/sys/devices/platform/i8042/.../jenks |
Defined on file sysfs-devices-platform-trackpoint
(RW) Minimum curvature in degrees required to generate a double click without a release.
/sys/devices/platform/i8042/.../mindrag |
Defined on file sysfs-devices-platform-trackpoint
(RW) Minimum amount of force needed to trigger dragging.
/sys/devices/platform/i8042/.../press_to_select |
Defined on file sysfs-devices-platform-trackpoint
(RW) Writing a value of 1 to this file will enable the Press to Select functions like tapping the control stick to simulate a left click, and writing 0 will disable it.
/sys/devices/platform/i8042/.../reach |
Defined on file sysfs-devices-platform-trackpoint
(RW) Backup range for z-axis press.
/sys/devices/platform/i8042/.../sensitivity |
Defined on file sysfs-devices-platform-trackpoint
(RW) Trackpoint sensitivity.
/sys/devices/platform/i8042/.../skipback |
Defined on file sysfs-devices-platform-trackpoint
(RW) When the skipback bit is set, backup cursor movement during releases from drags will be suppressed. The default value for this bit is 0.
/sys/devices/platform/i8042/.../speed |
Defined on file sysfs-devices-platform-trackpoint
(RW) Speed of the trackpoint cursor.
/sys/devices/platform/i8042/.../thresh |
Defined on file sysfs-devices-platform-trackpoint
(RW) Minimum value for z-axis force required to trigger a press or release, relative to the running average.
/sys/devices/platform/i8042/.../upthresh |
Defined on file sysfs-devices-platform-trackpoint
(RW) The offset from the running average required to generate a select (click) on z-axis on release.
/sys/devices/platform/i8042/.../ztime |
Defined on file sysfs-devices-platform-trackpoint
(RW) This attribute determines how sharp a press has to be in order to be recognized.
/sys/devices/platform/ipmi_bmc.*/additional_device_support |
Defined on file sysfs-devices-platform-ipmi
(RO) Lists the IPMI ‘logical device’ commands and functions that the controller supports that are in addition to the mandatory IPM and Application commands.
/sys/devices/platform/ipmi_bmc.*/aux_firmware_revision |
Defined on file sysfs-devices-platform-ipmi
(RO) Holds additional information about the firmware revision, such as boot block or internal data structure version numbers. The meanings of the numbers are specific to the vendor identified by Manufacturer ID.
/sys/devices/platform/ipmi_bmc.*/device_id |
Defined on file sysfs-devices-platform-ipmi
(RO) Device id is specified by the manufacturer identified by the Manufacturer ID field. This field allows controller specific software to identify the unique application command, OEM fields, and functionality that are provided by the controller
/sys/devices/platform/ipmi_bmc.*/firmware_revision |
Defined on file sysfs-devices-platform-ipmi
(RO) The major and minor revision of the firmware.
/sys/devices/platform/ipmi_bmc.*/guid |
Defined on file sysfs-devices-platform-ipmi
(RO) A GUID (Globally Unique ID), also referred to as a UUID (Universally Unique Identifier), for the management controller, as described in section 20.8 ‘Get Device GUID Command’ of the IPMI specification v2.0.
/sys/devices/platform/ipmi_bmc.*/ipmi_version |
Defined on file sysfs-devices-platform-ipmi
(RO) Displays the IPMI Command Specification Version.
/sys/devices/platform/ipmi_bmc.*/manufacturer_id |
Defined on file sysfs-devices-platform-ipmi
(RO) Identifies the manufacturer responsible for the specification of functionality of the vendor (OEM)-specific commands, codes, and interfaces used in the controller.
/sys/devices/platform/ipmi_bmc.*/product_id |
Defined on file sysfs-devices-platform-ipmi
(RO) Displays a number that identifies a particular system, module, add-in card, or board set. The number is specified according to the manufacturer given by Manufacturer ID.
For detailed definitions of the above attributes, refer to section 20.1 ‘Get Device ID Command’ of the IPMI specification v2.0.
/sys/devices/platform/ipmi_bmc.*/provides_device_sdrs |
Defined on file sysfs-devices-platform-ipmi
(RO) Indicates whether device provides device sensor data records (1) or not (0).
/sys/devices/platform/ipmi_bmc.*/revision |
Defined on file sysfs-devices-platform-ipmi
(RO) Device revision. Useful for identifying if significant hardware changes have been made to the implementation of the management controller.
/sys/devices/platform/ipmi_si.*/idles |
/sys/devices/platform/ipmi_si.*/watchdog_pretimeouts |
/sys/devices/platform/ipmi_si.*/complete_transactions |
/sys/devices/platform/ipmi_si.*/events |
/sys/devices/platform/ipmi_si.*/interrupts |
/sys/devices/platform/ipmi_si.*/hosed_count |
/sys/devices/platform/ipmi_si.*/long_timeouts |
/sys/devices/platform/ipmi_si.*/flag_fetches |
/sys/devices/platform/ipmi_si.*/attentions |
/sys/devices/platform/ipmi_si.*/incoming_messages |
/sys/devices/platform/ipmi_si.*/short_timeouts |
Defined on file sysfs-devices-platform-ipmi
idles |
(RO) Number of times the interface was idle while being polled. |
watchdog_pretimeouts |
(RO) Number of watchdog pretimeouts. |
complete_transactions |
(RO) Number of completed messages. |
events |
(RO) Number of IPMI events received from the hardware. |
interrupts |
(RO) Number of interrupts the driver handled. |
hosed_count |
(RO) Number of times the hardware didn’t follow the state machine. |
long_timeouts |
(RO) Number of times the driver requested a timer while nothing was in progress. |
flag_fetches |
(RO) Number of times the driver requested flags from the hardware. |
attentions |
(RO) Number of time the driver got an ATTN from the hardware. |
incoming_messages |
(RO) Number of asynchronous messages received. |
short_timeouts |
(RO) Number of times the driver requested a timer while an operation was in progress. |
/sys/devices/platform/ipmi_si.*/interrupts_enabled |
Defined on file sysfs-devices-platform-ipmi
(RO) Indicates whether interrupts are enabled or not. The driver disables interrupts when it gets into a situation where it cannot handle messages due to lack of memory. Once that situation clears up, it will re-enable interrupts.
/sys/devices/platform/ipmi_si.*/params |
Defined on file sysfs-devices-platform-ipmi
[to be documented]
/sys/devices/platform/ipmi_si.*/type |
Defined on file sysfs-devices-platform-ipmi
(RO) The device interface for IPMI “kcs”, “smic”, “bt” or “invalid”
/sys/devices/platform/kim/baud_rate |
Defined on file sysfs-platform-kim
The maximum reliable baud-rate the host can support. Different platforms tend to have different high-speed UART configurations, so the baud-rate needs to be set locally and also sent across to the WL128x via a HCI-VS command. The entry is read and made use by the user-space daemon when the ldisc install is requested.
/sys/devices/platform/kim/dev_name |
Defined on file sysfs-platform-kim
Name of the UART device at which the WL128x chip is connected. example: “/dev/ttyS0”.
The device name flows down to architecture specific board initialization file from the ATAGS bootloader firmware. The name exposed is read from the user-space daemon and opens the device when install is requested.
/sys/devices/platform/kim/flow_cntrl |
Defined on file sysfs-platform-kim
The WL128x makes use of flow control mechanism, and this entry most often should be 1, the host’s UART is required to have the capability of flow-control, or else this entry can be made use of for exceptions.
/sys/devices/platform/kim/install |
Defined on file sysfs-platform-kim
When one of the protocols Bluetooth, FM or GPS wants to make use of the shared UART transport, it registers to the shared transport driver, which will signal the user-space for opening, configuring baud and install line discipline via this sysfs entry. This entry would be polled upon by the user-space daemon managing the UART, and is notified about the change by the sysfs_notify. The value would be ‘1’ when UART needs to be opened/ldisc installed, and would be ‘0’ when UART is no more required and needs to be closed.
/sys/devices/platform/lg-laptop/battery_care_limit |
Defined on file sysfs-platform-lg-laptop
Deprecated use /sys/class/power_supply/CMB0/charge_control_end_threshold Maximal battery charge level. Accepted values are 80 or 100.
/sys/devices/platform/lg-laptop/fan_mode |
Defined on file sysfs-platform-lg-laptop
Control fan mode. 1 for performance mode, 0 for silent mode.
/sys/devices/platform/lg-laptop/fn_lock |
Defined on file sysfs-platform-lg-laptop
Control FN lock mode. 1 means on, 0 means off.
/sys/devices/platform/lg-laptop/reader_mode |
Defined on file sysfs-platform-lg-laptop
Control reader mode. 1 means on, 0 means off.
/sys/devices/platform/lg-laptop/usb_charge |
Defined on file sysfs-platform-lg-laptop
Control USB port charging when device is turned off. 1 means on, 0 means off.
/sys/devices/platform/msi-laptop-pf/auto_brightness |
Defined on file sysfs-platform-msi-laptop
Enable automatic brightness control: contains either 0 or 1. If set to 1 the hardware adjusts the screen brightness automatically when the power cord is plugged/unplugged.
/sys/devices/platform/msi-laptop-pf/auto_fan |
Defined on file sysfs-platform-msi-laptop
Contains either 0 or 1 and indicates if fan speed is controlled automatically (1) or fan runs at maximal speed (0). Can be toggled in software.
/sys/devices/platform/msi-laptop-pf/bluetooth |
Defined on file sysfs-platform-msi-laptop
Bluetooth subsystem enabled: contains either 0 or 1. Please note that this file is constantly 0 if no Bluetooth hardware is available.
/sys/devices/platform/msi-laptop-pf/eco_mode |
Defined on file sysfs-platform-msi-laptop
Contains either 0 or 1 and indicates if ECO mode is turned on. In ECO mode power LED is green and userspace should do some powersaving actions. ECO mode is available only on battery power. ECO mode can only be toggled by pressing Fn+F10.
/sys/devices/platform/msi-laptop-pf/lcd_level |
Defined on file sysfs-platform-msi-laptop
Screen brightness: contains a single integer in the range 0..8.
/sys/devices/platform/msi-laptop-pf/touchpad |
Defined on file sysfs-platform-msi-laptop
Contains either 0 or 1 and indicates if touchpad is turned on. Touchpad state can only be toggled by pressing Fn+F3.
/sys/devices/platform/msi-laptop-pf/turbo_cooldown |
Defined on file sysfs-platform-msi-laptop
- Contains value in range 0..3:
0 -> Turbo mode is off
1 -> Turbo mode is on, cannot be turned off yet
2 -> Turbo mode is off, cannot be turned on yet
3 -> Turbo mode is on
/sys/devices/platform/msi-laptop-pf/turbo_mode |
Defined on file sysfs-platform-msi-laptop
Contains either 0 or 1 and indicates if turbo mode is turned on. In turbo mode power LED is orange and processor is overclocked. Turbo mode is available only if charging. It is only possible to toggle turbo mode state by pressing Fn+F10, and there is a few seconds cooldown between subsequent toggles. If user presses Fn+F10 too frequent, turbo mode state is not changed.
/sys/devices/platform/msi-laptop-pf/wlan |
Defined on file sysfs-platform-msi-laptop
WLAN subsystem enabled: contains either 0 or 1.
/sys/devices/platform/samsung/battery_life_extender |
Defined on file sysfs-driver-samsung-laptop
Max battery charge level can be modified, battery cycle life can be extended by reducing the max battery charge level.
0 means normal battery mode (100% charge)
1 means battery life extender mode (80% charge)
/sys/devices/platform/samsung/lid_handling |
Defined on file sysfs-driver-samsung-laptop
Some Samsung laptops handle lid closing quicker and only handle lid opening with this mode enabled. 1 means enabled, 0 means disabled.
/sys/devices/platform/samsung/performance_level |
Defined on file sysfs-driver-samsung-laptop
Some Samsung laptops have different “performance levels” that can be modified by a function key, and by this sysfs file. These values don’t always make a whole lot of sense, but some users like to modify them to keep their fans quiet at all costs. Reading from this file will show the current performance level. Writing to the file can change this value.
- Valid options:
“silent”
“normal”
“overclock”
Note that not all laptops support all of these options. Specifically, not all support the “overclock” option, and it’s still unknown if this value even changes anything, other than making the user feel a bit better.
/sys/devices/platform/samsung/usb_charge |
Defined on file sysfs-driver-samsung-laptop
Use your USB ports to charge devices, even when your laptop is powered off. 1 means enabled, 0 means disabled.
/sys/devices/platform/sh_mobile_lcdc_fb.[0-3]/graphics/fb[0-9]/ovl_alpha |
Defined on file sysfs-devices-platform-sh_mobile_lcdc_fb
This file is only available on fb[0-9] devices corresponding to overlay planes.
Stores the alpha blending value for the overlay. Values range from 0 (transparent) to 255 (opaque). The value is ignored if the mode is not set to Alpha Blending.
/sys/devices/platform/sh_mobile_lcdc_fb.[0-3]/graphics/fb[0-9]/ovl_mode |
Defined on file sysfs-devices-platform-sh_mobile_lcdc_fb
This file is only available on fb[0-9] devices corresponding to overlay planes.
Selects the composition mode for the overlay. Possible values are:
0 - Alpha Blending
1 - ROP3
/sys/devices/platform/sh_mobile_lcdc_fb.[0-3]/graphics/fb[0-9]/ovl_position |
Defined on file sysfs-devices-platform-sh_mobile_lcdc_fb
This file is only available on fb[0-9] devices corresponding to overlay planes.
Stores the x,y overlay position on the display in pixels. The position format is [0-9]+,[0-9]+.
/sys/devices/platform/sh_mobile_lcdc_fb.[0-3]/graphics/fb[0-9]/ovl_rop3 |
Defined on file sysfs-devices-platform-sh_mobile_lcdc_fb
This file is only available on fb[0-9] devices corresponding to overlay planes.
Stores the raster operation (ROP3) for the overlay. Values range from 0 to 255. The value is ignored if the mode is not set to ROP3.
/sys/devices/platform/silicom-platform/efuse_status |
Defined on file sysfs-platform-silicom
This file is read only. It returns the current OTP status:
0 - not programmed. 1 - programmed.
/sys/devices/platform/silicom-platform/power_cycle |
Defined on file sysfs-platform-silicom
This file allow user to power cycle the platform. Default value is 0; when set to 1, it powers down the platform, waits 5 seconds, then powers on the device. It returns to default value after power cycle.
0 - default value.
/sys/devices/platform/silicom-platform/uc_version |
Defined on file sysfs-platform-silicom
This file allows to read microcontroller firmware version of current platform.
/sys/devices/platform/soc@X/XXXXXXX.ipa/ |
Defined on file sysfs-devices-platform-soc-ipa
The /sys/devices/platform/soc@X/XXXXXXX.ipa/ directory contains read-only attributes exposing information about an IPA device. The X values could vary, but are typically “soc@0/1e40000.ipa”.
/sys/devices/platform/stratix10-rsu.0/current_image |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) the address in flash of currently running image.
/sys/devices/platform/stratix10-rsu.0/dcmf0 |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) Decision firmware copy 0 version information.
/sys/devices/platform/stratix10-rsu.0/dcmf1 |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) Decision firmware copy 1 version information.
/sys/devices/platform/stratix10-rsu.0/dcmf2 |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) Decision firmware copy 2 version information.
/sys/devices/platform/stratix10-rsu.0/dcmf3 |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) Decision firmware copy 3 version information.
/sys/devices/platform/stratix10-rsu.0/error_details |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) error code.
/sys/devices/platform/stratix10-rsu.0/error_location |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) the error offset inside the image that failed.
/sys/devices/platform/stratix10-rsu.0/fail_image |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) the address in flash of failed image.
/sys/devices/platform/stratix10-rsu.0/max_retry |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) max retry parameter is stored in the firmware decision IO section, as a byte located at offset 0x18c.
/sys/devices/platform/stratix10-rsu.0/notify |
Defined on file sysfs-devices-platform-stratix10-rsu
(WO) client to notify firmware with different actions.
- b[15:0]
inform firmware the current software execution stage.
0
the first stage bootloader didn’t run or didn’t reach the point of launching second stage bootloader.
1
failed in second bootloader or didn’t get to the point of launching the operating system.
2
both first and second stage bootloader ran and the operating system launch was attempted.
- b[16]
1
firmware to reset current image retry counter.
0
no action.
- b[17]
1
firmware to clear RSU log
0
no action.
- b[18]
this is negative logic
1
no action
0
firmware record the notify code defined in b[15:0].
/sys/devices/platform/stratix10-rsu.0/reboot_image |
Defined on file sysfs-devices-platform-stratix10-rsu
(WO) the address in flash of image to be loaded on next reboot command.
/sys/devices/platform/stratix10-rsu.0/retry_counter |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) the current image’s retry counter, which is used by user to know how many times the images is still allowed to reload itself before giving up and starting RSU fail-over flow.
/sys/devices/platform/stratix10-rsu.0/state |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) the state of RSU system. The state field has two parts: major error code in upper 16 bits and minor error code in lower 16 bits.
- b[15:0]
Currently used only when major error is 0xF006 (CPU watchdog timeout), in which case the minor error code is the value reported by CPU to firmware through the RSU notify command before the watchdog timeout occurs.
- b[31:16]
0xF001 bitstream error 0xF002 hardware access failure 0xF003 bitstream corruption 0xF004 internal error 0xF005 device error 0xF006 CPU watchdog timeout 0xF007 internal unknown error
/sys/devices/platform/stratix10-rsu.0/version |
Defined on file sysfs-devices-platform-stratix10-rsu
(RO) the version number of RSU firmware. 19.3 or late version includes information about the firmware which reported the error.
- pre 19.3:
- b[31:0]
0x0 version number
- 19.3 or late:
- b[15:0]
0x1 version number
- b[31:16]
0x0 no error 0x0DCF Decision CMF error 0x0ACF Application CMF error
/sys/devices/platform/ts5500/adc |
Defined on file sysfs-platform-ts5500
Indicates the presence of an A/D Converter. If it is present, it will display “1”, otherwise “0”.
/sys/devices/platform/ts5500/ereset |
Defined on file sysfs-platform-ts5500
Indicates the presence of an external reset. If it is present, it will display “1”, otherwise “0”.
/sys/devices/platform/ts5500/id |
Defined on file sysfs-platform-ts5500
Product ID of the TS board. TS-5500 ID is 0x60.
/sys/devices/platform/ts5500/jumpers |
Defined on file sysfs-platform-ts5500
Bitfield showing the jumpers’ state. If a jumper is present, the corresponding bit is set. For instance, 0x0e means jumpers 2, 3 and 4 are set.
/sys/devices/platform/ts5500/name |
Defined on file sysfs-platform-ts5500
Model name of the TS board, e.g. “TS-5500”.
/sys/devices/platform/ts5500/rs485 |
Defined on file sysfs-platform-ts5500
Indicates the presence of the RS485 option. If it is present, it will display “1”, otherwise “0”.
/sys/devices/platform/ts5500/sram |
Defined on file sysfs-platform-ts5500
Indicates the presence of the SRAM option. If it is present, it will display “1”, otherwise “0”.
/sys/devices/platform/usbip-vudc.%d/dev_desc |
Defined on file sysfs-platform-usbip-vudc
This file allows to read device descriptor of gadget driver which is currently bound to this controller. It is possible to read this file only if gadget driver is bound, otherwise error is returned.
/sys/devices/platform/usbip-vudc.%d/usbip_sockfd |
Defined on file sysfs-platform-usbip-vudc
This file allows to export usb device to connection peer. It is done by writing to this file socket fd (as a string for example “8”) associated with a connection to remote peer who would like to use this device. It is possible to close the connection by writing -1 instead of socked fd.
/sys/devices/platform/usbip-vudc.%d/usbip_status |
Defined on file sysfs-platform-usbip-vudc
Current status of the device. Allowed values:
1 |
Device is available and can be exported |
2 |
Device is currently exported |
3 |
Fatal error occurred during communication with peer |
/sys/devices/socX |
Defined on file sysfs-devices-soc
The /sys/devices/ directory contains a sub-directory for each System-on-Chip (SoC) device on a running platform. Information regarding each SoC can be obtained by reading sysfs files. This functionality is only available if implemented by the platform.
The directory created for each SoC will also house information about devices which are commonly contained in /sys/devices/platform. It has been agreed that if an SoC device exists, its supported devices would be better suited to appear as children of that SoC.
/sys/devices/socX/family |
Defined on file sysfs-devices-soc
Read-only attribute common to all SoCs. Contains SoC family name (e.g. DB8500).
On many of ARM based silicon with SMCCC v1.2+ compliant firmware this will contain the JEDEC JEP106 manufacturer’s identification code. The format is “jep106:XXYY” where XX is identity code and YY is continuation code.
This manufacturer’s identification code is defined by one or more eight (8) bit fields, each consisting of seven (7) data bits plus one (1) odd parity bit. It is a single field, limiting the possible number of vendors to 126. To expand the maximum number of identification codes, a continuation scheme has been defined.
The specified mechanism is that an identity code of 0x7F represents the “continuation code” and implies the presence of an additional identity code field, and this mechanism may be extended to multiple continuation codes followed by the manufacturer’s identity code.
For example, ARM has identity code 0x7F 0x7F 0x7F 0x7F 0x3B, which is code 0x3B on the fifth ‘page’. This is shortened as JEP106 identity code of 0x3B and a continuation code of 0x4 to represent the four continuation codes preceding the identity code.
/sys/devices/socX/machine |
Defined on file sysfs-devices-soc
Read-only attribute common to all SoCs. Contains the SoC machine name (e.g. Ux500).
/sys/devices/socX/process |
Defined on file sysfs-devices-soc
Read-only attribute supported ST-Ericsson’s silicon. Contains the the process by which the silicon chip was manufactured.
/sys/devices/socX/revision |
Defined on file sysfs-devices-soc
Read-only attribute supported by most SoCs. Contains the SoC’s manufacturing revision number.
/sys/devices/socX/serial_number |
Defined on file sysfs-devices-soc
Read-only attribute supported by most SoCs. Contains the SoC’s serial number, if available.
/sys/devices/socX/soc_id |
Defined on file sysfs-devices-soc
Read-only attribute supported by most SoCs. In the case of ST-Ericsson’s chips this contains the SoC serial number.
On many of ARM based silicon with SMCCC v1.2+ compliant firmware this will contain the SOC ID appended to the family attribute to ensure there is no conflict in this namespace across various vendors. The format is “jep106:XXYY:ZZZZ” where XX is identity code, YY is continuation code and ZZZZ is the SOC ID.
/sys/devices/system/cpu/ |
Defined on file sysfs-devices-system-cpu
A collection of both global and individual CPU attributes
Individual CPU attributes are contained in subdirectories named by the kernel’s logical CPU number, e.g.:
/sys/devices/system/cpu/cpuX/
/sys/devices/system/cpu/aarch32_el0 |
Defined on file sysfs-devices-system-cpu
Identifies the subset of CPUs in the system that can execute AArch32 (32-bit ARM) applications. If present, the same format as /sys/devices/system/cpu/{offline,online,possible,present} is used. If absent, then all or none of the CPUs can execute AArch32 applications and execve() will behave accordingly.
/sys/devices/system/cpu/cpu*/cache/index*/<set_of_attributes_mentioned_below> |
Defined on file sysfs-devices-system-cpu
Parameters for the CPU cache attributes
- allocation_policy:
- WriteAllocate:
allocate a memory location to a cache line on a cache miss because of a write
- ReadAllocate:
allocate a memory location to a cache line on a cache miss because of a read
- ReadWriteAllocate:
both writeallocate and readallocate
- coherency_line_size:
the minimum amount of data in bytes that gets transferred from memory to cache
- level:
the cache hierarchy in the multi-level cache configuration
- number_of_sets:
total number of sets in the cache, a set is a collection of cache lines with the same cache index
- physical_line_partition:
number of physical cache line per cache tag
- shared_cpu_list:
the list of logical cpus sharing the cache
- shared_cpu_map:
logical cpu mask containing the list of cpus sharing the cache
- size:
the total cache size in kB
- type:
Instruction: cache that only holds instructions
Data: cache that only caches data
Unified: cache that holds both data and instructions
- ways_of_associativity:
degree of freedom in placing a particular block of memory in the cache
- write_policy:
- WriteThrough:
data is written to both the cache line and to the block in the lower-level memory
- WriteBack:
data is written only to the cache line and the modified cache line is written to main memory only when it is replaced
/sys/devices/system/cpu/cpu*/cache/index*/id |
Defined on file sysfs-devices-system-cpu
Cache id
The id provides a unique number for a specific instance of a cache of a particular type. E.g. there may be a level 3 unified cache on each socket in a server and we may assign them ids 0, 1, 2, ...
Note that id value can be non-contiguous. E.g. level 1 caches typically exist per core, but there may not be a power of two cores on a socket, so these caches may be numbered 0, 1, 2, 3, 4, 5, 8, 9, 10, ...
/sys/devices/system/cpu/cpu*/cache/index3/cache_disable_{0,1} |
Defined on file sysfs-devices-system-cpu
Disable L3 cache indices
These files exist in every CPU’s cache/index3 directory. Each cache_disable_{0,1} file corresponds to one disable slot which can be used to disable a cache index. Reading from these files on a processor with this functionality will return the currently disabled index for that node. There is one L3 structure per node, or per internal node on MCM machines. Writing a valid index to one of these files will cause the specified cache index to be disabled.
All AMD processors with L3 caches provide this functionality. For details, see BKDGs at https://www.amd.com/en/support/tech-docs?keyword=bios+kernel
/sys/devices/system/cpu/cpuX/cpu_capacity |
Defined on file sysfs-devices-system-cpu
information about CPUs heterogeneity.
cpu_capacity: capacity of cpuX.
/sys/devices/system/cpu/cpuX/cpufreq/* |
Defined on file sysfs-devices-system-cpu
Discover and change clock speed of CPUs
Clock scaling allows you to change the clock speed of the CPUs on the fly. This is a nice method to save battery power, because the lower the clock speed, the less power the CPU consumes.
There are many knobs to tweak in this directory.
See files in Documentation/cpu-freq/ for more information.
/sys/devices/system/cpu/cpuX/cpufreq/freqdomain_cpus |
Defined on file sysfs-devices-system-cpu
Discover CPUs in the same CPU frequency coordination domain
freqdomain_cpus is the list of CPUs (online+offline) that share the same clock/freq domain (possibly at the hardware level). That information may be hidden from the cpufreq core and the value of related_cpus may be different from freqdomain_cpus. This attribute is useful for user space DVFS controllers to get better power/performance results for platforms using acpi-cpufreq.
This file is only present if the acpi-cpufreq or the cppc-cpufreq drivers are in use.
/sys/devices/system/cpu/cpuX/cpufreq/throttle_stats |
Defined on file sysfs-devices-system-cpu
POWERNV CPUFreq driver’s frequency throttle stats directory and attributes
‘cpuX/cpufreq/throttle_stats’ directory contains the CPU frequency throttle stat attributes for the chip. The throttle stats of a cpu is common across all the cpus belonging to a chip. Below are the throttle attributes exported in the ‘throttle_stats’ directory:
turbo_stat : This file gives the total number of times the max frequency is throttled to lower frequency in turbo (at and above nominal frequency) range of frequencies.
sub_turbo_stat : This file gives the total number of times the max frequency is throttled to lower frequency in sub-turbo(below nominal frequency) range of frequencies.
unthrottle : This file gives the total number of times the max frequency is unthrottled after being throttled.
powercap : This file gives the total number of times the max frequency is throttled due to ‘Power Capping’.
overtemp : This file gives the total number of times the max frequency is throttled due to ‘CPU Over Temperature’.
supply_fault : This file gives the total number of times the max frequency is throttled due to ‘Power Supply Failure’.
overcurrent : This file gives the total number of times the max frequency is throttled due to ‘Overcurrent’.
occ_reset : This file gives the total number of times the max frequency is throttled due to ‘OCC Reset’.
The sysfs attributes representing different throttle reasons like powercap, overtemp, supply_fault, overcurrent and occ_reset map to the reasons provided by OCC firmware for throttling the frequency.
/sys/devices/system/cpu/cpuX/cpuidle/state<N>/default_status |
Defined on file sysfs-devices-system-cpu
(RO) The default status of this state, “enabled” or “disabled”.
/sys/devices/system/cpu/cpuX/cpuidle/state<N>/desc |
Defined on file sysfs-devices-system-cpu
(RO) A small description about the idle state (string).
/sys/devices/system/cpu/cpuX/cpuidle/state<N>/disable |
Defined on file sysfs-devices-system-cpu
(RW) Option to disable this idle state (bool). The behavior and the effect of the disable variable depends on the implementation of a particular governor. In the ladder governor, for example, it is not coherent, i.e. if one is disabling a light state, then all deeper states are disabled as well, but the disable variable does not reflect it. Likewise, if one enables a deep state but a lighter state still is disabled, then this has no effect.
/sys/devices/system/cpu/cpuX/cpuidle/state<N>/name |
Defined on file sysfs-devices-system-cpu
The directory /sys/devices/system/cpu/cpuX/cpuidle contains per logical CPU specific cpuidle information for each online cpu X. The processor idle states which are available for use have the following attributes:
name: |
(RO) |
Name of the idle state (string). |
latency: |
(RO) |
The latency to exit out of this idle state (in microseconds). |
power: |
(RO) |
The power consumed while in this idle state (in milliwatts). |
time: |
(RO) |
The total time spent in this idle state (in microseconds). |
usage: |
(RO) |
Number of times this state was entered (a count). |
above: |
(RO) |
Number of times this state was entered, but the observed CPU idle duration was too short for it (a count). |
below: |
(RO) |
Number of times this state was entered, but the observed CPU idle duration was too long for it (a count). |
/sys/devices/system/cpu/cpuX/cpuidle/state<N>/residency |
Defined on file sysfs-devices-system-cpu
(RO) Display the target residency i.e. the minimum amount of time (in microseconds) this cpu should spend in this idle state to make the transition worth the effort.
/sys/devices/system/cpu/cpuX/cpuidle/state<N>/s2idle/ |
Defined on file sysfs-devices-system-cpu
Idle state usage statistics related to suspend-to-idle.
This attribute group is only present for states that can be used in suspend-to-idle with suspended timekeeping.
/sys/devices/system/cpu/cpuX/cpuidle/state<N>/s2idle/time |
Defined on file sysfs-devices-system-cpu
Total time spent by the CPU in suspend-to-idle (with scheduler tick suspended) after requesting this state.
/sys/devices/system/cpu/cpuX/cpuidle/state<N>/s2idle/usage |
Defined on file sysfs-devices-system-cpu
Total number of times this state has been requested by the CPU while entering suspend-to-idle.
/sys/devices/system/cpu/cpuX/crash_notes |
Defined on file sysfs-devices-system-cpu
address and size of the percpu note.
crash_notes: the physical address of the memory that holds the note of cpuX.
crash_notes_size: size of the note of cpuX.
/sys/devices/system/cpu/cpuX/idle_purr |
Defined on file sysfs-devices-system-cpu
PURR ticks for cpuX when it was idle.
This sysfs interface exposes the number of PURR ticks for cpuX when it was idle.
/sys/devices/system/cpu/cpuX/idle_spurr |
Defined on file sysfs-devices-system-cpu
SPURR ticks for cpuX when it was idle.
This sysfs interface exposes the number of SPURR ticks for cpuX when it was idle.
/sys/devices/system/cpu/cpuX/mte_tcf_preferred |
Defined on file sysfs-devices-system-cpu
Preferred MTE tag checking mode
When a user program specifies more than one MTE tag checking mode, this sysfs node is used to specify which mode should be preferred when scheduling a task on that CPU. Possible values:
“sync” |
Prefer synchronous mode |
“asymm” |
Prefer asymmetric mode |
“async” |
Prefer asynchronous mode |
See also: Memory Tagging Extension (MTE) in AArch64 Linux
/sys/devices/system/cpu/cpuX/node |
Defined on file sysfs-devices-system-cpu
Discover NUMA node a CPU belongs to
When CONFIG_NUMA is enabled, a symbolic link that points to the corresponding NUMA node directory.
For example, the following symlink is created for cpu42 in NUMA node 2:
/sys/devices/system/cpu/cpu42/node2 -> ../../node/node2
/sys/devices/system/cpu/cpuX/power/energy_perf_bias |
Defined on file sysfs-devices-system-cpu
Intel Energy and Performance Bias Hint (EPB)
EPB for the given CPU in a sliding scale 0 - 15, where a value of 0 corresponds to a hint preference for highest performance and a value of 15 corresponds to the maximum energy savings.
In order to change the EPB value for the CPU, write either a number in the 0 - 15 sliding scale above, or one of the strings: “performance”, “balance-performance”, “normal”, “balance-power”, “power” (that represent values reflected by their meaning), to this attribute.
This attribute is present for all online CPUs supporting the Intel EPB feature.
/sys/devices/system/cpu/cpuX/purr |
Defined on file sysfs-devices-system-cpu
PURR ticks for this CPU since the system boot.
The Processor Utilization Resources Register (PURR) is a 64-bit counter which provides an estimate of the resources used by the CPU thread. The contents of this register increases monotonically. This sysfs interface exposes the number of PURR ticks for cpuX.
/sys/devices/system/cpu/cpuX/regs/ |
Defined on file sysfs-devices-system-cpu
AArch64 CPU registers
‘identification’ directory exposes the CPU ID registers for identifying model and revision of the CPU and SMCU.
/sys/devices/system/cpu/cpuX/spurr |
Defined on file sysfs-devices-system-cpu
SPURR ticks for this CPU since the system boot.
The Scaled Processor Utilization Resources Register (SPURR) is a 64-bit counter that provides a frequency invariant estimate of the resources used by the CPU thread. The contents of this register increases monotonically. This sysfs interface exposes the number of SPURR ticks for cpuX.
/sys/devices/system/cpu/cpuX/topology/core_siblings |
Defined on file sysfs-devices-system-cpu
CPU topology files that describe a logical CPU’s relationship to other cores and threads in the same physical package.
One cpuX directory is created per logical CPU in the system, e.g. /sys/devices/system/cpu/cpu42/.
Briefly, the files above are:
core_siblings: internal kernel map of cpuX’s hardware threads within the same physical_package_id.
core_siblings_list: human-readable list of the logical CPU numbers within the same physical_package_id as cpuX.
physical_package_id: physical package id of cpuX. Typically corresponds to a physical socket number, but the actual value is architecture and platform dependent.
thread_siblings: internal kernel map of cpuX’s hardware threads within the same core as cpuX
thread_siblings_list: human-readable list of cpuX’s hardware threads within the same core as cpuX
ppin: human-readable Protected Processor Identification Number of the socket the cpu# belongs to. There should be one per physical_package_id. File is readable only to admin.
See How CPU topology info is exported via sysfs for more information.
/sys/devices/system/cpu/cpufreq/boost |
Defined on file sysfs-devices-system-cpu
Processor frequency boosting control
This switch controls the boost setting for the whole system. Boosting allows the CPU and the firmware to run at a frequency beyond its nominal limit.
More details can be found in CPU Performance Scaling
/sys/devices/system/cpu/cpufreq/policyX/throttle_stats |
Defined on file sysfs-devices-system-cpu
POWERNV CPUFreq driver’s frequency throttle stats directory and attributes
‘policyX/throttle_stats’ directory and all the attributes are same as the /sys/devices/system/cpu/cpuX/cpufreq/throttle_stats directory and attributes which give the frequency throttle information of the chip.
/sys/devices/system/cpu/cpuidle/available_governors |
Defined on file sysfs-devices-system-cpu
Discover cpuidle policy and mechanism
Various CPUs today support multiple idle levels that are differentiated by varying exit latencies and power consumption during idle.
Idle policy (governor) is differentiated from idle mechanism (driver).
available_governors: (RO) displays a space separated list of available governors.
current_driver: (RO) displays current idle mechanism.
current_governor: (RW) displays current idle policy. Users can switch the governor at runtime by writing to this file.
current_governor_ro: (RO) displays current idle policy.
See CPU Idle Time Management and CPU Idle Time Management for more information.
/sys/devices/system/cpu/crash_hotplug |
Defined on file sysfs-devices-system-cpu
(RO) indicates whether or not the kernel updates relevant kexec segments on memory hot un/plug and/or on/offline events, avoiding the need to reload kdump kernel.
/sys/devices/system/cpu/enabled |
Defined on file sysfs-devices-system-cpu
(RO) the list of CPUs that can be brought online.
/sys/devices/system/cpu/intel_pstate/max_perf_pct |
Defined on file sysfs-devices-system-cpu
Parameters for the Intel P-state driver
Logic for selecting the current P-state in Intel Sandybridge+ processors. The three knobs control limits for the P-state that will be requested by the driver.
max_perf_pct: limits the maximum P state that will be requested by the driver stated as a percentage of the available performance.
min_perf_pct: limits the minimum P state that will be requested by the driver stated as a percentage of the available performance.
no_turbo: limits the driver to selecting P states below the turbo frequency range.
More details can be found in intel_pstate CPU Performance Scaling Driver
/sys/devices/system/cpu/isolated |
Defined on file sysfs-devices-system-cpu
(RO) the list of CPUs that are isolated and don’t participate in load balancing. These CPUs are set by boot parameter “isolcpus=”.
/sys/devices/system/cpu/kernel_max |
Defined on file sysfs-devices-system-cpu
CPU topology files that describe kernel limits related to hotplug. Briefly:
kernel_max: the maximum cpu index allowed by the kernel configuration.
offline: cpus that are not online because they have been HOTPLUGGED off or exceed the limit of cpus allowed by the kernel configuration (kernel_max above).
online: cpus that are online and being scheduled.
possible: cpus that have been allocated resources and can be brought online if they are present.
present: cpus that have been identified as being present in the system.
See How CPU topology info is exported via sysfs for more information.
/sys/devices/system/cpu/nohz_full |
Defined on file sysfs-devices-system-cpu
(RO) the list of CPUs that are in nohz_full mode. These CPUs are set by boot parameter “nohz_full=”.
/sys/devices/system/cpu/probe |
Defined on file sysfs-devices-system-cpu
Dynamic addition and removal of CPU’s. This is not hotplug removal, this is meant complete removal/addition of the CPU from the system.
probe: writes to this file will dynamically add a CPU to the system. Information written to the file to add CPU’s is architecture specific.
release: writes to this file dynamically remove a CPU from the system. Information written to the file to remove CPU’s is architecture specific.
/sys/devices/system/cpu/sev |
Defined on file sysfs-devices-system-cpu
Secure Encrypted Virtualization (SEV) information
This directory is only present when running as an SEV-SNP guest.
- vmpl: Reports the Virtual Machine Privilege Level (VMPL) at which
the SEV-SNP guest is running.
/sys/devices/system/cpu/smt |
Defined on file sysfs-devices-system-cpu
Control Symmetric Multi Threading (SMT)
active: Tells whether SMT is active (enabled and siblings online)
- control: Read/write interface to control SMT. Possible
values:
“on”
SMT is enabled
“off”
SMT is disabled
“<N>”
SMT is enabled with N threads per core.
“forceoff”
SMT is force disabled. Cannot be changed.
“notsupported”
SMT is not supported by the CPU
“notimplemented”
SMT runtime toggling is not implemented for the architecture
If control status is “forceoff” or “notsupported” writes are rejected. Note that enabling SMT on PowerPC skips offline cores.
/sys/devices/system/cpu/svm |
Defined on file sysfs-devices-system-cpu
Secure Virtual Machine
If 1, it means the system is using the Protected Execution Facility in POWER9 and newer processors. i.e., it is a Secure Virtual Machine.
/sys/devices/system/cpu/umwait_control |
Defined on file sysfs-devices-system-cpu
Umwait control
- enable_c02: Read/write interface to control umwait C0.2 state
- Read returns C0.2 state status:
0: C0.2 is disabled 1: C0.2 is enabled
Write ‘y’ or ‘1’ or ‘on’ to enable C0.2 state. Write ‘n’ or ‘0’ or ‘off’ to disable C0.2 state.
The interface is case insensitive.
- max_time: Read/write interface to control umwait maximum time
in TSC-quanta that the CPU can reside in either C0.1 or C0.2 state. The time is an unsigned 32-bit number. Note that a value of zero means there is no limit. Low order two bits must be zero.
/sys/devices/system/cpu/vulnerabilities |
Defined on file sysfs-devices-system-cpu
Information about CPU vulnerabilities
The files are named after the code names of CPU vulnerabilities. The output of those files reflects the state of the CPUs in the system. Possible output values:
“Not affected” |
CPU is not affected by the vulnerability |
“Vulnerable” |
CPU is affected and no mitigation in effect |
“Mitigation: $M” |
CPU is affected and mitigation $M is in effect |
See also: Hardware vulnerabilities
/sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_ce_count |
Defined on file sysfs-devices-edac
This attribute file displays the total count of correctable errors that have occurred on this DIMM. This count is very important to examine. CEs provide early indications that a DIMM is beginning to fail. This count field should be monitored for non-zero values and report such information to the system administrator.
/sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_dev_type |
Defined on file sysfs-devices-edac
This attribute file will display what type of DRAM device is being utilized on this DIMM (x1, x2, x4, x8, ...).
/sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_edac_mode |
Defined on file sysfs-devices-edac
This attribute file will display what type of Error detection and correction is being utilized. For example: S4ECD4ED would mean a Chipkill with x4 DRAM.
/sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_label |
Defined on file sysfs-devices-edac
This control file allows this DIMM to have a label assigned to it. With this label in the module, when errors occur the output can provide the DIMM label in the system log. This becomes vital for panic events to isolate the cause of the UE event. DIMM Labels must be assigned after booting, with information that correctly identifies the physical slot with its silk screen label. This information is currently very motherboard specific and determination of this information must occur in userland at this time.
/sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_location |
Defined on file sysfs-devices-edac
This attribute file will display the location (csrow/channel, branch/channel/slot or channel/slot) of the dimm or rank.
/sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_mem_type |
Defined on file sysfs-devices-edac
This attribute file will display what type of memory is currently on this csrow. Normally, either buffered or unbuffered memory (for example, Unbuffered-DDR3).
/sys/devices/system/edac/mc/mc*/(dimm|rank)*/dimm_ue_count |
Defined on file sysfs-devices-edac
This attribute file displays the total count of uncorrectable errors that have occurred on this DIMM. If panic_on_ue is set, this counter will not have a chance to increment, since EDAC will panic the system
/sys/devices/system/edac/mc/mc*/(dimm|rank)*/size |
Defined on file sysfs-devices-edac
This attribute file will display the size of dimm or rank. For dimm*/size, this is the size, in MB of the DIMM memory stick. For rank*/size, this is the size, in MB for one rank of the DIMM memory stick. On single rank memories (1R), this is also the total size of the dimm. On dual rank (2R) memories, this is half the size of the total DIMM memories.
/sys/devices/system/edac/mc/mc*/ce_count |
Defined on file sysfs-devices-edac
This attribute file displays the total count of correctable errors that have occurred on this memory controller. This count is very important to examine. CEs provide early indications that a DIMM is beginning to fail. This count field should be monitored for non-zero values and report such information to the system administrator.
/sys/devices/system/edac/mc/mc*/ce_noinfo_count |
Defined on file sysfs-devices-edac
This attribute file displays the number of CEs that have occurred on this memory controller wherewith no information as to which DIMM slot is having errors. Memory is handicapped, but operational, yet no information is available to indicate which slot the failing memory is in. This count field should be also be monitored for non-zero values.
/sys/devices/system/edac/mc/mc*/max_location |
Defined on file sysfs-devices-edac
This attribute file displays the information about the last available memory slot in this memory controller. It is used by userspace tools in order to display the memory filling layout.
/sys/devices/system/edac/mc/mc*/mc_name |
Defined on file sysfs-devices-edac
This attribute file displays the type of memory controller that is being utilized.
/sys/devices/system/edac/mc/mc*/reset_counters |
Defined on file sysfs-devices-edac
This write-only control file will zero all the statistical counters for UE and CE errors on the given memory controller. Zeroing the counters will also reset the timer indicating how long since the last counter were reset. This is useful for computing errors/time. Since the counters are always reset at driver initialization time, no module/kernel parameter is available.
/sys/devices/system/edac/mc/mc*/sdram_scrub_rate |
Defined on file sysfs-devices-edac
Read/Write attribute file that controls memory scrubbing. The scrubbing rate used by the memory controller is set by writing a minimum bandwidth in bytes/sec to the attribute file. The rate will be translated to an internal value that gives at least the specified rate. Reading the file will return the actual scrubbing rate employed. If configuration fails or memory scrubbing is not implemented, the value of the attribute file will be -1.
/sys/devices/system/edac/mc/mc*/seconds_since_reset |
Defined on file sysfs-devices-edac
This attribute file displays how many seconds have elapsed since the last counter reset. This can be used with the error counters to measure error rates.
/sys/devices/system/edac/mc/mc*/size_mb |
Defined on file sysfs-devices-edac
This attribute file displays, in count of megabytes, of memory that this memory controller manages.
/sys/devices/system/edac/mc/mc*/ue_count |
Defined on file sysfs-devices-edac
This attribute file displays the total count of uncorrectable errors that have occurred on this memory controller. If panic_on_ue is set, this counter will not have a chance to increment, since EDAC will panic the system
/sys/devices/system/edac/mc/mc*/ue_noinfo_count |
Defined on file sysfs-devices-edac
This attribute file displays the number of UEs that have occurred on this memory controller with no information as to which DIMM slot is having errors.
/sys/devices/system/ibm_rtl/state |
Defined on file sysfs-devices-system-ibm-rtl
The state file allows a means by which to change in and out of Premium Real-Time Mode (PRTM), as well as the ability to query the current state.
0 => PRTM off
1 => PRTM enabled
Users: The ibm-prtm userspace daemon uses this interface.
/sys/devices/system/ibm_rtl/version |
Defined on file sysfs-devices-system-ibm-rtl
The version file provides a means by which to query the RTL table version that lives in the Extended BIOS Data Area (EBDA).
Users: The ibm-prtm userspace daemon uses this interface.
/sys/devices/system/machinecheck/machinecheckX/ |
Defined on file sysfs-mce
(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.
/sys/devices/system/machinecheck/machinecheckX/bank<Y> |
Defined on file sysfs-mce
(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
/sys/devices/system/machinecheck/machinecheckX/check_interval |
Defined on file sysfs-mce
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)
/sys/devices/system/machinecheck/machinecheckX/cmci_disabled |
Defined on file sysfs-mce
Disables the CMCI feature.
/sys/devices/system/machinecheck/machinecheckX/dont_log_ce |
Defined on file sysfs-mce
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.
/sys/devices/system/machinecheck/machinecheckX/ignore_ce |
Defined on file sysfs-mce
Disables polling and CMCI for corrected errors. All corrected events are not cleared and kept in bank MSRs.
/sys/devices/system/machinecheck/machinecheckX/monarch_timeout |
Defined on file sysfs-mce
How long to wait for the other CPUs to machine check too on a exception. 0 to disable waiting for other CPUs.
Unit: us
/sys/devices/system/machinecheck/machinecheckX/trigger |
Defined on file sysfs-mce
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.
/sys/devices/system/memory |
Defined on file sysfs-devices-memory
The /sys/devices/system/memory contains a snapshot of the internal state of the kernel memory blocks. Files could be added or removed dynamically to represent hot-add/remove operations.
Users: hotplug memory add/remove tools http://www.ibm.com/developerworks/wikis/display/LinuxP/powerpc-utils
/sys/devices/system/memory/crash_hotplug |
Defined on file sysfs-devices-memory
(RO) indicates whether or not the kernel updates relevant kexec segments on memory hot un/plug and/or on/offline events, avoiding the need to reload kdump kernel.
/sys/devices/system/memory/hard_offline_page |
Defined on file sysfs-memory-page-offline
Hard-offline the memory page containing the physical address written into this file. Input is a hex number specifying the physical address of the page. The kernel will then attempt to hard-offline the page, by trying to drop the page or killing any owner or triggering IO errors if needed. Note this may kill any processes owning the page. The kernel will avoid to access this page assuming it’s poisoned by the hardware.
The offlining is done in kernel specific granularity. Normally it’s the base page size of the kernel, but this might change.
Return value is the size of the number, or a error when the offlining failed. Reading the file is not allowed.
/sys/devices/system/memory/memoryX/phys_device |
Defined on file sysfs-devices-memory
The file /sys/devices/system/memory/memoryX/phys_device is read-only; it is a legacy interface only ever used on s390x to expose the covered storage increment.
Users: Legacy s390-tools lsmem/chmem
/sys/devices/system/memory/memoryX/phys_index |
Defined on file sysfs-devices-memory
The file /sys/devices/system/memory/memoryX/phys_index is read-only and contains the section ID in hexadecimal which is equivalent to decimal X contained in the memory section directory name.
/sys/devices/system/memory/memoryX/removable |
Defined on file sysfs-devices-memory
The file /sys/devices/system/memory/memoryX/removable is a legacy interface used to indicated whether a memory block is likely to be offlineable or not. Newer kernel versions return “1” if and only if the kernel supports memory offlining.
Users: hotplug memory remove tools http://www.ibm.com/developerworks/wikis/display/LinuxP/powerpc-utils lsmem/chmem part of util-linux
/sys/devices/system/memory/memoryX/state |
Defined on file sysfs-devices-memory
The file /sys/devices/system/memory/memoryX/state is read-write. When read, it returns the online/offline state of the memory block. When written, root can toggle the online/offline state of a memory block using the following commands:
# echo online > /sys/devices/system/memory/memoryX/state
# echo offline > /sys/devices/system/memory/memoryX/state
On newer kernel versions, advanced states can be specified when onlining to select a target zone: “online_movable” selects the movable zone. “online_kernel” selects the applicable kernel zone (DMA, DMA32, or Normal). However, after successfully setting one of the advanced states, reading the file will return “online”; the zone information can be obtained via “valid_zones” instead.
While onlining is unlikely to fail, there are no guarantees that offlining will succeed. Offlining is more likely to succeed if “valid_zones” indicates “Movable”.
Users: hotplug memory remove tools http://www.ibm.com/developerworks/wikis/display/LinuxP/powerpc-utils
/sys/devices/system/memory/memoryX/valid_zones |
Defined on file sysfs-devices-memory
The file /sys/devices/system/memory/memoryX/valid_zones is read-only.
For online memory blocks, it returns in which zone memory provided by a memory block is managed. If multiple zones apply (not applicable for hotplugged memory), “None” is returned and the memory block cannot be offlined.
For offline memory blocks, it returns by which zone memory provided by a memory block can be managed when onlining. The first returned zone (“default”) will be used when setting the state of an offline memory block to “online”. Only one of the kernel zones (DMA, DMA32, Normal) is applicable for a single memory block.
/sys/devices/system/memory/soft_offline_page |
Defined on file sysfs-memory-page-offline
Soft-offline the memory page containing the physical address written into this file. Input is a hex number specifying the physical address of the page. The kernel will then attempt to soft-offline it, by moving the contents elsewhere or dropping it if possible. The kernel will then be placed on the bad page list and never be reused.
The offlining is done in kernel specific granularity. Normally it’s the base page size of the kernel, but this might change.
The page must be still accessible, not poisoned. The kernel will never kill anything for this, but rather fail the offline. Return value is the size of the number, or a error when the offlining failed. Reading the file is not allowed.
/sys/devices/system/memoryX/nodeY |
Defined on file sysfs-devices-memory
When CONFIG_NUMA is enabled, a symbolic link that points to the corresponding NUMA node directory.
For example, the following symbolic link is created for memory section 9 on node0:
/sys/devices/system/memory/memory9/node0 -> ../../node/node0
/sys/devices/system/node/nodeX/memoryY |
Defined on file sysfs-devices-memory
When CONFIG_NUMA is enabled /sys/devices/system/node/nodeX/memoryY is a symbolic link that points to the corresponding /sys/devices/system/memory/memoryY memory section directory. For example, the following symbolic link is created for memory section 9 on node0.
/sys/devices/system/node/node0/memory9 -> ../../memory/memory9
/sys/devices/system/xen_cpu/ |
Defined on file sysfs-devices-system-xen_cpu
A collection of global/individual Xen physical cpu attributes
Individual physical cpu attributes are contained in subdirectories named by the Xen’s logical cpu number, e.g.: /sys/devices/system/xen_cpu/xen_cpu#/
/sys/devices/system/xen_cpu/xen_cpu#/online |
Defined on file sysfs-devices-system-xen_cpu
Interface to online/offline Xen physical cpus
When running under Xen platform, it provide user interface to online/offline physical cpus, except cpu0 due to several logic restrictions and assumptions.
/sys/devices/uncore_iio_x/dieX |
Defined on file sysfs-devices-mapping
Each IIO stack (PCIe root port) has its own IIO PMON block, so each dieX file (where X is die number) holds “Segment:Root Bus” for PCIe root port, which can be monitored by that IIO PMON block. For example, on 4-die Xeon platform with up to 6 IIO stacks per die and, therefore, 6 IIO PMON blocks per die, the mapping of IIO PMON block 0 exposes as the following:
$ ls /sys/devices/uncore_iio_0/die*
-r--r--r-- /sys/devices/uncore_iio_0/die0
-r--r--r-- /sys/devices/uncore_iio_0/die1
-r--r--r-- /sys/devices/uncore_iio_0/die2
-r--r--r-- /sys/devices/uncore_iio_0/die3
$ tail /sys/devices/uncore_iio_0/die*
==> /sys/devices/uncore_iio_0/die0 <==
0000:00
==> /sys/devices/uncore_iio_0/die1 <==
0000:40
==> /sys/devices/uncore_iio_0/die2 <==
0000:80
==> /sys/devices/uncore_iio_0/die3 <==
0000:c0
Which means:
IIO PMU 0 on die 0 belongs to PCI RP on bus 0x00, domain 0x0000
IIO PMU 0 on die 1 belongs to PCI RP on bus 0x40, domain 0x0000
IIO PMU 0 on die 2 belongs to PCI RP on bus 0x80, domain 0x0000
IIO PMU 0 on die 3 belongs to PCI RP on bus 0xc0, domain 0x0000
/sys/devices/uncore_upi_x/dieX |
Defined on file sysfs-devices-mapping
Each /sys/devices/uncore_upi_X/dieY file holds “upi_Z,die_W” value that means UPI link number X on die Y is connected to UPI link Z on die W and this link between sockets can be monitored by UPI PMON block. For example, 4-die Sapphire Rapids platform has the following UPI 0 topology:
# tail /sys/devices/uncore_upi_0/die*
==> /sys/devices/uncore_upi_0/die0 <==
upi_1,die_1
==> /sys/devices/uncore_upi_0/die1 <==
upi_0,die_3
==> /sys/devices/uncore_upi_0/die2 <==
upi_1,die_3
==> /sys/devices/uncore_upi_0/die3 <==
upi_0,die_1
Which means:
UPI link 0 on die 0 is connected to UPI link 1 on die 1
UPI link 0 on die 1 is connected to UPI link 0 on die 3
UPI link 0 on die 2 is connected to UPI link 1 on die 3
UPI link 0 on die 3 is connected to UPI link 0 on die 1
/sys/devices/virtual/memory_tiering/ |
Defined on file sysfs-kernel-mm-memory-tiers
A collection of all the memory tiers allocated.
Individual memory tier details are contained in subdirectories named by the abstract distance of the memory tier.
/sys/devices/virtual/memory_tiering/memory_tierN/
/sys/devices/virtual/memory_tiering/memory_tierN/ |
Defined on file sysfs-kernel-mm-memory-tiers
Directory with details of a specific memory tier
This is the directory containing information about a particular memory tier, memtierN, where N is derived based on abstract distance.
A smaller value of N implies a higher (faster) memory tier in the hierarchy.
nodelist: NUMA nodes that are part of this memory tier.
/sys/devices/virtual/misc/intel_ifs_<N>/current_batch |
Defined on file sysfs-platform-intel-ifs
Write a number less than or equal to 0xff to load an IFS test image. The number written treated as the 2 digit suffix in the following file name: /lib/firmware/intel/ifs_<N>/ff-mm-ss-02x.scan Reading the file will provide the suffix of the currently loaded IFS test image. This file is present only for device instances where a test image is applicable. Devices: intel_ifs_0
/sys/devices/virtual/misc/intel_ifs_<N>/details |
Defined on file sysfs-platform-intel-ifs
Additional information regarding the last test. The details file reports the hex value of the STATUS MSR for this test. Note that the error_code field may contain driver defined software code not defined in the Intel SDM. Devices: all
/sys/devices/virtual/misc/intel_ifs_<N>/image_version |
Defined on file sysfs-platform-intel-ifs
Version (hexadecimal) of loaded IFS test image. If no test image is loaded reports “none”. Only present for device instances where a test image is applicable. Devices: intel_ifs_0
/sys/devices/virtual/misc/intel_ifs_<N>/run_test |
Defined on file sysfs-platform-intel-ifs
Write <cpu#> to trigger IFS test for one online core. Note that the test is per core. The cpu# can be for any thread on the core. Running on one thread completes the test for the core containing that thread. Example: to test the core containing cpu5: echo 5 > /sys/devices/virtual/misc/intel_ifs_<N>/run_test Devices: all
/sys/devices/virtual/misc/intel_ifs_<N>/status |
Defined on file sysfs-platform-intel-ifs
The status of the last test. It can be one of “pass”, “fail” or “untested”. Devices: all
Symbols under /sys/firmware¶
/sys/firmware/acpi/bgrt/ |
Defined on file sysfs-firmware-acpi
The BGRT is an ACPI 5.0 feature that allows the OS to obtain a copy of the firmware boot splash and some associated metadata. This is intended to be used by boot splash applications in order to interact with the firmware boot splash in order to avoid jarring transitions.
image: The image bitmap. Currently a 32-bit BMP. status: 1 if the image is valid, 0 if firmware invalidated it. type: 0 indicates image is in BMP format.
version: |
The version of the BGRT. Currently 1. |
xoffset: |
The number of pixels between the left of the screen and the left edge of the image. |
yoffset: |
The number of pixels between the top of the screen and the top edge of the image. |
/sys/firmware/acpi/fpdt/ |
Defined on file sysfs-firmware-acpi
ACPI Firmware Performance Data Table (FPDT) provides information for firmware performance data for system boot, S3 suspend and S3 resume. This sysfs entry contains the performance data retrieved from the FPDT.
- boot:
- firmware_start_ns: Timer value logged at the beginning
of firmware image execution. In nanoseconds.
- bootloader_load_ns: Timer value logged just prior to
loading the OS boot loader into memory. In nanoseconds.
- bootloader_launch_ns: Timer value logged just prior to
launching the currently loaded OS boot loader image. In nanoseconds.
- exitbootservice_start_ns: Timer value logged at the
point when the OS loader calls the ExitBootServices function for UEFI compatible firmware. In nanoseconds.
- exitbootservice_end_ns: Timer value logged at the point
just prior to the OS loader gaining control back from the ExitBootServices function for UEFI compatible firmware. In nanoseconds.
- suspend:
- suspend_start_ns: Timer value recorded at the previous
OS write to SLP_TYP upon entry to S3. In nanoseconds.
- suspend_end_ns: Timer value recorded at the previous
firmware write to SLP_TYP used to trigger hardware entry to S3. In nanoseconds.
- resume:
- resume_count: A count of the number of S3 resume cycles
since the last full boot sequence.
- resume_avg_ns: Average timer value of all resume cycles
logged since the last full boot sequence, including the most recent resume. In nanoseconds.
- resume_prev_ns: Timer recorded at the end of the previous
platform runtime firmware S3 resume, just prior to handoff to the OS waking vector. In nanoseconds.
/sys/firmware/acpi/hotplug/ |
Defined on file sysfs-firmware-acpi
There are separate hotplug profiles for different classes of devices supported by ACPI, such as containers, memory modules, processors, PCI root bridges etc. A hotplug profile for a given class of devices is a collection of settings defining the way that class of devices will be handled by the ACPI core hotplug code. Those profiles are represented in sysfs as subdirectories of /sys/firmware/acpi/hotplug/.
The following setting is available to user space for each hotplug profile:
enabled: |
If set, the ACPI core will handle notifications of hotplug events associated with the given class of devices and will allow those devices to be ejected with the help of the _EJ0 control method. Unsetting it effectively disables hotplug for the corresponding class of devices. |
The value of the above attribute is an integer number: 1 (set) or 0 (unset). Attempts to write any other values to it will cause -EINVAL to be returned.
/sys/firmware/acpi/interrupts/ |
Defined on file sysfs-firmware-acpi
All ACPI interrupts are handled via a single IRQ, the System Control Interrupt (SCI), which appears as “acpi” in /proc/interrupts.
However, one of the main functions of ACPI is to make the platform understand random hardware without special driver support. So while the SCI handles a few well known (fixed feature) interrupts sources, such as the power button, it can also handle a variable number of a “General Purpose Events” (GPE).
A GPE vectors to a specified handler in AML, which can do a anything the BIOS writer wants from OS context. GPE 0x12, for example, would vector to a level or edge handler called _L12 or _E12. The handler may do its business and return. Or the handler may send send a Notify event to a Linux device driver registered on an ACPI device, such as a battery, or a processor.
To figure out where all the SCI’s are coming from, /sys/firmware/acpi/interrupts contains a file listing every possible source, and the count of how many times it has triggered:
$ cd /sys/firmware/acpi/interrupts
$ grep . *
error: 0
ff_gbl_lock: 0 enable
ff_pmtimer: 0 invalid
ff_pwr_btn: 0 enable
ff_rt_clk: 2 disable
ff_slp_btn: 0 invalid
gpe00: 0 invalid
gpe01: 0 enable
gpe02: 108 enable
gpe03: 0 invalid
gpe04: 0 invalid
gpe05: 0 invalid
gpe06: 0 enable
gpe07: 0 enable
gpe08: 0 invalid
gpe09: 0 invalid
gpe0A: 0 invalid
gpe0B: 0 invalid
gpe0C: 0 invalid
gpe0D: 0 invalid
gpe0E: 0 invalid
gpe0F: 0 invalid
gpe10: 0 invalid
gpe11: 0 invalid
gpe12: 0 invalid
gpe13: 0 invalid
gpe14: 0 invalid
gpe15: 0 invalid
gpe16: 0 invalid
gpe17: 1084 enable
gpe18: 0 enable
gpe19: 0 invalid
gpe1A: 0 invalid
gpe1B: 0 invalid
gpe1C: 0 invalid
gpe1D: 0 invalid
gpe1E: 0 invalid
gpe1F: 0 invalid
gpe_all: 1192
sci: 1194
sci_not: 0
sci |
The number of times the ACPI SCI has been called and claimed an interrupt. |
sci_not |
The number of times the ACPI SCI has been called and NOT claimed an interrupt. |
gpe_all |
count of SCI caused by GPEs. |
gpeXX |
count for individual GPE source |
ff_gbl_lock |
Global Lock |
ff_pmtimer |
PM Timer |
ff_pwr_btn |
Power Button |
ff_rt_clk |
Real Time Clock |
ff_slp_btn |
Sleep Button |
error |
an interrupt that can’t be accounted for above. |
invalid |
it’s either a GPE or a Fixed Event that doesn’t have an event handler. |
disable |
the GPE/Fixed Event is valid but disabled. |
enable |
the GPE/Fixed Event is valid and enabled. |
Root has permission to clear any of these counters. Eg.:
# echo 0 > gpe11
All counters can be cleared by clearing the total “sci”:
# echo 0 > sci
None of these counters has an effect on the function of the system, they are simply statistics.
Besides this, user can also write specific strings to these files to enable/disable/clear ACPI interrupts in user space, which can be used to debug some ACPI interrupt storm issues.
Note that only writing to VALID GPE/Fixed Event is allowed, i.e. user can only change the status of runtime GPE and Fixed Event with event handler installed.
Let’s take power button fixed event for example, please kill acpid and other user space applications so that the machine won’t shutdown when pressing the power button:
# cat ff_pwr_btn
0 enabled
# press the power button for 3 times;
# cat ff_pwr_btn
3 enabled
# echo disable > ff_pwr_btn
# cat ff_pwr_btn
3 disabled
# press the power button for 3 times;
# cat ff_pwr_btn
3 disabled
# echo enable > ff_pwr_btn
# cat ff_pwr_btn
4 enabled
/*
* this is because the status bit is set even if the enable
* bit is cleared, and it triggers an ACPI fixed event when
* the enable bit is set again
*/
# press the power button for 3 times;
# cat ff_pwr_btn
7 enabled
# echo disable > ff_pwr_btn
# press the power button for 3 times;
# echo clear > ff_pwr_btn /* clear the status bit */
# echo disable > ff_pwr_btn
# cat ff_pwr_btn
7 enabled
/sys/firmware/acpi/platform_profile |
Defined on file sysfs-platform_profile
Reading this file gives the current selected profile for this device. Writing this file with one of the strings from platform_profile_choices changes the profile to the new value.
This file can be monitored for changes by polling for POLLPRI, POLLPRI will be signalled on any changes, independent of those changes coming from a userspace write; or coming from another source such as e.g. a hotkey triggered profile change handled either directly by the embedded-controller or fully handled inside the kernel.
/sys/firmware/acpi/platform_profile_choices |
Defined on file sysfs-platform_profile
This file contains a space-separated list of profiles supported for this device.
Drivers must use the following standard profile-names:
low-power |
Low power consumption |
cool |
Cooler operation |
quiet |
Quieter operation |
balanced |
Balance between low power consumption and performance |
balanced-performance |
Balance between performance and low power consumption with a slight bias towards performance |
performance |
High performance operation |
Userspace may expect drivers to offer more than one of these standard profile names.
/sys/firmware/devicetree/* |
Defined on file sysfs-firmware-ofw
When using OpenFirmware or a Flattened Device Tree to enumerate hardware, the device tree structure will be exposed in this directory.
It is possible for multiple device-tree directories to exist. Some device drivers use a separate detached device tree which have no attachment to the system tree and will appear in a different subdirectory under /sys/firmware/devicetree.
Userspace must not use the /sys/firmware/devicetree/base path directly, but instead should follow /proc/device-tree symlink. It is possible that the absolute path will change in the future, but the symlink is the stable ABI.
The /proc/device-tree symlink replaces the devicetree /proc filesystem support, and has largely the same semantics and should be compatible with existing userspace.
The contents of /sys/firmware/devicetree/ is a hierarchy of directories, one per device tree node. The directory name is the resolved path component name (node name plus address). Properties are represented as files in the directory. The contents of each file is the exact binary data from the device tree.
/sys/firmware/dmi/entries/ |
Defined on file sysfs-firmware-dmi-entries
Many machines’ firmware (x86 and arm64) export DMI / SMBIOS tables to the operating system. Getting at this information is often valuable to userland, especially in cases where there are OEM extensions used.
The kernel itself does not rely on the majority of the information in these tables being correct. It equally cannot ensure that the data as exported to userland is without error either.
DMI is structured as a large table of entries, where each entry has a common header indicating the type and length of the entry, as well as a firmware-provided ‘handle’ that is supposed to be unique amongst all entries.
Some entries are required by the specification, but many others are optional. In general though, users should never expect to find a specific entry type on their system unless they know for certain what their firmware is doing. Machine to machine experiences will vary.
Multiple entries of the same type are allowed. In order to handle these duplicate entry types, each entry is assigned by the operating system an ‘instance’, which is derived from an entry type’s ordinal position. That is to say, if there are ‘N’ multiple entries with the same type ‘T’ in the DMI tables (adjacent or spread apart, it doesn’t matter), they will be represented in sysfs as entries “T-0” through “T-(N-1)”:
Example entry directories:
/sys/firmware/dmi/entries/17-0
/sys/firmware/dmi/entries/17-1
/sys/firmware/dmi/entries/17-2
/sys/firmware/dmi/entries/17-3
...
Instance numbers are used in lieu of the firmware assigned entry handles as the kernel itself makes no guarantees that handles as exported are unique, and there are likely firmware images that get this wrong in the wild.
Each DMI entry in sysfs has the common header values exported as attributes:
handle |
The 16bit ‘handle’ that is assigned to this entry by the firmware. This handle may be referred to by other entries. |
length |
The length of the entry, as presented in the entry itself. Note that this is _not the total count of bytes associated with the entry. This value represents the length of the “formatted” portion of the entry. This “formatted” region is sometimes followed by the “unformatted” region composed of nul terminated strings, with termination signalled by a two nul characters in series. |
raw |
The raw bytes of the entry. This includes the “formatted” portion of the entry, the “unformatted” strings portion of the entry, and the two terminating nul characters. |
type |
The type of the entry. This value is the same as found in the directory name. It indicates how the rest of the entry should be interpreted. |
instance |
The instance ordinal of the entry for the given type. This value is the same as found in the parent directory name. |
position |
The ordinal position (zero-based) of the entry within the entirety of the DMI entry table. |
Entry Specialization
Some entry types may have other information available in sysfs. Not all types are specialized.
Type 15 - System Event Log
This entry allows the firmware to export a log of events the system has taken. This information is typically backed by nvram, but the implementation details are abstracted by this table. This entry’s data is exported in the directory:
/sys/firmware/dmi/entries/15-0/system_event_log
and has the following attributes (documented in the SMBIOS / DMI specification under “System Event Log (Type 15)”:
area_length
header_start_offset
data_start_offset
access_method
status
change_token
access_method_address
header_format
per_log_type_descriptor_length
type_descriptors_supported_count
As well, the kernel exports the binary attribute:
raw_event_log |
The raw binary bits of the event log as described by the DMI entry. |
/sys/firmware/dmi/tables/ |
Defined on file sysfs-firmware-dmi-tables
The firmware provides DMI structures as a packed list of data referenced by a SMBIOS table entry point. The SMBIOS entry point contains general information, like SMBIOS version, DMI table size, etc. The structure, content and size of SMBIOS entry point is dependent on SMBIOS version. The format of SMBIOS entry point and DMI structures can be read in SMBIOS specification.
The dmi/tables provides raw SMBIOS entry point and DMI tables through sysfs as an alternative to utilities reading them from /dev/mem. The raw SMBIOS entry point and DMI table are presented as binary attributes and are accessible via:
/sys/firmware/dmi/tables/smbios_entry_point /sys/firmware/dmi/tables/DMI
The complete DMI information can be obtained using these two tables.
/sys/firmware/efi/config_table |
Defined on file sysfs-firmware-efi
It shows the physical address of config table entry in the EFI system table.
Users: Kexec
/sys/firmware/efi/esrt/ |
Defined on file sysfs-firmware-efi-esrt
Provides userland access to read the EFI System Resource Table (ESRT), a catalog of firmware for which can be updated with the UEFI UpdateCapsule mechanism described in section 7.5 of the UEFI Standard.
Users: fwupdate - https://github.com/rhinstaller/fwupdate
/sys/firmware/efi/esrt/entries/entry<N>/ |
Defined on file sysfs-firmware-efi-esrt
Each ESRT entry is identified by a GUID, and each gets a subdirectory under entries/ . example: /sys/firmware/efi/esrt/entries/entry0/
/sys/firmware/efi/esrt/entries/entry<N>/capsule_flags |
Defined on file sysfs-firmware-efi-esrt
Flags that must be passed to UpdateCapsule()
/sys/firmware/efi/esrt/entries/entry<N>/fw_class |
Defined on file sysfs-firmware-efi-esrt
This is the entry’s guid, and will match the directory name.
/sys/firmware/efi/esrt/entries/entry<N>/fw_type |
Defined on file sysfs-firmware-efi-esrt
What kind of firmware entry this is:
0 |
Unknown |
1 |
System Firmware |
2 |
Device Firmware |
3 |
UEFI Driver |
/sys/firmware/efi/esrt/entries/entry<N>/fw_version |
Defined on file sysfs-firmware-efi-esrt
The version of the firmware currently installed. This is a 32-bit unsigned integer.
/sys/firmware/efi/esrt/entries/entry<N>/last_attempt_status |
Defined on file sysfs-firmware-efi-esrt
The result of the last firmware update attempt for the firmware resource entry.
0 |
Success |
1 |
Insufficient resources |
2 |
Incorrect version |
3 |
Invalid format |
4 |
Authentication error |
5 |
AC power event |
6 |
Battery power event |
/sys/firmware/efi/esrt/entries/entry<N>/last_attempt_version |
Defined on file sysfs-firmware-efi-esrt
The last firmware version for which an update was attempted.
/sys/firmware/efi/esrt/entries/entry<N>/lowest_supported_fw_version |
Defined on file sysfs-firmware-efi-esrt
The lowest version of the firmware that can be installed.
/sys/firmware/efi/esrt/fw_resource_count |
Defined on file sysfs-firmware-efi-esrt
The number of entries in the ESRT
/sys/firmware/efi/esrt/fw_resource_count_max |
Defined on file sysfs-firmware-efi-esrt
The maximum number of entries that /could/ be registered in the allocation the table is currently in. This is really only useful to the system firmware itself.
/sys/firmware/efi/esrt/fw_resource_version |
Defined on file sysfs-firmware-efi-esrt
The version of the ESRT structure provided by the firmware.
/sys/firmware/efi/fw_vendor |
Defined on file sysfs-firmware-efi
It shows the physical address of firmware vendor field in the EFI system table.
Users: Kexec
/sys/firmware/efi/runtime |
Defined on file sysfs-firmware-efi
It shows the physical address of runtime service table entry in the EFI system table.
Users: Kexec
/sys/firmware/efi/runtime-map/ |
Defined on file sysfs-firmware-efi-runtime-map
Switching efi runtime services to virtual mode requires that all efi memory ranges which have the runtime attribute bit set to be mapped to virtual addresses.
The efi runtime services can only be switched to virtual mode once without rebooting. The kexec kernel must maintain the same physical to virtual address mappings as the first kernel. The mappings are exported to sysfs so userspace tools can reassemble them and pass them into the kexec kernel.
/sys/firmware/efi/runtime-map/ is the directory the kernel exports that information in.
subdirectories are named with the number of the memory range:
/sys/firmware/efi/runtime-map/0
/sys/firmware/efi/runtime-map/1
/sys/firmware/efi/runtime-map/2
/sys/firmware/efi/runtime-map/3
...
Each subdirectory contains five files:
attribute |
The attributes of the memory range. |
num_pages |
The size of the memory range in pages. |
phys_addr |
The physical address of the memory range. |
type |
The type of the memory range. |
virt_addr |
The virtual address of the memory range. |
Above values are all hexadecimal numbers with the ‘0x’ prefix.
Users: Kexec
/sys/firmware/efi/systab |
Defined on file sysfs-firmware-efi
Displays the physical addresses of all EFI Configuration Tables found via the EFI System Table. The order in which the tables are printed forms an ABI and newer versions are always printed first, i.e. ACPI20 comes before ACPI.
Users: dmidecode
/sys/firmware/efi/tables/rci2 |
Defined on file sysfs-firmware-efi
Displays the content of the Runtime Configuration Interface Table version 2 on Dell EMC PowerEdge systems in binary format
Users: It is used by Dell EMC OpenManage Server Administrator tool to populate BIOS setup page.
/sys/firmware/fdt |
Defined on file sysfs-firmware-ofw
Exports the FDT blob that was passed to the kernel by the bootloader. This allows userland applications such as kexec to access the raw binary. This blob is also useful when debugging since it contains any changes made to the blob by the bootloader.
The fact that this node does not reside under /sys/firmware/device-tree is deliberate: FDT is also used on arm64 UEFI/ACPI systems to communicate just the UEFI and ACPI entry points, but the FDT is never unflattened and used to configure the system.
A CRC32 checksum is calculated over the entire FDT blob, and verified at late_initcall time. The sysfs entry is instantiated only if the checksum is valid, i.e., if the FDT blob has not been modified in the mean time. Otherwise, a warning is printed.
Users: kexec, debugging
/sys/firmware/gsmi |
Defined on file sysfs-firmware-gsmi
Some servers used internally at Google have firmware that provides callback functionality via explicit SMI triggers. Some of the callbacks are similar to those provided by the EFI runtime services page, but due to historical reasons this different entry-point has been used.
The gsmi driver implements the kernel’s abstraction for these firmware callbacks. Currently, this functionality is limited to handling the system event log and getting access to EFI-style variables stored in nvram.
Layout:
/sys/firmware/gsmi/vars:
This directory has the same layout (and underlying implementation as /sys/firmware/efi/vars. See Documentation/ABI/*/sysfs-firmware-efi-vars for more information on how to interact with this structure.
/sys/firmware/gsmi/append_to_eventlog - write-only:
This file takes a binary blob and passes it onto the firmware to be timestamped and appended to the system eventlog. The binary format is interpreted by the firmware and may change from platform to platform. The only kernel-enforced requirement is that the blob be prefixed with a 32bit host-endian type used as part of the firmware call.
/sys/firmware/gsmi/clear_config - write-only:
Writing any value to this file will cause the entire firmware configuration to be reset to “factory defaults”. Callers should assume that a reboot is required for the configuration to be cleared.
/sys/firmware/gsmi/clear_eventlog - write-only:
This file is used to clear out a portion/the whole of the system event log. Values written should be values between 1 and 100 inclusive (in ASCII) representing the fraction of the log to clear. Not all platforms support fractional clearing though, and this writes to this file will error out if the firmware doesn’t like your submitted fraction.
Callers should assume that a reboot is needed for this operation to complete.
/sys/firmware/ibft/acpi_header |
Defined on file sysfs-ibft
The /sys/firmware/ibft/acpi_header directory will contain files that expose the SIGNATURE, OEM_ID, and OEM_TABLE_ID fields of the acpi table header of the iBFT structure. This will allow for identification of the creator of the table which is useful in determining quirks associated with some adapters when used in hardware vs software iscsi initiator mode.
/sys/firmware/ibft/ethernetX |
Defined on file sysfs-ibft
The /sys/firmware/ibft/ethernetX directory will contain files that expose the iSCSI Boot Firmware Table NIC data. Usually this contains the IP address, MAC, and gateway of the NIC.
/sys/firmware/ibft/initiator |
Defined on file sysfs-ibft
The /sys/firmware/ibft/initiator directory will contain files that expose the iSCSI Boot Firmware Table initiator data. Usually this contains the Initiator name.
/sys/firmware/ibft/targetX |
Defined on file sysfs-ibft
The /sys/firmware/ibft/targetX directory will contain files that expose the iSCSI Boot Firmware Table target data. Usually this contains the target’s IP address, boot LUN, target name, and what NIC it is associated with. It can also contain the CHAP name (and password), the reverse CHAP name (and password)
/sys/firmware/initrd |
Defined on file sysfs-firmware-initrd
When the kernel was booted with an initrd and the “retain_initrd” option is set on the kernel command line, /sys/firmware/initrd contains the contents of the initrd that the kernel was booted with.
/sys/firmware/lefi/boardinfo |
Defined on file sysfs-firmware-lefi-boardinfo
Get mainboard and BIOS info easily on the Loongson platform, this is useful to point out the current used mainboard type and BIOS version when there exists problems related with hardware or firmware.
The related structures are already defined in the interface specification about firmware and kernel which are common requirement and specific for Loongson64, so only add a new boardinfo.c file in arch/mips/loongson64.
For example:
[loongson@linux ~]$ cat /sys/firmware/lefi/boardinfo Board Info Manufacturer : LEMOTE Board Name : LEMOTE-LS3A4000-7A1000-1w-V01-pc Family : LOONGSON3
BIOS Info Vendor : Kunlun Version : Kunlun-A1901-V4.1.3-20200414093938 ROM Size : 4 KB Release Date : 2020-04-14
By the way, using dmidecode command can get the similar info if there exists SMBIOS in firmware, but the fact is that there is no SMBIOS on some machines, we can see nothing when execute dmidecode, like this:
[root@linux loongson]# dmidecode # dmidecode 2.12 # No SMBIOS nor DMI entry point found, sorry.
/sys/firmware/log |
Defined on file sysfs-firmware-log
The /sys/firmware/log is a binary file that represents a read-only copy of the firmware’s log if one is available.
/sys/firmware/memmap/ |
Defined on file sysfs-firmware-memmap
On all platforms, the firmware provides a memory map which the kernel reads. The resources from that memory map are registered in the kernel resource tree and exposed to userspace via /proc/iomem (together with other resources).
However, on most architectures that firmware-provided memory map is modified afterwards by the kernel itself, either because the kernel merges that memory map with other information or just because the user overwrites that memory map via command line.
kexec needs the raw firmware-provided memory map to setup the parameter segment of the kernel that should be booted with kexec. Also, the raw memory map is useful for debugging. For that reason, /sys/firmware/memmap is an interface that provides the raw memory map to userspace.
The structure is as follows: Under /sys/firmware/memmap there are subdirectories with the number of the entry as their name:
/sys/firmware/memmap/0
/sys/firmware/memmap/1
/sys/firmware/memmap/2
/sys/firmware/memmap/3
...
The maximum depends on the number of memory map entries provided by the firmware. The order is just the order that the firmware provides.
Each directory contains three files:
start |
The start address (as hexadecimal number with the ‘0x’ prefix). |
end |
The end address, inclusive (regardless whether the firmware provides inclusive or exclusive ranges). |
type |
Type of the entry as string. See below for a list of valid types. |
So, for example:
/sys/firmware/memmap/0/start
/sys/firmware/memmap/0/end
/sys/firmware/memmap/0/type
/sys/firmware/memmap/1/start
...
Currently following types exist:
System RAM
ACPI Tables
ACPI Non-volatile Storage
Unusable memory
Persistent Memory (legacy)
Persistent Memory
Soft Reserved
reserved
Following shell snippet can be used to display that memory map in a human-readable format:
#!/bin/bash
cd /sys/firmware/memmap
for dir in * ; do
start=$(cat $dir/start)
end=$(cat $dir/end)
type=$(cat $dir/type)
printf "%016x-%016x (%s)\n" $start $[ $end +1] "$type"
done
/sys/firmware/opal/powercap |
Defined on file sysfs-firmware-opal-powercap
Powercap directory for Powernv (P8, P9) servers
Each folder in this directory contains a power-cappable component.
/sys/firmware/opal/powercap/system-powercap |
Defined on file sysfs-firmware-opal-powercap
System powercap directory and attributes applicable for Powernv (P8, P9) servers
This directory provides powercap information. It contains below sysfs attributes:
powercap-min : This file provides the minimum possible powercap in Watt units
powercap-max : This file provides the maximum possible powercap in Watt units
powercap-current : This file provides the current powercap set on the system. Writing to this file creates a request for setting a new-powercap. The powercap requested must be between powercap-min and powercap-max.
/sys/firmware/opal/psr |
Defined on file sysfs-firmware-opal-psr
Power-Shift-Ratio directory for Powernv P9 servers
Power-Shift-Ratio allows to provide hints the firmware to shift/throttle power between different entities in the system. Each attribute in this directory indicates a settable PSR.
/sys/firmware/opal/psr/cpu_to_gpu_X |
Defined on file sysfs-firmware-opal-psr
PSR sysfs attributes for Powernv P9 servers
Power-Shift-Ratio between CPU and GPU for a given chip with chip-id X. This file gives the ratio (0-100) which is used by OCC for power-capping.
/sys/firmware/opal/sensor_groups |
Defined on file sysfs-firmware-opal-sensor-groups
Sensor groups directory for POWER9 powernv servers
Each folder in this directory contains a sensor group which are classified based on type of the sensor like power, temperature, frequency, current, etc. They can also indicate the group of sensors belonging to different owners like CSM, Profiler, Job-Scheduler
/sys/firmware/opal/sensor_groups/<sensor_group_name>/clear |
Defined on file sysfs-firmware-opal-sensor-groups
Sysfs file to clear the min-max of all the sensors belonging to the group.
Writing 1 to this file will clear the minimum and maximum values of all the sensors in the group. In POWER9, the min-max of a sensor is the historical minimum and maximum value of the sensor cached by OCC.
/sys/firmware/papr/energy_scale_info |
Defined on file sysfs-firmware-papr-energy-scale-info
Directory hosting a set of platform attributes like energy/frequency on Linux running as a PAPR guest.
Each file in a directory contains a platform attribute hierarchy pertaining to performance/ energy-savings mode and processor frequency.
/sys/firmware/papr/energy_scale_info/<id> |
Defined on file sysfs-firmware-papr-energy-scale-info
Energy, frequency attributes directory for POWERVM servers
/sys/firmware/papr/energy_scale_info/<id>/desc |
Defined on file sysfs-firmware-papr-energy-scale-info
String description of the energy attribute of <id>
/sys/firmware/papr/energy_scale_info/<id>/value |
Defined on file sysfs-firmware-papr-energy-scale-info
Numeric value of the energy attribute of <id>
/sys/firmware/papr/energy_scale_info/<id>/value_desc |
Defined on file sysfs-firmware-papr-energy-scale-info
String value of the energy attribute of <id>
/sys/firmware/qemu_fw_cfg/ |
Defined on file sysfs-firmware-qemu_fw_cfg
Several different architectures supported by QEMU (x86, arm, sun4*, ppc/mac) are provisioned with a firmware configuration (fw_cfg) device, originally intended as a way for the host to provide configuration data to the guest firmware. Starting with QEMU v2.4, arbitrary fw_cfg file entries may be specified by the user on the command line, which makes fw_cfg additionally useful as an out-of-band, asynchronous mechanism for providing configuration data to the guest userspace.
The authoritative guest-side hardware interface documentation to the fw_cfg device can be found in “docs/specs/fw_cfg.rst” in the QEMU source tree, or online at: https://qemu-project.gitlab.io/qemu/specs/fw_cfg.html
SysFS fw_cfg Interface
The fw_cfg sysfs interface described in this document is only intended to display discoverable blobs (i.e., those registered with the file directory), as there is no way to determine the presence or size of “legacy” blobs (with selector keys between 0x0002 and 0x0018) programmatically.
All fw_cfg information is shown under:
The only legacy blob displayed is the fw_cfg device revision:
/sys/firmware/qemu_fw_cfg/rev
Discoverable fw_cfg blobs by selector key
All discoverable blobs listed in the fw_cfg file directory are displayed as entries named after their unique selector key value, e.g.:
/sys/firmware/qemu_fw_cfg/by_key/32 /sys/firmware/qemu_fw_cfg/by_key/33 /sys/firmware/qemu_fw_cfg/by_key/34 ...
Each such fw_cfg sysfs entry has the following values exported as attributes:
name |
The 56-byte nul-terminated ASCII string used as the blob’s ‘file name’ in the fw_cfg directory. |
size |
The length of the blob, as given in the fw_cfg directory. |
key |
The value of the blob’s selector key as given in the fw_cfg directory. This value is the same as used in the parent directory name. |
raw |
The raw bytes of the blob, obtained by selecting the entry via the control register, and reading a number of bytes equal to the blob size from the data register. |
Listing fw_cfg blobs by file name
While the fw_cfg device does not impose any specific naming convention on the blobs registered in the file directory, QEMU developers have traditionally used path name semantics to give each blob a descriptive name. For example:
"bootorder"
"genroms/kvmvapic.bin"
"etc/e820"
"etc/boot-fail-wait"
"etc/system-states"
"etc/table-loader"
"etc/acpi/rsdp"
"etc/acpi/tables"
"etc/smbios/smbios-tables"
"etc/smbios/smbios-anchor"
...
In addition to the listing by unique selector key described above, the fw_cfg sysfs driver also attempts to build a tree of directories matching the path name components of fw_cfg blob names, ending in symlinks to the by_key entry for each “basename”, as illustrated below (assume current directory is /sys/firmware):
qemu_fw_cfg/by_name/bootorder -> ../by_key/38
qemu_fw_cfg/by_name/etc/e820 -> ../../by_key/35
qemu_fw_cfg/by_name/etc/acpi/rsdp -> ../../../by_key/41
...
Construction of the directory tree and symlinks is done on a “best-effort” basis, as there is no guarantee that components of fw_cfg blob names are always “well behaved”. I.e., there is the possibility that a symlink (basename) will conflict with a dirname component of another fw_cfg blob, in which case the creation of the offending /sys/firmware/qemu_fw_cfg/by_name entry will be skipped.
The authoritative list of entries will continue to be found under the /sys/firmware/qemu_fw_cfg/by_key directory.
/sys/firmware/secvar |
Defined on file sysfs-secvar
This directory is created if the POWER firmware supports OS secureboot, thereby secure variables. It exposes interface for reading/writing the secure variables
/sys/firmware/secvar/config |
Defined on file sysfs-secvar
This optional directory contains read-only config attributes as defined by the secure variable implementation. All data is in ASCII format. The directory is only created if the backing implementation provides variables to populate it, which at present is only PLPKS on the pseries platform.
/sys/firmware/secvar/config/max_object_size |
Defined on file sysfs-secvar
Maximum allowed size of objects in the keystore in bytes, represented in ASCII decimal format.
This is not necessarily the same as the max size that can be written to an update file as writes can contain more than object data, you should use the size of the update file for that purpose.
Currently only provided by PLPKS on the pseries platform.
/sys/firmware/secvar/config/signed_update_algorithms |
Defined on file sysfs-secvar
Bitmask of flags indicating which algorithms the hypervisor supports for signed update of objects, represented as a 16 byte hexadecimal ASCII string. Consult the hypervisor documentation for what these flags mean.
Currently only provided by PLPKS on the pseries platform.
/sys/firmware/secvar/config/supported_policies |
Defined on file sysfs-secvar
Bitmask of supported policy flags by the hypervisor, represented as an 8 byte hexadecimal ASCII string. Consult the hypervisor documentation for what these flags are.
Currently only provided by PLPKS on the pseries platform.
/sys/firmware/secvar/config/total_size |
Defined on file sysfs-secvar
Total size of the PLPKS in bytes, represented in ASCII decimal format.
Currently only provided by PLPKS on the pseries platform.
/sys/firmware/secvar/config/used_space |
Defined on file sysfs-secvar
Current space consumed by the key store, in bytes, represented in ASCII decimal format.
Currently only provided by PLPKS on the pseries platform.
/sys/firmware/secvar/config/version |
Defined on file sysfs-secvar
Config version as reported by the hypervisor in ASCII decimal format.
Currently only provided by PLPKS on the pseries platform.
/sys/firmware/secvar/format |
Defined on file sysfs-secvar
A string indicating which backend is in use by the firmware. This determines the format of the variable and the accepted format of variable updates.
On powernv/OPAL, this value is provided by the OPAL firmware and is expected to be “ibm,edk2-compat-v1”.
On pseries/PLPKS, this is generated by the kernel based on the version number in the SB_VERSION variable in the keystore, and has the form “ibm,plpks-sb-v<version>”, or “ibm,plpks-sb-unknown” if there is no SB_VERSION variable.
/sys/firmware/secvar/vars |
Defined on file sysfs-secvar
This directory lists all the secure variables that are supported by the firmware.
/sys/firmware/secvar/vars/<variable name> |
Defined on file sysfs-secvar
Each secure variable is represented as a directory named as <variable_name>. The variable name is unique and is in ASCII representation. The data and size can be determined by reading their respective attribute files.
/sys/firmware/secvar/vars/<variable_name>/data |
Defined on file sysfs-secvar
A read-only file containing the value of the variable. The size of the file represents the maximum size of the variable data.
/sys/firmware/secvar/vars/<variable_name>/size |
Defined on file sysfs-secvar
An integer representation of the size of the content of the variable. In other words, it represents the size of the data.
/sys/firmware/secvar/vars/<variable_name>/update |
Defined on file sysfs-secvar
A write-only file that is used to submit the new value for the variable. The size of the file represents the maximum size of the variable data that can be written.
/sys/firmware/sgi_uv/ |
Defined on file sysfs-firmware-sgi_uv
The /sys/firmware/sgi_uv directory contains information about the UV platform.
Under that directory are a number of read-only attributes:
archtype
hub_type
hubless
partition_id
coherence_id
uv_type
The archtype entry contains the UV architecture type that is used to select arch-dependent addresses and features. It can be set via the OEM_ID in the ACPI MADT table or by UVsystab entry both passed from UV BIOS.
The hub_type entry is used to select the type of hub which is similar to uv_type but encoded in a binary format. Include the file uv_hub.h to get the definitions.
The hubless entry basically is present and set only if there is no hub. In this case the hub_type entry is not present.
The partition_id entry contains the partition id. UV systems can be partitioned into multiple physical machines, which each partition running a unique copy of the operating system. Each partition will have a unique partition id.
The coherence_id entry contains the coherence id. A partitioned UV system can have one or more coherence domains. The coherence id indicates which coherence domain this partition is in.
The uv_type entry contains the hub revision number. This value can be used to identify the UV system version:
"0.*" = Hubless UV ('*' is subtype)
"3.0" = UV2
"5.0" = UV3
"7.0" = UV4
"7.1" = UV4a
"9.0" = UV5
The /sys/firmware/sgi_uv directory also contains two directories:
hubs/
pcibuses/
The hubs directory contains a number of hub objects, each representing a UV Hub visible to the BIOS. Each hub object’s name is appended by a unique ordinal value (ex. /sys/firmware/sgi_uv/hubs/hub_5)
Each hub object directory contains a number of read-only attributes:
cnode
location
name
nasid
shared
this_partition
The cnode entry contains the cnode number of the corresponding hub. If a cnode value is not applicable, the value returned will be -1.
The location entry contains the location string of the corresponding hub. This value is used to physically identify a hub within a system.
The name entry contains the name of the corresponding hub. This name can be two variants:
"UVHub x.x" = A 'node' ASIC, connecting a CPU to the interconnect
fabric. The 'x.x' value represents the ASIC revision.
(ex. 'UVHub 5.0')
"NLxRouter" = A 'router ASIC, only connecting other ASICs to
the interconnect fabric. The 'x' value representing
the fabric technology version. (ex. 'NL8Router')
The nasid entry contains the nasid number of the corresponding hub. If a nasid value is not applicable, the value returned will be -1.
The shared entry contains a boolean value describing whether the corresponding hub is shared between system partitions.
The this_partition entry contains a boolean value describing whether the corresponding hub is local to the current partition.
Each hub object directory also contains a number of port objects, each representing a fabric port on the corresponding hub. A port object’s name is appended by a unique ordinal value (ex. /sys/firmware/sgi_uv/hubs/hub_5/port_3)
Each port object directory contains a number of read-only attributes:
conn_hub
conn_port
The conn_hub entry contains a value representing the unique ordinal value of the hub on the other end of the fabric cable plugged into the port. If the port is disconnected, the value returned will be -1.
The conn_port entry contains a value representing the unique ordinal value of the port on the other end of the fabric cable plugged into the port. If the port is disconnected, the value returned will be -1.
- Ex:
- A value of ‘3’ is read from:
/sys/firmware/sgi_uv/hubs/hub_5/port_3/conn_hub
- and a value of ‘6’ is read from:
/sys/firmware/sgi_uv/hubs/hub_5/port_3/conn_port
- representing that this port is connected to:
/sys/firmware/sgi_uv/hubs/hub_3/port_6
The pcibuses directory contains a number of PCI bus objects. Each PCI bus object’s name is appended by its PCI bus address. (ex. pcibus_0003:80)
Each pcibus object has a number of possible read-only attributes:
type
location
slot
ppb_addr
iio_stack
The type entry contains a value describing the type of IO at the corresponding PCI bus address. Known possible values across all UV versions are:
BASE IO
PCIe IO
PCIe SLOT
NODE IO
Riser
PPB
The location entry contains the location string of the UV Hub of the CPU physically connected to the corresponding PCI bus.
The slot entry contains the physical slot number of the corresponding PCI bus. This value is used to physically locate PCI cards within a system.
The ppb_addr entry contains the PCI address string of the bridged PCI bus. This entry is only present when the PCI bus object type is ‘PPB’.
The iio_stack entry contains a value describing the IIO stack number that the corresponding PCI bus object is connected to.
/sys/firmware/turris-mox-rwtm/board_version |
Defined on file sysfs-firmware-turris-mox-rwtm
(Read) Board version burned into eFuses of this Turris Mox board. Format: %i
/sys/firmware/turris-mox-rwtm/mac_address* |
Defined on file sysfs-firmware-turris-mox-rwtm
(Read) MAC addresses burned into eFuses of this Turris Mox board. Format: %pM
/sys/firmware/turris-mox-rwtm/pubkey |
Defined on file sysfs-firmware-turris-mox-rwtm
(Read) ECDSA public key (in pubkey hex compressed form) computed as pair to the ECDSA private key burned into eFuses of this Turris Mox Board. Format: string
/sys/firmware/turris-mox-rwtm/ram_size |
Defined on file sysfs-firmware-turris-mox-rwtm
(Read) RAM size in MiB of this Turris Mox board as was detected during manufacturing and burned into eFuses. Can be 512 or 1024. Format: %i
/sys/firmware/turris-mox-rwtm/serial_number |
Defined on file sysfs-firmware-turris-mox-rwtm
(Read) Serial number burned into eFuses of this Turris Mox device. Format: %016X
Symbols under /sys/fs¶
/sys/fs/erofs/<disk>/drop_caches |
Defined on file sysfs-fs-erofs
Writing to this will drop compression-related caches, currently used to drop in-memory pclusters and cached compressed folios:
1 : invalidate cached compressed folios
2 : drop in-memory pclusters
3 : drop in-memory pclusters and cached compressed folios
/sys/fs/erofs/<disk>/sync_decompress |
Defined on file sysfs-fs-erofs
Control strategy of sync decompression:
0 (default, auto): enable for readpage, and enable for readahead on atomic contexts only.
1 (force on): enable for readpage and readahead.
2 (force off): disable for all situations.
/sys/fs/erofs/features/ |
Defined on file sysfs-fs-erofs
Shows all enabled kernel features. Supported features: zero_padding, compr_cfgs, big_pcluster, chunked_file, device_table, compr_head2, sb_chksum, ztailpacking, dedupe, fragments.
/sys/fs/ext4/<disk>/delayed_allocation_blocks |
Defined on file sysfs-fs-ext4
This file is read-only and shows the number of blocks that are dirty in the page cache, but which do not have their location in the filesystem allocated yet.
/sys/fs/ext4/<disk>/extent_max_zeroout_kb |
Defined on file sysfs-fs-ext4
The maximum number of kilobytes which will be zeroed out in preference to creating a new uninitialized extent when manipulating an inode’s extent tree. Note that using a larger value will increase the variability of time necessary to complete a random write operation (since a 4k random write might turn into a much larger write due to the zeroout operation).
/sys/fs/ext4/<disk>/inode_goal |
Defined on file sysfs-fs-ext4
Tuning parameter which (if non-zero) controls the goal inode used by the inode allocator in preference to all other allocation heuristics. This is intended for debugging use only, and should be 0 on production systems.
/sys/fs/ext4/<disk>/inode_readahead_blks |
Defined on file sysfs-fs-ext4
Tuning parameter which controls the maximum number of inode table blocks that ext4’s inode table readahead algorithm will pre-read into the buffer cache
/sys/fs/ext4/<disk>/journal_task |
Defined on file sysfs-fs-ext4
This file is read-only and shows the pid of journal thread in current pid-namespace or 0 if task is unreachable.
/sys/fs/ext4/<disk>/lifetime_write_kbytes |
Defined on file sysfs-fs-ext4
This file is read-only and shows the number of kilobytes of data that have been written to this filesystem since it was created.
/sys/fs/ext4/<disk>/max_writeback_mb_bump |
Defined on file sysfs-fs-ext4
The maximum number of megabytes the writeback code will try to write out before move on to another inode.
/sys/fs/ext4/<disk>/mb_group_prealloc |
Defined on file sysfs-fs-ext4
The multiblock allocator will round up allocation requests to a multiple of this tuning parameter if the stripe size is not set in the ext4 superblock
/sys/fs/ext4/<disk>/mb_max_to_scan |
Defined on file sysfs-fs-ext4
The maximum number of extents the multiblock allocator will search to find the best extent
/sys/fs/ext4/<disk>/mb_min_to_scan |
Defined on file sysfs-fs-ext4
The minimum number of extents the multiblock allocator will search to find the best extent
/sys/fs/ext4/<disk>/mb_order2_req |
Defined on file sysfs-fs-ext4
Tuning parameter which controls the minimum size for requests (as a power of 2) where the buddy cache is used
/sys/fs/ext4/<disk>/mb_stats |
Defined on file sysfs-fs-ext4
Controls whether the multiblock allocator should collect statistics, which are shown during the unmount. 1 means to collect statistics, 0 means not to collect statistics
/sys/fs/ext4/<disk>/mb_stream_req |
Defined on file sysfs-fs-ext4
Files which have fewer blocks than this tunable parameter will have their blocks allocated out of a block group specific preallocation pool, so that small files are packed closely together. Each large file will have its blocks allocated out of its own unique preallocation pool.
/sys/fs/ext4/<disk>/session_write_kbytes |
Defined on file sysfs-fs-ext4
This file is read-only and shows the number of kilobytes of data that have been written to this filesystem since it was mounted.
/sys/fs/f2fs/<disk>/atgc_age_threshold |
Defined on file sysfs-fs-f2fs
When ATGC is on, it controls age threshold to bypass GCing young candidates whose age is not beyond the threshold, by default it was initialized as 604800 seconds (equals to 7 days).
/sys/fs/f2fs/<disk>/atgc_age_weight |
Defined on file sysfs-fs-f2fs
When ATGC is on, it controls age weight to balance weight proportion in between aging and valid blocks, the value should be in range of [0, 100], by default it was initialized as 60(%).
/sys/fs/f2fs/<disk>/atgc_candidate_count |
Defined on file sysfs-fs-f2fs
When ATGC is on, it controls candidate count in order to limit total number of potential victim in all candidates, by default it was initialized as 10 (sections).
/sys/fs/f2fs/<disk>/atgc_candidate_ratio |
Defined on file sysfs-fs-f2fs
When ATGC is on, it controls candidate ratio in order to limit total number of potential victim in all candidates, the value should be in range of [0, 100], by default it was initialized as 20(%).
/sys/fs/f2fs/<disk>/atgc_enabled |
Defined on file sysfs-fs-f2fs
- It represents whether ATGC is on or off. The value is 1 which
indicates that ATGC is on, and 0 indicates that it is off.
/sys/fs/f2fs/<disk>/avg_vblocks |
Defined on file sysfs-fs-f2fs
Average number of valid blocks. Available when CONFIG_F2FS_STAT_FS=y.
/sys/fs/f2fs/<disk>/blkzone_alloc_policy |
Defined on file sysfs-fs-f2fs
The zone UFS we are currently using consists of two parts: conventional zones and sequential zones. It can be used to control which part to prioritize for writes, with a default value of 0.
value |
description |
blkzone_alloc_policy = 0 |
Prioritize writing to sequential zones |
blkzone_alloc_policy = 1 |
Only allow writing to sequential zones |
blkzone_alloc_policy = 2 |
Prioritize writing to conventional zones |
/sys/fs/f2fs/<disk>/ckpt_thread_ioprio |
Defined on file sysfs-fs-f2fs
Give a way to change checkpoint merge daemon’s io priority. Its default value is “be,3”, which means “BE” I/O class and I/O priority “3”. We can select the class between “rt” and “be”, and set the I/O priority within valid range of it. “,” delimiter is necessary in between I/O class and priority number.
/sys/fs/f2fs/<disk>/committed_atomic_block |
Defined on file sysfs-fs-f2fs
Show the accumulated total committed atomic write block count after boot. If you write “0” here, you can initialize to “0”.
/sys/fs/f2fs/<disk>/compr_new_inode |
Defined on file sysfs-fs-f2fs
Show the count of inode newly enabled for compression since mount. Note that when the compression is disabled for the files, this count doesn’t decrease. If you write “0” here, you can initialize compr_new_inode to “0”.
/sys/fs/f2fs/<disk>/compr_saved_block |
Defined on file sysfs-fs-f2fs
Show the saved block count with compression since mount. Note that when the compressed blocks are deleted, this count doesn’t decrease. If you write “0” here, you can initialize compr_written_block and compr_saved_block to “0”.
/sys/fs/f2fs/<disk>/compr_written_block |
Defined on file sysfs-fs-f2fs
Show the block count written after compression since mount. Note that when the compressed blocks are deleted, this count doesn’t decrease. If you write “0” here, you can initialize compr_written_block and compr_saved_block to “0”.
/sys/fs/f2fs/<disk>/compress_percent |
Defined on file sysfs-fs-f2fs
When compress cache is on, it controls cached page percent(compress pages / free_ram) in order to limit caching compress page. If cached page percent exceed threshold, then deny caching compress page. The value should be in range of (0, 100], by default it was initialized as 20(%).
/sys/fs/f2fs/<disk>/compress_watermark |
Defined on file sysfs-fs-f2fs
When compress cache is on, it controls free memory watermark in order to limit caching compress page. If free memory is lower than watermark, then deny caching compress page. The value should be in range of (0, 100], by default it was initialized as 20(%).
/sys/fs/f2fs/<disk>/cp_background_calls |
Defined on file sysfs-fs-f2fs
Number of checkpoint operations performed in the background to free segments. Available when CONFIG_F2FS_STAT_FS=y.
/sys/fs/f2fs/<disk>/cp_foreground_calls |
Defined on file sysfs-fs-f2fs
Number of checkpoint operations performed on demand. Available when CONFIG_F2FS_STAT_FS=y.
/sys/fs/f2fs/<disk>/cp_interval |
Defined on file sysfs-fs-f2fs
Controls the checkpoint timing, set to 60 seconds by default.
/sys/fs/f2fs/<disk>/current_atomic_write |
Defined on file sysfs-fs-f2fs
Show the total current atomic write block count, which is not committed yet. This is a read-only entry.
/sys/fs/f2fs/<disk>/current_reserved_blocks |
Defined on file sysfs-fs-f2fs
Shows current reserved blocks in system, it may be temporarily smaller than target_reserved_blocks, but will gradually increase to target_reserved_blocks when more free blocks are freed by user later.
/sys/fs/f2fs/<disk>/data_io_flag |
Defined on file sysfs-fs-f2fs
Give a way to attach REQ_META|FUA to data writes given temperature-based bits. Now the bits indicate:
REQ_META |
REQ_FUA |
||||
5 |
4 |
3 |
2 |
1 |
0 |
Cold |
Warm |
Hot |
Cold |
Warm |
Hot |
/sys/fs/f2fs/<disk>/dir_level |
Defined on file sysfs-fs-f2fs
Controls the directory level for large directory. If a directory has a number of files, it can reduce the file lookup latency by increasing this dir_level value. Otherwise, it needs to decrease this value to reduce the space overhead. The default value is 0.
/sys/fs/f2fs/<disk>/dirty_nats_ratio |
Defined on file sysfs-fs-f2fs
Controls dirty nat entries ratio threshold, if current ratio exceeds configured threshold, checkpoint will be triggered for flushing dirty nat entries.
/sys/fs/f2fs/<disk>/dirty_segments |
Defined on file sysfs-fs-f2fs
Shows the number of dirty segments.
/sys/fs/f2fs/<disk>/discard_granularity |
Defined on file sysfs-fs-f2fs
Controls discard granularity of inner discard thread. Inner thread will not issue discards with size that is smaller than granularity. The unit size is one block(4KB), now only support configuring in range of [1, 512]. Default value is 16. For small devices, default value is 1.
/sys/fs/f2fs/<disk>/discard_idle_interval |
Defined on file sysfs-fs-f2fs
Controls the idle timing of discard thread given this time interval. Default is 5 secs.
/sys/fs/f2fs/<disk>/discard_io_aware |
Defined on file sysfs-fs-f2fs
It controls to enable/disable IO aware feature for background discard. By default, the value is 1 which indicates IO aware is on.
/sys/fs/f2fs/<disk>/discard_io_aware_gran |
Defined on file sysfs-fs-f2fs
Controls background discard granularity of inner discard thread when is not in idle. Inner thread will not issue discards with size that is smaller than granularity. The unit size is one block(4KB), now only support configuring in range of [0, 512]. Default: 512
/sys/fs/f2fs/<disk>/discard_urgent_util |
Defined on file sysfs-fs-f2fs
When space utilization exceeds this, do background DISCARD aggressively. Does DISCARD forcibly in a period of given min_discard_issue_time when the number of discards is not 0 and set discard granularity to 1. Default: 80
/sys/fs/f2fs/<disk>/encoding |
Defined on file sysfs-fs-f2fs
Displays name and version of the encoding set for the filesystem. If no encoding is set, displays (none)
/sys/fs/f2fs/<disk>/extension_list |
Defined on file sysfs-fs-f2fs
Used to control configure extension list: - Query: cat /sys/fs/f2fs/<disk>/extension_list - Add: echo ‘[h/c]extension’ > /sys/fs/f2fs/<disk>/extension_list - Del: echo ‘[h/c]!extension’ > /sys/fs/f2fs/<disk>/extension_list - [h] means add/del hot file extension - [c] means add/del cold file extension
/sys/fs/f2fs/<disk>/fault_rate |
Defined on file sysfs-fs-f2fs
Enable fault injection in all supported types with specified injection rate.
/sys/fs/f2fs/<disk>/fault_type |
Defined on file sysfs-fs-f2fs
Support configuring fault injection type, should be enabled with fault_injection option, fault type value is shown below, it supports single or combined type.
Type_Name |
Type_Value |
---|---|
FAULT_KMALLOC |
0x000000001 |
FAULT_KVMALLOC |
0x000000002 |
FAULT_PAGE_ALLOC |
0x000000004 |
FAULT_PAGE_GET |
0x000000008 |
FAULT_ALLOC_BIO |
0x000000010 (obsolete) |
FAULT_ALLOC_NID |
0x000000020 |
FAULT_ORPHAN |
0x000000040 |
FAULT_BLOCK |
0x000000080 |
FAULT_DIR_DEPTH |
0x000000100 |
FAULT_EVICT_INODE |
0x000000200 |
FAULT_TRUNCATE |
0x000000400 |
FAULT_READ_IO |
0x000000800 |
FAULT_CHECKPOINT |
0x000001000 |
FAULT_DISCARD |
0x000002000 |
FAULT_WRITE_IO |
0x000004000 |
FAULT_SLAB_ALLOC |
0x000008000 |
FAULT_DQUOT_INIT |
0x000010000 |
FAULT_LOCK_OP |
0x000020000 |
FAULT_BLKADDR_VALIDITY |
0x000040000 |
FAULT_BLKADDR_CONSISTENCE |
0x000080000 |
FAULT_NO_SEGMENT |
0x000100000 |
/sys/fs/f2fs/<disk>/feature_list/ |
Defined on file sysfs-fs-f2fs
Expand /sys/fs/f2fs/<disk>/features to meet sysfs rule. Supported on-disk features: encryption, block_zoned (aka blkzoned), extra_attr, project_quota (aka projquota), inode_checksum, flexible_inline_xattr, quota_ino, inode_crtime, lost_found, verity, sb_checksum, casefold, readonly, compression. Note that, pin_file is moved into /sys/fs/f2fs/features/.
/sys/fs/f2fs/<disk>/features |
Defined on file sysfs-fs-f2fs
<deprecated: should use /sys/fs/f2fs/<disk>/feature_list/> Shows all enabled features in current device. Supported features: encryption, blkzoned, extra_attr, projquota, inode_checksum, flexible_inline_xattr, quota_ino, inode_crtime, lost_found, verity, sb_checksum, casefold, readonly, compression, pin_file.
/sys/fs/f2fs/<disk>/free_segments |
Defined on file sysfs-fs-f2fs
Number of free segments in disk.
/sys/fs/f2fs/<disk>/gc_background_calls |
Defined on file sysfs-fs-f2fs
Number of garbage collection operations triggered in background. Available when CONFIG_F2FS_STAT_FS=y.
/sys/fs/f2fs/<disk>/gc_boost_zoned_gc_percent |
Defined on file sysfs-fs-f2fs
If the percentage of free sections over total sections is under this number, F2FS boosts garbage collection for zoned devices through the background GC thread. the default number is “25”.
/sys/fs/f2fs/<disk>/gc_foreground_calls |
Defined on file sysfs-fs-f2fs
Number of garbage collection operations performed on demand. Available when CONFIG_F2FS_STAT_FS=y.
/sys/fs/f2fs/<disk>/gc_idle |
Defined on file sysfs-fs-f2fs
Controls the victim selection policy for garbage collection. Setting gc_idle = 0(default) will disable this option. Setting:
gc_idle = 1 |
will select the Cost Benefit approach & setting |
gc_idle = 2 |
will select the greedy approach & setting |
gc_idle = 3 |
will select the age-threshold based approach. |
/sys/fs/f2fs/<disk>/gc_idle_interval |
Defined on file sysfs-fs-f2fs
Controls the idle timing for gc path. Set to 5 seconds by default.
/sys/fs/f2fs/<disk>/gc_max_sleep_time |
Defined on file sysfs-fs-f2fs
Controls the maximum sleep time for gc_thread. Time is in milliseconds.
/sys/fs/f2fs/<disk>/gc_min_sleep_time |
Defined on file sysfs-fs-f2fs
Controls the minimum sleep time for gc_thread. Time is in milliseconds.
/sys/fs/f2fs/<disk>/gc_mode |
Defined on file sysfs-fs-f2fs
Show the current gc_mode as a string. This is a read-only entry.
/sys/fs/f2fs/<disk>/gc_no_gc_sleep_time |
Defined on file sysfs-fs-f2fs
Controls the default sleep time for gc_thread. Time is in milliseconds.
/sys/fs/f2fs/<disk>/gc_no_zoned_gc_percent |
Defined on file sysfs-fs-f2fs
If the percentage of free sections over total sections is above this number, F2FS do not garbage collection for zoned devices through the background GC thread. the default number is “60”.
/sys/fs/f2fs/<disk>/gc_pin_file_thresh |
Defined on file sysfs-fs-f2fs
This indicates how many GC can be failed for the pinned file. If it exceeds this, F2FS doesn’t guarantee its pinning state. 2048 trials is set by default, and 65535 as maximum.
/sys/fs/f2fs/<disk>/gc_reclaimed_segments |
Defined on file sysfs-fs-f2fs
Show how many segments have been reclaimed by GC during a specific GC mode (0: GC normal, 1: GC idle CB, 2: GC idle greedy, 3: GC idle AT, 4: GC urgent high, 5: GC urgent low 6: GC urgent mid) You can re-initialize this value to “0”.
/sys/fs/f2fs/<disk>/gc_remaining_trials |
Defined on file sysfs-fs-f2fs
You can set the trial count limit for GC urgent and idle mode with this value. If GC thread gets to the limit, the mode will turn back to GC normal mode. By default, the value is zero, which means there is no limit like before.
/sys/fs/f2fs/<disk>/gc_segment_mode |
Defined on file sysfs-fs-f2fs
You can control for which gc mode the “gc_reclaimed_segments” node shows. Refer to the description of the modes in “gc_reclaimed_segments”.
/sys/fs/f2fs/<disk>/gc_urgent |
Defined on file sysfs-fs-f2fs
Do background GC aggressively when set. Set to 0 by default. gc urgent high(1): does GC forcibly in a period of given gc_urgent_sleep_time and ignores I/O idling check. uses greedy GC approach and turns SSR mode on. gc urgent low(2): lowers the bar of checking I/O idling in order to process outstanding discard commands and GC a little bit aggressively. always uses cost benefit GC approach, and will override age-threshold GC approach if ATGC is enabled at the same time. gc urgent mid(3): does GC forcibly in a period of given gc_urgent_sleep_time and executes a mid level of I/O idling check. always uses cost benefit GC approach, and will override age-threshold GC approach if ATGC is enabled at the same time.
/sys/fs/f2fs/<disk>/gc_urgent_sleep_time |
Defined on file sysfs-fs-f2fs
Controls sleep time of GC urgent mode. Set to 500ms by default.
/sys/fs/f2fs/<disk>/gc_valid_thresh_ratio |
Defined on file sysfs-fs-f2fs
It controls the valid block ratio threshold not to trigger excessive GC for zoned deivces. The initial value of it is 95(%). F2FS will stop the background GC thread from intiating GC for sections having valid blocks exceeding the ratio.
/sys/fs/f2fs/<disk>/hot_data_age_threshold |
Defined on file sysfs-fs-f2fs
When DATA SEPARATION is on, it controls the age threshold to indicate the data blocks as hot. By default it was initialized as 262144 blocks (equals to 1GB).
/sys/fs/f2fs/<disk>/idle_interval |
Defined on file sysfs-fs-f2fs
Controls the idle timing of system, if there is no FS operation during given interval. Set to 5 seconds by default.
/sys/fs/f2fs/<disk>/inject_rate |
Defined on file sysfs-fs-f2fs
Controls the injection rate of arbitrary faults.
/sys/fs/f2fs/<disk>/inject_type |
Defined on file sysfs-fs-f2fs
Controls the injection type of arbitrary faults.
/sys/fs/f2fs/<disk>/iostat_enable |
Defined on file sysfs-fs-f2fs
Controls to enable/disable IO stat.
/sys/fs/f2fs/<disk>/iostat_period_ms |
Defined on file sysfs-fs-f2fs
Give a way to change iostat_period time. 3secs by default. The new iostat trace gives stats gap given the period.
/sys/fs/f2fs/<disk>/ipu_policy |
Defined on file sysfs-fs-f2fs
Controls the in-place-update policy. updates in f2fs. User can set:
value |
policy |
description |
0x00 |
DISABLE |
disable IPU(=default option in LFS mode) |
0x01 |
FORCE |
all the time |
0x02 |
SSR |
if SSR mode is activated |
0x04 |
UTIL |
if FS utilization is over threshold |
0x08 |
SSR_UTIL |
if SSR mode is activated and FS utilization is over threshold |
0x10 |
FSYNC |
activated in fsync path only for high performance flash storages. IPU will be triggered only if the # of dirty pages over min_fsync_blocks. (=default option) |
0x20 |
ASYNC |
do IPU given by asynchronous write requests |
0x40 |
NOCACHE |
disable IPU bio cache |
0x80 |
HONOR_OPU_WRITE |
use OPU write prior to IPU write if inode has FI_OPU_WRITE flag |
Refer segment.h for details.
/sys/fs/f2fs/<disk>/last_age_weight |
Defined on file sysfs-fs-f2fs
When DATA SEPARATION is on, it controls the weight of last data block age.
/sys/fs/f2fs/<disk>/lifetime_write_kbytes |
Defined on file sysfs-fs-f2fs
Shows total written kbytes issued to disk.
/sys/fs/f2fs/<disk>/main_blkaddr |
Defined on file sysfs-fs-f2fs
Shows first block address of MAIN area.
/sys/fs/f2fs/<disk>/max_discard_issue_time |
Defined on file sysfs-fs-f2fs
Controls the interval the discard thread will wait when there are no discard operations to be issued.
/sys/fs/f2fs/<disk>/max_discard_request |
Defined on file sysfs-fs-f2fs
Controls the number of discards a thread will issue at a time. Higher number will allow the discard thread to finish its work faster, at the cost of higher latency for incoming I/O.
/sys/fs/f2fs/<disk>/max_fragment_chunk |
Defined on file sysfs-fs-f2fs
With “mode=fragment:block” mount options, we can scatter block allocation. f2fs will allocate 1..<max_fragment_chunk> blocks in a chunk and make a hole in the length of 1..<max_fragment_hole> by turns. This value can be set between 1..512 and the default value is 4.
/sys/fs/f2fs/<disk>/max_fragment_hole |
Defined on file sysfs-fs-f2fs
With “mode=fragment:block” mount options, we can scatter block allocation. f2fs will allocate 1..<max_fragment_chunk> blocks in a chunk and make a hole in the length of 1..<max_fragment_hole> by turns. This value can be set between 1..512 and the default value is 4.
/sys/fs/f2fs/<disk>/max_io_bytes |
Defined on file sysfs-fs-f2fs
This gives a control to limit the bio size in f2fs. Default is zero, which will follow underlying block layer limit, whereas, if it has a certain bytes value, f2fs won’t submit a bio larger than that size.
/sys/fs/f2fs/<disk>/max_ordered_discard |
Defined on file sysfs-fs-f2fs
Controls the maximum ordered discard, the unit size is one block(4KB). Set it to 16 by default.
/sys/fs/f2fs/<disk>/max_read_extent_count |
Defined on file sysfs-fs-f2fs
It controls max read extent count for per-inode, the value of threshold is 10240 by default.
/sys/fs/f2fs/<disk>/max_roll_forward_node_blocks |
Defined on file sysfs-fs-f2fs
Controls max # of node block writes to be used for roll forward recovery. This can limit the roll forward recovery time.
/sys/fs/f2fs/<disk>/max_small_discards |
Defined on file sysfs-fs-f2fs
Controls the issue rate of discard commands that consist of small blocks less than 2MB. The candidates to be discarded are cached during checkpoint, and issued by issue_discard thread after checkpoint. It is enabled by default.
/sys/fs/f2fs/<disk>/max_victim_search |
Defined on file sysfs-fs-f2fs
Controls the number of trials to find a victim segment when conducting SSR and cleaning operations. The default value is 4096 which covers 8GB block address range.
/sys/fs/f2fs/<disk>/mid_discard_issue_time |
Defined on file sysfs-fs-f2fs
Controls the interval the discard thread will wait between issuing discard requests when there are discards to be issued and an I/O aware interruption occurs.
/sys/fs/f2fs/<disk>/migration_granularity |
Defined on file sysfs-fs-f2fs
Controls migration granularity of garbage collection on large section, it can let GC move partial segment{s} of one section in one GC cycle, so that dispersing heavy overhead GC to multiple lightweight one.
/sys/fs/f2fs/<disk>/migration_window_granularity |
Defined on file sysfs-fs-f2fs
Controls migration window granularity of garbage collection on large section. it can control the scanning window granularity for GC migration in a unit of segment, while migration_granularity controls the number of segments which can be migrated at the same turn.
/sys/fs/f2fs/<disk>/min_discard_issue_time |
Defined on file sysfs-fs-f2fs
Controls the interval the discard thread will wait between issuing discard requests when there are discards to be issued and no I/O aware interruptions occur.
/sys/fs/f2fs/<disk>/min_fsync_blocks |
Defined on file sysfs-fs-f2fs
Controls the dirty page count condition for the in-place-update policies.
/sys/fs/f2fs/<disk>/min_hot_blocks |
Defined on file sysfs-fs-f2fs
Controls the dirty page count condition for redefining hot data.
/sys/fs/f2fs/<disk>/min_ipu_util |
Defined on file sysfs-fs-f2fs
Controls the FS utilization condition for the in-place-update policies. It is used by F2FS_IPU_UTIL and F2FS_IPU_SSR_UTIL policies.
/sys/fs/f2fs/<disk>/min_seq_blocks |
Defined on file sysfs-fs-f2fs
Controls the dirty page count condition for batched sequential writes in writepages.
/sys/fs/f2fs/<disk>/min_ssr_sections |
Defined on file sysfs-fs-f2fs
Controls the free section threshold to trigger SSR allocation. If this is large, SSR mode will be enabled early.
/sys/fs/f2fs/<disk>/mounted_time_sec |
Defined on file sysfs-fs-f2fs
Show the mounted time in secs of this partition.
/sys/fs/f2fs/<disk>/moved_blocks_background |
Defined on file sysfs-fs-f2fs
Number of blocks moved by garbage collection in background. Available when CONFIG_F2FS_STAT_FS=y.
/sys/fs/f2fs/<disk>/moved_blocks_foreground |
Defined on file sysfs-fs-f2fs
Number of blocks moved by garbage collection in foreground. Available when CONFIG_F2FS_STAT_FS=y.
/sys/fs/f2fs/<disk>/node_io_flag |
Defined on file sysfs-fs-f2fs
Give a way to attach REQ_META|FUA to node writes given temperature-based bits. Now the bits indicate:
REQ_META |
REQ_FUA |
||||
5 |
4 |
3 |
2 |
1 |
0 |
Cold |
Warm |
Hot |
Cold |
Warm |
Hot |
/sys/fs/f2fs/<disk>/ovp_segments |
Defined on file sysfs-fs-f2fs
Shows the number of overprovision segments.
/sys/fs/f2fs/<disk>/peak_atomic_write |
Defined on file sysfs-fs-f2fs
Show the peak value of total current atomic write block count after boot. If you write “0” here, you can initialize to “0”.
/sys/fs/f2fs/<disk>/pending_discard |
Defined on file sysfs-fs-f2fs
Shows the number of pending discard commands in the queue.
/sys/fs/f2fs/<disk>/ra_nid_pages |
Defined on file sysfs-fs-f2fs
Controls the count of nid pages to be readaheaded. When building free nids, F2FS reads NAT blocks ahead for speed up. Default is 0.
/sys/fs/f2fs/<disk>/ram_thresh |
Defined on file sysfs-fs-f2fs
Controls the memory footprint used by free nids and cached nat entries. By default, 1 is set, which indicates 10 MB / 1 GB RAM.
/sys/fs/f2fs/<disk>/readdir_ra |
Defined on file sysfs-fs-f2fs
Controls readahead inode block in readdir. Enabled by default.
/sys/fs/f2fs/<disk>/reclaim_segments |
Defined on file sysfs-fs-f2fs
This parameter controls the number of prefree segments to be reclaimed. If the number of prefree segments is larger than the number of segments in the proportion to the percentage over total volume size, f2fs tries to conduct checkpoint to reclaim the prefree segments to free segments. By default, 5% over total # of segments.
/sys/fs/f2fs/<disk>/reserved_blocks |
Defined on file sysfs-fs-f2fs
Controls target reserved blocks in system, the threshold is soft, it could exceed current available user space.
/sys/fs/f2fs/<disk>/reserved_segments |
Defined on file sysfs-fs-f2fs
In order to fine tune GC behavior, we can control the number of reserved segments.
/sys/fs/f2fs/<disk>/revoked_atomic_block |
Defined on file sysfs-fs-f2fs
Show the accumulated total revoked atomic write block count after boot. If you write “0” here, you can initialize to “0”.
/sys/fs/f2fs/<disk>/seq_file_ra_mul |
Defined on file sysfs-fs-f2fs
You can control the multiplier value of bdi device readahead window size between 2 (default) and 256 for POSIX_FADV_SEQUENTIAL advise option.
/sys/fs/f2fs/<disk>/stat/cp_status |
Defined on file sysfs-fs-f2fs
Show status of f2fs checkpoint in real time.
cp flag |
value |
CP_UMOUNT_FLAG |
0x00000001 |
CP_ORPHAN_PRESENT_FLAG |
0x00000002 |
CP_COMPACT_SUM_FLAG |
0x00000004 |
CP_ERROR_FLAG |
0x00000008 |
CP_FSCK_FLAG |
0x00000010 |
CP_FASTBOOT_FLAG |
0x00000020 |
CP_CRC_RECOVERY_FLAG |
0x00000040 |
CP_NAT_BITS_FLAG |
0x00000080 |
CP_TRIMMED_FLAG |
0x00000100 |
CP_NOCRC_RECOVERY_FLAG |
0x00000200 |
CP_LARGE_NAT_BITMAP_FLAG |
0x00000400 |
CP_QUOTA_NEED_FSCK_FLAG |
0x00000800 |
CP_DISABLED_FLAG |
0x00001000 |
CP_DISABLED_QUICK_FLAG |
0x00002000 |
CP_RESIZEFS_FLAG |
0x00004000 |
/sys/fs/f2fs/<disk>/stat/issued_discard |
Defined on file sysfs-fs-f2fs
Shows the number of issued discard.
/sys/fs/f2fs/<disk>/stat/queued_discard |
Defined on file sysfs-fs-f2fs
Shows the number of queued discard.
/sys/fs/f2fs/<disk>/stat/sb_status |
Defined on file sysfs-fs-f2fs
Show status of f2fs superblock in real time.
value |
sb status macro |
description |
0x1 |
SBI_IS_DIRTY |
dirty flag for checkpoint |
0x2 |
SBI_IS_CLOSE |
specify unmounting |
0x4 |
SBI_NEED_FSCK |
need fsck.f2fs to fix |
0x8 |
SBI_POR_DOING |
recovery is doing or not |
0x10 |
SBI_NEED_SB_WRITE |
need to recover superblock |
0x20 |
SBI_NEED_CP |
need to checkpoint |
0x40 |
SBI_IS_SHUTDOWN |
shutdown by ioctl |
0x80 |
SBI_IS_RECOVERED |
recovered orphan/data |
0x100 |
SBI_CP_DISABLED |
CP was disabled last mount |
0x200 |
SBI_CP_DISABLED_QUICK |
CP was disabled quickly |
0x400 |
SBI_QUOTA_NEED_FLUSH |
need to flush quota info in CP |
0x800 |
SBI_QUOTA_SKIP_FLUSH |
skip flushing quota in current CP |
0x1000 |
SBI_QUOTA_NEED_REPAIR |
quota file may be corrupted |
0x2000 |
SBI_IS_RESIZEFS |
resizefs is in process |
0x4000 |
SBI_IS_FREEZING |
freefs is in process |
/sys/fs/f2fs/<disk>/stat/undiscard_blks |
Defined on file sysfs-fs-f2fs
Shows the total number of undiscard blocks.
/sys/fs/f2fs/<disk>/umount_discard_timeout |
Defined on file sysfs-fs-f2fs
Set timeout to issue discard commands during umount. Default: 5 secs
/sys/fs/f2fs/<disk>/unusable |
Defined on file sysfs-fs-f2fs
If checkpoint=disable, it displays the number of blocks that are unusable. If checkpoint=enable it displays the number of blocks that would be unusable if checkpoint=disable were to be set.
/sys/fs/f2fs/<disk>/unusable_blocks_per_sec |
Defined on file sysfs-fs-f2fs
Shows the number of unusable blocks in a section which was defined by the zone capacity reported by underlying zoned device.
/sys/fs/f2fs/<disk>/warm_data_age_threshold |
Defined on file sysfs-fs-f2fs
When DATA SEPARATION is on, it controls the age threshold to indicate the data blocks as warm. By default it was initialized as 2621440 blocks (equals to 10GB).
/sys/fs/f2fs/features/ |
Defined on file sysfs-fs-f2fs
Shows all enabled kernel features. Supported features: encryption, block_zoned, extra_attr, project_quota, inode_checksum, flexible_inline_xattr, quota_ino, inode_crtime, lost_found, verity, sb_checksum, casefold, readonly, compression, test_dummy_encryption_v2, atomic_write, pin_file, encrypted_casefold.
/sys/fs/nilfs2/<device>/README |
Defined on file sysfs-fs-nilfs2
Describe attributes of /sys/fs/nilfs2/<device> group.
/sys/fs/nilfs2/<device>/blocksize |
Defined on file sysfs-fs-nilfs2
Show volume’s block size in bytes.
/sys/fs/nilfs2/<device>/checkpoints/README |
Defined on file sysfs-fs-nilfs2
Describe attributes of /sys/fs/nilfs2/<device>/checkpoints group.
/sys/fs/nilfs2/<device>/checkpoints/checkpoints_number |
Defined on file sysfs-fs-nilfs2
Show number of checkpoints on volume.
/sys/fs/nilfs2/<device>/checkpoints/last_seg_checkpoint |
Defined on file sysfs-fs-nilfs2
Show checkpoint number of the latest segment.
/sys/fs/nilfs2/<device>/checkpoints/next_checkpoint |
Defined on file sysfs-fs-nilfs2
Show next checkpoint number.
/sys/fs/nilfs2/<device>/checkpoints/snapshots_number |
Defined on file sysfs-fs-nilfs2
Show number of snapshots on volume.
/sys/fs/nilfs2/<device>/device_size |
Defined on file sysfs-fs-nilfs2
Show volume size in bytes.
/sys/fs/nilfs2/<device>/free_blocks |
Defined on file sysfs-fs-nilfs2
Show count of free blocks on volume.
/sys/fs/nilfs2/<device>/mounted_snapshots/<id>/README |
Defined on file sysfs-fs-nilfs2
Describe attributes of /sys/fs/nilfs2/<device>/mounted_snapshots/<id> group.
/sys/fs/nilfs2/<device>/mounted_snapshots/<id>/blocks_count |
Defined on file sysfs-fs-nilfs2
Show number of blocks for snapshot.
/sys/fs/nilfs2/<device>/mounted_snapshots/<id>/inodes_count |
Defined on file sysfs-fs-nilfs2
Show number of inodes for snapshot.
/sys/fs/nilfs2/<device>/mounted_snapshots/README |
Defined on file sysfs-fs-nilfs2
Describe content of /sys/fs/nilfs2/<device>/mounted_snapshots group.
/sys/fs/nilfs2/<device>/revision |
Defined on file sysfs-fs-nilfs2
Show NILFS file system revision on volume. This value informs about metadata structures’ revision on mounted volume.
/sys/fs/nilfs2/<device>/segctor/README |
Defined on file sysfs-fs-nilfs2
Describe attributes of /sys/fs/nilfs2/<device>/segctor group.
/sys/fs/nilfs2/<device>/segctor/current_last_full_seg |
Defined on file sysfs-fs-nilfs2
Show index number of the latest full segment.
/sys/fs/nilfs2/<device>/segctor/current_seg_sequence |
Defined on file sysfs-fs-nilfs2
Show segment sequence counter.
/sys/fs/nilfs2/<device>/segctor/dirty_data_blocks_count |
Defined on file sysfs-fs-nilfs2
Show number of dirty data blocks.
/sys/fs/nilfs2/<device>/segctor/last_nongc_write_time |
Defined on file sysfs-fs-nilfs2
Show write time of the last segment not for cleaner operation in human-readable format.
/sys/fs/nilfs2/<device>/segctor/last_nongc_write_time_secs |
Defined on file sysfs-fs-nilfs2
Show write time of the last segment not for cleaner operation in seconds.
/sys/fs/nilfs2/<device>/segctor/last_pseg_block |
Defined on file sysfs-fs-nilfs2
Show start block number of the latest segment.
/sys/fs/nilfs2/<device>/segctor/last_seg_checkpoint |
Defined on file sysfs-fs-nilfs2
Show checkpoint number of the latest segment.
/sys/fs/nilfs2/<device>/segctor/last_seg_sequence |
Defined on file sysfs-fs-nilfs2
Show sequence value of the latest segment.
/sys/fs/nilfs2/<device>/segctor/last_seg_write_time |
Defined on file sysfs-fs-nilfs2
Show write time of the last segment in human-readable format.
/sys/fs/nilfs2/<device>/segctor/last_seg_write_time_secs |
Defined on file sysfs-fs-nilfs2
Show write time of the last segment in seconds.
/sys/fs/nilfs2/<device>/segctor/next_checkpoint |
Defined on file sysfs-fs-nilfs2
Show next checkpoint number.
/sys/fs/nilfs2/<device>/segctor/next_full_seg |
Defined on file sysfs-fs-nilfs2
Show index number of the full segment index to be used next.
/sys/fs/nilfs2/<device>/segctor/next_pseg_offset |
Defined on file sysfs-fs-nilfs2
Show offset of next partial segment in the current full segment.
/sys/fs/nilfs2/<device>/segments/README |
Defined on file sysfs-fs-nilfs2
Describe attributes of /sys/fs/nilfs2/<device>/segments group.
/sys/fs/nilfs2/<device>/segments/blocks_per_segment |
Defined on file sysfs-fs-nilfs2
Show number of blocks in segment.
/sys/fs/nilfs2/<device>/segments/clean_segments |
Defined on file sysfs-fs-nilfs2
Show count of clean segments.
/sys/fs/nilfs2/<device>/segments/dirty_segments |
Defined on file sysfs-fs-nilfs2
Show count of dirty segments.
/sys/fs/nilfs2/<device>/segments/segments_number |
Defined on file sysfs-fs-nilfs2
Show number of segments on a volume.
/sys/fs/nilfs2/<device>/superblock/README |
Defined on file sysfs-fs-nilfs2
Describe attributes of /sys/fs/nilfs2/<device>/superblock group.
/sys/fs/nilfs2/<device>/superblock/sb_update_frequency |
Defined on file sysfs-fs-nilfs2
Show/Set interval of periodical update of superblock (in seconds).
/sys/fs/nilfs2/<device>/superblock/sb_write_count |
Defined on file sysfs-fs-nilfs2
Show current write count of super block.
/sys/fs/nilfs2/<device>/superblock/sb_write_time |
Defined on file sysfs-fs-nilfs2
Show last write time of super block in human-readable format.
/sys/fs/nilfs2/<device>/superblock/sb_write_time_secs |
Defined on file sysfs-fs-nilfs2
Show last write time of super block in seconds.
/sys/fs/nilfs2/<device>/uuid |
Defined on file sysfs-fs-nilfs2
Show volume’s UUID (Universally Unique Identifier).
/sys/fs/nilfs2/<device>/volume_name |
Defined on file sysfs-fs-nilfs2
Show volume’s label.
/sys/fs/nilfs2/features/README |
Defined on file sysfs-fs-nilfs2
Describe attributes of /sys/fs/nilfs2/features group.
/sys/fs/nilfs2/features/revision |
Defined on file sysfs-fs-nilfs2
Show current revision of NILFS file system driver. This value informs about file system revision that driver is ready to support.
/sys/fs/ocfs2/ |
Defined on file sysfs-ocfs2
The /sys/fs/ocfs2 directory contains knobs used by the ocfs2-tools to interact with the filesystem.
/sys/fs/ocfs2/active_cluster_plugin |
Defined on file sysfs-ocfs2
The /sys/fs/ocfs2/active_cluster_plugin displays which cluster plugin is currently in use by the filesystem. The active plugin will appear in the loaded_cluster_plugins file as well. Only one plugin can be used at a time.
Reading from this file returns the name of the active plugin on a single line.
This file is read-only. Which plugin is active depends on the cluster stack in use. The contents may change when all filesystems are unmounted and the cluster stack is changed.
/sys/fs/ocfs2/cluster_stack |
Defined on file sysfs-ocfs2
The /sys/fs/ocfs2/cluster_stack file contains the name of current ocfs2 cluster stack. This value is set by userspace tools when bringing the cluster stack online.
Cluster stack names are 4 characters in length.
When the ‘o2cb’ cluster stack is used, the ‘o2cb’ cluster plugin is active. All other cluster stacks use the ‘user’ cluster plugin.
Reading from this file returns the name of the current cluster stack on a single line.
Writing a new stack name to this file changes the current cluster stack unless there are mounted ocfs2 filesystems. If there are mounted filesystems, attempts to change the stack return an error.
Users:
ocfs2-tools <ocfs2-tools-devel@lists.linux.dev>
/sys/fs/ocfs2/loaded_cluster_plugins |
Defined on file sysfs-ocfs2
The /sys/fs/ocfs2/loaded_cluster_plugins file describes the available plugins to support ocfs2 cluster operation. A cluster plugin is required to use ocfs2 in a cluster. There are currently two available plugins:
- ‘o2cb’ - The classic o2cb cluster stack that ocfs2 has
used since its inception.
- ‘user’ - A plugin supporting userspace cluster software
in conjunction with fs/dlm.
Reading from this file returns the names of all loaded plugins, one per line.
This file is read-only. Its contents may change as plugins are loaded or removed.
/sys/fs/ocfs2/max_locking_protocol |
Defined on file sysfs-ocfs2
The /sys/fs/ocfs2/max_locking_protocol file displays version of ocfs2 locking supported by the filesystem. This version covers how ocfs2 uses distributed locking between cluster nodes.
The protocol version has a major and minor number. Two cluster nodes can interoperate if they have an identical major number and an overlapping minor number - thus, a node with version 1.10 can interoperate with a node sporting version 1.8, as long as both use the 1.8 protocol.
Reading from this file returns a single line, the major number and minor number joined by a period, eg “1.10”.
This file is read-only. The value is compiled into the driver.
/sys/fs/pstore/.. |
/dev/pstore/.. |
Defined on file pstore
Generic interface to platform dependent persistent storage.
Platforms that provide a mechanism to preserve some data across system reboots can register with this driver to provide a generic interface to show records captured in the dying moments. In the case of a panic the last part of the console log is captured, but other interesting data can also be saved:
# mount -t pstore -o kmsg_bytes=8000 - /sys/fs/pstore
$ ls -l /sys/fs/pstore/
total 0
-r--r--r-- 1 root root 7896 Nov 30 15:38 dmesg-erst-1
Different users of this interface will result in different filename prefixes. Currently two are defined:
“dmesg” - saved console log
“mce” - architecture dependent data from fatal h/w error
Once the information in a file has been read, removing the file will signal to the underlying persistent storage device that it can reclaim the space for later re-use:
$ rm /sys/fs/pstore/dmesg-erst-1
The expectation is that all files in /sys/fs/pstore/ will be saved elsewhere and erased from persistent store soon after boot to free up space ready for the next catastrophe.
The ‘kmsg_bytes’ mount option changes the target amount of data saved on each oops/panic. Pstore saves (possibly multiple) files based on the record size of the underlying persistent storage until at least this amount is reached. Default is 10 Kbytes.
Pstore only supports one backend at a time. If multiple backends are available, the preferred backend may be set by passing the pstore.backend= argument to the kernel at boot time.
/sys/fs/ubifsX_Y/error_crc |
Defined on file sysfs-fs-ubifs
Exposes crc errors: every node embeds a crc checksum.
This counter keeps track of the number of accesses of nodes with a bad crc checksum.
The counter is reset to 0 with a remount.
/sys/fs/ubifsX_Y/error_magic |
Defined on file sysfs-fs-ubifs
Exposes magic errors: every node starts with a magic number.
This counter keeps track of the number of accesses of nodes with a corrupted magic number.
The counter is reset to 0 with a remount.
/sys/fs/ubifsX_Y/error_node |
Defined on file sysfs-fs-ubifs
Exposes node errors. Every node embeds its type.
This counter keeps track of the number of accesses of nodes with a corrupted node type.
The counter is reset to 0 with a remount.
/sys/fs/virtiofs/<n>/device |
Defined on file sysfs-fs-virtiofs
Symlink to the virtio device that exports this filesystem.
/sys/fs/virtiofs/<n>/tag |
Defined on file sysfs-fs-virtiofs
[RO] The mount “tag” that can be used to mount this filesystem.
/sys/fs/xfs/<disk>/log/log_head_lsn |
Defined on file sysfs-fs-xfs
The log sequence number (LSN) of the current head of the log. The LSN is exported in “cycle:basic block” format.
Users: xfstests
/sys/fs/xfs/<disk>/log/log_tail_lsn |
Defined on file sysfs-fs-xfs
The log sequence number (LSN) of the current tail of the log. The LSN is exported in “cycle:basic block” format.
/sys/fs/xfs/<disk>/log/reserve_grant_head_bytes |
Defined on file sysfs-fs-xfs
The current state of the log reserve grant head. It represents the total log reservation of all currently outstanding transactions in bytes.
Users: xfstests
/sys/fs/xfs/<disk>/log/write_grant_head_bytes |
Defined on file sysfs-fs-xfs
The current state of the log write grant head. It represents the total log reservation of all currently outstanding transactions, including regrants due to rolling transactions in bytes.
Users: xfstests
Symbols under /sys/hypervisor¶
/sys/hypervisor/guest_type |
Defined on file sysfs-hypervisor-xen
If running under Xen: Type of guest: “Xen”: standard guest type on arm “HVM”: fully virtualized guest (x86) “PV”: paravirtualized guest (x86) “PVH”: fully virtualized guest without legacy emulation (x86)
/sys/hypervisor/pmu/pmu_features |
Defined on file sysfs-hypervisor-xen
If running under Xen: Describes Xen PMU features (as an integer). A set bit indicates that the corresponding feature is enabled. See include/xen/interface/xenpmu.h for available features
/sys/hypervisor/pmu/pmu_mode |
Defined on file sysfs-hypervisor-xen
If running under Xen: Describes mode that Xen’s performance-monitoring unit (PMU) uses. Accepted values are:
“off”
PMU is disabled
“self”
The guest can profile itself
“hv”
The guest can profile itself and, if it is privileged (e.g. dom0), the hypervisor
“all”
The guest can profile itself, the hypervisor and all other guests. Only available to privileged guests.
/sys/hypervisor/properties/buildid |
Defined on file sysfs-hypervisor-xen
If running under Xen: Build id of the hypervisor, needed for hypervisor live patching. Might return “<denied>” in case of special security settings in the hypervisor.
Symbols under /sys/kernel¶
/sys/kernel/address_bit |
Defined on file sysfs-kernel-address_bits
The address size of the running kernel in bits.
Access: Read
Users: util-linux
/sys/kernel/boot_params |
Defined on file sysfs-kernel-boot_params
The /sys/kernel/boot_params directory contains two files: “data” and “version” and one subdirectory “setup_data”. It is used to export the kernel boot parameters of an x86 platform to userspace for kexec and debugging purpose.
If there’s no setup_data in boot_params the subdirectory will not be created.
“data” file is the binary representation of struct boot_params.
“version” file is the string representation of boot protocol version.
“setup_data” subdirectory contains the setup_data data structure in boot_params. setup_data is maintained in kernel as a link list. In “setup_data” subdirectory there’s one subdirectory for each link list node named with the number of the list nodes. The list node subdirectory contains two files “type” and “data”. “type” file is the string representation of setup_data type. “data” file is the binary representation of setup_data payload.
The whole boot_params directory structure is like below:
/sys/kernel/boot_params
|__ data
|__ setup_data
| |__ 0
| | |__ data
| | |__ type
| |__ 1
| |__ data
| |__ type
|__ version
Users: Kexec
/sys/kernel/btf |
Defined on file sysfs-kernel-btf
Contains BTF type information and related data for kernel and kernel modules.
/sys/kernel/btf/<module-name> |
Defined on file sysfs-kernel-btf
Read-only binary attribute exposing kernel module’s BTF type information as an add-on to the kernel’s BTF (/sys/kernel/btf/vmlinux).
/sys/kernel/btf/vmlinux |
Defined on file sysfs-kernel-btf
Read-only binary attribute exposing kernel’s own BTF type information with description of all internal kernel types. See BPF Type Format (BTF) for detailed description of format itself.
/sys/kernel/config/most_<component> |
Defined on file configfs-most
Interface is used to configure and connect device channels to component drivers.
Attributes are visible only when configfs is mounted. To mount configfs in /sys/kernel/config directory use: # mount -t configfs none /sys/kernel/config/
/sys/kernel/config/most_cdev/<link> |
Defined on file configfs-most
The attributes:
- buffer_size
configure the buffer size for this channel
- subbuffer_size
configure the sub-buffer size for this channel (needed for synchronous and isochronous data)
- num_buffers
configure number of buffers used for this channel
- datatype
configure type of data that will travel over this channel
- direction
configure whether this link will be an input or output
- dbr_size
configure DBR data buffer size (this is used for MediaLB communication only)
- packets_per_xact
configure the number of packets that will be collected from the network before being transmitted via USB (this is used for USB communication only)
- device
name of the device the link is to be attached to
- channel
name of the channel the link is to be attached to
- comp_params
pass parameters needed by some components
- create_link
write ‘1’ to this attribute to trigger the creation of the link. In case of speculative configuration, the creation is post-poned until a physical device is being attached to the bus.
- destroy_link
write ‘1’ to this attribute to destroy an active link
/sys/kernel/config/most_net/<link> |
Defined on file configfs-most
The attributes:
- buffer_size
configure the buffer size for this channel
- subbuffer_size
configure the sub-buffer size for this channel (needed for synchronous and isochronous data)
- num_buffers
configure number of buffers used for this channel
- datatype
configure type of data that will travel over this channel
- direction
configure whether this link will be an input or output
- dbr_size
configure DBR data buffer size (this is used for MediaLB communication only)
- packets_per_xact
configure the number of packets that will be collected from the network before being transmitted via USB (this is used for USB communication only)
- device
name of the device the link is to be attached to
- channel
name of the channel the link is to be attached to
- comp_params
pass parameters needed by some components
- create_link
write ‘1’ to this attribute to trigger the creation of the link. In case of speculative configuration, the creation is post-poned until a physical device is being attached to the bus.
- destroy_link
write ‘1’ to this attribute to destroy an active link
/sys/kernel/config/most_sound/<card> |
Defined on file configfs-most
The attributes:
- create_card
write ‘1’ to this attribute to trigger the registration of the sound card with the ALSA subsystem.
/sys/kernel/config/most_sound/<card>/<link> |
Defined on file configfs-most
The attributes:
- buffer_size
configure the buffer size for this channel
- subbuffer_size
configure the sub-buffer size for this channel (needed for synchronous and isochronous data)
- num_buffers
configure number of buffers used for this channel
- datatype
configure type of data that will travel over this channel
- direction
configure whether this link will be an input or output
- dbr_size
configure DBR data buffer size (this is used for MediaLB communication only)
- packets_per_xact
configure the number of packets that will be collected from the network before being transmitted via USB (this is used for USB communication only)
- device
name of the device the link is to be attached to
- channel
name of the channel the link is to be attached to
- comp_params
pass parameters needed by some components
- create_link
write ‘1’ to this attribute to trigger the creation of the link. In case of speculative configuration, the creation is post-poned until a physical device is being attached to the bus.
- destroy_link
write ‘1’ to this attribute to destroy an active link
/sys/kernel/config/most_video/<link> |
Defined on file configfs-most
The attributes:
- buffer_size
configure the buffer size for this channel
- subbuffer_size
configure the sub-buffer size for this channel (needed for synchronous and isochronous data)
- num_buffers
configure number of buffers used for this channel
- datatype
configure type of data that will travel over this channel
- direction
configure whether this link will be an input or output
- dbr_size
configure DBR data buffer size (this is used for MediaLB communication only)
- packets_per_xact
configure the number of packets that will be collected from the network before being transmitted via USB (this is used for USB communication only)
- device
name of the device the link is to be attached to
- channel
name of the channel the link is to be attached to
- comp_params
pass parameters needed by some components
- create_link
write ‘1’ to this attribute to trigger the creation of the link. In case of speculative configuration, the creation is post-poned until a physical device is being attached to the bus.
- destroy_link
write ‘1’ to this attribute to destroy an active link
/sys/kernel/config/tsm/report/$name/auxblob |
Defined on file configfs-tsm
(RO) Optional supplemental data that a TSM may emit, visibility of this attribute depends on TSM, and may be empty if no auxiliary data is available.
When @provider is “sev_guest” this file contains the “cert_table” from SEV-ES Guest-Hypervisor Communication Block Standardization v2.03 Section 4.1.8.1 MSG_REPORT_REQ. https://www.amd.com/content/dam/amd/en/documents/epyc-technical-docs/specifications/56421.pdf
/sys/kernel/config/tsm/report/$name/generation |
Defined on file configfs-tsm
(RO) The value in this attribute increments each time @inblob or any option is written. Userspace can detect conflicts by checking generation before writing to any attribute and making sure the number of writes matches expectations after reading @outblob, or it can prevent conflicts by creating a report instance per requesting context.
/sys/kernel/config/tsm/report/$name/inblob |
Defined on file configfs-tsm
(WO) Up to 64 bytes of user specified binary data. For replay protection this should include a nonce, but the kernel does not place any restrictions on the content.
/sys/kernel/config/tsm/report/$name/manifestblob |
Defined on file configfs-tsm
(RO) Optional supplemental data that a TSM may emit, visibility of this attribute depends on TSM, and may be empty if no manifest data is available.
See ‘service_provider’ for information on the format of the manifest blob.
/sys/kernel/config/tsm/report/$name/outblob |
Defined on file configfs-tsm
(RO) Binary attestation report generated from @inblob and other options The format of the report is implementation specific where the implementation is conveyed via the @provider attribute.
/sys/kernel/config/tsm/report/$name/privlevel |
Defined on file configfs-tsm
(WO) Attribute is visible if a TSM implementation provider supports the concept of attestation reports for TVMs running at different privilege levels, like SEV-SNP “VMPL”, specify the privilege level via this attribute. The minimum acceptable value is conveyed via @privlevel_floor and the maximum acceptable value is TSM_PRIVLEVEL_MAX (3).
/sys/kernel/config/tsm/report/$name/privlevel_floor |
Defined on file configfs-tsm
(RO) Indicates the minimum permissible value that can be written to @privlevel.
/sys/kernel/config/tsm/report/$name/provider |
Defined on file configfs-tsm
(RO) A name for the format-specification of @outblob like “sev_guest” [1] or “tdx_guest” [2] in the near term, or a common standard format in the future.
[1]: SEV Secure Nested Paging Firmware ABI Specification Revision 1.55 Table 22 https://www.amd.com/content/dam/amd/en/documents/epyc-technical-docs/specifications/56860.pdf
[2]: Intel® Trust Domain Extensions Data Center Attestation Primitives : Quote Generation Library and Quote Verification Library Revision 0.8 Appendix 4,5 https://download.01.org/intel-sgx/latest/dcap-latest/linux/docs/Intel_TDX_DCAP_Quoting_Library_API.pdf
/sys/kernel/config/tsm/report/$name/service_guid |
Defined on file configfs-tsm
(WO) Attribute is visible if a TSM implementation provider supports the concept of attestation reports from a service provider for TVMs, like SEV-SNP running under an SVSM. Specifying an empty/null GUID (00000000-0000-0000-0000-000000) requests all active services within the service provider be part of the attestation report. Specifying a GUID request an attestation report of just the specified service using the manifest form specified by the service_manifest_version attribute.
See ‘service_provider’ for information on the format of the service guid.
/sys/kernel/config/tsm/report/$name/service_manifest_version |
Defined on file configfs-tsm
(WO) Attribute is visible if a TSM implementation provider supports the concept of attestation reports from a service provider for TVMs, like SEV-SNP running under an SVSM. Indicates the service manifest version requested for the attestation report (default 0). If this field is not set by the user, the default manifest version of the service (the service’s initial/first manifest version) is returned.
See ‘service_provider’ for information on the format of the service manifest version.
/sys/kernel/config/tsm/report/$name/service_provider |
Defined on file configfs-tsm
(WO) Attribute is visible if a TSM implementation provider supports the concept of attestation reports from a service provider for TVMs, like SEV-SNP running under an SVSM. Specifying the service provider via this attribute will create an attestation report as specified by the service provider. The only currently supported service provider is “svsm”.
For the “svsm” service provider, see the Secure VM Service Module for SEV-SNP Guests v1.00 Section 7. For the doc, search for “site:amd.com “Secure VM Service Module for SEV-SNP Guests”, docID: 58019”
/sys/kernel/cpu_byteorder |
Defined on file sysfs-kernel-cpu_byteorder
The endianness of the running kernel.
Access: Read
- Valid values:
“little”, “big”
Users: util-linux
/sys/kernel/debug/<cros-ec-device>/console_log |
Defined on file debugfs-cros-ec
If the EC supports the CONSOLE_READ command type, this file can be used to grab the EC logs. The kernel polls for the log and keeps its own buffer but userspace should grab this and write it out to some logs.
/sys/kernel/debug/<cros-ec-device>/last_resume_result |
Defined on file debugfs-cros-ec
Some ECs have a feature where they will track transitions to the (Intel) processor’s SLP_S0 line, in order to detect cases where a system failed to go into S0ix. When the system resumes, an EC with this feature will return a summary of SLP_S0 transitions that occurred. The last_resume_result file returns the most recent response from the AP’s resume message to the EC.
The bottom 31 bits contain a count of the number of SLP_S0 transitions that occurred since the suspend message was received. Bit 31 is set if the EC attempted to wake the system due to a timeout when watching for SLP_S0 transitions. Callers can use this to detect a wake from the EC due to S0ix timeouts. The result will be zero if no suspend transitions have been attempted, or the EC does not support this feature.
Output will be in the format: “0x%08xn”.
/sys/kernel/debug/<cros-ec-device>/panicinfo |
Defined on file debugfs-cros-ec
This file dumps the EC panic information from the previous reboot. This file will only exist if the PANIC_INFO command type is supported by the EC.
/sys/kernel/debug/<cros-ec-device>/pdinfo |
Defined on file debugfs-cros-ec
This file provides the port role, muxes and power debug information for all the USB PD/type-C ports available. If the are no ports available, this file will be just an empty file.
/sys/kernel/debug/<cros-ec-device>/suspend_timeout_ms |
Defined on file debugfs-cros-ec
Some ECs have a feature where they will track transitions of a hardware-controlled sleep line, such as Intel’s SLP_S0 line, in order to detect cases where a system failed to go into deep sleep states. The suspend_timeout_ms file controls the amount of time in milliseconds the EC will wait before declaring a sleep timeout event and attempting to wake the system.
Supply 0 to use the default value coded into EC firmware. Supply 65535 (EC_HOST_SLEEP_TIMEOUT_INFINITE) to disable the EC sleep failure detection mechanism. Values in between 0 and 65535 indicate the number of milliseconds the EC should wait after a sleep transition before declaring a timeout. This includes both the duration after a sleep command was received but before the hardware line changed, as well as the duration between when the hardware line changed and the kernel sent an EC resume command.
Output will be in the format: “%un”.
/sys/kernel/debug/<cros-ec-device>/uptime |
Defined on file debugfs-cros-ec
A u32 providing the time since EC booted in ms. This is is used for synchronizing the AP host time with the EC log. An error is returned if the command is not supported by the EC or there is a communication problem.
/sys/kernel/debug/accel/<parent_device>/addr |
Defined on file debugfs-driver-habanalabs
Sets the device address to be used for read or write through PCI bar, or the device VA of a host mapped memory to be read or written directly from the host. The latter option is allowed only when the IOMMU is disabled. The acceptable value is a string that starts with “0x”
/sys/kernel/debug/accel/<parent_device>/clk_gate |
Defined on file debugfs-driver-habanalabs
This setting is now deprecated as clock gating is handled solely by the f/w
/sys/kernel/debug/accel/<parent_device>/command_buffers |
Defined on file debugfs-driver-habanalabs
Displays a list with information about the currently allocated command buffers
/sys/kernel/debug/accel/<parent_device>/command_submission |
Defined on file debugfs-driver-habanalabs
Displays a list with information about the currently active command submissions
/sys/kernel/debug/accel/<parent_device>/command_submission_jobs |
Defined on file debugfs-driver-habanalabs
Displays a list with detailed information about each JOB (CB) of each active command submission
/sys/kernel/debug/accel/<parent_device>/data32 |
Defined on file debugfs-driver-habanalabs
Allows the root user to read or write directly through the device’s PCI bar. Writing to this file generates a write transaction while reading from the file generates a read transaction. This custom interface is needed (instead of using the generic Linux user-space PCI mapping) because the DDR bar is very small compared to the DDR memory and only the driver can move the bar before and after the transaction.
If the IOMMU is disabled, it also allows the root user to read or write from the host a device VA of a host mapped memory
/sys/kernel/debug/accel/<parent_device>/data64 |
Defined on file debugfs-driver-habanalabs
Allows the root user to read or write 64 bit data directly through the device’s PCI bar. Writing to this file generates a write transaction while reading from the file generates a read transaction. This custom interface is needed (instead of using the generic Linux user-space PCI mapping) because the DDR bar is very small compared to the DDR memory and only the driver can move the bar before and after the transaction.
If the IOMMU is disabled, it also allows the root user to read or write from the host a device VA of a host mapped memory
/sys/kernel/debug/accel/<parent_device>/data_dma |
Defined on file debugfs-driver-habanalabs
Allows the root user to read from the device’s internal memory (DRAM/SRAM) through a DMA engine. This property is a binary blob that contains the result of the DMA transfer. This custom interface is needed (instead of using the generic Linux user-space PCI mapping) because the amount of internal memory is huge (>32GB) and reading it via the PCI bar will take a very long time. This interface doesn’t support concurrency in the same device. In GAUDI and GOYA, this action can cause undefined behavior in case it is done while the device is executing user workloads. Only supported on GAUDI at this stage.
/sys/kernel/debug/accel/<parent_device>/device |
Defined on file debugfs-driver-habanalabs
Enables the root user to set the device to specific state. Valid values are “disable”, “enable”, “suspend”, “resume”. User can read this property to see the valid values
/sys/kernel/debug/accel/<parent_device>/device_release_watchdog_timeout |
Defined on file debugfs-driver-habanalabs
The watchdog timeout value in seconds for a device release upon certain error cases, after which the device is reset.
/sys/kernel/debug/accel/<parent_device>/dma_size |
Defined on file debugfs-driver-habanalabs
Specify the size of the DMA transaction when using DMA to read from the device’s internal memory. The value can not be larger than 128MB. Writing to this value initiates the DMA transfer. When the write is finished, the user can read the “data_dma” blob
/sys/kernel/debug/accel/<parent_device>/dump_razwi_events |
Defined on file debugfs-driver-habanalabs
Dumps all razwi events to dmesg if exist. After reading the status register of an existing event the routine will clear the status register. Usage: cat dump_razwi_events
/sys/kernel/debug/accel/<parent_device>/dump_security_violations |
Defined on file debugfs-driver-habanalabs
Dumps all security violations to dmesg. This will also ack all security violations meanings those violations will not be dumped next time user calls this API
/sys/kernel/debug/accel/<parent_device>/engines |
Defined on file debugfs-driver-habanalabs
Displays the status registers values of the device engines and their derived idle status
/sys/kernel/debug/accel/<parent_device>/i2c_addr |
Defined on file debugfs-driver-habanalabs
Sets I2C device address for I2C transaction that is generated by the device’s CPU, Not available when device is loaded with secured firmware
/sys/kernel/debug/accel/<parent_device>/i2c_bus |
Defined on file debugfs-driver-habanalabs
Sets I2C bus address for I2C transaction that is generated by the device’s CPU, Not available when device is loaded with secured firmware
/sys/kernel/debug/accel/<parent_device>/i2c_data |
Defined on file debugfs-driver-habanalabs
Triggers an I2C transaction that is generated by the device’s CPU. Writing to this file generates a write transaction while reading from the file generates a read transaction, Not available when device is loaded with secured firmware
/sys/kernel/debug/accel/<parent_device>/i2c_len |
Defined on file debugfs-driver-habanalabs
Sets I2C length in bytes for I2C transaction that is generated by the device’s CPU, Not available when device is loaded with secured firmware
/sys/kernel/debug/accel/<parent_device>/i2c_reg |
Defined on file debugfs-driver-habanalabs
Sets I2C register id for I2C transaction that is generated by the device’s CPU, Not available when device is loaded with secured firmware
/sys/kernel/debug/accel/<parent_device>/led0 |
Defined on file debugfs-driver-habanalabs
Sets the state of the first S/W led on the device, Not available when device is loaded with secured firmware
/sys/kernel/debug/accel/<parent_device>/led1 |
Defined on file debugfs-driver-habanalabs
Sets the state of the second S/W led on the device, Not available when device is loaded with secured firmware
/sys/kernel/debug/accel/<parent_device>/led2 |
Defined on file debugfs-driver-habanalabs
Sets the state of the third S/W led on the device, Not available when device is loaded with secured firmware
/sys/kernel/debug/accel/<parent_device>/memory_scrub |
Defined on file debugfs-driver-habanalabs
Allows the root user to scrub the dram memory. The scrubbing value can be set using the debugfs file memory_scrub_val.
/sys/kernel/debug/accel/<parent_device>/memory_scrub_val |
Defined on file debugfs-driver-habanalabs
The value to which the dram will be set to when the user scrubs the dram using ‘memory_scrub’ debugfs file and the scrubbing value when using module param ‘memory_scrub’
/sys/kernel/debug/accel/<parent_device>/mmu |
Defined on file debugfs-driver-habanalabs
Displays the hop values and physical address for a given ASID and virtual address. The user should write the ASID and VA into the file and then read the file to get the result. e.g. to display info about VA 0x1000 for ASID 1 you need to do: echo “1 0x1000” > /sys/kernel/debug/accel/<parent_device>/mmu
/sys/kernel/debug/accel/<parent_device>/mmu_error |
Defined on file debugfs-driver-habanalabs
Check and display page fault or access violation mmu errors for all MMUs specified in mmu_cap_mask. e.g. to display error info for MMU hw cap bit 9, you need to do: echo “0x200” > /sys/kernel/debug/accel/<parent_device>/mmu_error cat /sys/kernel/debug/accel/<parent_device>/mmu_error
/sys/kernel/debug/accel/<parent_device>/monitor_dump |
Defined on file debugfs-driver-habanalabs
Allows the root user to dump monitors status from the device’s protected config space. This property is a binary blob that contains the result of the monitors registers dump. This custom interface is needed (instead of using the generic Linux user-space PCI mapping) because this space is protected and cannot be accessed using PCI read. This interface doesn’t support concurrency in the same device. Only supported on GAUDI.
/sys/kernel/debug/accel/<parent_device>/monitor_dump_trig |
Defined on file debugfs-driver-habanalabs
Triggers dump of monitor data. The value to trigger the operation must be 1. Triggering the monitor dump operation initiates dump of current registers values of all monitors. When the write is finished, the user can read the “monitor_dump” blob
/sys/kernel/debug/accel/<parent_device>/server_type |
Defined on file debugfs-driver-habanalabs
Exposes the device’s server type, maps to enum hl_server_type.
/sys/kernel/debug/accel/<parent_device>/set_power_state |
Defined on file debugfs-driver-habanalabs
Sets the PCI power state. Valid values are “1” for D0 and “2” for D3Hot
/sys/kernel/debug/accel/<parent_device>/skip_reset_on_timeout |
Defined on file debugfs-driver-habanalabs
Sets the skip reset on timeout option for the device. Value of “0” means device will be reset in case some CS has timed out, otherwise it will not be reset.
/sys/kernel/debug/accel/<parent_device>/state_dump |
Defined on file debugfs-driver-habanalabs
Gets the state dump occurring on a CS timeout or failure. State dump is used for debug and is created each time in case of a problem in a CS execution, before reset. Reading from the node returns the newest state dump available. Writing an integer X discards X state dumps, so that the next read would return X+1-st newest state dump.
/sys/kernel/debug/accel/<parent_device>/stop_on_err |
Defined on file debugfs-driver-habanalabs
Sets the stop-on_error option for the device engines. Value of “0” is for disable, otherwise enable. Relevant only for GOYA and GAUDI.
/sys/kernel/debug/accel/<parent_device>/timeout_locked |
Defined on file debugfs-driver-habanalabs
Sets the command submission timeout value in seconds.
/sys/kernel/debug/accel/<parent_device>/userptr |
Defined on file debugfs-driver-habanalabs
Displays a list with information about the current user pointers (user virtual addresses) that are pinned and mapped to DMA addresses
/sys/kernel/debug/accel/<parent_device>/userptr_lookup |
Defined on file debugfs-driver-habanalabs
Allows to search for specific user pointers (user virtual addresses) that are pinned and mapped to DMA addresses, and see their resolution to the specific dma address.
/sys/kernel/debug/accel/<parent_device>/vm |
Defined on file debugfs-driver-habanalabs
Displays a list with information about all the active virtual address mappings per ASID and all user mappings of HW blocks
/sys/kernel/debug/cec/*/error-inj |
Defined on file debugfs-cec-error-inj
The CEC Framework allows for CEC error injection commands through debugfs. Drivers that support this will create an error-inj file through which the error injection commands can be given.
The basic syntax is as follows:
Leading spaces/tabs are ignored. If the next character is a ‘#’ or the end of the line was reached, then the whole line is ignored. Otherwise a command is expected.
It is up to the driver to decide what commands to implement. The only exception is that the command ‘clear’ without any arguments must be implemented and that it will remove all current error injection commands.
This ensures that you can always do ‘echo clear >error-inj’ to clear any error injections without having to know the details of the driver-specific commands.
Note that the output of ‘error-inj’ shall be valid as input to ‘error-inj’. So this must work:
$ cat error-inj >einj.txt
$ cat einj.txt >error-inj
Other than these basic rules described above this ABI is not considered stable and may change in the future.
Drivers that implement this functionality must document the commands as part of the CEC documentation and must keep that documentation up to date when changes are made.
The following CEC error injection implementations exist:
/sys/kernel/debug/cxl/$dport_dev/einj_inject |
Defined on file debugfs-cxl
(WO) Writing an integer to this file injects the corresponding CXL protocol error into $dport_dev ($dport_dev will be a device name from /sys/bus/pci/devices). The integer to type mapping for injection can be found by reading from einj_types. If the dport was enumerated in RCH mode, a CXL 1.1 error is injected, otherwise a CXL 2.0 error is injected.
/sys/kernel/debug/cxl/einj_types |
Defined on file debugfs-cxl
(RO) Prints the CXL protocol error types made available by the platform in the format:
0x<error number> <error type>
The possible error types are (as of ACPI v6.5):
0x1000 CXL.cache Protocol Correctable 0x2000 CXL.cache Protocol Uncorrectable non-fatal 0x4000 CXL.cache Protocol Uncorrectable fatal 0x8000 CXL.mem Protocol Correctable 0x10000 CXL.mem Protocol Uncorrectable non-fatal 0x20000 CXL.mem Protocol Uncorrectable fatal
The <error number> can be written to einj_inject to inject <error type> into a chosen dport.
/sys/kernel/debug/cxl/memX/inject_poison |
Defined on file debugfs-cxl
(WO) When a Device Physical Address (DPA) is written to this attribute, the memdev driver sends an inject poison command to the device for the specified address. The DPA must be 64-byte aligned and the length of the injected poison is 64-bytes. If successful, the device returns poison when the address is accessed through the CXL.mem bus. Injecting poison adds the address to the device’s Poison List and the error source is set to Injected. In addition, the device adds a poison creation event to its internal Informational Event log, updates the Event Status register, and if configured, interrupts the host. It is not an error to inject poison into an address that already has poison present and no error is returned. If the device returns ‘Inject Poison Limit Reached’ an -EBUSY error is returned to the user. The inject_poison attribute is only visible for devices supporting the capability.
/sys/kernel/debug/dcc/.../[list-number]/config |
Defined on file debugfs-driver-dcc
This stores the addresses of the registers which can be read in case of a hardware crash or manual software triggers. The input addresses type can be one of following dcc instructions: read, write, read-write, and loop type. The lists need to be configured sequentially and not in a overlapping manner; e.g. users can jump to list x only after list y is configured and enabled. The input format for each type is as follows:
Read instruction
echo R <addr> <n> <bus> >/sys/kernel/debug/dcc/../[list-number]/config
where:
- <addr>
The address to be read.
- <n>
The addresses word count, starting from address <1>. Each word is 32 bits (4 bytes). If omitted, defaulted to 1.
- <bus type>
The bus type, which can be either ‘apb’ or ‘ahb’. The default is ‘ahb’ if leaved out.
Write instruction
echo W <addr> <n> <bus type> > /sys/kernel/debug/dcc/../[list-number]/config
where:
- <addr>
The address to be written.
- <n>
The value to be written at <addr>.
- <bus type>
The bus type, which can be either ‘apb’ or ‘ahb’.
Read-write instruction
echo RW <addr> <n> <mask> > /sys/kernel/debug/dcc/../[list-number]/config
where:
- <addr>
The address to be read and written.
- <n>
The value to be written at <addr>.
- <mask>
The value mask.
Loop instruction
echo L <loop count> <address count> <address>... > /sys/kernel/debug/dcc/../[list-number]/config
where:
- <loop count>
Number of iterations
- <address count>
total number of addresses to be written
- <address>
Space-separated list of addresses.
/sys/kernel/debug/dcc/.../[list-number]/enable |
Defined on file debugfs-driver-dcc
This debugfs interface is used for enabling the the dcc hardware. A file named “enable” is in the directory list number where users can enable/disable the specific list by writing boolean (1 or 0) to the file.
On enabling the dcc, all the addresses specified by the user for the corresponding list is written into dcc sram which is read by the dcc hardware on manual or crash induced triggers. Lists must be configured and enabled sequentially, e.g. list 2 can only be enabled when list 1 have so.
/sys/kernel/debug/dcc/.../config_reset |
Defined on file debugfs-driver-dcc
This file is used to reset the configuration of a dcc driver to the default configuration. When ‘1’ is written to the file, all the previous addresses stored in the driver gets removed and users need to reconfigure addresses again.
/sys/kernel/debug/dcc/.../ready |
Defined on file debugfs-driver-dcc
This file is used to check the status of the dcc hardware if it’s ready to receive user configurations. A ‘Y’ here indicates dcc is ready.
/sys/kernel/debug/dcc/.../trigger |
Defined on file debugfs-driver-dcc
This is the debugfs interface for manual software triggers. The trigger can be invoked by writing ‘1’ to the file.
/sys/kernel/debug/dell-wmi-ddv-<wmi_device_name>/fan_sensor_information |
Defined on file debugfs-dell-wmi-ddv
This file contains the contents of the fan sensor information buffer, which contains fan sensor entries and a terminating character (0xFF).
Each fan sensor entry contains:
fan type (single byte)
fan speed in RPM (two bytes, little endian)
See Dell DDV WMI interface driver (dell-wmi-ddv) for details.
/sys/kernel/debug/dell-wmi-ddv-<wmi_device_name>/thermal_sensor_information |
Defined on file debugfs-dell-wmi-ddv
This file contains the contents of the thermal sensor information buffer, which contains thermal sensor entries and a terminating character (0xFF).
Each thermal sensor entry contains:
thermal type (single byte)
current temperature (single byte)
min. temperature (single byte)
max. temperature (single byte)
unknown field (single byte)
See Dell DDV WMI interface driver (dell-wmi-ddv) for details.
/sys/kernel/debug/ec/*/{gpe,use_global_lock,io} |
Defined on file debugfs-ec
General information like which GPE is assigned to the EC and whether the global lock should get used. Knowing the EC GPE one can watch the amount of HW events related to the EC here (XY -> GPE number from /sys/kernel/debug/ec/*/gpe): /sys/firmware/acpi/interrupts/gpeXY
The io file is binary and a userspace tool located here: ftp://ftp.suse.com/pub/people/trenn/sources/ec/ should get used to read out the 256 Embedded Controller registers or writing to them.
- CAUTION:
Do not write to the Embedded Controller if you don’t know what you are doing! Rebooting afterwards also is a good idea. This can influence the way your machine is cooled and fans may not get switched on again after you did a wrong write.
/sys/kernel/debug/genwqe/genwqe<n>_card/curr_dbg_uid0 |
Defined on file debugfs-driver-genwqe
Internal chip state of UID0 (unit id 0). Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/curr_dbg_uid1 |
Defined on file debugfs-driver-genwqe
Internal chip state of UID1. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/curr_dbg_uid2 |
Defined on file debugfs-driver-genwqe
Internal chip state of UID2. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/curr_regs |
Defined on file debugfs-driver-genwqe
Dump of the current error registers. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/ddcb_info |
Defined on file debugfs-driver-genwqe
DDCB queue dump used for debugging queueing problems.
/sys/kernel/debug/genwqe/genwqe<n>_card/err_inject |
Defined on file debugfs-driver-genwqe
Possibility to inject error cases to ensure that the drivers error handling code works well.
/sys/kernel/debug/genwqe/genwqe<n>_card/info |
Defined on file debugfs-driver-genwqe
Comprehensive summary of bitstream version and software version. Used bitstream and bitstream clocking information.
/sys/kernel/debug/genwqe/genwqe<n>_card/jobtimer |
Defined on file debugfs-driver-genwqe
Dump job timeout register values for PF and VFs. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/prev_dbg_uid0 |
Defined on file debugfs-driver-genwqe
Internal chip state of UID0 before card was reset. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/prev_dbg_uid1 |
Defined on file debugfs-driver-genwqe
Internal chip state of UID1 before card was reset. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/prev_dbg_uid2 |
Defined on file debugfs-driver-genwqe
Internal chip state of UID2 before card was reset. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/prev_regs |
Defined on file debugfs-driver-genwqe
Dump of the error registers before the last reset of the card occurred. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/queue_working_time |
Defined on file debugfs-driver-genwqe
Dump queue working time register values for PF and VFs. Only available for PF.
/sys/kernel/debug/genwqe/genwqe<n>_card/vf<0..14>_jobtimeout_msec |
Defined on file debugfs-driver-genwqe
Default VF timeout 250ms. Testing might require 1000ms. Using 0 will use the cards default value (whatever that is).
The timeout depends on the max number of available cards in the system and the maximum allowed queue size.
The driver ensures that the settings are done just before the VFs get enabled. Changing the timeouts in flight is not possible. Only available for PF.
/sys/kernel/debug/hisi_hpre/<bdf>/alg_qos |
Defined on file debugfs-hisi-hpre
The <bdf> is related the function for PF and VF. HPRE driver supports to configure each function’s QoS, the driver supports to write <bdf> value to alg_qos in the host. Such as “echo <bdf> value > alg_qos”. The qos value is 1~1000, means 1/1000~1000/1000 of total QoS. The driver reading alg_qos to get related QoS in the host and VM, Such as “cat alg_qos”.
/sys/kernel/debug/hisi_hpre/<bdf>/cap_regs |
Defined on file debugfs-hisi-hpre
Dump the values of the qm and hpre capability bit registers and support the query of device specifications to facilitate fault locating. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/cluster[0-3]/cluster_ctrl |
Defined on file debugfs-hisi-hpre
Write the HPRE core selection in the cluster into this file, and then we can read the debug information of the core. Only available for PF.
/sys/kernel/debug/hisi_hpre/<bdf>/cluster[0-3]/regs |
Defined on file debugfs-hisi-hpre
Dump debug registers from the HPRE cluster. Only available for PF.
/sys/kernel/debug/hisi_hpre/<bdf>/current_qm |
Defined on file debugfs-hisi-hpre
One HPRE controller has one PF and multiple VFs, each function has a QM. Select the QM which below qm refers to. Only available for PF.
/sys/kernel/debug/hisi_hpre/<bdf>/hpre_dfx/diff_regs |
Defined on file debugfs-hisi-hpre
HPRE debug registers(regs) read hardware register value. This node is used to show the change of the register values. This node can be help users to check the change of register values.
/sys/kernel/debug/hisi_hpre/<bdf>/hpre_dfx/invalid_req_cnt |
Defined on file debugfs-hisi-hpre
Dump the total number of invalid requests being received. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/hpre_dfx/over_thrhld_cnt |
Defined on file debugfs-hisi-hpre
Dump the total number of time out requests. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/hpre_dfx/overtime_thrhld |
Defined on file debugfs-hisi-hpre
Set the threshold time for counting the request which is processed longer than the threshold. 0: disable(default), 1: 1 microsecond. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/hpre_dfx/recv_cnt |
Defined on file debugfs-hisi-hpre
Dump the total number of received requests. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/hpre_dfx/send_busy_cnt |
Defined on file debugfs-hisi-hpre
Dump the total number of requests sent with returning busy. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/hpre_dfx/send_cnt |
Defined on file debugfs-hisi-hpre
Dump the total number of sent requests. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/hpre_dfx/send_fail_cnt |
Defined on file debugfs-hisi-hpre
Dump the total number of completed but error requests. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/abnormal_irq |
Defined on file debugfs-hisi-hpre
Dump the number of interrupts for QM abnormal event. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/aeq_irq |
Defined on file debugfs-hisi-hpre
Dump the number of QM async event queue interrupts. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/clear_enable |
Defined on file debugfs-hisi-hpre
QM debug registers(regs) read clear control. 1 means enable register read clear, otherwise 0. Writing to this file has no functional effect, only enable or disable counters clear after reading of these registers. Only available for PF.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/create_qp_err |
Defined on file debugfs-hisi-hpre
Dump the number of queue allocation errors. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/current_q |
Defined on file debugfs-hisi-hpre
One QM may contain multiple queues. Select specific queue to show its debug registers in above regs. Only available for PF.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/dev_state |
Defined on file debugfs-hisi-hpre
Dump the stop queue status of the QM. The default value is 0, if dev_timeout is set, when stop queue fails, the dev_state will return non-zero value. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/dev_timeout |
Defined on file debugfs-hisi-hpre
Set the wait time when stop queue fails. Available for both PF and VF, and take no other effect on HPRE. 0: not wait(default), others value: wait dev_timeout * 20 microsecond.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/diff_regs |
Defined on file debugfs-hisi-hpre
QM debug registers(regs) read hardware register value. This node is used to show the change of the qm register values. This node can be help users to check the change of register values.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/err_irq |
Defined on file debugfs-hisi-hpre
Dump the number of invalid interrupts for QM task completion. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/mb_err |
Defined on file debugfs-hisi-hpre
Dump the number of failed QM mailbox commands. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/qm_state |
Defined on file debugfs-hisi-hpre
Dump the state of the device. 0: busy, 1: idle. Only available for PF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/regs |
Defined on file debugfs-hisi-hpre
Dump debug registers from the QM. Available for PF and VF in host. VF in guest currently only has one debug register.
/sys/kernel/debug/hisi_hpre/<bdf>/qm/status |
Defined on file debugfs-hisi-hpre
Dump the status of the QM. Two states: work, stop. Available for both PF and VF, and take no other effect on HPRE.
/sys/kernel/debug/hisi_hpre/<bdf>/rdclr_en |
Defined on file debugfs-hisi-hpre
HPRE cores debug registers read clear control. 1 means enable register read clear, otherwise 0. Writing to this file has no functional effect, only enable or disable counters clear after reading of these registers. Only available for PF.
/sys/kernel/debug/hisi_hpre/<bdf>/regs |
Defined on file debugfs-hisi-hpre
Dump debug registers from the HPRE. Only available for PF.
/sys/kernel/debug/hisi_sec2/<bdf>/alg_qos |
Defined on file debugfs-hisi-sec
The <bdf> is related the function for PF and VF. SEC driver supports to configure each function’s QoS, the driver supports to write <bdf> value to alg_qos in the host. Such as “echo <bdf> value > alg_qos”. The qos value is 1~1000, means 1/1000~1000/1000 of total QoS. The driver reading alg_qos to get related QoS in the host and VM, Such as “cat alg_qos”.
/sys/kernel/debug/hisi_sec2/<bdf>/cap_regs |
Defined on file debugfs-hisi-sec
Dump the values of the qm and sec capability bit registers and support the query of device specifications to facilitate fault locating. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/clear_enable |
Defined on file debugfs-hisi-sec
Enabling/disabling of clear action after reading the SEC debug registers. 0: disable, 1: enable. Only available for PF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/current_qm |
Defined on file debugfs-hisi-sec
One SEC controller has one PF and multiple VFs, each function has a QM. This file can be used to select the QM which below qm refers to. Only available for PF.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/abnormal_irq |
Defined on file debugfs-hisi-sec
Dump the number of interrupts for QM abnormal event. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/aeq_irq |
Defined on file debugfs-hisi-sec
Dump the number of QM async event queue interrupts. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/clear_enable |
Defined on file debugfs-hisi-sec
Enabling/disabling of clear action after reading the SEC’s QM debug registers. 0: disable, 1: enable. Only available for PF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/create_qp_err |
Defined on file debugfs-hisi-sec
Dump the number of queue allocation errors. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/current_q |
Defined on file debugfs-hisi-sec
One QM of SEC may contain multiple queues. Select specific queue to show its debug registers in above ‘regs’. Only available for PF.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/dev_state |
Defined on file debugfs-hisi-sec
Dump the stop queue status of the QM. The default value is 0, if dev_timeout is set, when stop queue fails, the dev_state will return non-zero value. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/dev_timeout |
Defined on file debugfs-hisi-sec
Set the wait time when stop queue fails. Available for both PF and VF, and take no other effect on SEC. 0: not wait(default), others value: wait dev_timeout * 20 microsecond.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/diff_regs |
Defined on file debugfs-hisi-sec
QM debug registers(regs) read hardware register value. This node is used to show the change of the qm register values. This node can be help users to check the change of register values.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/err_irq |
Defined on file debugfs-hisi-sec
Dump the number of invalid interrupts for QM task completion. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/mb_err |
Defined on file debugfs-hisi-sec
Dump the number of failed QM mailbox commands. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/qm_regs |
Defined on file debugfs-hisi-sec
Dump of QM related debug registers. Available for PF and VF in host. VF in guest currently only has one debug register.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/qm_state |
Defined on file debugfs-hisi-sec
Dump the state of the device. 0: busy, 1: idle. Only available for PF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/qm/status |
Defined on file debugfs-hisi-sec
Dump the status of the QM. Two states: work, stop. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/sec_dfx/diff_regs |
Defined on file debugfs-hisi-sec
SEC debug registers(regs) read hardware register value. This node is used to show the change of the register values. This node can be help users to check the change of register values.
/sys/kernel/debug/hisi_sec2/<bdf>/sec_dfx/done_flag_cnt |
Defined on file debugfs-hisi-sec
Dump the total number of completed but marked error requests to be received. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/sec_dfx/err_bd_cnt |
Defined on file debugfs-hisi-sec
Dump the total number of BD type error requests to be received. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/sec_dfx/invalid_req_cnt |
Defined on file debugfs-hisi-sec
Dump the total number of invalid requests being received. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/sec_dfx/recv_cnt |
Defined on file debugfs-hisi-sec
Dump the total number of received requests. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/sec_dfx/send_busy_cnt |
Defined on file debugfs-hisi-sec
Dump the total number of requests sent with returning busy. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_sec2/<bdf>/sec_dfx/send_cnt |
Defined on file debugfs-hisi-sec
Dump the total number of sent requests. Available for both PF and VF, and take no other effect on SEC.
/sys/kernel/debug/hisi_zip/<bdf>/alg_qos |
Defined on file debugfs-hisi-zip
The <bdf> is related the function for PF and VF. ZIP driver supports to configure each function’s QoS, the driver supports to write <bdf> value to alg_qos in the host. Such as “echo <bdf> value > alg_qos”. The qos value is 1~1000, means 1/1000~1000/1000 of total QoS. The driver reading alg_qos to get related QoS in the host and VM, Such as “cat alg_qos”.
/sys/kernel/debug/hisi_zip/<bdf>/cap_regs |
Defined on file debugfs-hisi-zip
Dump the values of the qm and zip capability bit registers and support the query of device specifications to facilitate fault locating. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/clear_enable |
Defined on file debugfs-hisi-zip
Compression/decompression core debug registers read clear control. 1 means enable register read clear, otherwise 0. Writing to this file has no functional effect, only enable or disable counters clear after reading of these registers. Only available for PF.
/sys/kernel/debug/hisi_zip/<bdf>/comp_core[01]/regs |
Defined on file debugfs-hisi-zip
Dump of compression cores related debug registers. Only available for PF.
/sys/kernel/debug/hisi_zip/<bdf>/current_qm |
Defined on file debugfs-hisi-zip
One ZIP controller has one PF and multiple VFs, each function has a QM. Select the QM which below qm refers to. Only available for PF.
/sys/kernel/debug/hisi_zip/<bdf>/decomp_core[0-5]/regs |
Defined on file debugfs-hisi-zip
Dump of decompression cores related debug registers. Only available for PF.
/sys/kernel/debug/hisi_zip/<bdf>/qm/abnormal_irq |
Defined on file debugfs-hisi-zip
Dump the number of interrupts for QM abnormal event. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/qm/aeq_irq |
Defined on file debugfs-hisi-zip
Dump the number of QM async event queue interrupts. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/qm/clear_enable |
Defined on file debugfs-hisi-zip
QM debug registers(regs) read clear control. 1 means enable register read clear, otherwise 0. Writing to this file has no functional effect, only enable or disable counters clear after reading of these registers. Only available for PF.
/sys/kernel/debug/hisi_zip/<bdf>/qm/create_qp_err |
Defined on file debugfs-hisi-zip
Dump the number of queue allocation errors. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/qm/current_q |
Defined on file debugfs-hisi-zip
One QM may contain multiple queues. Select specific queue to show its debug registers in above regs. Only available for PF.
/sys/kernel/debug/hisi_zip/<bdf>/qm/dev_state |
Defined on file debugfs-hisi-zip
Dump the stop queue status of the QM. The default value is 0, if dev_timeout is set, when stop queue fails, the dev_state will return non-zero value. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/qm/dev_timeout |
Defined on file debugfs-hisi-zip
Set the wait time when stop queue fails. Available for both PF and VF, and take no other effect on ZIP. 0: not wait(default), others value: wait dev_timeout * 20 microsecond.
/sys/kernel/debug/hisi_zip/<bdf>/qm/diff_regs |
Defined on file debugfs-hisi-zip
QM debug registers(regs) read hardware register value. This node is used to show the change of the qm registers value. This node can be help users to check the change of register values.
/sys/kernel/debug/hisi_zip/<bdf>/qm/err_irq |
Defined on file debugfs-hisi-zip
Dump the number of invalid interrupts for QM task completion. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/qm/mb_err |
Defined on file debugfs-hisi-zip
Dump the number of failed QM mailbox commands. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/qm/qm_state |
Defined on file debugfs-hisi-zip
Dump the state of the device. 0: busy, 1: idle. Only available for PF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/qm/regs |
Defined on file debugfs-hisi-zip
Dump of QM related debug registers. Available for PF and VF in host. VF in guest currently only has one debug register.
/sys/kernel/debug/hisi_zip/<bdf>/qm/status |
Defined on file debugfs-hisi-zip
Dump the status of the QM. Two states: work, stop. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/zip_dfx/diff_regs |
Defined on file debugfs-hisi-zip
ZIP debug registers(regs) read hardware register value. This node is used to show the change of the registers value. this node can be help users to check the change of register values.
/sys/kernel/debug/hisi_zip/<bdf>/zip_dfx/err_bd_cnt |
Defined on file debugfs-hisi-zip
Dump the total number of BD type error requests to be received. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/zip_dfx/recv_cnt |
Defined on file debugfs-hisi-zip
Dump the total number of received requests. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/zip_dfx/send_busy_cnt |
Defined on file debugfs-hisi-zip
Dump the total number of requests received with returning busy. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hisi_zip/<bdf>/zip_dfx/send_cnt |
Defined on file debugfs-hisi-zip
Dump the total number of sent requests. Available for both PF and VF, and take no other effect on ZIP.
/sys/kernel/debug/hyperv/<UUID>/delay/fuzz_test_buffer_interrupt_delay |
Defined on file debugfs-hyperv
- Fuzz testing buffer interrupt delay value between 0 - 1000
microseconds (inclusive).
Users: Debugging tools
/sys/kernel/debug/hyperv/<UUID>/delay/fuzz_test_message_delay |
Defined on file debugfs-hyperv
- Fuzz testing message delay value between 0 - 1000 microseconds
(inclusive).
Users: Debugging tools
/sys/kernel/debug/hyperv/<UUID>/fuzz_test_state |
Defined on file debugfs-hyperv
Fuzz testing status of a vmbus device, whether its in an ON state or a OFF state
Users: Debugging tools
/sys/kernel/debug/ideapad/cfg |
Defined on file debugfs-ideapad
cfg shows the return value of _CFG method in VPC2004 device. It tells machine capability and what graphic component within the machine.
/sys/kernel/debug/ideapad/status |
Defined on file debugfs-ideapad
status shows infos we can read and tells its meaning and value.
/sys/kernel/debug/iio/iio:deviceX/backendY/direct_reg_access |
Defined on file debugfs-iio-backend
Directly access the registers of backend Y. Typical usage is:
Reading address 0x50 echo 0x50 > direct_reg_access cat direct_reg_access
Writing address 0x50 echo 0x50 0x3 > direct_reg_access //readback address 0x50 cat direct_reg_access
/sys/kernel/debug/iio/iio:deviceX/backendY/name |
Defined on file debugfs-iio-backend
Name of Backend Y connected to device X.
/sys/kernel/debug/iio/iio:deviceX/calibration_table_dump |
Defined on file debugfs-iio-ad9467
This dumps the calibration table that was filled during the digital interface tuning process.
/sys/kernel/debug/iio/iio:deviceX/in_voltageY_test_mode |
Defined on file debugfs-iio-ad9467
Writing to this file will initiate one of available test tone on channel Y. Reading it, shows which test is running. In cases where an IIO backend is available and supports the test tone, additional information about the data correctness is given.
/sys/kernel/debug/iio/iio:deviceX/in_voltage_test_mode_available |
Defined on file debugfs-iio-ad9467
List all the available test tones: - off - midscale_short - pos_fullscale - neg_fullscale - checkerboard - prbs23 - prbs9 - one_zero_toggle - user - bit_toggle - sync - one_bit_high - mixed_bit_frequency - ramp
Note that depending on the actual device being used, some of the above might not be available (and they won’t be listed when reading the file).
/sys/kernel/debug/iommu/intel/<bdf>/domain_translation_struct |
Defined on file debugfs-intel-iommu
This file dumps a specified page table of Intel IOMMU in legacy mode or scalable mode.
For a device that only supports legacy mode, dump its page table by the debugfs file in the debugfs device directory. e.g. /sys/kernel/debug/iommu/intel/0000:00:02.0/domain_translation_struct.
For a device that supports scalable mode, dump the page table of specified pasid by the debugfs file in the debugfs pasid directory. e.g. /sys/kernel/debug/iommu/intel/0000:00:02.0/1/domain_translation_struct.
Examples in Kabylake:
1) Dump the page table of device "0000:00:02.0" that only supports legacy mode.
$ sudo cat /sys/kernel/debug/iommu/intel/0000:00:02.0/domain_translation_struct
Device 0000:00:02.0 @0x1017f8000
IOVA_PFN PML5E PML4E
0x000000008d800 | 0x0000000000000000 0x00000001017f9003
0x000000008d801 | 0x0000000000000000 0x00000001017f9003
0x000000008d802 | 0x0000000000000000 0x00000001017f9003
PDPE PDE PTE
0x00000001017fa003 0x00000001017fb003 0x000000008d800003
0x00000001017fa003 0x00000001017fb003 0x000000008d801003
0x00000001017fa003 0x00000001017fb003 0x000000008d802003
[...]
2) Dump the page table of device "0000:00:0a.0" with PASID "1" that
supports scalable mode.
$ sudo cat /sys/kernel/debug/iommu/intel/0000:00:0a.0/1/domain_translation_struct
Device 0000:00:0a.0 with pasid 1 @0x10c112000
IOVA_PFN PML5E PML4E
0x0000000000000 | 0x0000000000000000 0x000000010df93003
0x0000000000001 | 0x0000000000000000 0x000000010df93003
0x0000000000002 | 0x0000000000000000 0x000000010df93003
PDPE PDE PTE
0x0000000106ae6003 0x0000000104b38003 0x0000000147c00803
0x0000000106ae6003 0x0000000104b38003 0x0000000147c01803
0x0000000106ae6003 0x0000000104b38003 0x0000000147c02803
[...]
/sys/kernel/debug/iommu/intel/dmar_perf_latency |
Defined on file debugfs-intel-iommu
This file is used to control and show counts of execution time ranges for various types per DMAR.
Firstly, write a value to /sys/kernel/debug/iommu/intel/dmar_perf_latency to enable sampling.
The possible values are as follows:
0 - disable sampling all latency data
1 - enable sampling IOTLB invalidation latency data
2 - enable sampling devTLB invalidation latency data
3 - enable sampling intr entry cache invalidation latency data
Next, read /sys/kernel/debug/iommu/intel/dmar_perf_latency gives a snapshot of sampling result of all enabled monitors.
Examples in Kabylake:
1) Disable sampling all latency data:
$ sudo echo 0 > /sys/kernel/debug/iommu/intel/dmar_perf_latency
2) Enable sampling IOTLB invalidation latency data
$ sudo echo 1 > /sys/kernel/debug/iommu/intel/dmar_perf_latency
$ sudo cat /sys/kernel/debug/iommu/intel/dmar_perf_latency
IOMMU: dmar0 Register Base Address: 26be37000
<0.1us 0.1us-1us 1us-10us 10us-100us 100us-1ms
inv_iotlb 0 0 0 0 0
1ms-10ms >=10ms min(us) max(us) average(us)
inv_iotlb 0 0 0 0 0
[...]
IOMMU: dmar2 Register Base Address: fed91000
<0.1us 0.1us-1us 1us-10us 10us-100us 100us-1ms
inv_iotlb 0 0 18 0 0
1ms-10ms >=10ms min(us) max(us) average(us)
inv_iotlb 0 0 2 2 2
3) Enable sampling devTLB invalidation latency data
$ sudo echo 2 > /sys/kernel/debug/iommu/intel/dmar_perf_latency
$ sudo cat /sys/kernel/debug/iommu/intel/dmar_perf_latency
IOMMU: dmar0 Register Base Address: 26be37000
<0.1us 0.1us-1us 1us-10us 10us-100us 100us-1ms
inv_devtlb 0 0 0 0 0
>=10ms min(us) max(us) average(us)
inv_devtlb 0 0 0 0
[...]
/sys/kernel/debug/iommu/intel/dmar_translation_struct |
Defined on file debugfs-intel-iommu
This file dumps Intel IOMMU DMA remapping tables, such as root table, context table, PASID directory and PASID table entries in debugfs. For legacy mode, it doesn’t support PASID, and hence PASID field is defaulted to ‘-1’ and other PASID related fields are invalid.
Example in Kabylake:
$ sudo cat /sys/kernel/debug/iommu/intel/dmar_translation_struct
IOMMU dmar1: Root Table Address: 0x103027000
B.D.F Root_entry
00:02.0 0x0000000000000000:0x000000010303e001
Context_entry
0x0000000000000102:0x000000010303f005
PASID PASID_table_entry
-1 0x0000000000000000:0x0000000000000000:0x0000000000000000
IOMMU dmar0: Root Table Address: 0x103028000
B.D.F Root_entry
00:0a.0 0x0000000000000000:0x00000001038a7001
Context_entry
0x0000000000000000:0x0000000103220e7d
PASID PASID_table_entry
0 0x0000000000000000:0x0000000000800002:0x00000001038a5089
[...]
/sys/kernel/debug/iommu/intel/invalidation_queue |
Defined on file debugfs-intel-iommu
This file exports invalidation queue internals of each IOMMU device.
Example in Kabylake:
$ sudo cat /sys/kernel/debug/iommu/intel/invalidation_queue
Invalidation queue on IOMMU: dmar0
Base: 0x10022e000 Head: 20 Tail: 20
Index qw0 qw1 qw2
0 0000000000000014 0000000000000000 0000000000000000
1 0000000200000025 0000000100059c04 0000000000000000
2 0000000000000014 0000000000000000 0000000000000000
qw3 status
0000000000000000 0000000000000000
0000000000000000 0000000000000000
0000000000000000 0000000000000000
[...]
Invalidation queue on IOMMU: dmar1
Base: 0x10026e000 Head: 32 Tail: 32
Index qw0 qw1 status
0 0000000000000004 0000000000000000 0000000000000000
1 0000000200000025 0000000100059804 0000000000000000
2 0000000000000011 0000000000000000 0000000000000000
[...]
/sys/kernel/debug/iommu/intel/iommu_regset |
Defined on file debugfs-intel-iommu
This file dumps all the register contents for each IOMMU device.
Example in Kabylake:
$ sudo cat /sys/kernel/debug/iommu/intel/iommu_regset
IOMMU: dmar0 Register Base Address: 26be37000
Name Offset Contents
VER 0x00 0x0000000000000010
GCMD 0x18 0x0000000000000000
GSTS 0x1c 0x00000000c7000000
FSTS 0x34 0x0000000000000000
FECTL 0x38 0x0000000000000000
[...]
IOMMU: dmar1 Register Base Address: fed90000
Name Offset Contents
VER 0x00 0x0000000000000010
GCMD 0x18 0x0000000000000000
GSTS 0x1c 0x00000000c7000000
FSTS 0x34 0x0000000000000000
FECTL 0x38 0x0000000000000000
[...]
IOMMU: dmar2 Register Base Address: fed91000
Name Offset Contents
VER 0x00 0x0000000000000010
GCMD 0x18 0x0000000000000000
GSTS 0x1c 0x00000000c7000000
FSTS 0x34 0x0000000000000000
FECTL 0x38 0x0000000000000000
[...]
/sys/kernel/debug/iommu/intel/ir_translation_struct |
Defined on file debugfs-intel-iommu
This file dumps the table entries for Interrupt remapping and Interrupt posting.
Example in Kabylake:
$ sudo cat /sys/kernel/debug/iommu/intel/ir_translation_struct
Remapped Interrupt supported on IOMMU: dmar0
IR table address:100900000
Entry SrcID DstID Vct IRTE_high IRTE_low
0 00:0a.0 00000080 24 0000000000040050 000000800024000d
1 00:0a.0 00000001 ef 0000000000040050 0000000100ef000d
Remapped Interrupt supported on IOMMU: dmar1
IR table address:100300000
Entry SrcID DstID Vct IRTE_high IRTE_low
0 00:02.0 00000002 26 0000000000040010 000000020026000d
[...]
****
Posted Interrupt supported on IOMMU: dmar0
IR table address:100900000
Entry SrcID PDA_high PDA_low Vct IRTE_high IRTE_low
/sys/kernel/debug/memX/clear_poison |
Defined on file debugfs-cxl
(WO) When a Device Physical Address (DPA) is written to this attribute, the memdev driver sends a clear poison command to the device for the specified address. Clearing poison removes the address from the device’s Poison List and writes 0 (zero) for 64 bytes starting at address. It is not an error to clear poison from an address that does not have poison set. If the device cannot clear poison from the address, -ENXIO is returned. The clear_poison attribute is only visible for devices supporting the capability.
/sys/kernel/debug/moxtet/input |
Defined on file debugfs-moxtet
(Read) Read input from the shift registers, in hexadecimal. Returns N+1 bytes, where N is the number of Moxtet connected modules. The first byte is from the CPU board itself.
Example:
101214
10 |
CPU board with SD card |
12 |
2 = PCIe module, 1 = IRQ not active |
14 |
4 = Peridot module, 1 = IRQ not active |
/sys/kernel/debug/moxtet/output |
Defined on file debugfs-moxtet
(RW) Read last written value to the shift registers, in hexadecimal, or write values to the shift registers, also in hexadecimal.
Example:
0102
01 |
01 was last written, or is to be written, to the first module’s shift register |
02 |
the same for second module |
/sys/kernel/debug/msi-wmi-platform-<wmi_device_name>/* |
Defined on file debugfs-msi-wmi-platform
This file allows to execute the associated WMI method with the same name.
To start the execution, write a buffer containing the method arguments at file offset 0. Partial writes or writes at a different offset are not supported.
The buffer returned by the WMI method can then be read from the file.
See MSI WMI Platform Features driver (msi-wmi-platform) for details.
/sys/kernel/debug/nx-crypto/* |
Defined on file debugfs-pfo-nx-crypto
These debugfs interfaces are built by the nx-crypto driver, built in arch/powerpc/crypto/nx.
Error Detection
- errors:
A u32 providing a total count of errors since the driver was loaded. The only errors counted here are those returned from the hcall, H_COP_OP.
- last_error:
The most recent non-zero return code from the H_COP_OP hcall. -EBUSY is not recorded here (the hcall will retry until -EBUSY goes away).
- last_error_pid:
The process ID of the process who received the most recent error from the hcall.
Device Use
- aes_bytes:
The total number of bytes encrypted using AES in any of the driver’s supported modes.
- aes_ops:
The total number of AES operations submitted to the hardware.
- sha256_bytes:
The total number of bytes hashed by the hardware using SHA-256.
- sha256_ops:
The total number of SHA-256 operations submitted to the hardware.
- sha512_bytes:
The total number of bytes hashed by the hardware using SHA-512.
- sha512_ops:
The total number of SHA-512 operations submitted to the hardware.
/sys/kernel/debug/olpc-ec/cmd |
Defined on file debugfs-olpc
A generic interface for executing OLPC Embedded Controller commands and reading their responses.
To execute a command, write data with the format: CC:N A A A A CC is the (hex) command, N is the count of expected reply bytes, and A A A A are optional (hex) arguments.
To read the response (if any), read from the generic node after executing a command. Hex reply bytes will be returned, whether or not they came from the immediately previous command.
/sys/kernel/debug/pktcdvd/pktcdvd[0-7] |
Defined on file debugfs-pktcdvd
The pktcdvd module (packet writing driver) creates these files in debugfs:
/sys/kernel/debug/pktcdvd/pktcdvd[0-7]/
info
0444
Lots of driver statistics and infos.
Example:
cat /sys/kernel/debug/pktcdvd/pktcdvd0/info
/sys/kernel/debug/powerpc/memtrace |
Defined on file ppc-memtrace
This folder contains the relevant debugfs files for the hardware trace macro to use. CONFIG_PPC64_HARDWARE_TRACING must be set.
/sys/kernel/debug/powerpc/memtrace/<node-id> |
Defined on file ppc-memtrace
This directory contains information about the removed memory from the specific NUMA node.
/sys/kernel/debug/powerpc/memtrace/<node-id>/size |
Defined on file ppc-memtrace
This contains the size of the memory removed from the node.
/sys/kernel/debug/powerpc/memtrace/<node-id>/start |
Defined on file ppc-memtrace
This contains the start address of the removed memory.
/sys/kernel/debug/powerpc/memtrace/<node-id>/trace |
Defined on file ppc-memtrace
This is where the hardware trace macro will output the trace it generates.
/sys/kernel/debug/powerpc/memtrace/enable |
Defined on file ppc-memtrace
Write an integer containing the size in bytes of the memory you want removed from each NUMA node to this file - it must be aligned to the memblock size. This amount of RAM will be removed from each NUMA node in the kernel mappings and the following debugfs files will be created. Once memory is successfully removed from each node, the following files are created. To re-add memory to the kernel, echo 0 into this file (it will be automatically onlined).
/sys/kernel/debug/qat_<device>_<BDF>/cnv_errors |
Defined on file debugfs-driver-qat
(RO) Read returns, for each Acceleration Engine (AE), the number of errors and the type of the last error detected by the device when performing verified compression. Reported counters:
<N>: Number of Compress and Verify (CnV) errors and type
of the last CnV error detected by Acceleration
Engine N.
/sys/kernel/debug/qat_<device>_<BDF>/fw_counters |
Defined on file debugfs-driver-qat
(RO) Read returns the number of requests sent to the FW and the number of responses received from the FW for each Acceleration Engine Reported firmware counters:
<N>: Number of requests sent from Acceleration Engine N to FW and responses
Acceleration Engine N received from FW
/sys/kernel/debug/qat_<device>_<BDF>/heartbeat/config |
Defined on file debugfs-driver-qat
(RW) Read returns value of the Heartbeat update period. Write to the file changes this period value.
This period should reflect planned polling interval of device health status. High frequency Heartbeat monitoring wastes CPU cycles but minimizes the customer’s system downtime. Also, if there are large service requests that take some time to complete, high frequency Heartbeat monitoring could result in false reports of unresponsiveness and in those cases, period needs to be increased.
This parameter is effective only for c3xxx, c62x, dh895xcc devices. 4xxx has this value internally fixed to 200ms.
Default value is set to 500. Minimal allowed value is 200. All values are expressed in milliseconds.
/sys/kernel/debug/qat_<device>_<BDF>/heartbeat/inject_error |
Defined on file debugfs-driver-qat
(WO) Write to inject an error that simulates an heartbeat failure. This is to be used for testing purposes.
After writing this file, the driver stops arbitration on a random engine and disables the fetching of heartbeat counters. If a workload is running on the device, a job submitted to the accelerator might not get a response and a read of the heartbeat/status attribute might report -1, i.e. device unresponsive. The error is unrecoverable thus the device must be restarted to restore its functionality.
This attribute is available only when the kernel is built with CONFIG_CRYPTO_DEV_QAT_ERROR_INJECTION=y.
A write of 1 enables error injection.
The following example shows how to enable error injection:
# cd /sys/kernel/debug/qat_<device>_<BDF>
# echo 1 > heartbeat/inject_error
/sys/kernel/debug/qat_<device>_<BDF>/heartbeat/queries_failed |
Defined on file debugfs-driver-qat
(RO) Read returns the number of times the device became unresponsive.
Attribute returns value of the counter which is incremented when status query results negative.
/sys/kernel/debug/qat_<device>_<BDF>/heartbeat/queries_sent |
Defined on file debugfs-driver-qat
(RO) Read returns the number of times the control process checked if the device is responsive.
Attribute returns value of the counter which is incremented on every status query.
/sys/kernel/debug/qat_<device>_<BDF>/heartbeat/status |
Defined on file debugfs-driver-qat
(RO) Read returns the device health status.
Returns 0 when device is healthy or -1 when is unresponsive or the query failed to send.
The driver does not monitor for Heartbeat. It is left for a user to poll the status periodically.
/sys/kernel/debug/qat_<device>_<BDF>/pm_status |
Defined on file debugfs-driver-qat
(RO) Read returns power management information specific to the QAT device.
This attribute is only available for qat_4xxx devices.
/sys/kernel/debug/qat_<device>_<BDF>/telemetry/control |
Defined on file debugfs-driver-qat_telemetry
(RW) Enables/disables the reporting of telemetry metrics.
Allowed values to write:
0: disable telemetry
1: enable telemetry
2, 3, 4: enable telemetry and calculate minimum, maximum and average for each counter over 2, 3 or 4 samples
Returned values:
1-4: telemetry is enabled and running
0: telemetry is disabled
Example.
Writing ‘3’ to this file starts the collection of
telemetry metrics. Samples are collected every second and
stored in a circular buffer of size 3. These values are then
used to calculate the minimum, maximum and average for each
counter. After enabling, counters can be retrieved through
the device_data
file:
echo 3 > /sys/kernel/debug/qat_4xxx_0000:6b:00.0/telemetry/control
Writing ‘0’ to this file stops the collection of telemetry metrics:
echo 0 > /sys/kernel/debug/qat_4xxx_0000:6b:00.0/telemetry/control
This attribute is only available for qat_4xxx devices.
/sys/kernel/debug/qat_<device>_<BDF>/telemetry/device_data |
Defined on file debugfs-driver-qat_telemetry
(RO) Reports device telemetry counters. Reads report metrics about performance and utilization of a QAT device:
Field |
Description |
---|---|
sample_cnt |
number of acquisitions of telemetry data from the device. Reads are performed every 1000 ms. |
pci_trans_cnt |
number of PCIe partial transactions |
max_rd_lat |
maximum logged read latency [ns] (could be any read operation) |
rd_lat_acc_avg |
average read latency [ns] |
max_gp_lat |
max get to put latency [ns] (only takes samples for AE0) |
gp_lat_acc_avg |
average get to put latency [ns] |
bw_in |
PCIe, write bandwidth [Mbps] |
bw_out |
PCIe, read bandwidth [Mbps] |
at_page_req_lat_avg |
Address Translator(AT), average page request latency [ns] |
at_trans_lat_avg |
AT, average page translation latency [ns] |
at_max_tlb_used |
AT, maximum uTLB used |
util_cpr<N> |
utilization of Compression slice N [%] |
exec_cpr<N> |
execution count of Compression slice N |
util_xlt<N> |
utilization of Translator slice N [%] |
exec_xlt<N> |
execution count of Translator slice N |
util_dcpr<N> |
utilization of Decompression slice N [%] |
exec_dcpr<N> |
execution count of Decompression slice N |
util_pke<N> |
utilization of PKE N [%] |
exec_pke<N> |
execution count of PKE N |
util_ucs<N> |
utilization of UCS slice N [%] |
exec_ucs<N> |
execution count of UCS slice N |
util_wat<N> |
utilization of Wireless Authentication slice N [%] |
exec_wat<N> |
execution count of Wireless Authentication slice N |
util_wcp<N> |
utilization of Wireless Cipher slice N [%] |
exec_wcp<N> |
execution count of Wireless Cipher slice N |
util_cph<N> |
utilization of Cipher slice N [%] |
exec_cph<N> |
execution count of Cipher slice N |
util_ath<N> |
utilization of Authentication slice N [%] |
exec_ath<N> |
execution count of Authentication slice N |
The telemetry report file can be read with the following command:
cat /sys/kernel/debug/qat_4xxx_0000:6b:00.0/telemetry/device_data
If control
is set to 1, only the current values of the
counters are displayed:
<counter_name> <current>
If control
is 2, 3 or 4, counters are displayed in the
following format:
<counter_name> <current> <min> <max> <avg>
If a device lacks of a specific accelerator, the corresponding attribute is not reported.
This attribute is only available for qat_4xxx devices.
/sys/kernel/debug/qat_<device>_<BDF>/telemetry/rp_<A/B/C/D>_data |
Defined on file debugfs-driver-qat_telemetry
(RW) Selects up to 4 Ring Pairs (RP) to monitor, one per file, and report telemetry counters related to each.
Allowed values to write:
0 to
<num_rps - 1>
: Ring pair to be monitored. The value ofnum_rps
can be retrieved through/sys/bus/pci/devices/<BDF>/qat/num_rps
. See testing/sysfs-driver-qat.
Reads report metrics about performance and utilization of the selected RP:
Field |
Description |
---|---|
sample_cnt |
number of acquisitions of telemetry data from the device. Reads are performed every 1000 ms |
rp_num |
RP number associated with slot <A/B/C/D> |
service_type |
service associated to the RP |
pci_trans_cnt |
number of PCIe partial transactions |
gp_lat_acc_avg |
average get to put latency [ns] |
bw_in |
PCIe, write bandwidth [Mbps] |
bw_out |
PCIe, read bandwidth [Mbps] |
at_glob_devtlb_hit |
Message descriptor DevTLB hit rate |
at_glob_devtlb_miss |
Message descriptor DevTLB miss rate |
tl_at_payld_devtlb_hit |
Payload DevTLB hit rate |
tl_at_payld_devtlb_miss |
Payload DevTLB miss rate |
Example.
Writing the value ‘32’ to the file rp_C_data
starts the
collection of telemetry metrics for ring pair 32:
echo 32 > /sys/kernel/debug/qat_4xxx_0000:6b:00.0/telemetry/rp_C_data
Once a ring pair is selected, statistics can be read accessing the file:
cat /sys/kernel/debug/qat_4xxx_0000:6b:00.0/telemetry/rp_C_data
If control
is set to 1, only the current values of the
counters are displayed:
<counter_name> <current>
If control
is 2, 3 or 4, counters are displayed in the
following format:
<counter_name> <current> <min> <max> <avg>
On QAT GEN4 devices there are 64 RPs on a PF, so the allowed values are 0..63. This number is absolute to the device. If Virtual Functions (VF) are used, the ring pair number can be derived from the Bus, Device, Function of the VF:
PCI BDF/VF |
RP0 |
RP1 |
RP2 |
RP3 |
---|---|---|---|---|
0000:6b:0.1 |
RP 0 |
RP 1 |
RP 2 |
RP 3 |
0000:6b:0.2 |
RP 4 |
RP 5 |
RP 6 |
RP 7 |
0000:6b:0.3 |
RP 8 |
RP 9 |
RP 10 |
RP 11 |
0000:6b:0.4 |
RP 12 |
RP 13 |
RP 14 |
RP 15 |
0000:6b:0.5 |
RP 16 |
RP 17 |
RP 18 |
RP 19 |
0000:6b:0.6 |
RP 20 |
RP 21 |
RP 22 |
RP 23 |
0000:6b:0.7 |
RP 24 |
RP 25 |
RP 26 |
RP 27 |
0000:6b:1.0 |
RP 28 |
RP 29 |
RP 30 |
RP 31 |
0000:6b:1.1 |
RP 32 |
RP 33 |
RP 34 |
RP 35 |
0000:6b:1.2 |
RP 36 |
RP 37 |
RP 38 |
RP 39 |
0000:6b:1.3 |
RP 40 |
RP 41 |
RP 42 |
RP 43 |
0000:6b:1.4 |
RP 44 |
RP 45 |
RP 46 |
RP 47 |
0000:6b:1.5 |
RP 48 |
RP 49 |
RP 50 |
RP 51 |
0000:6b:1.6 |
RP 52 |
RP 53 |
RP 54 |
RP 55 |
0000:6b:1.7 |
RP 56 |
RP 57 |
RP 58 |
RP 59 |
0000:6b:2.0 |
RP 60 |
RP 61 |
RP 62 |
RP 63 |
The mapping is only valid for the BDFs of VFs on the host.
The service provided on a ring-pair varies depending on the
configuration. The configuration for a given device can be
queried and set using cfg_services
.
See testing/sysfs-driver-qat for details.
The following table reports how ring pairs are mapped to VFs on the PF 0000:6b:0.0 configured for sym;asym or asym;sym:
PCI BDF/VF |
RP0/service |
RP1/service |
RP2/service |
RP3/service |
---|---|---|---|---|
0000:6b:0.1 |
RP 0 asym |
RP 1 sym |
RP 2 asym |
RP 3 sym |
0000:6b:0.2 |
RP 4 asym |
RP 5 sym |
RP 6 asym |
RP 7 sym |
0000:6b:0.3 |
RP 8 asym |
RP 9 sym |
RP10 asym |
RP11 sym |
... |
... |
... |
... |
... |
All VFs follow the same pattern.
The following table reports how ring pairs are mapped to VFs on the PF 0000:6b:0.0 configured for dc:
PCI BDF/VF |
RP0/service |
RP1/service |
RP2/service |
RP3/service |
---|---|---|---|---|
0000:6b:0.1 |
RP 0 dc |
RP 1 dc |
RP 2 dc |
RP 3 dc |
0000:6b:0.2 |
RP 4 dc |
RP 5 dc |
RP 6 dc |
RP 7 dc |
0000:6b:0.3 |
RP 8 dc |
RP 9 dc |
RP10 dc |
RP11 dc |
... |
... |
... |
... |
... |
The mapping of a RP to a service can be retrieved using
rp2srv
from sysfs.
See testing/sysfs-driver-qat for details.
This attribute is only available for qat_4xxx devices.
/sys/kernel/debug/scmi/<n>/atomic_threshold_us |
Defined on file debugfs-scmi
An optional time value, expressed in microseconds, representing, on this SCMI instance <n>, the threshold above which any SCMI command, advertised to have an higher-than-threshold execution latency, should not be considered for atomic mode of operation, even if requested.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/instance_name |
Defined on file debugfs-scmi
The name of the underlying SCMI instance <n> described by all the debugfs accessors rooted at /sys/kernel/debug/scmi/<n>, expressed as the full name of the top DT SCMI node under which this SCMI instance is rooted.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/raw/channels/<m>/message |
Defined on file debugfs-scmi-raw
SCMI Raw synchronous message injection/snooping facility; write a complete SCMI synchronous command message (header included) in little-endian binary format to have it sent to the configured backend SCMI server for instance <n> through the <m> transport channel. Any subsequently received response can be read from this same entry if it arrived on channel <m> within the configured timeout. Each write to the entry causes one command request to be built and sent while the replies are read back one message at time (receiving an EOF at each message boundary). Channel identifier <m> matches the SCMI protocol number which has been associated with this transport channel in the DT description, with base protocol number 0x10 being the default channel for this instance. Note that these per-channel entries rooted at <..>/channels exist only if the transport is configured to have more than one default channel.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/raw/channels/<m>/message_async |
Defined on file debugfs-scmi-raw
SCMI Raw asynchronous message injection/snooping facility; write a complete SCMI asynchronous command message (header included) in little-endian binary format to have it sent to the configured backend SCMI server for instance <n> through the <m> transport channel. Any subsequently received response can be read from this same entry if it arrived on channel <m> within the configured timeout. Any additional delayed response received afterwards can be read from this same entry too if it arrived within the configured timeout. Each write to the entry causes one command request to be built and sent while the replies are read back one message at time (receiving an EOF at each message boundary). Channel identifier <m> matches the SCMI protocol number which has been associated with this transport channel in the DT description, with base protocol number 0x10 being the default channel for this instance. Note that these per-channel entries rooted at <..>/channels exist only if the transport is configured to have more than one default channel.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/raw/errors |
Defined on file debugfs-scmi-raw
SCMI Raw message errors facility; any kind of timed-out or generally unexpectedly received SCMI message, for instance <n>, can be read from this entry. Each read gives back one message at time (receiving an EOF at each message boundary).
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/raw/message |
Defined on file debugfs-scmi-raw
SCMI Raw synchronous message injection/snooping facility; write a complete SCMI synchronous command message (header included) in little-endian binary format to have it sent to the configured backend SCMI server for instance <n>. Any subsequently received response can be read from this same entry if it arrived within the configured timeout. Each write to the entry causes one command request to be built and sent while the replies are read back one message at time (receiving an EOF at each message boundary).
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/raw/message_async |
Defined on file debugfs-scmi-raw
SCMI Raw asynchronous message injection/snooping facility; write a complete SCMI asynchronous command message (header included) in little-endian binary format to have it sent to the configured backend SCMI server for instance <n>. Any subsequently received response can be read from this same entry if it arrived within the configured timeout. Any additional delayed response received afterwards can be read from this same entry too if it arrived within the configured timeout. Each write to the entry causes one command request to be built and sent while the replies are read back one message at time (receiving an EOF at each message boundary).
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/raw/notification |
Defined on file debugfs-scmi-raw
SCMI Raw notification snooping facility; any notification emitted by the backend SCMI server, for instance <n>, can be read from this entry. Each read gives back one message at time (receiving an EOF at each message boundary).
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/raw/reset |
Defined on file debugfs-scmi-raw
SCMI Raw stack reset facility; writing a value to this entry causes the internal queues of any kind of received message, still pending to be read out for instance <n>, to be immediately flushed. Can be used to reset and clean the SCMI Raw stack between to different test-run.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/transport/is_atomic |
Defined on file debugfs-scmi
A boolean stating if the transport configured on the underlying SCMI instance <n> is capable of atomic mode of operation.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/transport/max_msg_size |
Defined on file debugfs-scmi
Max message size of allowed SCMI messages for the currently configured SCMI transport for instance <n>.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/transport/max_rx_timeout_ms |
Defined on file debugfs-scmi
Timeout in milliseconds allowed for SCMI synchronous replies for the currently configured SCMI transport for instance <n>.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/transport/rx_max_msg |
Defined on file debugfs-scmi
Max number of concurrently allowed in-flight SCMI messages for the currently configured SCMI transport for instance <n> on the RX channels.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/transport/tx_max_msg |
Defined on file debugfs-scmi
Max number of concurrently allowed in-flight SCMI messages for the currently configured SCMI transport for instance <n> on the TX channels.
Users: Debugging, any userspace test suite
/sys/kernel/debug/scmi/<n>/transport/type |
Defined on file debugfs-scmi
A string representing the type of transport configured for this SCMI instance <n>.
Users: Debugging, any userspace test suite
/sys/kernel/debug/tpmi-<n>/pfs_dump |
Defined on file debugfs-tpmi
The PFS (PM Feature Structure) table, shows details of each power management feature. This includes: tpmi_id, number of entries, entry size, offset, vsec offset, lock status and disabled status.
Users: Debugging, any user space test suite
/sys/kernel/debug/tpmi-<n>/plr/domain<n>/status |
Defined on file debugfs-tpmi
Shows the currently active Performance Limit Reasons for die level and the individual CPUs under the die. The contents of this file are sticky, and clearing all the statuses can be done by writing “0n” to this file.
/sys/kernel/debug/tpmi-<n>/tpmi-id-<n>/mem_dump |
Defined on file debugfs-tpmi
Shows the memory dump of the MMIO region for a TPMI ID.
Users: Debugging, any user space test suite
/sys/kernel/debug/tpmi-<n>/tpmi-id-<n>/mem_write |
Defined on file debugfs-tpmi
Allows to write at any offset. It doesn’t check for Read/Write access as hardware will not allow to write at read-only memory. This write is at offset multiples of 4. The format is instance,offset,contents. Example: echo 0,0x20,0xff > mem_write echo 1,64,64 > mem_write
Users: Debugging, any user space test suite
/sys/kernel/debug/turris-mox-rwtm/do_sign |
Defined on file debugfs-turris-mox-rwtm
(Write) |
Message to sign with the ECDSA private key stored in device’s OTP. The message must be exactly 64 bytes (since this is intended for SHA-512 hashes). |
(Read) |
The resulting signature, 136 bytes. This contains the R and S values of the ECDSA signature, both in big-endian format. |
/sys/kernel/debug/vfio |
Defined on file debugfs-vfio
This debugfs file directory is used for debugging of vfio devices, it’s a common directory for all vfio devices. Vfio core will create a device subdirectory under this directory.
/sys/kernel/debug/vfio/<device>/migration |
Defined on file debugfs-vfio
This debugfs file directory is used for debugging of vfio devices that support live migration. The debugfs of each vfio device that supports live migration could be created under this directory.
/sys/kernel/debug/vfio/<device>/migration/hisi_acc/cmd_state |
Defined on file debugfs-hisi-migration
Used to obtain the device command sending and receiving channel status. Returns failure or success logs based on the results.
/sys/kernel/debug/vfio/<device>/migration/hisi_acc/dev_data |
Defined on file debugfs-hisi-migration
Read the configuration data and some status data required for device live migration. These data include device status data, queue configuration data, some task configuration data and device attribute data. The output format of the data is defined by the live migration driver.
/sys/kernel/debug/vfio/<device>/migration/hisi_acc/migf_data |
Defined on file debugfs-hisi-migration
Read the data from the last completed live migration. This data includes the same device status data as in “dev_data”. The migf_data is the dev_data that is migrated.
/sys/kernel/debug/vfio/<device>/migration/state |
Defined on file debugfs-vfio
Read the live migration status of the vfio device. The contents of the state file reflects the migration state relative to those defined in the vfio_device_mig_state enum
/sys/kernel/debug/wilco_ec/h1_gpio |
Defined on file debugfs-wilco-ec
As part of Chrome OS’s FAFT (Fully Automated Firmware Testing) tests, we need to ensure that the H1 chip is properly setting some GPIO lines. The h1_gpio attribute exposes the state of the lines: - ENTRY_TO_FACT_MODE in BIT(0) - SPI_CHROME_SEL in BIT(1)
Output will formatted with “0x%02xn”.
/sys/kernel/debug/wilco_ec/raw |
Defined on file debugfs-wilco-ec
Write and read raw mailbox commands to the EC.
You can write a hexadecimal sentence to raw, and that series of bytes will be sent to the EC. Then, you can read the bytes of response by reading from raw.
For writing, bytes 0-1 indicate the message type, one of enum wilco_ec_msg_type. Byte 2+ consist of the data passed in the request, starting at MBOX[0]. At least three bytes are required for writing, two for the type and at least a single byte of data.
Example:
// Request EC info type 3 (EC firmware build date)
// Corresponds with sending type 0x00f0 with
// MBOX = [38, 00, 03, 00]
$ echo 00 f0 38 00 03 00 > /sys/kernel/debug/wilco_ec/raw
// View the result. The decoded ASCII result "12/21/18" is
// included after the raw hex.
// Corresponds with MBOX = [00, 00, 31, 32, 2f, 32, 31, 38, ...]
$ cat /sys/kernel/debug/wilco_ec/raw
00 00 31 32 2f 32 31 2f 31 38 00 38 00 01 00 2f 00 ..12/21/18.8...
Note that the first 16 bytes of the received MBOX[] will be printed, even if some of the data is junk, and skipping bytes 17 to 32. It is up to you to know how many of the first bytes of data are the actual response.
/sys/kernel/dmabuf/buffers |
Defined on file sysfs-kernel-dmabuf-buffers
The /sys/kernel/dmabuf/buffers directory contains a snapshot of the internal state of every DMA-BUF. /sys/kernel/dmabuf/buffers/<inode_number> will contain the statistics for the DMA-BUF with the unique inode number <inode_number>
Users: kernel memory tuning/debugging tools
/sys/kernel/dmabuf/buffers/<inode_number>/exporter_name |
Defined on file sysfs-kernel-dmabuf-buffers
This file is read-only and contains the name of the exporter of the DMA-BUF.
/sys/kernel/dmabuf/buffers/<inode_number>/size |
Defined on file sysfs-kernel-dmabuf-buffers
This file is read-only and specifies the size of the DMA-BUF in bytes.
/sys/kernel/fadump/* |
Defined on file sysfs-kernel-fadump
The /sys/kernel/fadump/* is a collection of FADump sysfs file provide information about the configuration status of Firmware Assisted Dump (FADump).
/sys/kernel/fadump/bootargs_append |
Defined on file sysfs-kernel-fadump
read/write This is a special sysfs file available to setup additional parameters to be passed to capture kernel.
/sys/kernel/fadump/enabled |
Defined on file sysfs-kernel-fadump
read only Primarily used to identify whether the FADump is enabled in the kernel or not. User: Kdump service
/sys/kernel/fadump/hotplug_ready |
Defined on file sysfs-kernel-fadump
read only Kdump udev rule re-registers fadump on memory add/remove events, primarily to update the elfcorehdr. This sysfs indicates the kdump udev rule that fadump re-registration is not required on memory add/remove events because elfcorehdr is now prepared in the second/fadump kernel. User: kexec-tools
/sys/kernel/fadump/mem_reserved |
Defined on file sysfs-kernel-fadump
read only Provide information about the amount of memory reserved by FADump to save the crash dump in bytes.
/sys/kernel/fadump/registered |
Defined on file sysfs-kernel-fadump
read/write Helps to control the dump collect feature from userspace. Setting 1 to this file enables the system to collect the dump and 0 to disable it. User: Kdump service
/sys/kernel/fadump/release_mem |
Defined on file sysfs-kernel-fadump
write only This is a special sysfs file and only available when the system is booted to capture the vmcore using FADump. It is used to release the memory reserved by FADump to save the crash dump.
/sys/kernel/fscaps |
Defined on file sysfs-kernel-fscaps
Shows whether file system capabilities are honored when executing a binary
/sys/kernel/iommu_groups/ |
Defined on file sysfs-kernel-iommu_groups
/sys/kernel/iommu_groups/ contains a number of sub- directories, each representing an IOMMU group. The name of the sub-directory matches the iommu_group_id() for the group, which is an integer value. Within each subdirectory is another directory named “devices” with links to the sysfs devices contained in this group. The group directory also optionally contains a “name” file if the IOMMU driver has chosen to register a more common name for the group.
/sys/kernel/iommu_groups/<grp_id>/type |
Defined on file sysfs-kernel-iommu_groups
/sys/kernel/iommu_groups/<grp_id>/type shows the type of default domain in use by iommu for this group. See include/linux/iommu.h for possible read values. A privileged user could request kernel to change the group type by writing to this file. Valid write values:
DMA |
All the DMA transactions from the device in this group are translated by the iommu. |
DMA-FQ |
As above, but using batched invalidation to lazily remove translations after use. This may offer reduced overhead at the cost of reduced memory protection. |
identity |
All the DMA transactions from the device in this group are not translated by the iommu. Maximum performance but zero protection. |
auto |
Change to the type the device was booted with. |
The default domain type of a group may be modified only when
The device in the group is not bound to any device driver. So, the users must unbind the appropriate driver before changing the default domain type.
Unbinding a device driver will take away the driver’s control over the device and if done on devices that host root file system could lead to catastrophic effects (the users might need to reboot the machine to get it to normal state). So, it’s expected that the users understand what they’re doing.
/sys/kernel/iommu_groups/reserved_regions |
Defined on file sysfs-kernel-iommu_groups
/sys/kernel/iommu_groups/reserved_regions list IOVA regions that are reserved. Not necessarily all reserved regions are listed. This is typically used to output direct-mapped, MSI, non mappable regions. Each region is described on a single line: the 1st field is the base IOVA, the second is the end IOVA and the third field describes the type of the region.
Since kernel 5.3, in case an RMRR is used only by graphics or USB devices it is now exposed as “direct-relaxable” instead of “direct”. In device assignment use case, for instance, those RMRR are considered to be relaxable and safe.
/sys/kernel/irq |
Defined on file sysfs-kernel-irq
Directory containing information about the system’s IRQs. Specifically, data from the associated struct irq_desc. The information here is similar to that in /proc/interrupts but in a more machine-friendly format. This directory contains one subdirectory for each Linux IRQ number.
/sys/kernel/irq/<irq>/actions |
Defined on file sysfs-kernel-irq
The IRQ action chain. A comma-separated list of zero or more device names associated with this interrupt.
/sys/kernel/irq/<irq>/chip_name |
Defined on file sysfs-kernel-irq
Human-readable chip name supplied by the associated device driver.
/sys/kernel/irq/<irq>/hwirq |
Defined on file sysfs-kernel-irq
When interrupt translation domains are used, this file contains the underlying hardware IRQ number used for this Linux IRQ.
/sys/kernel/irq/<irq>/name |
Defined on file sysfs-kernel-irq
Human-readable flow handler name as defined by the irq chip driver.
/sys/kernel/irq/<irq>/per_cpu_count |
Defined on file sysfs-kernel-irq
The number of times the interrupt has fired since boot. This is a comma-separated list of counters; one per CPU in CPU id order. NOTE: This file consistently shows counters for all CPU ids. This differs from the behavior of /proc/interrupts which only shows counters for online CPUs.
/sys/kernel/irq/<irq>/type |
Defined on file sysfs-kernel-irq
The type of the interrupt. Either the string ‘level’ or ‘edge’.
/sys/kernel/irq/<irq>/wakeup |
Defined on file sysfs-kernel-irq
The wakeup state of the interrupt. Either the string ‘enabled’ or ‘disabled’.
/sys/kernel/livepatch |
Defined on file sysfs-kernel-livepatch
Interface for kernel live patching
The /sys/kernel/livepatch directory contains subdirectories for each loaded live patch module.
/sys/kernel/livepatch/<patch> |
Defined on file sysfs-kernel-livepatch
The patch directory contains subdirectories for each kernel object (vmlinux or a module) in which it patched functions.
/sys/kernel/livepatch/<patch>/<object> |
Defined on file sysfs-kernel-livepatch
The object directory contains subdirectories for each function that is patched within the object.
/sys/kernel/livepatch/<patch>/<object>/<function,sympos> |
Defined on file sysfs-kernel-livepatch
The function directory contains attributes regarding the properties and state of the patched function.
The directory name contains the patched function name and a sympos number corresponding to the nth occurrence of the symbol name in kallsyms for the patched object.
There are currently no such attributes.
/sys/kernel/livepatch/<patch>/<object>/patched |
Defined on file sysfs-kernel-livepatch
An attribute which indicates whether the object is currently patched.
/sys/kernel/livepatch/<patch>/enabled |
Defined on file sysfs-kernel-livepatch
A writable attribute that indicates whether the patched code is currently applied. Writing 0 will disable the patch while writing 1 will re-enable the patch.
/sys/kernel/livepatch/<patch>/force |
Defined on file sysfs-kernel-livepatch
A writable attribute that allows administrator to affect the course of an existing transition. Writing 1 clears TIF_PATCH_PENDING flag of all tasks and thus forces the tasks to the patched or unpatched state. Administrator should not use this feature without a clearance from a patch distributor. Removal (rmmod) of patch modules is permanently disabled when the feature is used. See Livepatch for more information.
/sys/kernel/livepatch/<patch>/replace |
Defined on file sysfs-kernel-livepatch
An attribute which indicates whether the patch supports atomic-replace.
/sys/kernel/livepatch/<patch>/transition |
Defined on file sysfs-kernel-livepatch
An attribute which indicates whether the patch is currently in transition.
/sys/kernel/mm |
Defined on file sysfs-kernel-mm
/sys/kernel/mm/ should contain any and all VM related information in /sys/kernel/.
/sys/kernel/mm/cma/ |
Defined on file sysfs-kernel-mm-cma
/sys/kernel/mm/cma/ contains a subdirectory for each CMA heap name (also sometimes called CMA areas).
Each CMA heap subdirectory (that is, each /sys/kernel/mm/cma/<cma-heap-name> directory) contains the following items:
alloc_pages_success alloc_pages_fail
/sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_fail |
Defined on file sysfs-kernel-mm-cma
the number of pages CMA API failed to allocate
/sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_success |
Defined on file sysfs-kernel-mm-cma
the number of pages CMA API succeeded to allocate
/sys/kernel/mm/cma/<cma-heap-name>/release_pages_success |
Defined on file sysfs-kernel-mm-cma
the number of pages CMA API succeeded to release
/sys/kernel/mm/damon/ |
Defined on file sysfs-kernel-mm-damon
Interface for Data Access MONitoring (DAMON). Contains files for controlling DAMON. For more details on DAMON itself, please refer to DAMON: Data Access MONitor.
/sys/kernel/mm/damon/admin/ |
Defined on file sysfs-kernel-mm-damon
Interface for privileged users of DAMON. Contains files for controlling DAMON that aimed to be used by privileged users.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/avail_operations |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the available monitoring operations sets on the currently running kernel.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/aggr_us |
Defined on file sysfs-kernel-mm-damon
Writing a value to this file sets the aggregation interval of the DAMON context in microseconds as the value. Reading this file returns the value.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us |
Defined on file sysfs-kernel-mm-damon
Writing a value to this file sets the sampling interval of the DAMON context in microseconds as the value. Reading this file returns the value.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/update_us |
Defined on file sysfs-kernel-mm-damon
Writing a value to this file sets the update interval of the DAMON context in microseconds as the value. Reading this file returns the value.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/max |
Defined on file sysfs-kernel-mm-damon
Writing a value to this file sets the maximum number of monitoring regions of the DAMON context as the value. Reading this file returns the value.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/min |
Defined on file sysfs-kernel-mm-damon
Writing a value to this file sets the minimum number of monitoring regions of the DAMON context as the value. Reading this file returns the value.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/operations |
Defined on file sysfs-kernel-mm-damon
Writing a keyword for a monitoring operations set (‘vaddr’ for virtual address spaces monitoring, ‘fvaddr’ for fixed virtual address ranges monitoring, and ‘paddr’ for the physical address space monitoring) to this file makes the context to use the operations set. Reading the file returns the keyword for the operations set the context is set to use.
Note that only the operations sets that listed in ‘avail_operations’ file are valid inputs.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/max |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the maximum ‘age’ of the scheme’s target regions.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/min |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the minimum ‘age’ of the scheme’s target regions.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/max |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the maximum ‘nr_accesses’ of the scheme’s target regions.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/min |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the manimum ‘nr_accesses’ of the scheme’s target regions.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/max |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the maximum size of the scheme’s target regions in bytes.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/min |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the minimum size of the scheme’s target regions in bytes.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/action |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the action of the scheme.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/apply_interval_us |
Defined on file sysfs-kernel-mm-damon
Writing a value to this file sets the action apply interval of the scheme in microseconds. Reading this file returns the value.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_end |
Defined on file sysfs-kernel-mm-damon
If ‘addr’ is written to the ‘type’ file, writing to or reading from this file sets or gets the end address of the address range for the filter.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_start |
Defined on file sysfs-kernel-mm-damon
If ‘addr’ is written to the ‘type’ file, writing to or reading from this file sets or gets the start address of the address range for the filter.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/matching |
Defined on file sysfs-kernel-mm-damon
Writing ‘Y’ or ‘N’ to this file sets whether to filter out pages that do or do not match to the ‘type’ and ‘memcg_path’, respectively. Filter out means the action of the scheme will not be applied to.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/memcg_path |
Defined on file sysfs-kernel-mm-damon
If ‘memcg’ is written to the ‘type’ file, writing to and reading from this file sets and gets the path to the memory cgroup of the interest.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/target_idx |
Defined on file sysfs-kernel-mm-damon
If ‘target’ is written to the ‘type’ file, writing to or reading from this file sets or gets the index of the DAMON monitoring target of the interest.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/type |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the type of the memory of the interest. ‘anon’ for anonymous pages, ‘memcg’ for specific memory cgroup, ‘young’ for young pages, ‘addr’ for address range (an open-ended interval), or ‘target’ for DAMON monitoring target can be written and read.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/nr_filters |
Defined on file sysfs-kernel-mm-damon
Writing a number ‘N’ to this file creates the number of directories for setting filters of the scheme named ‘0’ to ‘N-1’ under the filters/ directory.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/bytes |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the size quota of the scheme in bytes.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/effective_bytes |
Defined on file sysfs-kernel-mm-damon
Reading from this file gets the effective size quota of the scheme in bytes, which adjusted for the time quota and goals.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/current_value |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the current value of the goal metric.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_metric |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the quota auto-tuning goal metric.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_value |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the target value of the goal metric.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/nr_goals |
Defined on file sysfs-kernel-mm-damon
Writing a number ‘N’ to this file creates the number of directories for setting automatic tuning of the scheme’s aggressiveness named ‘0’ to ‘N-1’ under the goals/ directory.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/ms |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the time quota of the scheme in milliseconds.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/reset_interval_ms |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the quotas charge reset interval of the scheme in milliseconds.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/age_permil |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the under-quota limit regions prioritization weight for ‘age’ in permil.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/nr_accesses_permil |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the under-quota limit regions prioritization weight for ‘nr_accesses’ in permil.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/sz_permil |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the under-quota limit regions prioritization weight for ‘size’ in permil.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_applied |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the number of regions that the action of the scheme has successfully applied.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_tried |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the number of regions that the action of the scheme has tried to be applied.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/qt_exceeds |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the number of the exceed events of the scheme’s quotas.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_applied |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the total size of regions that the action of the scheme has successfully applied in bytes.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_tried |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the total size of regions that the action of the scheme has tried to be applied in bytes.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/target_nid |
Defined on file sysfs-kernel-mm-damon
Action’s target NUMA node id. Supported by only relevant actions.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/age |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the ‘age’ of a memory region that corresponding DAMON-based Operation Scheme’s action has tried to be applied.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/end |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the end address of a memory region that corresponding DAMON-based Operation Scheme’s action has tried to be applied.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/nr_accesses |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the ‘nr_accesses’ of a memory region that corresponding DAMON-based Operation Scheme’s action has tried to be applied.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/start |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the start address of a memory region that corresponding DAMON-based Operation Scheme’s action has tried to be applied.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/total_bytes |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the total amount of memory that corresponding DAMON-based Operation Scheme’s action has tried to be applied.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the high watermark of the scheme in permil.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the metric check interval of the watermarks for the scheme in microseconds.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the low watermark of the scheme in permil.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the metric of the watermarks for the scheme. The writable/readable keywords for this file are ‘none’ for disabling the watermarks feature, or ‘free_mem_rate’ for the system’s global free memory rate in permil.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the mid watermark of the scheme in permil.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/nr_schemes |
Defined on file sysfs-kernel-mm-damon
Writing a number ‘N’ to this file creates the number of directories for controlling each DAMON-based operation scheme of the context named ‘0’ to ‘N-1’ under the schemes/ directory.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/pid_target |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the pid of the target process if the context is for virtual address spaces monitoring, respectively.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/end |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the end address of the monitoring region.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/start |
Defined on file sysfs-kernel-mm-damon
Writing to and reading from this file sets and gets the start address of the monitoring region.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/nr_regions |
Defined on file sysfs-kernel-mm-damon
Writing a number ‘N’ to this file creates the number of directories for setting each DAMON target memory region of the context named ‘0’ to ‘N-1’ under the regions/ directory. In case of the virtual address space monitoring, DAMON automatically sets the target memory region based on the target processes’ mappings.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/nr_targets |
Defined on file sysfs-kernel-mm-damon
Writing a number ‘N’ to this file creates the number of directories for controlling each DAMON target of the context named ‘0’ to ‘N-1’ under the contexts/ directory.
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/nr_contexts |
Defined on file sysfs-kernel-mm-damon
Writing a number ‘N’ to this file creates the number of directories for controlling each DAMON context named ‘0’ to ‘N-1’ under the contexts/ directory.
/sys/kernel/mm/damon/admin/kdamonds/<K>/pid |
Defined on file sysfs-kernel-mm-damon
Reading this file returns the pid of the kdamond if it is running.
/sys/kernel/mm/damon/admin/kdamonds/<K>/state |
Defined on file sysfs-kernel-mm-damon
Writing ‘on’ or ‘off’ to this file makes the kdamond starts or stops, respectively. Reading the file returns the keywords based on the current status. Writing ‘commit’ to this file makes the kdamond reads the user inputs in the sysfs files except ‘state’ again. Writing ‘commit_schemes_quota_goals’ to this file makes the kdamond reads the quota goal files again. Writing ‘update_schemes_stats’ to the file updates contents of schemes stats files of the kdamond. Writing ‘update_schemes_tried_regions’ to the file updates contents of ‘tried_regions’ directory of every scheme directory of this kdamond. Writing ‘update_schemes_tried_bytes’ to the file updates only ‘.../tried_regions/total_bytes’ files of this kdamond. Writing ‘clear_schemes_tried_regions’ to the file removes contents of the ‘tried_regions’ directory. Writing ‘update_schemes_effective_quotas’ to the file updates ‘.../quotas/effective_bytes’ files of this kdamond.
/sys/kernel/mm/damon/admin/kdamonds/nr_kdamonds |
Defined on file sysfs-kernel-mm-damon
Writing a number ‘N’ to this file creates the number of directories for controlling each DAMON worker thread (kdamond) named ‘0’ to ‘N-1’ under the kdamonds/ directory.
/sys/kernel/mm/hugepages/ |
Defined on file sysfs-kernel-mm-hugepages
/sys/kernel/mm/hugepages/ contains a number of subdirectories of the form hugepages-<size>kB, where <size> is the page size of the hugepages supported by the kernel/CPU combination.
Under these directories are a number of files:
nr_hugepages
nr_overcommit_hugepages
free_hugepages
surplus_hugepages
resv_hugepages
See HugeTLB Pages for details.
/sys/kernel/mm/ksm |
Defined on file sysfs-kernel-mm-ksm
Interface for Kernel Samepage Merging (KSM)
/sys/kernel/mm/ksm/full_scans |
/sys/kernel/mm/ksm/pages_shared |
/sys/kernel/mm/ksm/pages_sharing |
/sys/kernel/mm/ksm/pages_to_scan |
/sys/kernel/mm/ksm/pages_unshared |
/sys/kernel/mm/ksm/pages_volatile |
/sys/kernel/mm/ksm/run |
/sys/kernel/mm/ksm/sleep_millisecs |
Defined on file sysfs-kernel-mm-ksm
Kernel Samepage Merging daemon sysfs interface
full_scans: how many times all mergeable areas have been scanned.
pages_shared: how many shared pages are being used.
pages_sharing: how many more sites are sharing them i.e. how much saved.
pages_to_scan: how many present pages to scan before ksmd goes to sleep.
pages_unshared: how many pages unique but repeatedly checked for merging.
pages_volatile: how many pages changing too fast to be placed in a tree.
run: write 0 to disable ksm, read 0 while ksm is disabled.
write 1 to run ksm, read 1 while ksm is running.
write 2 to disable ksm and unmerge all its pages.
sleep_millisecs: how many milliseconds ksm should sleep between scans.
See Kernel Samepage Merging for more information.
/sys/kernel/mm/ksm/general_profit |
Defined on file sysfs-kernel-mm-ksm
Measure how effective KSM is. general_profit: how effective is KSM. The formula for the calculation is in Kernel Samepage Merging.
/sys/kernel/mm/ksm/merge_across_nodes |
Defined on file sysfs-kernel-mm-ksm
Control merging pages across different NUMA nodes.
When it is set to 0 only pages from the same node are merged, otherwise pages from all nodes can be merged together (default).
/sys/kernel/mm/mempolicy/ |
Defined on file sysfs-kernel-mm-mempolicy
Interface for Mempolicy
/sys/kernel/mm/mempolicy/weighted_interleave/ |
Defined on file sysfs-kernel-mm-mempolicy-weighted-interleave
Configuration Interface for the Weighted Interleave policy
/sys/kernel/mm/mempolicy/weighted_interleave/nodeN |
Defined on file sysfs-kernel-mm-mempolicy-weighted-interleave
Weight configuration interface for nodeN
The interleave weight for a memory node (N). These weights are utilized by tasks which have set their mempolicy to MPOL_WEIGHTED_INTERLEAVE.
These weights only affect new allocations, and changes at runtime will not cause migrations on already allocated pages.
The minimum weight for a node is always 1.
Minimum weight: 1 Maximum weight: 255
Writing an empty string or 0 will reset the weight to the system default. The system default may be set by the kernel or drivers at boot or during hotplug events.
/sys/kernel/mm/numa/ |
Defined on file sysfs-kernel-mm-numa
Interface for NUMA
/sys/kernel/mm/numa/demotion_enabled |
Defined on file sysfs-kernel-mm-numa
Enable/disable demoting pages during reclaim
Page migration during reclaim is intended for systems with tiered memory configurations. These systems have multiple types of memory with varied performance characteristics instead of plain NUMA systems where the same kind of memory is found at varied distances. Allowing page migration during reclaim enables these systems to migrate pages from fast tiers to slow tiers when the fast tier is under pressure. This migration is performed before swap. It may move data to a NUMA node that does not fall into the cpuset of the allocating process which might be construed to violate the guarantees of cpusets. This should not be enabled on systems which need strict cpuset location guarantees.
/sys/kernel/mm/swap/ |
Defined on file sysfs-kernel-mm-swap
Interface for swapping
/sys/kernel/mm/swap/vma_ra_enabled |
Defined on file sysfs-kernel-mm-swap
Enable/disable VMA based swap readahead.
If set to true, the VMA based swap readahead algorithm will be used for swappable anonymous pages mapped in a VMA, and the global swap readahead algorithm will be still used for tmpfs etc. other users. If set to false, the global swap readahead algorithm will be used for all swappable pages.
/sys/kernel/mm/transparent_hugepage/ |
Defined on file sysfs-kernel-mm-transparent-hugepage
/sys/kernel/mm/transparent_hugepage/ contains a number of files and subdirectories,
defrag
enabled
hpage_pmd_size
khugepaged
shmem_enabled
use_zero_page
subdirectories of the form hugepages-<size>kB, where <size> is the page size of the hugepages supported by the kernel/CPU combination.
See Transparent Hugepage Support for details.
/sys/kernel/oops_count |
Defined on file sysfs-kernel-oops_count
Shows how many times the system has Oopsed since last boot.
/sys/kernel/profiling |
Defined on file sysfs-profiling
/sys/kernel/profiling is the runtime equivalent of the boot-time profile= option.
You can get the same effect running:
echo 2 > /sys/kernel/profiling
as you would by issuing profile=2 on the boot command line.
/sys/kernel/reboot |
Defined on file sysfs-kernel-reboot
Interface to set the kernel reboot behavior, similarly to what can be done via the reboot= cmdline option. (see The kernel’s command-line parameters)
/sys/kernel/reboot/cpu |
Defined on file sysfs-kernel-reboot
CPU number to use to reboot.
/sys/kernel/reboot/force |
Defined on file sysfs-kernel-reboot
Don’t wait for any other CPUs on reboot and avoid anything that could hang.
/sys/kernel/reboot/mode |
Defined on file sysfs-kernel-reboot
Reboot mode. Valid values are: cold warm hard soft gpio
/sys/kernel/reboot/type |
Defined on file sysfs-kernel-reboot
Reboot type. Valid values are: bios acpi kbd triple efi pci
/sys/kernel/security/*/evm/evm_xattrs |
Defined on file evm
Shows the set of extended attributes used to calculate or validate the EVM signature, and allows additional attributes to be added at runtime. Any signatures generated after additional attributes are added (and on files possessing those additional attributes) will only be valid if the same additional attributes are configured on system boot. Writing a single period (.) will lock the xattr list from any further modification.
/sys/kernel/security/*/ima/policy |
Defined on file ima_policy
The Trusted Computing Group(TCG) runtime Integrity Measurement Architecture(IMA) maintains a list of hash values of executables and other sensitive system files loaded into the run-time of this system. At runtime, the policy can be constrained based on LSM specific data. Policies are loaded into the securityfs file ima/policy by opening the file, writing the rules one at a time and then closing the file. The new policy takes effect after the file ima/policy is closed.
IMA appraisal, if configured, uses these file measurements for local measurement appraisal.
rule format: action [condition ...]
action: measure | dont_measure | appraise | dont_appraise |
audit | hash | dont_hash
condition:= base | lsm [option]
base: [[func=] [mask=] [fsmagic=] [fsuuid=] [fsname=]
[uid=] [euid=] [gid=] [egid=]
[fowner=] [fgroup=]]
lsm: [[subj_user=] [subj_role=] [subj_type=]
[obj_user=] [obj_role=] [obj_type=]]
option: [digest_type=] [template=] [permit_directio]
[appraise_type=] [appraise_flag=]
[appraise_algos=] [keyrings=]
base:
func:= [BPRM_CHECK][MMAP_CHECK][CREDS_CHECK][FILE_CHECK][MODULE_CHECK]
[FIRMWARE_CHECK]
[KEXEC_KERNEL_CHECK] [KEXEC_INITRAMFS_CHECK]
[KEXEC_CMDLINE] [KEY_CHECK] [CRITICAL_DATA]
[SETXATTR_CHECK][MMAP_CHECK_REQPROT]
mask:= [[^]MAY_READ] [[^]MAY_WRITE] [[^]MAY_APPEND]
[[^]MAY_EXEC]
fsmagic:= hex value
fsuuid:= file system UUID (e.g 8bcbe394-4f13-4144-be8e-5aa9ea2ce2f6)
uid:= decimal value
euid:= decimal value
gid:= decimal value
egid:= decimal value
fowner:= decimal value
fgroup:= decimal value
lsm: are LSM specific
option:
appraise_type:= [imasig] | [imasig|modsig] | [sigv3]
where 'imasig' is the original or the signature
format v2.
where 'modsig' is an appended signature,
where 'sigv3' is the signature format v3. (Currently
limited to fsverity digest based signatures
stored in security.ima xattr. Requires
specifying "digest_type=verity" first.)
appraise_flag:= [check_blacklist] (deprecated)
Setting the check_blacklist flag is no longer necessary.
All appraisal functions set it by default.
digest_type:= verity
Require fs-verity's file digest instead of the
regular IMA file hash.
keyrings:= list of keyrings
(eg, .builtin_trusted_keys|.ima). Only valid
when action is "measure" and func is KEY_CHECK.
template:= name of a defined IMA template type
(eg, ima-ng). Only valid when action is "measure".
pcr:= decimal value
label:= [selinux]|[kernel_info]|[data_label]
data_label:= a unique string used for grouping and limiting critical data.
For example, "selinux" to measure critical data for SELinux.
appraise_algos:= comma-separated list of hash algorithms
For example, "sha256,sha512" to only accept to appraise
files where the security.ima xattr was hashed with one
of these two algorithms.
default policy:
# PROC_SUPER_MAGIC
dont_measure fsmagic=0x9fa0
dont_appraise fsmagic=0x9fa0
# SYSFS_MAGIC
dont_measure fsmagic=0x62656572
dont_appraise fsmagic=0x62656572
# DEBUGFS_MAGIC
dont_measure fsmagic=0x64626720
dont_appraise fsmagic=0x64626720
# TMPFS_MAGIC
dont_measure fsmagic=0x01021994
dont_appraise fsmagic=0x01021994
# RAMFS_MAGIC
dont_appraise fsmagic=0x858458f6
# DEVPTS_SUPER_MAGIC
dont_measure fsmagic=0x1cd1
dont_appraise fsmagic=0x1cd1
# BINFMTFS_MAGIC
dont_measure fsmagic=0x42494e4d
dont_appraise fsmagic=0x42494e4d
# SECURITYFS_MAGIC
dont_measure fsmagic=0x73636673
dont_appraise fsmagic=0x73636673
# SELINUX_MAGIC
dont_measure fsmagic=0xf97cff8c
dont_appraise fsmagic=0xf97cff8c
# CGROUP_SUPER_MAGIC
dont_measure fsmagic=0x27e0eb
dont_appraise fsmagic=0x27e0eb
# NSFS_MAGIC
dont_measure fsmagic=0x6e736673
dont_appraise fsmagic=0x6e736673
measure func=BPRM_CHECK
measure func=FILE_MMAP mask=MAY_EXEC
measure func=FILE_CHECK mask=MAY_READ uid=0
measure func=MODULE_CHECK
measure func=FIRMWARE_CHECK
appraise fowner=0
The default policy measures all executables in bprm_check, all files mmapped executable in file_mmap, and all files open for read by root in do_filp_open. The default appraisal policy appraises all files owned by root.
Examples of LSM specific definitions:
SELinux:
dont_measure obj_type=var_log_t
dont_appraise obj_type=var_log_t
dont_measure obj_type=auditd_log_t
dont_appraise obj_type=auditd_log_t
measure subj_user=system_u func=FILE_CHECK mask=MAY_READ
measure subj_role=system_r func=FILE_CHECK mask=MAY_READ
Smack:
measure subj_user=_ func=FILE_CHECK mask=MAY_READ
Example of measure rules using alternate PCRs:
measure func=KEXEC_KERNEL_CHECK pcr=4
measure func=KEXEC_INITRAMFS_CHECK pcr=5
Example of appraise rule allowing modsig appended signatures:
appraise func=KEXEC_KERNEL_CHECK appraise_type=imasig|modsig
Example of measure rule using KEY_CHECK to measure all keys:
measure func=KEY_CHECK
Example of measure rule using KEY_CHECK to only measure keys added to .builtin_trusted_keys or .ima keyring:
measure func=KEY_CHECK keyrings=.builtin_trusted_keys|.ima
Example of the special SETXATTR_CHECK appraise rule, that restricts the hash algorithms allowed when writing to the security.ima xattr of a file:
appraise func=SETXATTR_CHECK appraise_algos=sha256,sha384,sha512
Example of a ‘measure’ rule requiring fs-verity’s digests with indication of type of digest in the measurement list.
- measure func=FILE_CHECK digest_type=verity
template=ima-ngv2
Example of ‘measure’ and ‘appraise’ rules requiring fs-verity signatures (format version 3) stored in security.ima xattr.
The ‘measure’ rule specifies the ‘ima-sigv3’ template option, which includes the indication of type of digest and the file signature in the measurement list.
- measure func=BPRM_CHECK digest_type=verity
template=ima-sigv3
The ‘appraise’ rule specifies the type and signature format version (sigv3) required.
- appraise func=BPRM_CHECK digest_type=verity
appraise_type=sigv3
All of these policy rules could, for example, be constrained either based on a filesystem’s UUID (fsuuid) or based on LSM labels.
/sys/kernel/security/evm |
/sys/kernel/security/*/evm |
Defined on file evm
EVM protects a file’s security extended attributes(xattrs) against integrity attacks. The initial method maintains an HMAC-sha1 value across the extended attributes, storing the value as the extended attribute ‘security.evm’.
EVM supports two classes of security.evm. The first is an HMAC-sha1 generated locally with a trusted/encrypted key stored in the Kernel Key Retention System. The second is a digital signature generated either locally or remotely using an asymmetric key. These keys are loaded onto root’s keyring using keyctl, and EVM is then enabled by echoing a value to <securityfs>/evm made up of the following bits:
Bit |
Effect |
---|---|
0 |
Enable HMAC validation and creation |
1 |
Enable digital signature validation |
2 |
Permit modification of EVM-protected metadata at runtime. Not supported if HMAC validation and creation is enabled (deprecated). |
31 |
Disable further runtime modification of EVM policy |
For example:
echo 1 ><securityfs>/evm
will enable HMAC validation and creation
echo 0x80000003 ><securityfs>/evm
will enable HMAC and digital signature validation and HMAC creation and disable all further modification of policy.
echo 0x80000006 ><securityfs>/evm
will enable digital signature validation, permit modification of EVM-protected metadata and disable all further modification of policy. This option is now deprecated in favor of:
echo 0x80000002 ><securityfs>/evm
as the outstanding issues that prevent the usage of EVM portable signatures have been solved.
Echoing a value is additive, the new value is added to the existing initialization flags.
For example, after:
echo 2 ><securityfs>/evm
another echo can be performed:
echo 1 ><securityfs>/evm
and the resulting value will be 3.
Note that once an HMAC key has been loaded, it will no longer be possible to enable metadata modification. Signaling that an HMAC key has been loaded will clear the corresponding flag. For example, if the current value is 6 (2 and 4 set):
echo 1 ><securityfs>/evm
will set the new value to 3 (4 cleared).
Loading an HMAC key is the only way to disable metadata modification.
Until key loading has been signaled EVM can not create or validate the ‘security.evm’ xattr, but returns INTEGRITY_UNKNOWN. Loading keys and signaling EVM should be done as early as possible. Normally this is done in the initramfs, which has already been measured as part of the trusted boot. For more information on creating and loading existing trusted/encrypted keys, refer to: Trusted and Encrypted Keys. Both dracut (via 97masterkey and 98integrity) and systemd (via core/ima-setup) have support for loading keys at boot time.
/sys/kernel/slab |
Defined on file sysfs-kernel-slab
The /sys/kernel/slab directory contains a snapshot of the internal state of the SLUB allocator for each cache. Certain files may be modified to change the behavior of the cache (and any cache it aliases, if any).
Users: kernel memory tuning tools
/sys/kernel/slab/<cache>/aliases |
Defined on file sysfs-kernel-slab
The aliases file is read-only and specifies how many caches have merged into this cache.
/sys/kernel/slab/<cache>/align |
Defined on file sysfs-kernel-slab
The align file is read-only and specifies the cache’s object alignment in bytes.
/sys/kernel/slab/<cache>/alloc_calls |
Defined on file sysfs-kernel-slab
The alloc_calls file is read-only and lists the kernel code locations from which allocations for this cache were performed. The alloc_calls file only contains information if debugging is enabled for that cache (see Short users guide for SLUB).
/sys/kernel/slab/<cache>/alloc_fastpath |
Defined on file sysfs-kernel-slab
The alloc_fastpath file shows how many objects have been allocated using the fast path. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/alloc_from_partial |
Defined on file sysfs-kernel-slab
The alloc_from_partial file shows how many times a cpu slab has been full and it has been refilled by using a slab from the list of partially used slabs. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/alloc_refill |
Defined on file sysfs-kernel-slab
The alloc_refill file shows how many times the per-cpu freelist was empty but there were objects available as the result of remote cpu frees. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/alloc_slab |
Defined on file sysfs-kernel-slab
The alloc_slab file is shows how many times a new slab had to be allocated from the page allocator. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/alloc_slowpath |
Defined on file sysfs-kernel-slab
The alloc_slowpath file shows how many objects have been allocated using the slow path because of a refill or allocation from a partial or new slab. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/cache_dma |
Defined on file sysfs-kernel-slab
The cache_dma file is read-only and specifies whether objects are from ZONE_DMA. Available when CONFIG_ZONE_DMA is enabled.
/sys/kernel/slab/<cache>/cpu_partial |
Defined on file sysfs-kernel-slab
This read-only file shows the number of per cpu partial pages to keep around.
/sys/kernel/slab/<cache>/cpu_slabs |
Defined on file sysfs-kernel-slab
The cpu_slabs file is read-only and displays how many cpu slabs are active and their NUMA locality.
/sys/kernel/slab/<cache>/cpuslab_flush |
Defined on file sysfs-kernel-slab
The file cpuslab_flush shows how many times a cache’s cpu slabs have been flushed as the result of destroying or shrinking a cache, a cpu going offline, or as the result of forcing an allocation from a certain node. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/ctor |
Defined on file sysfs-kernel-slab
The ctor file is read-only and specifies the cache’s object constructor function, which is invoked for each object when a new slab is allocated.
/sys/kernel/slab/<cache>/deactivate_empty |
Defined on file sysfs-kernel-slab
The deactivate_empty file shows how many times an empty cpu slab was deactivated. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/deactivate_full |
Defined on file sysfs-kernel-slab
The deactivate_full file shows how many times a full cpu slab was deactivated. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/deactivate_remote_frees |
Defined on file sysfs-kernel-slab
The deactivate_remote_frees file shows how many times a cpu slab has been deactivated and contained free objects that were freed remotely. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/deactivate_to_head |
Defined on file sysfs-kernel-slab
The deactivate_to_head file shows how many times a partial cpu slab was deactivated and added to the head of its node’s partial list. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/deactivate_to_tail |
Defined on file sysfs-kernel-slab
The deactivate_to_tail file shows how many times a partial cpu slab was deactivated and added to the tail of its node’s partial list. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/destroy_by_rcu |
Defined on file sysfs-kernel-slab
The destroy_by_rcu file is read-only and specifies whether slabs (not objects) are freed by rcu.
/sys/kernel/slab/<cache>/free_add_partial |
Defined on file sysfs-kernel-slab
The free_add_partial file shows how many times an object has been freed in a full slab so that it had to added to its node’s partial list. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/free_calls |
Defined on file sysfs-kernel-slab
The free_calls file is read-only and lists the locations of object frees if slab debugging is enabled (see Short users guide for SLUB).
/sys/kernel/slab/<cache>/free_fastpath |
Defined on file sysfs-kernel-slab
The free_fastpath file shows how many objects have been freed using the fast path because it was an object from the cpu slab. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/free_frozen |
Defined on file sysfs-kernel-slab
The free_frozen file shows how many objects have been freed to a frozen slab (i.e. a remote cpu slab). It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/free_remove_partial |
Defined on file sysfs-kernel-slab
The free_remove_partial file shows how many times an object has been freed to a now-empty slab so that it had to be removed from its node’s partial list. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/free_slab |
Defined on file sysfs-kernel-slab
The free_slab file shows how many times an empty slab has been freed back to the page allocator. It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/free_slowpath |
Defined on file sysfs-kernel-slab
The free_slowpath file shows how many objects have been freed using the slow path (i.e. to a full or partial slab). It can be written to clear the current count. Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/hwcache_align |
Defined on file sysfs-kernel-slab
The hwcache_align file is read-only and specifies whether objects are aligned on cachelines.
/sys/kernel/slab/<cache>/min_partial |
Defined on file sysfs-kernel-slab
The min_partial file specifies how many empty slabs shall remain on a node’s partial list to avoid the overhead of allocating new slabs. Such slabs may be reclaimed by utilizing the shrink file.
/sys/kernel/slab/<cache>/object_size |
Defined on file sysfs-kernel-slab
The object_size file is read-only and specifies the cache’s object size.
/sys/kernel/slab/<cache>/objects |
Defined on file sysfs-kernel-slab
The objects file is read-only and displays how many objects are active and from which nodes they are from.
/sys/kernel/slab/<cache>/objects_partial |
Defined on file sysfs-kernel-slab
The objects_partial file is read-only and displays how many objects are on partial slabs and from which nodes they are from.
/sys/kernel/slab/<cache>/objs_per_slab |
Defined on file sysfs-kernel-slab
The file objs_per_slab is read-only and specifies how many objects may be allocated from a single slab of the order specified in /sys/kernel/slab/<cache>/order.
/sys/kernel/slab/<cache>/order |
Defined on file sysfs-kernel-slab
The order file specifies the page order at which new slabs are allocated. It is writable and can be changed to increase the number of objects per slab. If a slab cannot be allocated because of fragmentation, SLUB will retry with the minimum order possible depending on its characteristics.
When debug_guardpage_minorder=N (N > 0) parameter is specified (see The kernel’s command-line parameters), the minimum possible order is used and this sysfs entry can not be used to change the order at run time.
/sys/kernel/slab/<cache>/order_fallback |
Defined on file sysfs-kernel-slab
The order_fallback file shows how many times an allocation of a new slab has not been possible at the cache’s order and instead fallen back to its minimum possible order. It can be written to clear the current count.
Available when CONFIG_SLUB_STATS is enabled.
/sys/kernel/slab/<cache>/partial |
Defined on file sysfs-kernel-slab
The partial file is read-only and displays how long many partial slabs there are and how long each node’s list is.
/sys/kernel/slab/<cache>/poison |
Defined on file sysfs-kernel-slab
The poison file specifies whether objects should be poisoned when a new slab is allocated.
/sys/kernel/slab/<cache>/reclaim_account |
Defined on file sysfs-kernel-slab
The reclaim_account file specifies whether the cache’s objects are reclaimable (and grouped by their mobility).
/sys/kernel/slab/<cache>/red_zone |
Defined on file sysfs-kernel-slab
The red_zone file specifies whether the cache’s objects are red zoned.
/sys/kernel/slab/<cache>/remote_node_defrag_ratio |
Defined on file sysfs-kernel-slab
The file remote_node_defrag_ratio specifies the percentage of times SLUB will attempt to refill the cpu slab with a partial slab from a remote node as opposed to allocating a new slab on the local node. This reduces the amount of wasted memory over the entire system but can be expensive.
Available when CONFIG_NUMA is enabled.
/sys/kernel/slab/<cache>/sanity_checks |
Defined on file sysfs-kernel-slab
The sanity_checks file specifies whether expensive checks should be performed on free and, at minimum, enables double free checks. Caches that enable sanity_checks cannot be merged with caches that do not.
/sys/kernel/slab/<cache>/shrink |
Defined on file sysfs-kernel-slab
The shrink file is used to reclaim unused slab cache memory from a cache. Empty per-cpu or partial slabs are freed and the partial list is sorted so the slabs with the fewest available objects are used first. It only accepts a value of “1” on write for shrinking the cache. Other input values are considered invalid. Shrinking slab caches might be expensive and can adversely impact other running applications. So it should be used with care.
/sys/kernel/slab/<cache>/slab_size |
Defined on file sysfs-kernel-slab
The slab_size file is read-only and specifies the object size with metadata (debugging information and alignment) in bytes.
/sys/kernel/slab/<cache>/slabs |
Defined on file sysfs-kernel-slab
The slabs file is read-only and displays how long many slabs there are (both cpu and partial) and from which nodes they are from.
/sys/kernel/slab/<cache>/slabs_cpu_partial |
Defined on file sysfs-kernel-slab
This read-only file shows the number of partialli allocated frozen slabs.
/sys/kernel/slab/<cache>/store_user |
Defined on file sysfs-kernel-slab
The store_user file specifies whether the location of allocation or free should be tracked for a cache.
/sys/kernel/slab/<cache>/total_objects |
Defined on file sysfs-kernel-slab
The total_objects file is read-only and displays how many total objects a cache has and from which nodes they are from.
/sys/kernel/slab/<cache>/trace |
Defined on file sysfs-kernel-slab
The trace file specifies whether object allocations and frees should be traced.
/sys/kernel/slab/<cache>/usersize |
Defined on file sysfs-kernel-slab
The usersize file is read-only and contains the usercopy region size.
/sys/kernel/slab/<cache>/validate |
Defined on file sysfs-kernel-slab
Writing to the validate file causes SLUB to traverse all of its cache’s objects and check the validity of metadata.
/sys/kernel/vmcoreinfo |
Defined on file sysfs-kernel-vmcoreinfo
Shows physical address and size of vmcoreinfo ELF note. First value contains physical address of note in hex and second value contains the size of note in hex. This ELF note info is parsed by second kernel and exported to user space as part of ELF note in /proc/vmcore file. This note contains various information like struct size, symbol values, page size etc.
/sys/kernel/warn_count |
Defined on file sysfs-kernel-warn_count
Shows how many times the system has Warned since last boot.
Symbols under /sys/module¶
/sys/module/*/initstate |
Defined on file sysfs-module
Show the initialization state(live, coming, going) of the module.
/sys/module/*/taint |
Defined on file sysfs-module
- Module taint flags:
P
proprietary module
O
out-of-tree module
F
force-loaded module
C
staging driver module
E
unsigned module
/sys/module/*/{coresize,initsize} |
Defined on file sysfs-module
Module size in bytes.
/sys/module/ehci_hcd/drivers/.../uframe_periodic_max |
Defined on file sysfs-module
Maximum time allowed for periodic transfers per microframe (μs)
- Note:
USB 2.0 sets maximum allowed time for periodic transfers per microframe to be 80%, that is 100 microseconds out of 125 microseconds (full microframe).
However there are cases, when 80% max isochronous bandwidth is too limiting. For example two video streams could require 110 microseconds of isochronous bandwidth per microframe to work together.
Through this setting it is possible to raise the limit so that the host controller would allow allocating more than 100 microseconds of periodic bandwidth per microframe.
Beware, non-standard modes are usually not thoroughly tested by hardware designers, and the hardware can malfunction when this setting differ from default 100.
/sys/module/grant_table/parameters/free_per_iteration |
Defined on file sysfs-module
Read and write number of grant entries to attempt to free per iteration.
Note: Future versions of Xen and Linux may provide a better interface for controlling the rate of deferred grant reclaim or may not need it at all.
Users: Qubes OS (https://www.qubes-os.org)
/sys/module/pch_phub/drivers/.../pch_firmware |
Defined on file sysfs-module
Write/read Option ROM data.
/sys/module/pch_phub/drivers/.../pch_mac |
Defined on file sysfs-module
Write/read GbE MAC address.
/sys/module/xen_blkback/parameters/buffer_squeeze_duration_ms |
Defined on file sysfs-driver-xen-blkback
When memory pressure is reported to blkback this option controls the duration in milliseconds that blkback will not cache any page not backed by a grant mapping. The default is 10ms.
/sys/module/xen_blkback/parameters/feature_persistent |
Defined on file sysfs-driver-xen-blkback
Whether to enable the persistent grants feature or not. Note that this option only takes effect on newly connected backends. The default is Y (enable).
/sys/module/xen_blkback/parameters/max_buffer_pages |
Defined on file sysfs-driver-xen-blkback
Maximum number of free pages to keep in each block backend buffer.
/sys/module/xen_blkback/parameters/max_persistent_grants |
Defined on file sysfs-driver-xen-blkback
Maximum number of grants to map persistently in blkback. If the frontend tries to use more than max_persistent_grants, the LRU kicks in and starts removing 5% of max_persistent_grants every 100ms.
/sys/module/xen_blkback/parameters/persistent_grant_unused_seconds |
Defined on file sysfs-driver-xen-blkback
How long a persistent grant is allowed to remain allocated without being in use. The time is in seconds, 0 means indefinitely long. The default is 60 seconds.
/sys/module/xen_blkfront/parameters/feature_persistent |
Defined on file sysfs-driver-xen-blkfront
Whether to enable the persistent grants feature or not. Note that this option only takes effect on newly connected frontends. The default is Y (enable).
/sys/module/xen_blkfront/parameters/max_indirect_segments |
Defined on file sysfs-driver-xen-blkfront
Maximum number of segments that the frontend will negotiate with the backend for indirect descriptors. The default value is 32 - higher value means more potential throughput but more memory usage. The backend picks the minimum of the frontend and its default backend value.
Symbols under /sys/power¶
/sys/power/ |
Defined on file sysfs-power
The /sys/power directory will contain files that will provide a unified interface to the power management subsystem.
/sys/power/autosleep |
Defined on file sysfs-power
The /sys/power/autosleep file can be written one of the strings returned by reads from /sys/power/state. If that happens, a work item attempting to trigger a transition of the system to the sleep state represented by that string is queued up. This attempt will only succeed if there are no active wakeup sources in the system at that time. After every execution, regardless of whether or not the attempt to put the system to sleep has succeeded, the work item requeues itself until user space writes “off” to /sys/power/autosleep.
Reading from this file causes the last string successfully written to it to be returned.
/sys/power/disk |
Defined on file sysfs-power
The /sys/power/disk file controls the operating mode of the suspend-to-disk mechanism. Reading from this file returns the name of the method by which the system will be put to sleep on the next suspend. There are four methods supported:
‘firmware’ - means that the memory image will be saved to disk by some firmware, in which case we also assume that the firmware will handle the system suspend.
‘platform’ - the memory image will be saved by the kernel and the system will be put to sleep by the platform driver (e.g. ACPI or other PM registers).
‘shutdown’ - the memory image will be saved by the kernel and the system will be powered off.
‘reboot’ - the memory image will be saved by the kernel and the system will be rebooted.
Additionally, /sys/power/disk can be used to turn on one of the two testing modes of the suspend-to-disk mechanism: ‘testproc’ or ‘test’. If the suspend-to-disk mechanism is in the ‘testproc’ mode, writing ‘disk’ to /sys/power/state will cause the kernel to disable nonboot CPUs and freeze tasks, wait for 5 seconds, unfreeze tasks and enable nonboot CPUs. If it is in the ‘test’ mode, writing ‘disk’ to /sys/power/state will cause the kernel to disable nonboot CPUs and freeze tasks, shrink memory, suspend devices, wait for 5 seconds, resume devices, unfreeze tasks and enable nonboot CPUs. Then, we are able to look in the log messages and work out, for example, which code is being slow and which device drivers are misbehaving.
The suspend-to-disk method may be chosen by writing to this file one of the accepted strings:
‘firmware’
‘platform’
‘shutdown’
‘reboot’
‘testproc’
‘test’
It will only change to ‘firmware’ or ‘platform’ if the system supports that.
/sys/power/image_size |
Defined on file sysfs-power
The /sys/power/image_size file controls the size of the image created by the suspend-to-disk mechanism. It can be written a string representing a non-negative integer that will be used as an upper limit of the image size, in bytes. The kernel’s suspend-to-disk code will do its best to ensure the image size will not exceed this number. However, if it turns out to be impossible, the kernel will try to suspend anyway using the smallest image possible. In particular, if “0” is written to this file, the suspend image will be as small as possible.
Reading from this file will display the current image size limit, which is set to around 2/5 of available RAM by default.
/sys/power/mem_sleep |
Defined on file sysfs-power
The /sys/power/mem_sleep file controls the operating mode of system suspend. Reading from it returns the available modes as “s2idle” (always present), “shallow” and “deep” (present if supported). The mode that will be used on subsequent attempts to suspend the system (by writing “mem” to the /sys/power/state file described above) is enclosed in square brackets.
Writing one of the above strings to this file causes the mode represented by it to be used on subsequent attempts to suspend the system.
See System Sleep States for more information.
/sys/power/pm_async |
Defined on file sysfs-power
The /sys/power/pm_async file controls the switch allowing the user space to enable or disable asynchronous suspend and resume of devices. If enabled, this feature will cause some device drivers’ suspend and resume callbacks to be executed in parallel with each other and with the main suspend thread. It is enabled if this file contains “1”, which is the default. It may be disabled by writing “0” to this file, in which case all devices will be suspended and resumed synchronously.
/sys/power/pm_debug_messages |
Defined on file sysfs-power
The /sys/power/pm_debug_messages file controls the printing of debug messages from the system suspend/hiberbation infrastructure to the kernel log.
Writing a “1” to this file enables the debug messages and writing a “0” (default) to it disables them. Reads from this file return the current value.
/sys/power/pm_print_times |
Defined on file sysfs-power
The /sys/power/pm_print_times file allows user space to control whether the time taken by devices to suspend and resume is printed. These prints are useful for hunting down devices that take too long to suspend or resume.
Writing a “1” enables this printing while writing a “0” disables it. The default value is “0”. Reading from this file will display the current value.
/sys/power/pm_trace |
Defined on file sysfs-power
The /sys/power/pm_trace file controls the code which saves the last PM event point in the RTC across reboots, so that you can debug a machine that just hangs during suspend (or more commonly, during resume). Namely, the RTC is only used to save the last PM event point if this file contains ‘1’. Initially it contains ‘0’ which may be changed to ‘1’ by writing a string representing a nonzero integer into it.
To use this debugging feature you should attempt to suspend the machine, then reboot it and run:
dmesg -s 1000000 | grep 'hash matches'
If you do not get any matches (or they appear to be false positives), it is possible that the last PM event point referred to a device created by a loadable kernel module. In this case cat /sys/power/pm_trace_dev_match (see below) after your system is started up and the kernel modules are loaded.
CAUTION: Using it will cause your machine’s real-time (CMOS) clock to be set to a random invalid time after a resume.
What; /sys/power/pm_trace_dev_match The /sys/power/pm_trace_dev_match file contains the name of the device associated with the last PM event point saved in the RTC across reboots when pm_trace has been used. More precisely it contains the list of current devices (including those registered by loadable kernel modules since boot) which match the device hash in the RTC at boot, with a newline after each one.
The advantage of this file over the hash matches printed to the kernel log (see /sys/power/pm_trace), is that it includes devices created after boot by loadable kernel modules.
Due to the small hash size necessary to fit in the RTC, it is possible that more than one device matches the hash, in which case further investigation is required to determine which device is causing the problem. Note that genuine RTC clock values (such as when pm_trace has not been used), can still match a device and output its name here.
/sys/power/pm_wakeup_irq |
Defined on file sysfs-power
The /sys/power/pm_wakeup_irq file reports to user space the IRQ number of the first wakeup interrupt (that is, the first interrupt from an IRQ line armed for system wakeup) seen by the kernel during the most recent system suspend/resume cycle.
This output is useful for system wakeup diagnostics of spurious wakeup interrupts.
/sys/power/reserved_size |
Defined on file sysfs-power
The /sys/power/reserved_size file allows user space to control the amount of memory reserved for allocations made by device drivers during the “device freeze” stage of hibernation. It can be written a string representing a non-negative integer that will be used as the amount of memory to reserve for allocations made by device drivers’ “freeze” callbacks, in bytes.
Reading from this file will display the current value, which is set to 1 MB by default.
/sys/power/resume_offset |
Defined on file sysfs-power
This file is used for telling the kernel an offset into a disk to use when hibernating the system such as with a swap file.
Reads from this file will display the current offset the kernel will be using on the next hibernation attempt.
Using this sysfs file will override any values that were set using the kernel command line for disk offset.
/sys/power/state |
Defined on file sysfs-power
The /sys/power/state file controls system sleep states. Reading from this file returns the available sleep state labels, which may be “mem” (suspend), “standby” (power-on suspend), “freeze” (suspend-to-idle) and “disk” (hibernation).
Writing one of the above strings to this file causes the system to transition into the corresponding state, if available.
See System Sleep States for more information.
/sys/power/suspend_stats |
Defined on file sysfs-power
The /sys/power/suspend_stats directory contains suspend related statistics.
/sys/power/suspend_stats/fail |
Defined on file sysfs-power
The /sys/power/suspend_stats/fail file contains the number of times entering system sleep state failed.
/sys/power/suspend_stats/failed_freeze |
Defined on file sysfs-power
The /sys/power/suspend_stats/failed_freeze file contains the number of times freezing processes failed.
/sys/power/suspend_stats/failed_prepare |
Defined on file sysfs-power
The /sys/power/suspend_stats/failed_prepare file contains the number of times preparing all non-sysdev devices for a system PM transition failed.
/sys/power/suspend_stats/failed_resume |
Defined on file sysfs-power
The /sys/power/suspend_stats/failed_resume file contains the number of times executing “resume” callbacks of non-sysdev devices failed.
/sys/power/suspend_stats/failed_resume_early |
Defined on file sysfs-power
The /sys/power/suspend_stats/failed_resume_early file contains the number of times executing “early resume” callbacks of devices failed.
/sys/power/suspend_stats/failed_resume_noirq |
Defined on file sysfs-power
The /sys/power/suspend_stats/failed_resume_noirq file contains the number of times executing “noirq resume” callbacks of devices failed.
/sys/power/suspend_stats/failed_suspend |
Defined on file sysfs-power
The /sys/power/suspend_stats/failed_suspend file contains the number of times executing “suspend” callbacks of all non-sysdev devices failed.
/sys/power/suspend_stats/failed_suspend_late |
Defined on file sysfs-power
The /sys/power/suspend_stats/failed_suspend_late file contains the number of times executing “late suspend” callbacks of all devices failed.
/sys/power/suspend_stats/failed_suspend_noirq |
Defined on file sysfs-power
The /sys/power/suspend_stats/failed_suspend_noirq file contains the number of times executing “noirq suspend” callbacks of all devices failed.
/sys/power/suspend_stats/last_failed_dev |
Defined on file sysfs-power
The /sys/power/suspend_stats/last_failed_dev file contains the last device for which a suspend/resume callback failed.
/sys/power/suspend_stats/last_failed_errno |
Defined on file sysfs-power
The /sys/power/suspend_stats/last_failed_errno file contains the errno of the last failed attempt at entering system sleep state.
/sys/power/suspend_stats/last_failed_step |
Defined on file sysfs-power
The /sys/power/suspend_stats/last_failed_step file contains the last failed step in the suspend/resume path.
/sys/power/suspend_stats/last_hw_sleep |
Defined on file sysfs-power
The /sys/power/suspend_stats/last_hw_sleep file contains the duration of time spent in a hardware sleep state in the most recent system suspend-resume cycle. This number is measured in microseconds.
/sys/power/suspend_stats/max_hw_sleep |
Defined on file sysfs-power
The /sys/power/suspend_stats/max_hw_sleep file contains the maximum amount of time that the hardware can report for time spent in a hardware sleep state. When sleep cycles are longer than this time, the values for ‘total_hw_sleep’ and ‘last_hw_sleep’ may not be accurate. This number is measured in microseconds.
/sys/power/suspend_stats/success |
Defined on file sysfs-power
The /sys/power/suspend_stats/success file contains the number of times entering system sleep state succeeded.
/sys/power/suspend_stats/total_hw_sleep |
Defined on file sysfs-power
The /sys/power/suspend_stats/total_hw_sleep file contains the aggregate of time spent in a hardware sleep state since the kernel was booted. This number is measured in microseconds.
/sys/power/sync_on_suspend |
Defined on file sysfs-power
This file controls whether or not the kernel will sync() filesystems during system suspend (after freezing user space and before suspending devices).
Writing a “1” to this file enables the sync() and writing a “0” disables it. Reads from the file return the current value. The default is “1” if the build-time “SUSPEND_SKIP_SYNC” config flag is unset, or “0” otherwise.
/sys/power/wake_lock |
Defined on file sysfs-power
The /sys/power/wake_lock file allows user space to create wakeup source objects and activate them on demand (if one of those wakeup sources is active, reads from the /sys/power/wakeup_count file block or return false). When a string without white space is written to /sys/power/wake_lock, it will be assumed to represent a wakeup source name. If there is a wakeup source object with that name, it will be activated (unless active already). Otherwise, a new wakeup source object will be registered, assigned the given name and activated. If a string written to /sys/power/wake_lock contains white space, the part of the string preceding the white space will be regarded as a wakeup source name and handled as descrived above. The other part of the string will be regarded as a timeout (in nanoseconds) such that the wakeup source will be automatically deactivated after it has expired. The timeout, if present, is set regardless of the current state of the wakeup source object in question.
Reads from this file return a string consisting of the names of wakeup sources created with the help of it that are active at the moment, separated with spaces.
/sys/power/wake_unlock |
Defined on file sysfs-power
The /sys/power/wake_unlock file allows user space to deactivate wakeup sources created with the help of /sys/power/wake_lock. When a string is written to /sys/power/wake_unlock, it will be assumed to represent the name of a wakeup source to deactivate.
If a wakeup source object of that name exists and is active at the moment, it will be deactivated.
Reads from this file return a string consisting of the names of wakeup sources created with the help of /sys/power/wake_lock that are inactive at the moment, separated with spaces.
/sys/power/wakeup_count |
Defined on file sysfs-power
The /sys/power/wakeup_count file allows user space to put the system into a sleep state while taking into account the concurrent arrival of wakeup events. Reading from it returns the current number of registered wakeup events and it blocks if some wakeup events are being processed at the time the file is read from. Writing to it will only succeed if the current number of wakeup events is equal to the written value and, if successful, will make the kernel abort a subsequent transition to a sleep state if any wakeup events are reported after the write has returned.
Raise a uevent when a USB Host Controller has died¶
Raise a uevent when a USB Host Controller has died |
Defined on file usb-uevent
When the USB Host Controller has entered a state where it is no longer functional a uevent will be raised. The uevent will contain ACTION=offline and ERROR=DEAD.
Here is an example taken using udevadm monitor -p:
KERNEL[130.428945] offline /devices/pci0000:00/0000:00:10.0/usb2 (usb)
ACTION=offline
BUSNUM=002
DEVNAME=/dev/bus/usb/002/001
DEVNUM=001
DEVPATH=/devices/pci0000:00/0000:00:10.0/usb2
DEVTYPE=usb_device
DRIVER=usb
ERROR=DEAD
MAJOR=189
MINOR=128
PRODUCT=1d6b/2/414
SEQNUM=2168
SUBSYSTEM=usb
TYPE=9/0/1
Users: chromium-os-dev@chromium.org
Raise a uevent when a USB charger is inserted or removed¶
Raise a uevent when a USB charger is inserted or removed |
Defined on file usb-charger-uevent
There are two USB charger states:
USB_CHARGER_ABSENT
USB_CHARGER_PRESENT
There are five USB charger types:
USB_CHARGER_UNKNOWN_TYPE |
Charger type is unknown |
USB_CHARGER_SDP_TYPE |
Standard Downstream Port |
USB_CHARGER_CDP_TYPE |
Charging Downstream Port |
USB_CHARGER_DCP_TYPE |
Dedicated Charging Port |
USB_CHARGER_ACA_TYPE |
Accessory Charging Adapter |
https://www.usb.org/document-library/battery-charging-v12-spec-and-adopters-agreement
Here are two examples taken using udevadm monitor -p
when
USB charger is online:
UDEV change /devices/soc0/usbphynop1 (platform)
ACTION=change
DEVPATH=/devices/soc0/usbphynop1
DRIVER=usb_phy_generic
MODALIAS=of:Nusbphynop1T(null)Cusb-nop-xceiv
OF_COMPATIBLE_0=usb-nop-xceiv
OF_COMPATIBLE_N=1
OF_FULLNAME=/usbphynop1
OF_NAME=usbphynop1
SEQNUM=2493
SUBSYSTEM=platform
USB_CHARGER_STATE=USB_CHARGER_PRESENT
USB_CHARGER_TYPE=USB_CHARGER_SDP_TYPE
USEC_INITIALIZED=227422826
USB charger is offline:
KERNEL change /devices/soc0/usbphynop1 (platform)
ACTION=change
DEVPATH=/devices/soc0/usbphynop1
DRIVER=usb_phy_generic
MODALIAS=of:Nusbphynop1T(null)Cusb-nop-xceiv
OF_COMPATIBLE_0=usb-nop-xceiv
OF_COMPATIBLE_N=1
OF_FULLNAME=/usbphynop1
OF_NAME=usbphynop1
SEQNUM=2494
SUBSYSTEM=platform
USB_CHARGER_STATE=USB_CHARGER_ABSENT
USB_CHARGER_TYPE=USB_CHARGER_UNKNOWN_TYPE
nvdimm¶
nvdimm |
Defined on file sysfs-bus-nvdimm
The libnvdimm sub-system implements a common sysfs interface for platform nvdimm resources. See Documentation/driver-api/nvdimm/.
Symbols under security/secrets¶
security/secrets/coco |
Defined on file securityfs-secrets-coco
Exposes confidential computing (coco) EFI secrets to userspace via securityfs.
EFI can declare memory area used by confidential computing platforms (such as AMD SEV and SEV-ES) for secret injection by the Guest Owner during VM’s launch. The secrets are encrypted by the Guest Owner and decrypted inside the trusted enclave, and therefore are not readable by the untrusted host.
The efi_secret module exposes the secrets to userspace. Each secret appears as a file under <securityfs>/secrets/coco, where the filename is the GUID of the entry in the secrets table. This module is loaded automatically by the EFI driver if the EFI secret area is populated.
Two operations are supported for the files: read and unlink. Reading the file returns the content of secret entry. Unlinking the file overwrites the secret data with zeroes and removes the entry from the filesystem. A secret cannot be read after it has been unlinked.
For example, listing the available secrets:
# modprobe efi_secret
# ls -l /sys/kernel/security/secrets/coco
-r--r----- 1 root root 0 Jun 28 11:54 736870e5-84f0-4973-92ec-06879ce3da0b
-r--r----- 1 root root 0 Jun 28 11:54 83c83f7f-1356-4975-8b7e-d3a0b54312c6
-r--r----- 1 root root 0 Jun 28 11:54 9553f55d-3da2-43ee-ab5d-ff17f78864d2
-r--r----- 1 root root 0 Jun 28 11:54 e6f5a162-d67f-4750-a67c-5d065f2a9910
Reading the secret data by reading a file:
# cat /sys/kernel/security/secrets/coco/e6f5a162-d67f-4750-a67c-5d065f2a9910
the-content-of-the-secret-data
Wiping a secret by unlinking a file:
# rm /sys/kernel/security/secrets/coco/e6f5a162-d67f-4750-a67c-5d065f2a9910
# ls -l /sys/kernel/security/secrets/coco
-r--r----- 1 root root 0 Jun 28 11:54 736870e5-84f0-4973-92ec-06879ce3da0b
-r--r----- 1 root root 0 Jun 28 11:54 83c83f7f-1356-4975-8b7e-d3a0b54312c6
-r--r----- 1 root root 0 Jun 28 11:54 9553f55d-3da2-43ee-ab5d-ff17f78864d2
Note: The binary format of the secrets table injected by the Guest Owner is described in drivers/virt/coco/efi_secret/efi_secret.c under “Structure of the EFI secret area”.
File testing/configfs-acpi¶
Has the following ABI:
File testing/configfs-iio¶
Has the following ABI:
File testing/configfs-most¶
Has the following ABI:
File testing/configfs-rdma_cm¶
Has the following ABI:
File testing/configfs-spear-pcie-gadget¶
Has the following ABI:
File testing/configfs-stp-policy¶
Has the following ABI:
File testing/configfs-stp-policy-p_sys-t¶
Has the following ABI:
File testing/configfs-tsm¶
Has the following ABI:
File testing/configfs-usb-gadget¶
Has the following ABI:
File testing/configfs-usb-gadget-acm¶
Has the following ABI:
File testing/configfs-usb-gadget-ecm¶
Has the following ABI:
File testing/configfs-usb-gadget-eem¶
Has the following ABI:
File testing/configfs-usb-gadget-ffs¶
Has the following ABI:
File testing/configfs-usb-gadget-hid¶
Has the following ABI:
File testing/configfs-usb-gadget-loopback¶
Has the following ABI:
File testing/configfs-usb-gadget-mass-storage¶
Has the following ABI:
File testing/configfs-usb-gadget-midi¶
Has the following ABI:
File testing/configfs-usb-gadget-midi2¶
Has the following ABI:
File testing/configfs-usb-gadget-ncm¶
Has the following ABI:
File testing/configfs-usb-gadget-obex¶
Has the following ABI:
File testing/configfs-usb-gadget-phonet¶
Has the following ABI:
File testing/configfs-usb-gadget-printer¶
Has the following ABI:
File testing/configfs-usb-gadget-rndis¶
Has the following ABI:
File testing/configfs-usb-gadget-serial¶
Has the following ABI:
File testing/configfs-usb-gadget-sourcesink¶
Has the following ABI:
File testing/configfs-usb-gadget-subset¶
Has the following ABI:
File testing/configfs-usb-gadget-tcm¶
Has the following ABI:
File testing/configfs-usb-gadget-uac1¶
Has the following ABI:
File testing/configfs-usb-gadget-uac1_legacy¶
Has the following ABI:
File testing/configfs-usb-gadget-uac2¶
Has the following ABI:
File testing/configfs-usb-gadget-uvc¶
Has the following ABI:
/config/usb-gadget/gadget/functions/uvc.name/control/class/ss
/config/usb-gadget/gadget/functions/uvc.name/control/class/fs
/config/usb-gadget/gadget/functions/uvc.name/control/terminal
/config/usb-gadget/gadget/functions/uvc.name/control/terminal/output
/config/usb-gadget/gadget/functions/uvc.name/control/terminal/output/default
/config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera
/config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera/default
/config/usb-gadget/gadget/functions/uvc.name/control/processing
/config/usb-gadget/gadget/functions/uvc.name/control/processing/default
/config/usb-gadget/gadget/functions/uvc.name/control/extensions
/config/usb-gadget/gadget/functions/uvc.name/control/extensions/name
/config/usb-gadget/gadget/functions/uvc.name/control/header/name
/config/usb-gadget/gadget/functions/uvc.name/streaming/class
/config/usb-gadget/gadget/functions/uvc.name/streaming/class/ss
/config/usb-gadget/gadget/functions/uvc.name/streaming/class/hs
/config/usb-gadget/gadget/functions/uvc.name/streaming/class/fs
/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching
/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching/default
/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching/name
/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg
/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg/name
/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg/name/name
/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed
/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed/name
/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed/name/name
/config/usb-gadget/gadget/functions/uvc.name/streaming/framebased
/config/usb-gadget/gadget/functions/uvc.name/streaming/framebased/name
/config/usb-gadget/gadget/functions/uvc.name/streaming/framebased/name/name
/config/usb-gadget/gadget/functions/uvc.name/streaming/header
/config/usb-gadget/gadget/functions/uvc.name/streaming/header/name
/sys/class/udc/udc.name/device/gadget/video4linux/video.name/function_name
File testing/debugfs-cec-error-inj¶
Has the following ABI:
File testing/debugfs-cros-ec¶
Has the following ABI:
File testing/debugfs-cxl¶
Has the following ABI:
File testing/debugfs-dell-wmi-ddv¶
Has the following ABI:
File testing/debugfs-driver-dcc¶
Has the following ABI:
File testing/debugfs-driver-genwqe¶
Has the following ABI:
File testing/debugfs-driver-habanalabs¶
Has the following ABI:
File testing/debugfs-driver-qat¶
Has the following ABI:
File testing/debugfs-driver-qat_telemetry¶
Has the following ABI:
File testing/debugfs-ec¶
Has the following ABI:
File testing/debugfs-hisi-hpre¶
Has the following ABI:
File testing/debugfs-hisi-migration¶
Has the following ABI:
File testing/debugfs-hisi-sec¶
Has the following ABI:
File testing/debugfs-hisi-zip¶
Has the following ABI:
File testing/debugfs-hyperv¶
Has the following ABI:
File testing/debugfs-ideapad¶
Has the following ABI:
File testing/debugfs-iio-ad9467¶
Has the following ABI:
File testing/debugfs-iio-backend¶
Has the following ABI:
File testing/debugfs-intel-iommu¶
Has the following ABI:
File testing/debugfs-moxtet¶
Has the following ABI:
File testing/debugfs-msi-wmi-platform¶
Has the following ABI:
File testing/debugfs-olpc¶
Has the following ABI:
File testing/debugfs-pfo-nx-crypto¶
Has the following ABI:
File testing/debugfs-pktcdvd¶
Has the following ABI:
File testing/debugfs-scmi¶
Has the following ABI:
File testing/debugfs-scmi-raw¶
Has the following ABI:
File testing/debugfs-tpmi¶
Has the following ABI:
File testing/debugfs-turris-mox-rwtm¶
Has the following ABI:
File testing/debugfs-vfio¶
Has the following ABI:
File testing/debugfs-wilco-ec¶
Has the following ABI:
File testing/dell-smbios-wmi¶
Has the following ABI:
File testing/dev-kmsg¶
Has the following ABI:
File testing/devlink-resource-mlxsw¶
Has the following ABI:
File testing/evm¶
Has the following ABI:
File testing/gpio-cdev¶
Has the following ABI:
File testing/ima_policy¶
Has the following ABI:
File testing/ppc-memtrace¶
Has the following ABI:
File testing/procfs-attr-current¶
Has the following ABI:
File testing/procfs-attr-exec¶
Has the following ABI:
File testing/procfs-attr-prev¶
Has the following ABI:
File testing/procfs-diskstats¶
Has the following ABI:
File testing/procfs-smaps_rollup¶
Has the following ABI:
File testing/pstore¶
Has the following ABI:
File testing/rtc-cdev¶
Has the following ABI:
File testing/securityfs-secrets-coco¶
Has the following ABI:
File testing/sysfs-amd-pmc¶
Has the following ABI:
File testing/sysfs-amd-pmf¶
Has the following ABI:
File testing/sysfs-ata¶
Has the following ABI:
File testing/sysfs-block-aoe¶
Has the following ABI:
File testing/sysfs-block-bcache¶
Has the following ABI:
File testing/sysfs-block-device¶
Has the following ABI:
File testing/sysfs-block-dm¶
Has the following ABI:
File testing/sysfs-block-loop¶
Has the following ABI:
File testing/sysfs-block-rnbd¶
Has the following ABI:
File testing/sysfs-block-rssd¶
Has the following ABI:
File testing/sysfs-block-zram¶
Has the following ABI:
File testing/sysfs-bus-acpi¶
Has the following ABI:
File testing/sysfs-bus-amba¶
Has the following ABI:
File testing/sysfs-bus-auxiliary¶
Has the following ABI:
File testing/sysfs-bus-bcma¶
Has the following ABI:
File testing/sysfs-bus-cdx¶
Has the following ABI:
File testing/sysfs-bus-coreboot¶
Has the following ABI:
File testing/sysfs-bus-coresight-devices-cti¶
Has the following ABI:
/sys/bus/coresight/devices/<cti-name>/triggers<N>/in_signals
/sys/bus/coresight/devices/<cti-name>/triggers<N>/out_signals
/sys/bus/coresight/devices/<cti-name>/channels/trigin_attach
/sys/bus/coresight/devices/<cti-name>/channels/trigin_detach
/sys/bus/coresight/devices/<cti-name>/channels/trigout_attach
/sys/bus/coresight/devices/<cti-name>/channels/trigout_detach
/sys/bus/coresight/devices/<cti-name>/channels/chan_gate_enable
/sys/bus/coresight/devices/<cti-name>/channels/chan_gate_disable
/sys/bus/coresight/devices/<cti-name>/channels/trigout_filtered
/sys/bus/coresight/devices/<cti-name>/channels/trig_filter_enable
/sys/bus/coresight/devices/<cti-name>/channels/chan_xtrigs_sel
/sys/bus/coresight/devices/<cti-name>/channels/chan_xtrigs_in
/sys/bus/coresight/devices/<cti-name>/channels/chan_xtrigs_out
/sys/bus/coresight/devices/<cti-name>/channels/chan_xtrigs_reset
File testing/sysfs-bus-coresight-devices-etb10¶
Has the following ABI:
File testing/sysfs-bus-coresight-devices-etm3x¶
Has the following ABI:
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/enable_source
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_acctype
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_range
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_single
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/addr_start
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cntr_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cntr_rld_val
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/cntr_rld_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/ctxid_mask
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/enable_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/fifofull_level
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/nr_addr_cmp
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/nr_ctxid_cmp
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_12_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_13_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_21_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_23_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_31_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/seq_32_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/curr_seq_state
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/timestamp_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/trigger_event
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmccr
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmccer
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmscr
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmidr
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmcr
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmtraceidr
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmteevr
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmtsscr
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmtecr1
/sys/bus/coresight/devices/<memory_map>.[etm|ptm]/mgmt/etmtecr2
File testing/sysfs-bus-coresight-devices-etm4x¶
Has the following ABI:
File testing/sysfs-bus-coresight-devices-funnel¶
Has the following ABI:
File testing/sysfs-bus-coresight-devices-stm¶
Has the following ABI:
File testing/sysfs-bus-coresight-devices-tmc¶
Has the following ABI:
File testing/sysfs-bus-coresight-devices-tpdm¶
Has the following ABI:
File testing/sysfs-bus-coresight-devices-trbe¶
Has the following ABI:
File testing/sysfs-bus-coresight-devices-ultra_smb¶
Has the following ABI:
File testing/sysfs-bus-counter¶
Has the following ABI:
/sys/bus/counter/devices/counterX/external_input_phase_clock_select
/sys/bus/counter/devices/counterX/external_input_phase_clock_select_available
/sys/bus/counter/devices/counterX/countY/count_mode_available
/sys/bus/counter/devices/counterX/countY/error_noise_available
/sys/bus/counter/devices/counterX/countY/prescaler_available
/sys/bus/counter/devices/counterX/countY/signalZ_action_available
/sys/bus/counter/devices/counterX/cascade_counts_enable_component_id
/sys/bus/counter/devices/counterX/external_input_phase_clock_select_component_id
/sys/bus/counter/devices/counterX/countY/capture_component_id
/sys/bus/counter/devices/counterX/countY/ceiling_component_id
/sys/bus/counter/devices/counterX/countY/count_mode_component_id
/sys/bus/counter/devices/counterX/countY/direction_component_id
/sys/bus/counter/devices/counterX/countY/enable_component_id
/sys/bus/counter/devices/counterX/countY/error_noise_component_id
/sys/bus/counter/devices/counterX/countY/prescaler_component_id
/sys/bus/counter/devices/counterX/countY/preset_component_id
/sys/bus/counter/devices/counterX/countY/preset_enable_component_id
/sys/bus/counter/devices/counterX/countY/signalZ_action_component_id
/sys/bus/counter/devices/counterX/countY/num_overflows_component_id
/sys/bus/counter/devices/counterX/signalY/cable_fault_component_id
/sys/bus/counter/devices/counterX/signalY/cable_fault_enable_component_id
/sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler_component_id
/sys/bus/counter/devices/counterX/signalY/index_polarity_component_id
/sys/bus/counter/devices/counterX/signalY/polarity_component_id
/sys/bus/counter/devices/counterX/signalY/synchronous_mode_component_id
/sys/bus/counter/devices/counterX/signalY/frequency_component_id
/sys/bus/counter/devices/counterX/signalY/cable_fault_enable
/sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler
/sys/bus/counter/devices/counterX/signalY/index_polarity_available
/sys/bus/counter/devices/counterX/signalY/synchronous_mode_available
File testing/sysfs-bus-css¶
Has the following ABI:
File testing/sysfs-bus-cxl¶
Has the following ABI:
File testing/sysfs-bus-dax¶
Has the following ABI:
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/available_size
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/size
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/align
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/seed
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/create
$(readlink -f /sys/bus/dax/devices/daxX.Y)/../dax_region/delete
File testing/sysfs-bus-dfl¶
Has the following ABI:
File testing/sysfs-bus-dfl-devices-emif¶
Has the following ABI:
File testing/sysfs-bus-dfl-devices-n3000-nios¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-caps¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-dfl_fme¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-dsa¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-events¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-format¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-hisi_ptt¶
Has the following ABI:
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/qos_tx_cpl
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/qos_tx_np
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/qos_tx_p
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/rx_alloc_buf_level
/sys/bus/event_source/devices/hisi_ptt<sicl_id>_<core_id>/tune/tx_alloc_buf_level
/sys/devices/hisi_ptt<sicl_id>_<core_id>/root_port_filters/multiselect
/sys/devices/hisi_ptt<sicl_id>_<core_id>/root_port_filters/<bdf>
/sys/devices/hisi_ptt<sicl_id>_<core_id>/requester_filters/multiselect
/sys/devices/hisi_ptt<sicl_id>_<core_id>/requester_filters/<bdf>
File testing/sysfs-bus-event_source-devices-hv_24x7¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-hv_gpci¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-iommu¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-uncore¶
Has the following ABI:
File testing/sysfs-bus-event_source-devices-vpa-pmu¶
Has the following ABI:
File testing/sysfs-bus-fcoe¶
Has the following ABI:
File testing/sysfs-bus-fsi¶
Has the following ABI:
File testing/sysfs-bus-fsi-devices-sbefifo¶
Has the following ABI:
File testing/sysfs-bus-fsl-mc¶
Has the following ABI:
File testing/sysfs-bus-hsi¶
Has the following ABI:
File testing/sysfs-bus-i2c-devices-bq32k¶
Has the following ABI:
File testing/sysfs-bus-i2c-devices-fsa9480¶
Has the following ABI:
File testing/sysfs-bus-i2c-devices-hm6352¶
Has the following ABI:
File testing/sysfs-bus-i2c-devices-lm3533¶
Has the following ABI:
File testing/sysfs-bus-i2c-devices-pca954x¶
Has the following ABI:
File testing/sysfs-bus-i2c-devices-turris-omnia-mcu¶
Has the following ABI:
File testing/sysfs-bus-i3c¶
Has the following ABI:
File testing/sysfs-bus-iio¶
Has the following ABI:
/sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency
/sys/bus/iio/devices/iio:deviceX/sampling_frequency_available
/sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency_available
/sys/bus/iio/devices/iio:deviceX/in_proximity_sampling_frequency_available
/sys/bus/iio/devices/iio:deviceX/oversampling_ratio_available
/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_peak_raw
/sys/bus/iio/devices/iio:deviceX/in_humidityrelative_trough_raw
/sys/bus/iio/devices/iio:deviceX/in_accel_xyz_squared_peak_raw
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_scale
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_scale
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_scale
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_scale
/sys/bus/iio/devices/iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_scale
/sys/bus/iio/devices/iio:deviceX/in_accel_calibbias_available
/sys/bus/iio/devices/iio:deviceX/in_anglvel_calibbias_available
/sys/bus/iio/devices/iio:deviceX/in_temp_calibbias_available
/sys/bus/iio/devices/iio:deviceX/in_proximity_calibbias_available
/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibbias_available
/sys/bus/iio/devices/iio:deviceX/out_voltageY_calibbias_available
/sys/bus/iio/devices/iio:deviceX/in_intensity_both_calibscale
/sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
/sys/bus/iio/devices/iio:deviceX/in_illuminanceY_calibscale_available
/sys/bus/iio/devices/iio:deviceX/in_intensityY_calibscale_available
/sys/bus/iio/devices/iio:deviceX/in_proximityY_calibscale_available
/sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale_available
/sys/bus/iio/devices/iio:deviceX/in_activity_calibgender_available
/sys/bus/iio/devices/iio:deviceX/in_energy_calibgender_available
/sys/bus/iio/devices/iio:deviceX/in_distance_calibgender_available
/sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender_available
/sys/bus/iio/devices/iio:deviceX/in_intensity_red_hardwaregain
/sys/bus/iio/devices/iio:deviceX/in_intensity_green_hardwaregain
/sys/bus/iio/devices/iio:deviceX/in_intensity_blue_hardwaregain
/sys/bus/iio/devices/iio:deviceX/in_intensity_clear_hardwaregain
/sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain_available
/sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown_mode
/sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown_mode
/sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown_mode
/sys/.../iio:deviceX/out_altvoltageY_powerdown_mode_available
/sys/.../iio:deviceX/out_altvoltage_powerdown_mode_available
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_rising_en
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_falling_en
/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_rising_en
/sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_falling_en
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_en
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_en
/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_rising_en
/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_falling_en
/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_rising_en
/sys/.../iio:deviceX/events/in_voltageY_supply_thresh_falling_en
/sys/.../iio:deviceX/events/in_capacitanceY_thresh_rising_en
/sys/.../iio:deviceX/events/in_capacitanceY_thresh_falling_en
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_rising_en
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_falling_en
/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_rising_en
/sys/.../iio:deviceX/events/in_rot_from_north_true_roc_falling_en
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_rising_en
/sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_falling_en
/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_rising_en
/sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_falling_en
/sys/.../iio:deviceX/events/in_voltageY_supply_roc_rising_en
/sys/.../iio:deviceX/events/in_voltageY_supply_roc_falling_en
/sys/.../events/in_rot_from_north_magnetic_raw_thresh_rising_value
/sys/.../events/in_rot_from_north_magnetic_raw_thresh_falling_value
/sys/.../events/in_rot_from_north_true_raw_thresh_rising_value
/sys/.../events/in_rot_from_north_true_raw_thresh_falling_value
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_rising_value
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_falling_value
/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_rising_value
/sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_falling_value
/sys/.../events/in_capacitanceY_thresh_adaptive_rising_value
/sys/.../events/in_rot_from_north_magnetic_thresh_rising_hysteresis
/sys/.../events/in_rot_from_north_magnetic_thresh_falling_hysteresis
/sys/.../events/in_rot_from_north_magnetic_thresh_either_hysteresis
/sys/.../events/in_rot_from_north_true_thresh_rising_hysteresis
/sys/.../events/in_rot_from_north_true_thresh_falling_hysteresis
/sys/.../events/in_rot_from_north_true_thresh_either_hysteresis
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_hysteresis
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_hysteresis
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_either_hysteresis
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_hysteresis
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_hysteresis
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_either_hysteresis
/sys/.../events/in_rot_from_north_magnetic_raw_roc_rising_value
/sys/.../events/in_rot_from_north_magnetic_raw_roc_falling_value
/sys/.../events/in_rot_from_north_true_raw_roc_falling_value
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_rising_value
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_falling_value
/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_rising_value
/sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_falling_value
/sys/.../events/in_rot_from_north_magnetic_thresh_rising_period
/sys/.../events/in_rot_from_north_magnetic_thresh_falling_period
/sys/.../events/in_rot_from_north_magnetic_roc_rising_period
/sys/.../events/in_rot_from_north_magnetic_roc_falling_period
/sys/.../events/in_rot_from_north_true_thresh_falling_period
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_period
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_period
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_rising_period
/sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_falling_period
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_period
/sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_period
/sys/.../events/in_rot_from_north_true_tilt_comp_roc_rising_period
/sys/.../events/in_rot_from_north_true_tilt_comp_roc_falling_period
/sys/.../events/in_anglvel_thresh_rising_low_pass_filter_3db
/sys/.../events/in_anglvel_thresh_rising_high_pass_filter_3db
/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_en
/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_en
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_en
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_en
/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_value
/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_value
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_value
/sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_value
/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_en
/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_en
/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_index
/sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_index
/sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_index
/sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_integration_time
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_raw
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_raw
/sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_raw
/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_min
/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_max
/sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_available
/sys/bus/iio/devices/iio:deviceX/in_temp_object_calibemissivity
/sys/bus/iio/devices/iio:deviceX/in_tempX_object_calibemissivity
/sys/bus/iio/devices/iio:deviceX/in_magn_x_oversampling_ratio
/sys/bus/iio/devices/iio:deviceX/in_magn_y_oversampling_ratio
/sys/bus/iio/devices/iio:deviceX/in_magn_z_oversampling_ratio
/sys/bus/iio/devices/iio:deviceX/in_concentration_ethanol_raw
/sys/bus/iio/devices/iio:deviceX/in_concentrationX_ethanol_raw
/sys/bus/iio/devices/iio:deviceX/in_electricalconductivity_raw
/sys/bus/iio/devices/iio:deviceX/in_count_count_direction_available
/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm1_input
/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm1_input
/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm2p5_input
/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm2p5_input
/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm4_input
/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm4_input
/sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm10_input
/sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm10_input
/sys/bus/iio/devices/iio:deviceX/events/in_illuminance_period_available
/sys/bus/iio/devices/iio:deviceX/in_filter_notch_center_frequency
/sys/bus/iio/devices/iio:deviceX/in_temp_object_calibambient
/sys/bus/iio/devices/iio:deviceX/in_tempX_object_calibambient
/sys/bus/iio/devices/iio:deviceX/in_illuminance_hysteresis_relative
/sys/bus/iio/devices/iio:deviceX/in_intensity_hysteresis_relative
/sys/bus/iio/devices/iio:deviceX/calibration_forced_value_available
/sys/bus/iio/devices/iio:deviceX/in_voltageX_sampling_frequency
/sys/bus/iio/devices/iio:deviceX/in_powerY_sampling_frequency
/sys/bus/iio/devices/iio:deviceX/in_currentZ_sampling_frequency
/sys/.../events/in_accel_gesture_tap_reset_timeout_available
/sys/.../events/in_accel_gesture_doubletap_tap2_min_delay_available
/sys/.../events/in_accel_gesture_tap_maxtomin_time_available
/sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_filter_mode_available
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_either_label
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_rising_label
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_falling_label
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_rising_label
/sys/bus/iio/devices/iio:deviceX/events/in_anglvelY_mag_rising_label
/sys/bus/iio/devices/iio:deviceX/events/in_anglY_thresh_rising_label
/sys/bus/iio/devices/iio:deviceX/events/in_phaseY_mag_rising_label
File testing/sysfs-bus-iio-accel-adxl372¶
Has the following ABI:
File testing/sysfs-bus-iio-accel-bmc150¶
Has the following ABI:
File testing/sysfs-bus-iio-ad9739a¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-ad7192¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-ad7280a¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-envelope-detector¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-hi8435¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-max11410¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-mcp3564¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-mt6360¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-pac1934¶
Has the following ABI:
File testing/sysfs-bus-iio-adc-stm32¶
Has the following ABI:
File testing/sysfs-bus-iio-bno055¶
Has the following ABI:
/sys/bus/iio/devices/iio:deviceX/in_accel_raw_range_available
/sys/bus/iio/devices/iio:deviceX/in_anglvel_raw_range_available
/sys/bus/iio/devices/iio:deviceX/in_magn_calibration_fast_enable
/sys/bus/iio/devices/iio:deviceX/in_accel_calibration_auto_status
/sys/bus/iio/devices/iio:deviceX/in_gyro_calibration_auto_status
/sys/bus/iio/devices/iio:deviceX/in_magn_calibration_auto_status
/sys/bus/iio/devices/iio:deviceX/sys_calibration_auto_status
File testing/sysfs-bus-iio-cdc-ad7746¶
Has the following ABI:
File testing/sysfs-bus-iio-chemical-sgp40¶
Has the following ABI:
File testing/sysfs-bus-iio-chemical-sunrise-co2¶
Has the following ABI:
File testing/sysfs-bus-iio-chemical-vz89x¶
Has the following ABI:
File testing/sysfs-bus-iio-cros-ec¶
Has the following ABI:
File testing/sysfs-bus-iio-dac¶
Has the following ABI:
File testing/sysfs-bus-iio-dac-ad5766¶
Has the following ABI:
File testing/sysfs-bus-iio-dac-dpot-dac¶
Has the following ABI:
File testing/sysfs-bus-iio-dac-ltc2688¶
Has the following ABI:
File testing/sysfs-bus-iio-dfsdm-adc-stm32¶
Has the following ABI:
File testing/sysfs-bus-iio-distance-srf08¶
Has the following ABI:
File testing/sysfs-bus-iio-dma-buffer¶
Has the following ABI:
File testing/sysfs-bus-iio-filter-admv8818¶
Has the following ABI:
File testing/sysfs-bus-iio-frequency-ad9523¶
Has the following ABI:
File testing/sysfs-bus-iio-frequency-adf4350¶
Has the following ABI:
File testing/sysfs-bus-iio-frequency-adf4371¶
Has the following ABI:
File testing/sysfs-bus-iio-frequency-admv1013¶
Has the following ABI:
File testing/sysfs-bus-iio-frequency-admv1014¶
Has the following ABI:
File testing/sysfs-bus-iio-gyro-bmg160¶
Has the following ABI:
File testing/sysfs-bus-iio-health-afe440x¶
Has the following ABI:
File testing/sysfs-bus-iio-humidity¶
Has the following ABI:
File testing/sysfs-bus-iio-impedance-analyzer-ad5933¶
Has the following ABI:
File testing/sysfs-bus-iio-ina2xx-adc¶
Has the following ABI:
File testing/sysfs-bus-iio-inv_icm42600¶
Has the following ABI:
File testing/sysfs-bus-iio-isl29501¶
Has the following ABI:
/sys/bus/iio/devices/iio:deviceX/in_proximity0_agc_gain_bias
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calib_phase_temp_a
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calib_phase_temp_b
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calib_phase_light_a
/sys/bus/iio/devices/iio:deviceX/in_proximity0_calib_phase_light_b
File testing/sysfs-bus-iio-light-isl29018¶
Has the following ABI:
File testing/sysfs-bus-iio-light-lm3533-als¶
Has the following ABI:
File testing/sysfs-bus-iio-light-si1133¶
Has the following ABI:
File testing/sysfs-bus-iio-light-tsl2583¶
Has the following ABI:
File testing/sysfs-bus-iio-light-tsl2772¶
Has the following ABI:
File testing/sysfs-bus-iio-magnetometer-hmc5843¶
Has the following ABI:
File testing/sysfs-bus-iio-meas-spec¶
Has the following ABI:
File testing/sysfs-bus-iio-mpu6050¶
Has the following ABI:
File testing/sysfs-bus-iio-potentiometer-mcp4531¶
Has the following ABI:
File testing/sysfs-bus-iio-proximity¶
Has the following ABI:
File testing/sysfs-bus-iio-proximity-as3935¶
Has the following ABI:
File testing/sysfs-bus-iio-resolver-ad2s1210¶
Has the following ABI:
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltage0_mag_rising_reset_max
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltage0_mag_rising_reset_max_available
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltage0_mag_rising_reset_min
/sys/bus/iio/devices/iio:deviceX/events/in_altvoltage0_mag_rising_reset_min_available
File testing/sysfs-bus-iio-sps30¶
Has the following ABI:
File testing/sysfs-bus-iio-sx9310¶
Has the following ABI:
File testing/sysfs-bus-iio-sx9324¶
Has the following ABI:
File testing/sysfs-bus-iio-thermocouple¶
Has the following ABI:
File testing/sysfs-bus-iio-timer-stm32¶
Has the following ABI:
File testing/sysfs-bus-iio-trigger-sysfs¶
Has the following ABI:
File testing/sysfs-bus-iio-vf610¶
Has the following ABI:
File testing/sysfs-bus-intel_th-devices-gth¶
Has the following ABI:
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_port
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_drop
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_null
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_flush
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_reset
/sys/bus/intel_th/devices/<intel_th_id>-gth/outputs/[0-7]_smcfreq
File testing/sysfs-bus-intel_th-devices-msc¶
Has the following ABI:
File testing/sysfs-bus-intel_th-devices-pti¶
Has the following ABI:
File testing/sysfs-bus-intel_th-output-devices¶
Has the following ABI:
File testing/sysfs-bus-mcb¶
Has the following ABI:
File testing/sysfs-bus-mdio¶
Has the following ABI:
File testing/sysfs-bus-media¶
Has the following ABI:
File testing/sysfs-bus-mei¶
Has the following ABI:
File testing/sysfs-bus-mmc¶
Has the following ABI:
File testing/sysfs-bus-most¶
Has the following ABI:
File testing/sysfs-bus-moxtet-devices¶
Has the following ABI:
File testing/sysfs-bus-nfit¶
For all of the nmem device attributes under nfit/*
, see the ‘NVDIMM Firmware
Interface Table (NFIT)’ section in the ACPI specification
(http://www.uefi.org/specifications) for more details.
Has the following ABI:
File testing/sysfs-bus-nvdimm¶
Has the following ABI:
File testing/sysfs-bus-optee-devices¶
Has the following ABI:
File testing/sysfs-bus-papr-pmem¶
Has the following ABI:
File testing/sysfs-bus-pci¶
Has the following ABI:
File testing/sysfs-bus-pci-devices-aer_stats¶
PCIe Device AER statistics
These attributes show up under all the devices that are AER capable. These statistical counters indicate the errors “as seen/reported by the device”. Note that this may mean that if an endpoint is causing problems, the AER counters may increment at its link partner (e.g. root port) because the errors may be “seen” / reported by the link partner and not the problematic endpoint itself (which may report all counters as 0 as it never saw any problems).
Has the following ABI:
File testing/sysfs-bus-pci-devices-avs¶
Has the following ABI:
File testing/sysfs-bus-pci-devices-catpt¶
Has the following ABI:
File testing/sysfs-bus-pci-devices-cciss¶
Has the following ABI:
File testing/sysfs-bus-pci-devices-pvpanic¶
Has the following ABI:
File testing/sysfs-bus-pci-drivers-ehci_hcd¶
Has the following ABI:
File testing/sysfs-bus-pci-drivers-janz-cmodio¶
Has the following ABI:
File testing/sysfs-bus-pci-drivers-xhci_hcd¶
Has the following ABI:
File testing/sysfs-bus-peci¶
Has the following ABI:
File testing/sysfs-bus-platform¶
Has the following ABI:
File testing/sysfs-bus-platform-devices-ampere-smpro¶
Has the following ABI:
/sys/bus/platform/devices/smpro-errmon.*/error_[core|mem|pcie|other]_[ce|ue]
/sys/bus/platform/devices/smpro-errmon.*/overflow_[core|mem|pcie|other]_[ce|ue]
/sys/bus/platform/devices/smpro-errmon.*/[error|warn]_[smpro|pmpro]
/sys/bus/platform/devices/smpro-errmon.*/event_[vrd_warn_fault|vrd_hot|dimm_hot|dimm_2x_refresh]
/sys/bus/platform/devices/smpro-errmon.*/event_dimm[0-15]_syndrome
File testing/sysfs-bus-platform-devices-occ-hwmon¶
Has the following ABI:
File testing/sysfs-bus-platform-drivers-amd_x3d_vcache¶
Has the following ABI:
File testing/sysfs-bus-platform-onboard-usb-dev¶
Has the following ABI:
File testing/sysfs-bus-rapidio¶
Has the following ABI:
File testing/sysfs-bus-rbd¶
Has the following ABI:
File testing/sysfs-bus-rpmsg¶
Has the following ABI:
File testing/sysfs-bus-siox¶
Has the following ABI:
File testing/sysfs-bus-soundwire-master¶
Has the following ABI:
File testing/sysfs-bus-soundwire-slave¶
Has the following ABI:
File testing/sysfs-bus-spi-devices-spi-nor¶
Has the following ABI:
File testing/sysfs-bus-surface_aggregator-tabletsw¶
Has the following ABI:
File testing/sysfs-bus-thunderbolt¶
Has the following ABI:
File testing/sysfs-bus-typec¶
Has the following ABI:
File testing/sysfs-bus-usb¶
Has the following ABI:
File testing/sysfs-bus-usb-devices-usbsevseg¶
Has the following ABI:
File testing/sysfs-bus-usb-lvstest¶
Link Layer Validation Device is a standard device for testing of Super Speed Link Layer tests. These nodes are available in sysfs only when lvs driver is bound with root hub device.
Has the following ABI:
File testing/sysfs-bus-vdpa¶
Has the following ABI:
File testing/sysfs-bus-vfio-mdev¶
Has the following ABI:
File testing/sysfs-bus-vmbus¶
Has the following ABI:
File testing/sysfs-bus-wmi¶
Has the following ABI:
File testing/sysfs-c2port¶
Has the following ABI:
File testing/sysfs-cfq-target-latency¶
Has the following ABI:
File testing/sysfs-class¶
Has the following ABI:
File testing/sysfs-class-backlight¶
Has the following ABI:
File testing/sysfs-class-backlight-driver-lm3533¶
Has the following ABI:
File testing/sysfs-class-backlight-lm3639¶
sysfs interface for Texas Instruments lm3639 backlight + flash led driver chip
Has the following ABI:
File testing/sysfs-class-bdi¶
Has the following ABI:
File testing/sysfs-class-bsr¶
Has the following ABI:
File testing/sysfs-class-chromeos¶
Has the following ABI:
File testing/sysfs-class-chromeos-driver-cros-ec-lightbar¶
Has the following ABI:
File testing/sysfs-class-chromeos-driver-cros-ec-vbc¶
Has the following ABI:
File testing/sysfs-class-cxl¶
Please note that attributes that are shared between devices are stored in the directory pointed to by the symlink device/. For example, the real path of the attribute /sys/class/cxl/afu0.0s/irqs_max is /sys/class/cxl/afu0.0s/device/irqs_max, i.e. /sys/class/cxl/afu0.0/irqs_max.
Slave contexts (eg. /sys/class/cxl/afu0.0s):
Has the following ABI:
File testing/sysfs-class-devfreq¶
Has the following ABI:
File testing/sysfs-class-devfreq-event¶
Has the following ABI:
File testing/sysfs-class-devlink¶
Has the following ABI:
File testing/sysfs-class-extcon¶
Has the following ABI:
File testing/sysfs-class-fc¶
Has the following ABI:
File testing/sysfs-class-fc_host¶
Has the following ABI:
File testing/sysfs-class-fc_remote_ports¶
Has the following ABI:
File testing/sysfs-class-firmware¶
Has the following ABI:
File testing/sysfs-class-firmware-attributes¶
Has the following ABI:
File testing/sysfs-class-fpga-bridge¶
Has the following ABI:
File testing/sysfs-class-fpga-manager¶
Has the following ABI:
File testing/sysfs-class-fpga-region¶
Has the following ABI:
File testing/sysfs-class-gnss¶
Has the following ABI:
File testing/sysfs-class-hwmon¶
Has the following ABI:
File testing/sysfs-class-intel_pmt¶
Has the following ABI:
File testing/sysfs-class-iommu¶
Has the following ABI:
File testing/sysfs-class-iommu-amd-iommu¶
Has the following ABI:
File testing/sysfs-class-iommu-intel-iommu¶
Has the following ABI:
File testing/sysfs-class-lcd¶
Has the following ABI:
File testing/sysfs-class-led¶
Has the following ABI:
File testing/sysfs-class-led-driver-aw200xx¶
Has the following ABI:
File testing/sysfs-class-led-driver-lm3533¶
Has the following ABI:
File testing/sysfs-class-led-driver-turris-omnia¶
Has the following ABI:
File testing/sysfs-class-led-flash¶
Has the following ABI:
File testing/sysfs-class-led-multicolor¶
Has the following ABI:
File testing/sysfs-class-led-trigger-netdev¶
Has the following ABI:
File testing/sysfs-class-led-trigger-oneshot¶
Has the following ABI:
File testing/sysfs-class-led-trigger-pattern¶
Has the following ABI:
File testing/sysfs-class-led-trigger-tty¶
Has the following ABI:
File testing/sysfs-class-led-trigger-usbport¶
Has the following ABI:
File testing/sysfs-class-leds-gt683r¶
Has the following ABI:
File testing/sysfs-class-mei¶
Has the following ABI:
File testing/sysfs-class-mic¶
Has the following ABI:
File testing/sysfs-class-mtd¶
Has the following ABI:
File testing/sysfs-class-mux¶
Has the following ABI:
File testing/sysfs-class-net¶
Has the following ABI:
File testing/sysfs-class-net-cdc_ncm¶
Has the following ABI:
File testing/sysfs-class-net-dsa¶
Has the following ABI:
File testing/sysfs-class-net-grcan¶
Has the following ABI:
File testing/sysfs-class-net-janz-ican3¶
Has the following ABI:
File testing/sysfs-class-net-peak_usb¶
Has the following ABI:
File testing/sysfs-class-net-phydev¶
Has the following ABI:
File testing/sysfs-class-net-qmi¶
Has the following ABI:
File testing/sysfs-class-net-queues¶
Has the following ABI:
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/hold_time
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/inflight
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/limit
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/limit_max
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/limit_min
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/stall_thrs
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/stall_cnt
/sys/class/net/<iface>/queues/tx-<queue>/byte_queue_limits/stall_max
File testing/sysfs-class-net-statistics¶
Has the following ABI:
File testing/sysfs-class-ocxl¶
Has the following ABI:
File testing/sysfs-class-pktcdvd¶
sysfs interface
The pktcdvd module (packet writing driver) creates the following files in the sysfs: (<devid> is in the format major:minor)
Has the following ABI:
File testing/sysfs-class-power¶
General Properties
Has the following ABI:
/sys/class/power_supply/<supply_name>/charge_control_limit_max
/sys/class/power_supply/<supply_name>/charge_control_start_threshold
/sys/class/power_supply/<supply_name>/charge_control_end_threshold
/sys/class/power_supply/max14577-charger/device/fast_charge_timer
/sys/class/power_supply/max77693-charger/device/fast_charge_timer
/sys/class/power_supply/max77693-charger/device/top_off_threshold_current
/sys/class/power_supply/max77693-charger/device/top_off_timer
/sys/class/power_supply/bq24257-charger/high_impedance_enable
File testing/sysfs-class-power-ltc4162l¶
Has the following ABI:
File testing/sysfs-class-power-mp2629¶
Has the following ABI:
File testing/sysfs-class-power-rt9467¶
Has the following ABI:
File testing/sysfs-class-power-rt9471¶
Has the following ABI:
File testing/sysfs-class-power-surface¶
Has the following ABI:
File testing/sysfs-class-power-twl4030¶
Has the following ABI:
File testing/sysfs-class-power-wilco¶
Has the following ABI:
File testing/sysfs-class-powercap¶
Has the following ABI:
/sys/class/powercap/<control type>/<power zone>/<child power zone>
/sys/class/powercap/.../<power zone>/constraint_X_power_limit_uw
/sys/class/powercap/.../<power zone>/constraint_X_time_window_us
/sys/class/powercap/<control type>/.../constraint_X_max_power_uw
/sys/class/powercap/<control type>/.../constraint_X_min_power_uw
/sys/class/powercap/.../<power zone>/constraint_X_max_time_window_us
/sys/class/powercap/.../<power zone>/constraint_X_min_time_window_us
File testing/sysfs-class-pwm¶
Has the following ABI:
File testing/sysfs-class-rapidio¶
Has the following ABI:
File testing/sysfs-class-rc¶
Has the following ABI:
File testing/sysfs-class-rc-nuvoton¶
Has the following ABI:
File testing/sysfs-class-regulator¶
Has the following ABI:
File testing/sysfs-class-remoteproc¶
Has the following ABI:
File testing/sysfs-class-rnbd-client¶
Has the following ABI:
File testing/sysfs-class-rnbd-server¶
Has the following ABI:
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/read_only
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/mapping_path
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/access_mode
/sys/class/rnbd-server/ctl/devices/<device_name>/sessions/<session-name>/force_close
File testing/sysfs-class-rtc¶
Has the following ABI:
File testing/sysfs-class-rtc-rtc0-device-rtc_calibration¶
Has the following ABI:
File testing/sysfs-class-rtrs-client¶
Has the following ABI:
/sys/class/rtrs-client/<session-name>/max_reconnect_attempts
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/reconnect
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/disconnect
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/remove_path
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/hca_name
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/hca_port
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/src_addr
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/dst_addr
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/cur_latency
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/stats/reset_all
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/stats/cpu_migration
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/stats/reconnects
/sys/class/rtrs-client/<session-name>/paths/<src@dst>/stats/rdma
File testing/sysfs-class-rtrs-server¶
Has the following ABI:
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/disconnect
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/hca_name
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/hca_port
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/src_addr
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/dst_addr
/sys/class/rtrs-server/<session-name>/paths/<src@dst>/stats/rdma
File testing/sysfs-class-scsi_host¶
Has the following ABI:
File testing/sysfs-class-scsi_tape¶
Has the following ABI:
File testing/sysfs-class-spi-eeprom¶
Has the following ABI:
File testing/sysfs-class-stm¶
Has the following ABI:
File testing/sysfs-class-stm_source¶
Has the following ABI:
File testing/sysfs-class-switchtec¶
switchtec - Microsemi Switchtec PCI Switch Management Endpoint
For details on this subsystem look at Linux Switchtec Support.
Has the following ABI:
File testing/sysfs-class-tee¶
Has the following ABI:
File testing/sysfs-class-thermal¶
Has the following ABI:
File testing/sysfs-class-typec¶
USB Type-C port devices (eg. /sys/class/typec/port0/)
Has the following ABI:
File testing/sysfs-class-usb_power_delivery¶
Has the following ABI:
/sys/class/usb_power_delivery/.../<capability>/<position>:fixed_supply
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/dual_role_power
/sys/class/usb_power_delivery/.../source-capabilities/1:fixed_supply/usb_suspend_supported
/sys/class/usb_power_delivery/.../sink-capabilities/1:fixed_supply/higher_capability
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/unconstrained_power
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/usb_communication_capable
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/dual_role_data
/sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/unchunked_extended_messages_supported
/sys/class/usb_power_delivery/.../<capability>/<position>:fixed_supply/voltage
/sys/class/usb_power_delivery/.../source-capabilities/<position>:fixed_supply/peak_current
/sys/class/usb_power_delivery/.../source-capabilities/<position>:fixed_supply/maximum_current
/sys/class/usb_power_delivery/.../sink-capabilities/<position>:fixed_supply/operational_current
/sys/class/usb_power_delivery/.../sink-capabilities/<position>:fixed_supply/fast_role_swap_current
/sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply
/sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply/maximum_voltage
/sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply/minimum_voltage
/sys/class/usb_power_delivery/.../source-capabilities/<position>:variable_supply/maximum_current
/sys/class/usb_power_delivery/.../sink-capabilities/<position>:variable_supply/operational_current
/sys/class/usb_power_delivery/.../<capability>/<position>:battery
/sys/class/usb_power_delivery/.../<capability>/<position>:battery/maximum_voltage
/sys/class/usb_power_delivery/.../<capability>/<position>:battery/minimum_voltage
/sys/class/usb_power_delivery/.../source-capabilities/<position>:battery/maximum_power
/sys/class/usb_power_delivery/.../sink-capabilities/<position>:battery/operational_power
/sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply
/sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/maximum_voltage
/sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/minimum_voltage
/sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/maximum_current
File testing/sysfs-class-usb_role¶
Has the following ABI:
File testing/sysfs-class-vduse¶
Has the following ABI:
File testing/sysfs-class-wakeup¶
Has the following ABI:
File testing/sysfs-class-watchdog¶
Has the following ABI:
File testing/sysfs-class-zram¶
Has the following ABI:
File testing/sysfs-dev¶
Has the following ABI:
File testing/sysfs-devices¶
Has the following ABI:
File testing/sysfs-devices-consumer¶
Has the following ABI:
File testing/sysfs-devices-coredump¶
Has the following ABI:
File testing/sysfs-devices-edac¶
Has the following ABI:
File testing/sysfs-devices-firmware_node¶
Has the following ABI:
File testing/sysfs-devices-lpss_ltr¶
Has the following ABI:
File testing/sysfs-devices-mapping¶
Has the following ABI:
File testing/sysfs-devices-memory¶
Has the following ABI:
File testing/sysfs-devices-mmc¶
Has the following ABI:
File testing/sysfs-devices-online¶
Has the following ABI:
File testing/sysfs-devices-physical_location¶
Has the following ABI:
File testing/sysfs-devices-platform-ACPI-TAD¶
ACPI Time and Alarm (TAD) device attributes.
Has the following ABI:
File testing/sysfs-devices-platform-_UDC_-gadget¶
Has the following ABI:
File testing/sysfs-devices-platform-docg3¶
Has the following ABI:
File testing/sysfs-devices-platform-dock¶
Has the following ABI:
File testing/sysfs-devices-platform-ipmi¶
Has the following ABI:
File testing/sysfs-devices-platform-kunpeng_hccs¶
Has the following ABI:
/sys/devices/platform/HISI04Bx:00/chipX/dieY/linked_full_lane
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/lane_mode
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/cur_lane_num
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/lane_mask
/sys/devices/platform/HISI04Bx:00/chipX/dieY/hccsN/crc_err_cnt
/sys/devices/platform/HISI04Bx:00/available_inc_dec_lane_types
File testing/sysfs-devices-platform-sh_mobile_lcdc_fb¶
Has the following ABI:
File testing/sysfs-devices-platform-soc-ipa¶
Has the following ABI:
File testing/sysfs-devices-platform-stratix10-rsu¶
Intel Stratix10 Remote System Update (RSU) device attributes
Has the following ABI:
File testing/sysfs-devices-platform-trackpoint¶
Has the following ABI:
File testing/sysfs-devices-power¶
Has the following ABI:
File testing/sysfs-devices-power_resources_D0¶
Has the following ABI:
File testing/sysfs-devices-power_resources_D1¶
Has the following ABI:
File testing/sysfs-devices-power_resources_D2¶
Has the following ABI:
File testing/sysfs-devices-power_resources_D3hot¶
Has the following ABI:
File testing/sysfs-devices-power_resources_wakeup¶
Has the following ABI:
File testing/sysfs-devices-power_state¶
Has the following ABI:
File testing/sysfs-devices-real_power_state¶
Has the following ABI:
File testing/sysfs-devices-removable¶
Has the following ABI:
File testing/sysfs-devices-resource_in_use¶
Has the following ABI:
File testing/sysfs-devices-soc¶
Has the following ABI:
File testing/sysfs-devices-software_node¶
Has the following ABI:
File testing/sysfs-devices-state_synced¶
Has the following ABI:
File testing/sysfs-devices-sun¶
Has the following ABI:
File testing/sysfs-devices-supplier¶
Has the following ABI:
File testing/sysfs-devices-system-cpu¶
Has the following ABI:
File testing/sysfs-devices-system-ibm-rtl¶
Has the following ABI:
File testing/sysfs-devices-system-xen_cpu¶
Has the following ABI:
File testing/sysfs-devices-vfio-dev¶
Has the following ABI:
File testing/sysfs-devices-waiting_for_supplier¶
Has the following ABI:
File testing/sysfs-devices-xenbus¶
Has the following ABI:
File testing/sysfs-driver-altera-cvp¶
Has the following ABI:
File testing/sysfs-driver-aspeed-uart-routing¶
Has the following ABI:
File testing/sysfs-driver-bd9571mwv-regulator¶
Has the following ABI:
File testing/sysfs-driver-ccp¶
Has the following ABI:
File testing/sysfs-driver-chromeos-acpi¶
Has the following ABI:
File testing/sysfs-driver-eud¶
Has the following ABI:
File testing/sysfs-driver-fsi-master-gpio¶
Has the following ABI:
File testing/sysfs-driver-ge-achc¶
Has the following ABI:
File testing/sysfs-driver-genwqe¶
Has the following ABI:
File testing/sysfs-driver-habanalabs¶
Has the following ABI:
File testing/sysfs-driver-hid¶
Has the following ABI:
File testing/sysfs-driver-hid-corsair¶
Has the following ABI:
File testing/sysfs-driver-hid-corsair-void¶
Has the following ABI:
File testing/sysfs-driver-hid-lenovo¶
Has the following ABI:
File testing/sysfs-driver-hid-logitech-hidpp¶
Has the following ABI:
File testing/sysfs-driver-hid-logitech-lg4ff¶
Has the following ABI:
File testing/sysfs-driver-hid-multitouch¶
Has the following ABI:
File testing/sysfs-driver-hid-ntrig¶
Has the following ABI:
File testing/sysfs-driver-hid-picolcd¶
Has the following ABI:
File testing/sysfs-driver-hid-prodikeys¶
Has the following ABI:
File testing/sysfs-driver-hid-roccat-kone¶
Has the following ABI:
File testing/sysfs-driver-hid-srws1¶
Has the following ABI:
File testing/sysfs-driver-hid-wiimote¶
Has the following ABI:
File testing/sysfs-driver-input-axp-pek¶
Has the following ABI:
File testing/sysfs-driver-input-cros-ec-keyb¶
Has the following ABI:
File testing/sysfs-driver-input-exc3000¶
Has the following ABI:
File testing/sysfs-driver-intc_sar¶
Has the following ABI:
File testing/sysfs-driver-intel-i915-hwmon¶
Has the following ABI:
File testing/sysfs-driver-intel-m10-bmc¶
Has the following ABI:
File testing/sysfs-driver-intel-m10-bmc-sec-update¶
Has the following ABI:
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/sr_root_entry_hash
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/pr_root_entry_hash
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/bmc_root_entry_hash
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/sr_canceled_csks
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/pr_canceled_csks
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/bmc_canceled_csks
/sys/bus/platform/drivers/intel-m10bmc-sec-update/.../security/flash_count
File testing/sysfs-driver-intel-rapid-start¶
Has the following ABI:
File testing/sysfs-driver-intel-xe-hwmon¶
Has the following ABI:
File testing/sysfs-driver-intel_sdsi¶
Has the following ABI:
File testing/sysfs-driver-jz4780-efuse¶
Has the following ABI:
File testing/sysfs-driver-panfrost-profiling¶
Has the following ABI:
File testing/sysfs-driver-panthor-profiling¶
Has the following ABI:
File testing/sysfs-driver-pciback¶
Has the following ABI:
File testing/sysfs-driver-ppi¶
Has the following ABI:
File testing/sysfs-driver-qat¶
Has the following ABI:
File testing/sysfs-driver-qat_ras¶
Has the following ABI:
File testing/sysfs-driver-qat_rl¶
Has the following ABI:
File testing/sysfs-driver-samsung-laptop¶
Has the following ABI:
File testing/sysfs-driver-spi-intel¶
Has the following ABI:
File testing/sysfs-driver-st¶
Has the following ABI:
File testing/sysfs-driver-tegra-fuse¶
Has the following ABI:
File testing/sysfs-driver-toshiba_acpi¶
Has the following ABI:
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/kbd_backlight_mode
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/kbd_backlight_timeout
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/position
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/touchpad
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/available_kbd_modes
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/kbd_type
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/usb_sleep_charge
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/sleep_functions_on_battery
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/usb_rapid_charge
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/usb_sleep_music
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/version
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/fan
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/kbd_function_keys
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/panel_power_on
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/usb_three
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS{1900,620{0,7,8}}:00/cooling_method
File testing/sysfs-driver-toshiba_haps¶
Has the following ABI:
File testing/sysfs-driver-typec-displayport¶
Has the following ABI:
File testing/sysfs-driver-uacce¶
Has the following ABI:
File testing/sysfs-driver-ucsi-ccg¶
Has the following ABI:
File testing/sysfs-driver-ufs¶
Has the following ABI:
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_type
/sys/bus/platform/devices/*.ufs/device_descriptor/device_type
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_class
/sys/bus/platform/devices/*.ufs/device_descriptor/device_class
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_sub_class
/sys/bus/platform/devices/*.ufs/device_descriptor/device_sub_class
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/protocol
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_luns
/sys/bus/platform/devices/*.ufs/device_descriptor/number_of_luns
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_wluns
/sys/bus/platform/devices/*.ufs/device_descriptor/number_of_wluns
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/boot_enable
/sys/bus/platform/devices/*.ufs/device_descriptor/boot_enable
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/descriptor_access_enable
/sys/bus/platform/devices/*.ufs/device_descriptor/descriptor_access_enable
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/initial_power_mode
/sys/bus/platform/devices/*.ufs/device_descriptor/initial_power_mode
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/high_priority_lun
/sys/bus/platform/devices/*.ufs/device_descriptor/high_priority_lun
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/secure_removal_type
/sys/bus/platform/devices/*.ufs/device_descriptor/secure_removal_type
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/support_security_lun
/sys/bus/platform/devices/*.ufs/device_descriptor/support_security_lun
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/bkops_termination_latency
/sys/bus/platform/devices/*.ufs/device_descriptor/bkops_termination_latency
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/initial_active_icc_level
/sys/bus/platform/devices/*.ufs/device_descriptor/initial_active_icc_level
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/specification_version
/sys/bus/platform/devices/*.ufs/device_descriptor/specification_version
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/manufacturing_date
/sys/bus/platform/devices/*.ufs/device_descriptor/manufacturing_date
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/manufacturer_id
/sys/bus/platform/devices/*.ufs/device_descriptor/manufacturer_id
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/rtt_capability
/sys/bus/platform/devices/*.ufs/device_descriptor/rtt_capability
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/rtc_update
/sys/bus/platform/devices/*.ufs/device_descriptor/rtc_update
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/ufs_features
/sys/bus/platform/devices/*.ufs/device_descriptor/ufs_features
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/ffu_timeout
/sys/bus/platform/devices/*.ufs/device_descriptor/ffu_timeout
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/queue_depth
/sys/bus/platform/devices/*.ufs/device_descriptor/queue_depth
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/device_version
/sys/bus/platform/devices/*.ufs/device_descriptor/device_version
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/number_of_secure_wpa
/sys/bus/platform/devices/*.ufs/device_descriptor/number_of_secure_wpa
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/psa_max_data_size
/sys/bus/platform/devices/*.ufs/device_descriptor/psa_max_data_size
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/psa_state_timeout
/sys/bus/platform/devices/*.ufs/device_descriptor/psa_state_timeout
/sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/unipro_version
/sys/bus/platform/devices/*.ufs/interconnect_descriptor/unipro_version
/sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/mphy_version
/sys/bus/platform/devices/*.ufs/interconnect_descriptor/mphy_version
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/raw_device_capacity
/sys/bus/platform/devices/*.ufs/geometry_descriptor/raw_device_capacity
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_number_of_luns
/sys/bus/platform/devices/*.ufs/geometry_descriptor/max_number_of_luns
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/segment_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/segment_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/allocation_unit_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/allocation_unit_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/min_addressable_block_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/min_addressable_block_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/optimal_read_block_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/optimal_read_block_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/optimal_write_block_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/optimal_write_block_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_in_buffer_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/max_in_buffer_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_out_buffer_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/max_out_buffer_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/rpmb_rw_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/rpmb_rw_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/dyn_capacity_resource_policy
/sys/bus/platform/devices/*.ufs/geometry_descriptor/dyn_capacity_resource_policy
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/data_ordering
/sys/bus/platform/devices/*.ufs/geometry_descriptor/data_ordering
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/max_number_of_contexts
/sys/bus/platform/devices/*.ufs/geometry_descriptor/max_number_of_contexts
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/sys_data_tag_unit_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/sys_data_tag_unit_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/sys_data_tag_resource_size
/sys/bus/platform/devices/*.ufs/geometry_descriptor/sys_data_tag_resource_size
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/secure_removal_types
/sys/bus/platform/devices/*.ufs/geometry_descriptor/secure_removal_types
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/memory_types
/sys/bus/platform/devices/*.ufs/geometry_descriptor/memory_types
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/*_memory_max_alloc_units
/sys/bus/platform/devices/*.ufs/geometry_descriptor/*_memory_max_alloc_units
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/*_memory_capacity_adjustment_factor
/sys/bus/platform/devices/*.ufs/geometry_descriptor/*_memory_capacity_adjustment_factor
/sys/bus/platform/drivers/ufshcd/*/health_descriptor/eol_info
/sys/bus/platform/drivers/ufshcd/*/health_descriptor/life_time_estimation_a
/sys/bus/platform/devices/*.ufs/health_descriptor/life_time_estimation_a
/sys/bus/platform/drivers/ufshcd/*/health_descriptor/life_time_estimation_b
/sys/bus/platform/devices/*.ufs/health_descriptor/life_time_estimation_b
/sys/bus/platform/drivers/ufshcd/*/power_descriptor/active_icc_levels_vcc*
/sys/bus/platform/devices/*.ufs/power_descriptor/active_icc_levels_vcc*
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/manufacturer_name
/sys/bus/platform/devices/*.ufs/string_descriptors/manufacturer_name
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/product_name
/sys/bus/platform/devices/*.ufs/string_descriptors/product_name
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/oem_id
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/serial_number
/sys/bus/platform/devices/*.ufs/string_descriptors/serial_number
/sys/bus/platform/drivers/ufshcd/*/string_descriptors/product_revision
/sys/bus/platform/devices/*.ufs/string_descriptors/product_revision
/sys/class/scsi_device/*/device/unit_descriptor/lun_write_protect
/sys/class/scsi_device/*/device/unit_descriptor/lun_queue_depth
/sys/class/scsi_device/*/device/unit_descriptor/psa_sensitive
/sys/class/scsi_device/*/device/unit_descriptor/lun_memory_type
/sys/class/scsi_device/*/device/unit_descriptor/data_reliability
/sys/class/scsi_device/*/device/unit_descriptor/logical_block_size
/sys/class/scsi_device/*/device/unit_descriptor/logical_block_count
/sys/class/scsi_device/*/device/unit_descriptor/erase_block_size
/sys/class/scsi_device/*/device/unit_descriptor/provisioning_type
/sys/class/scsi_device/*/device/unit_descriptor/physical_memory_resourse_count
/sys/class/scsi_device/*/device/unit_descriptor/context_capabilities
/sys/class/scsi_device/*/device/unit_descriptor/large_unit_granularity
/sys/bus/platform/drivers/ufshcd/*/flags/life_span_mode_enable
/sys/bus/platform/drivers/ufshcd/*/flags/phy_resource_removal
/sys/bus/platform/drivers/ufshcd/*/attributes/boot_lun_enabled
/sys/bus/platform/drivers/ufshcd/*/attributes/current_power_mode
/sys/bus/platform/devices/*.ufs/attributes/current_power_mode
/sys/bus/platform/drivers/ufshcd/*/attributes/active_icc_level
/sys/bus/platform/drivers/ufshcd/*/attributes/ooo_data_enabled
/sys/bus/platform/drivers/ufshcd/*/attributes/max_data_in_size
/sys/bus/platform/drivers/ufshcd/*/attributes/max_data_out_size
/sys/bus/platform/devices/*.ufs/attributes/max_data_out_size
/sys/bus/platform/drivers/ufshcd/*/attributes/reference_clock_frequency
/sys/bus/platform/devices/*.ufs/attributes/reference_clock_frequency
/sys/bus/platform/drivers/ufshcd/*/attributes/configuration_descriptor_lock
/sys/bus/platform/devices/*.ufs/attributes/configuration_descriptor_lock
/sys/bus/platform/drivers/ufshcd/*/attributes/max_number_of_rtt
/sys/bus/platform/devices/*.ufs/attributes/max_number_of_rtt
/sys/bus/platform/drivers/ufshcd/*/attributes/exception_event_control
/sys/bus/platform/devices/*.ufs/attributes/exception_event_control
/sys/bus/platform/drivers/ufshcd/*/attributes/exception_event_status
/sys/bus/platform/devices/*.ufs/attributes/exception_event_status
/sys/bus/platform/drivers/ufshcd/*/monitor/monitor_chunk_size
/sys/bus/platform/drivers/ufshcd/*/monitor/read_total_sectors
/sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_max
/sys/bus/platform/devices/*.ufs/monitor/read_req_latency_max
/sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_min
/sys/bus/platform/devices/*.ufs/monitor/read_req_latency_min
/sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_avg
/sys/bus/platform/devices/*.ufs/monitor/read_req_latency_avg
/sys/bus/platform/drivers/ufshcd/*/monitor/read_req_latency_sum
/sys/bus/platform/devices/*.ufs/monitor/read_req_latency_sum
/sys/bus/platform/drivers/ufshcd/*/monitor/write_total_sectors
/sys/bus/platform/drivers/ufshcd/*/monitor/write_nr_requests
/sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_max
/sys/bus/platform/devices/*.ufs/monitor/write_req_latency_max
/sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_min
/sys/bus/platform/devices/*.ufs/monitor/write_req_latency_min
/sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_avg
/sys/bus/platform/devices/*.ufs/monitor/write_req_latency_avg
/sys/bus/platform/drivers/ufshcd/*/monitor/write_req_latency_sum
/sys/bus/platform/devices/*.ufs/monitor/write_req_latency_sum
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_presv_us_en
/sys/bus/platform/devices/*.ufs/device_descriptor/wb_presv_us_en
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_shared_alloc_units
/sys/bus/platform/devices/*.ufs/device_descriptor/wb_shared_alloc_units
/sys/bus/platform/drivers/ufshcd/*/device_descriptor/wb_type
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_buff_cap_adj
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_buff_cap_adj
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_alloc_units
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_max_alloc_units
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_max_wb_luns
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_max_wb_luns
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_red_type
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_sup_red_type
/sys/bus/platform/drivers/ufshcd/*/geometry_descriptor/wb_sup_wb_type
/sys/bus/platform/devices/*.ufs/geometry_descriptor/wb_sup_wb_type
/sys/bus/platform/drivers/ufshcd/*/attributes/wb_flush_status
/sys/bus/platform/drivers/ufshcd/*/attributes/wb_life_time_est
/sys/class/scsi_device/*/device/unit_descriptor/wb_buf_alloc_units
/sys/bus/platform/drivers/ufshcd/*/capabilities/clock_scaling
/sys/bus/platform/drivers/ufshcd/*/capabilities/write_booster
File testing/sysfs-driver-w1_ds28e17¶
Has the following ABI:
File testing/sysfs-driver-w1_therm¶
Has the following ABI:
File testing/sysfs-driver-wacom¶
Has the following ABI:
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status0_luminance
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status1_luminance
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status_led0_select
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status_led1_select
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/buttons_luminance
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/button<n>_rawimg
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_remote/unpair_remote
/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_remote/<serial_number>/remote_mode
File testing/sysfs-driver-xdata¶
Has the following ABI:
File testing/sysfs-driver-xen-blkback¶
Has the following ABI:
File testing/sysfs-driver-xen-blkfront¶
Has the following ABI:
File testing/sysfs-driver-xilinx-tmr-manager¶
Has the following ABI:
File testing/sysfs-driver-zynqmp-fpga¶
Has the following ABI:
File testing/sysfs-firmware-acpi¶
Has the following ABI:
File testing/sysfs-firmware-dmi-entries¶
Has the following ABI:
File testing/sysfs-firmware-dmi-tables¶
Has the following ABI:
File testing/sysfs-firmware-efi¶
Has the following ABI:
File testing/sysfs-firmware-efi-esrt¶
Has the following ABI:
File testing/sysfs-firmware-efi-runtime-map¶
Has the following ABI:
File testing/sysfs-firmware-gsmi¶
Has the following ABI:
File testing/sysfs-firmware-initrd¶
Has the following ABI:
File testing/sysfs-firmware-lefi-boardinfo¶
Has the following ABI:
File testing/sysfs-firmware-log¶
Has the following ABI:
File testing/sysfs-firmware-memmap¶
Has the following ABI:
File testing/sysfs-firmware-ofw¶
Has the following ABI:
File testing/sysfs-firmware-opal-powercap¶
Has the following ABI:
File testing/sysfs-firmware-opal-psr¶
Has the following ABI:
File testing/sysfs-firmware-opal-sensor-groups¶
Has the following ABI:
File testing/sysfs-firmware-papr-energy-scale-info¶
Has the following ABI:
File testing/sysfs-firmware-qemu_fw_cfg¶
Has the following ABI:
File testing/sysfs-firmware-sgi_uv¶
Has the following ABI:
File testing/sysfs-firmware-turris-mox-rwtm¶
Has the following ABI:
File testing/sysfs-fs-erofs¶
Has the following ABI:
File testing/sysfs-fs-ext4¶
Has the following ABI:
File testing/sysfs-fs-f2fs¶
Has the following ABI:
File testing/sysfs-fs-nilfs2¶
Has the following ABI:
File testing/sysfs-fs-ubifs¶
Has the following ABI:
File testing/sysfs-fs-virtiofs¶
Has the following ABI:
File testing/sysfs-fs-xfs¶
Has the following ABI:
File testing/sysfs-hypervisor-xen¶
Has the following ABI:
File testing/sysfs-ibft¶
Has the following ABI:
File testing/sysfs-kernel-address_bits¶
Has the following ABI:
File testing/sysfs-kernel-boot_params¶
Has the following ABI:
File testing/sysfs-kernel-btf¶
Has the following ABI:
File testing/sysfs-kernel-cpu_byteorder¶
Has the following ABI:
File testing/sysfs-kernel-dmabuf-buffers¶
Has the following ABI:
File testing/sysfs-kernel-fadump¶
Has the following ABI:
File testing/sysfs-kernel-fscaps¶
Has the following ABI:
File testing/sysfs-kernel-iommu_groups¶
Has the following ABI:
File testing/sysfs-kernel-irq¶
Has the following ABI:
File testing/sysfs-kernel-livepatch¶
Has the following ABI:
File testing/sysfs-kernel-mm¶
Has the following ABI:
File testing/sysfs-kernel-mm-cma¶
Has the following ABI:
File testing/sysfs-kernel-mm-damon¶
Has the following ABI:
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/nr_contexts
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/avail_operations
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/operations
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/aggr_us
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/update_us
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/min
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/max
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/nr_targets
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/pid_target
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/nr_regions
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/start
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/end
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/nr_schemes
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/action
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/target_nid
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/apply_interval_us
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/min
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/max
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/min
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/max
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/min
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/max
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/ms
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/bytes
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/effective_bytes
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/reset_interval_ms
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/nr_goals
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_metric
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_value
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/current_value
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/sz_permil
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/nr_accesses_permil
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/age_permil
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/nr_filters
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/type
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/memcg_path
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_start
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_end
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/target_idx
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/matching
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_tried
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_tried
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_applied
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_applied
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/qt_exceeds
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/total_bytes
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/start
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/end
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/nr_accesses
/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/age
File testing/sysfs-kernel-mm-hugepages¶
Has the following ABI:
File testing/sysfs-kernel-mm-ksm¶
Has the following ABI:
File testing/sysfs-kernel-mm-memory-tiers¶
Has the following ABI:
File testing/sysfs-kernel-mm-mempolicy¶
Has the following ABI:
File testing/sysfs-kernel-mm-mempolicy-weighted-interleave¶
Has the following ABI:
File testing/sysfs-kernel-mm-numa¶
Has the following ABI:
File testing/sysfs-kernel-mm-swap¶
Has the following ABI:
File testing/sysfs-kernel-mm-transparent-hugepage¶
Has the following ABI:
File testing/sysfs-kernel-oops_count¶
Has the following ABI:
File testing/sysfs-kernel-reboot¶
Has the following ABI:
File testing/sysfs-kernel-slab¶
Has the following ABI:
File testing/sysfs-kernel-vmcoreinfo¶
Has the following ABI:
File testing/sysfs-kernel-warn_count¶
Has the following ABI:
File testing/sysfs-mce¶
Has the following ABI:
File testing/sysfs-memory-page-offline¶
Has the following ABI:
File testing/sysfs-module¶
Has the following ABI:
File testing/sysfs-nvmem-cells¶
Has the following ABI:
File testing/sysfs-ocfs2¶
Has the following ABI:
File testing/sysfs-platform-asus-laptop¶
Has the following ABI:
File testing/sysfs-platform-asus-wmi¶
Has the following ABI:
File testing/sysfs-platform-at91¶
Has the following ABI:
File testing/sysfs-platform-brcmstb-gisb-arb¶
Has the following ABI:
File testing/sysfs-platform-brcmstb-memc¶
Has the following ABI:
File testing/sysfs-platform-chipidea-usb-otg¶
Has the following ABI:
File testing/sysfs-platform-chipidea-usb2¶
Has the following ABI:
File testing/sysfs-platform-dell-laptop¶
Has the following ABI:
File testing/sysfs-platform-dell-privacy-wmi¶
Has the following ABI:
File testing/sysfs-platform-dell-smbios¶
Has the following ABI:
File testing/sysfs-platform-dell-wmi-ddv¶
Has the following ABI:
File testing/sysfs-platform-dfl-fme¶
Has the following ABI:
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_input
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_emergency
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_max_alarm
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_crit_alarm
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/temp1_max_policy
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_input
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_crit
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_max_alarm
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_crit_alarm
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_xeon_limit
/sys/bus/platform/devices/dfl-fme.0/hwmon/hwmonX/power1_fpga_limit
File testing/sysfs-platform-dfl-port¶
Has the following ABI:
File testing/sysfs-platform-dptf¶
Has the following ABI:
/sys/bus/platform/devices/INT3407:00/dptf_power/charger_type
/sys/bus/platform/devices/INT3407:00/dptf_power/adapter_rating_mw
/sys/bus/platform/devices/INT3407:00/dptf_power/max_platform_power_mw
/sys/bus/platform/devices/INT3407:00/dptf_power/platform_power_source
/sys/bus/platform/devices/INT3407:00/dptf_power/battery_steady_power
/sys/bus/platform/devices/INT3407:00/dptf_power/rest_of_platform_power_mw
/sys/bus/platform/devices/INT3407:00/dptf_power/prochot_confirm
/sys/bus/platform/devices/INT3532:00/dptf_battery/max_platform_power_mw
/sys/bus/platform/devices/INT3532:00/dptf_battery/max_steady_state_power_mw
/sys/bus/platform/devices/INT3532:00/dptf_battery/high_freq_impedance_mohm
/sys/bus/platform/devices/INT3532:00/dptf_battery/no_load_voltage_mv
/sys/bus/platform/devices/INT3532:00/dptf_battery/current_discharge_capbility_ma
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/freq_mhz_low_clock
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/freq_mhz_high_clock
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/fivr_switching_freq_mhz
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/fivr_switching_fault_status
/sys/bus/platform/devices/INTC1045:00/pch_fivr_switch_frequency/ssc_clock_info
File testing/sysfs-platform-eeepc-laptop¶
Has the following ABI:
File testing/sysfs-platform-hidma¶
Has the following ABI:
File testing/sysfs-platform-hidma-mgmt¶
Has the following ABI:
File testing/sysfs-platform-i2c-demux-pinctrl¶
Has the following ABI:
File testing/sysfs-platform-ideapad-laptop¶
Has the following ABI:
File testing/sysfs-platform-intel-ifs¶
Device instance to test mapping intel_ifs_0 -> Scan Test intel_ifs_1 -> Array BIST test
Has the following ABI:
File testing/sysfs-platform-intel-pmc¶
Has the following ABI:
File testing/sysfs-platform-intel-wmi-sbl-fw-update¶
Has the following ABI:
File testing/sysfs-platform-intel-wmi-thunderbolt¶
Has the following ABI:
File testing/sysfs-platform-kim¶
Has the following ABI:
File testing/sysfs-platform-lg-laptop¶
Has the following ABI:
File testing/sysfs-platform-mellanox-bootctl¶
Has the following ABI:
File testing/sysfs-platform-msi-laptop¶
Has the following ABI:
File testing/sysfs-platform-phy-rcar-gen3-usb2¶
Has the following ABI:
File testing/sysfs-platform-power-on-reason¶
Has the following ABI:
File testing/sysfs-platform-renesas_usb3¶
Has the following ABI:
File testing/sysfs-platform-silicom¶
Has the following ABI:
File testing/sysfs-platform-sst-atom¶
Has the following ABI:
File testing/sysfs-platform-tahvo-usb¶
Has the following ABI:
File testing/sysfs-platform-ts5500¶
Has the following ABI:
File testing/sysfs-platform-twl4030-usb¶
Has the following ABI:
File testing/sysfs-platform-usbip-vudc¶
Has the following ABI:
File testing/sysfs-platform-wilco-ec¶
Has the following ABI:
File testing/sysfs-platform_profile¶
Has the following ABI:
File testing/sysfs-power¶
Has the following ABI:
File testing/sysfs-pps¶
Has the following ABI:
File testing/sysfs-profiling¶
Has the following ABI:
File testing/sysfs-ptp¶
Has the following ABI:
File testing/sysfs-secvar¶
Has the following ABI:
File testing/sysfs-timecard¶
Has the following ABI:
File testing/sysfs-tty¶
Has the following ABI:
File testing/sysfs-uevent¶
Has the following ABI:
File testing/usb-charger-uevent¶
Has the following ABI:
File testing/usb-uevent¶
Has the following ABI: