cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

rc-sysfs-nodes.rst (4325B)


      1.. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later
      2
      3.. _remote_controllers_sysfs_nodes:
      4
      5*******************************
      6Remote Controller's sysfs nodes
      7*******************************
      8
      9As defined at ``Documentation/ABI/testing/sysfs-class-rc``, those are
     10the sysfs nodes that control the Remote Controllers:
     11
     12
     13.. _sys_class_rc:
     14
     15/sys/class/rc/
     16==============
     17
     18The ``/sys/class/rc/`` class sub-directory belongs to the Remote
     19Controller core and provides a sysfs interface for configuring infrared
     20remote controller receivers.
     21
     22
     23.. _sys_class_rc_rcN:
     24
     25/sys/class/rc/rcN/
     26==================
     27
     28A ``/sys/class/rc/rcN`` directory is created for each remote control
     29receiver device where N is the number of the receiver.
     30
     31
     32.. _sys_class_rc_rcN_protocols:
     33
     34/sys/class/rc/rcN/protocols
     35===========================
     36
     37Reading this file returns a list of available protocols, something like::
     38
     39	rc5 [rc6] nec jvc [sony]
     40
     41Enabled protocols are shown in [] brackets.
     42
     43Writing "+proto" will add a protocol to the list of enabled protocols.
     44
     45Writing "-proto" will remove a protocol from the list of enabled
     46protocols.
     47
     48Writing "proto" will enable only "proto".
     49
     50Writing "none" will disable all protocols.
     51
     52Write fails with ``EINVAL`` if an invalid protocol combination or unknown
     53protocol name is used.
     54
     55
     56.. _sys_class_rc_rcN_filter:
     57
     58/sys/class/rc/rcN/filter
     59========================
     60
     61Sets the scancode filter expected value.
     62
     63Use in combination with ``/sys/class/rc/rcN/filter_mask`` to set the
     64expected value of the bits set in the filter mask. If the hardware
     65supports it then scancodes which do not match the filter will be
     66ignored. Otherwise the write will fail with an error.
     67
     68This value may be reset to 0 if the current protocol is altered.
     69
     70
     71.. _sys_class_rc_rcN_filter_mask:
     72
     73/sys/class/rc/rcN/filter_mask
     74=============================
     75
     76Sets the scancode filter mask of bits to compare. Use in combination
     77with ``/sys/class/rc/rcN/filter`` to set the bits of the scancode which
     78should be compared against the expected value. A value of 0 disables the
     79filter to allow all valid scancodes to be processed.
     80
     81If the hardware supports it then scancodes which do not match the filter
     82will be ignored. Otherwise the write will fail with an error.
     83
     84This value may be reset to 0 if the current protocol is altered.
     85
     86
     87.. _sys_class_rc_rcN_wakeup_protocols:
     88
     89/sys/class/rc/rcN/wakeup_protocols
     90==================================
     91
     92Reading this file returns a list of available protocols to use for the
     93wakeup filter, something like::
     94
     95	rc-5 nec nec-x rc-6-0 rc-6-6a-24 [rc-6-6a-32] rc-6-mce
     96
     97Note that protocol variants are listed, so ``nec``, ``sony``, ``rc-5``, ``rc-6``
     98have their different bit length encodings listed if available.
     99
    100Note that all protocol variants are listed.
    101
    102The enabled wakeup protocol is shown in [] brackets.
    103
    104Only one protocol can be selected at a time.
    105
    106Writing "proto" will use "proto" for wakeup events.
    107
    108Writing "none" will disable wakeup.
    109
    110Write fails with ``EINVAL`` if an invalid protocol combination or unknown
    111protocol name is used, or if wakeup is not supported by the hardware.
    112
    113
    114.. _sys_class_rc_rcN_wakeup_filter:
    115
    116/sys/class/rc/rcN/wakeup_filter
    117===============================
    118
    119Sets the scancode wakeup filter expected value. Use in combination with
    120``/sys/class/rc/rcN/wakeup_filter_mask`` to set the expected value of
    121the bits set in the wakeup filter mask to trigger a system wake event.
    122
    123If the hardware supports it and wakeup_filter_mask is not 0 then
    124scancodes which match the filter will wake the system from e.g. suspend
    125to RAM or power off. Otherwise the write will fail with an error.
    126
    127This value may be reset to 0 if the wakeup protocol is altered.
    128
    129
    130.. _sys_class_rc_rcN_wakeup_filter_mask:
    131
    132/sys/class/rc/rcN/wakeup_filter_mask
    133====================================
    134
    135Sets the scancode wakeup filter mask of bits to compare. Use in
    136combination with ``/sys/class/rc/rcN/wakeup_filter`` to set the bits of
    137the scancode which should be compared against the expected value to
    138trigger a system wake event.
    139
    140If the hardware supports it and wakeup_filter_mask is not 0 then
    141scancodes which match the filter will wake the system from e.g. suspend
    142to RAM or power off. Otherwise the write will fail with an error.
    143
    144This value may be reset to 0 if the wakeup protocol is altered.