Wsphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget9/translations/zh_CN/userspace-api/media/rc/rc-sysfs-nodesmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget9/translations/zh_TW/userspace-api/media/rc/rc-sysfs-nodesmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget9/translations/it_IT/userspace-api/media/rc/rc-sysfs-nodesmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget9/translations/ja_JP/userspace-api/media/rc/rc-sysfs-nodesmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget9/translations/ko_KR/userspace-api/media/rc/rc-sysfs-nodesmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget9/translations/sp_SP/userspace-api/media/rc/rc-sysfs-nodesmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(hCSPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-laterh]hCSPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhhS/var/lib/git/docbuild/linux/Documentation/userspace-api/media/rc/rc-sysfs-nodes.rsthKubhtarget)}(h#.. _remote_controllers_sysfs_nodes:h]h}(h]h ]h"]h$]h&]refidremote-controllers-sysfs-nodesuh1hhKhhhhhhubhsection)}(hhh](htitle)}(hRemote Controller's sysfs nodesh]h!Remote Controller’s sysfs nodes}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubh paragraph)}(hvAs defined at Documentation/ABI/testing/sysfs-class-rc, those are the sysfs nodes that control the Remote Controllers:h]hvAs defined at Documentation/ABI/testing/sysfs-class-rc, those are the sysfs nodes that control the Remote Controllers:}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(h.. _sys_class_rc:h]h}(h]h ]h"]h$]h&]h sys-class-rcuh1hhK hhhhhhubh)}(hhh](h)}(h/sys/class/rc/h]h/sys/class/rc/}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubh)}(hThe ``/sys/class/rc/`` class sub-directory belongs to the Remote Controller core and provides a sysfs interface for configuring infrared remote controller receivers.h](hThe }(hjhhhNhNubhliteral)}(h``/sys/class/rc/``h]h/sys/class/rc/}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j hjubh class sub-directory belongs to the Remote Controller core and provides a sysfs interface for configuring infrared remote controller receivers.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h.. _sys_class_rc_rcN:h]h}(h]h ]h"]h$]h&]hsys-class-rc-rcnuh1hhKhhhhhhubeh}(h](hid1eh ]h"](/sys/class/rc/ sys_class_rceh$]h&]uh1hhhhhhhhKexpect_referenced_by_name}j6hsexpect_referenced_by_id}hhsubh)}(hhh](h)}(h/sys/class/rc/rcN/h]h/sys/class/rc/rcN/}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj=hhhhhKubh)}(h{A ``/sys/class/rc/rcN`` directory is created for each remote control receiver device where N is the number of the receiver.h](hA }(hjNhhhNhNubj )}(h``/sys/class/rc/rcN``h]h/sys/class/rc/rcN}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1j hjNubhd directory is created for each remote control receiver device where N is the number of the receiver.}(hjNhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj=hhubh)}(h.. _sys_class_rc_rcN_protocols:h]h}(h]h ]h"]h$]h&]hsys-class-rc-rcn-protocolsuh1hhK hj=hhhhubeh}(h](j/id2eh ]h"](/sys/class/rc/rcn/sys_class_rc_rcneh$]h&]uh1hhhhhhhhKj9}jj%sj;}j/j%subh)}(hhh](h)}(h/sys/class/rc/rcN/protocolsh]h/sys/class/rc/rcN/protocols}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhK#ubh)}(hIReading this file returns a list of available protocols, something like::h]hHReading this file returns a list of available protocols, something like:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK%hjhhubh literal_block)}(hrc5 [rc6] nec jvc [sony]h]hrc5 [rc6] nec jvc [sony]}hjsbah}(h]h ]h"]h$]h&]hhuh1jhhhK'hjhhubh)}(h+Enabled protocols are shown in [] brackets.h]h+Enabled protocols are shown in [] brackets.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK)hjhhubh)}(hFWriting "+proto" will add a protocol to the list of enabled protocols.h]hJWriting “+proto” will add a protocol to the list of enabled protocols.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK+hjhhubh)}(hKWriting "-proto" will remove a protocol from the list of enabled protocols.h]hOWriting “-proto” will remove a protocol from the list of enabled protocols.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK-hjhhubh)}(h)Writing "proto" will enable only "proto".h]h1Writing “proto” will enable only “proto”.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK0hjhhubh)}(h*Writing "none" will disable all protocols.h]h.Writing “none” will disable all protocols.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK2hjhhubh)}(h`Write fails with ``EINVAL`` if an invalid protocol combination or unknown protocol name is used.h](hWrite fails with }(hjhhhNhNubj )}(h ``EINVAL``h]hEINVAL}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j hjubhE if an invalid protocol combination or unknown protocol name is used.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK4hjhhubh)}(h.. _sys_class_rc_rcN_filter:h]h}(h]h ]h"]h$]h&]hsys-class-rc-rcn-filteruh1hhK8hjhhhhubeh}(h](jxid3eh ]h"](/sys/class/rc/rcn/protocolssys_class_rc_rcn_protocolseh$]h&]uh1hhhhhhhhK#j9}j*jnsj;}jxjnsubh)}(hhh](h)}(h/sys/class/rc/rcN/filterh]h/sys/class/rc/rcN/filter}(hj2hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj/hhhhhK;ubh)}(h(Sets the scancode filter expected value.h]h(Sets the scancode filter expected value.}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK=hj/hhubh)}(hUse 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.h](hUse in combination with }(hjNhhhNhNubj )}(h!``/sys/class/rc/rcN/filter_mask``h]h/sys/class/rc/rcN/filter_mask}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1j hjNubh 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.}(hjNhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK?hj/hhubh)}(h@This value may be reset to 0 if the current protocol is altered.h]h@This value may be reset to 0 if the current protocol is altered.}(hjnhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKDhj/hhubh)}(h!.. _sys_class_rc_rcN_filter_mask:h]h}(h]h ]h"]h$]h&]hsys-class-rc-rcn-filter-maskuh1hhKGhj/hhhhubeh}(h](j#id4eh ]h"](/sys/class/rc/rcn/filtersys_class_rc_rcn_filtereh$]h&]uh1hhhhhhhhK;j9}jjsj;}j#jsubh)}(hhh](h)}(h/sys/class/rc/rcN/filter_maskh]h/sys/class/rc/rcN/filter_mask}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKJubh)}(hX 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.h](hJSets the scancode filter mask of bits to compare. Use in combination with }(hjhhhNhNubj )}(h``/sys/class/rc/rcN/filter``h]h/sys/class/rc/rcN/filter}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j hjubh 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.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKLhjhhubh)}(hIf the hardware supports it then scancodes which do not match the filter will be ignored. Otherwise the write will fail with an error.h]hIf the hardware supports it then scancodes which do not match the filter will be ignored. Otherwise the write will fail with an error.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKQhjhhubh)}(h@This value may be reset to 0 if the current protocol is altered.h]h@This value may be reset to 0 if the current protocol is altered.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKThjhhubh)}(h&.. _sys_class_rc_rcN_wakeup_protocols:h]h}(h]h ]h"]h$]h&]h!sys-class-rc-rcn-wakeup-protocolsuh1hhKWhjhhhhubeh}(h](jid5eh ]h"](/sys/class/rc/rcn/filter_masksys_class_rc_rcn_filter_maskeh$]h&]uh1hhhhhhhhKJj9}jj|sj;}jj|subh)}(hhh](h)}(h"/sys/class/rc/rcN/wakeup_protocolsh]h"/sys/class/rc/rcN/wakeup_protocols}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKZubh)}(hfReading this file returns a list of available protocols to use for the wakeup filter, something like::h]heReading this file returns a list of available protocols to use for the wakeup filter, something like:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK\hjhhubj)}(h6rc-5 nec nec-x rc-6-0 rc-6-6a-24 [rc-6-6a-32] rc-6-mceh]h6rc-5 nec nec-x rc-6-0 rc-6-6a-24 [rc-6-6a-32] rc-6-mce}hjsbah}(h]h ]h"]h$]h&]hhuh1jhhhK_hjhhubh)}(hNote that protocol variants are listed, so ``nec``, ``sony``, ``rc-5``, ``rc-6`` have their different bit length encodings listed if available.h](h+Note that protocol variants are listed, so }(hj"hhhNhNubj )}(h``nec``h]hnec}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1j hj"ubh, }(hj"hhhNhNubj )}(h``sony``h]hsony}(hj<hhhNhNubah}(h]h ]h"]h$]h&]uh1j hj"ubh, }hj"sbj )}(h``rc-5``h]hrc-5}(hjNhhhNhNubah}(h]h ]h"]h$]h&]uh1j hj"ubh, }hj"sbj )}(h``rc-6``h]hrc-6}(hj`hhhNhNubah}(h]h ]h"]h$]h&]uh1j hj"ubh? have their different bit length encodings listed if available.}(hj"hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKahjhhubh)}(h+Note that all protocol variants are listed.h]h+Note that all protocol variants are listed.}(hjxhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKdhjhhubh)}(h4The enabled wakeup protocol is shown in [] brackets.h]h4The enabled wakeup protocol is shown in [] brackets.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKfhjhhubh)}(h,Only one protocol can be selected at a time.h]h,Only one protocol can be selected at a time.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhjhhubh)}(h3Writing "proto" will use "proto" for wakeup events.h]h;Writing “proto” will use “proto” for wakeup events.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKjhjhhubh)}(h#Writing "none" will disable wakeup.h]h'Writing “none” will disable wakeup.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKlhjhhubh)}(hWrite fails with ``EINVAL`` if an invalid protocol combination or unknown protocol name is used, or if wakeup is not supported by the hardware.h](hWrite fails with }(hjhhhNhNubj )}(h ``EINVAL``h]hEINVAL}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j hjubht if an invalid protocol combination or unknown protocol name is used, or if wakeup is not supported by the hardware.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKnhjhhubh)}(h#.. _sys_class_rc_rcN_wakeup_filter:h]h}(h]h ]h"]h$]h&]hsys-class-rc-rcn-wakeup-filteruh1hhKrhjhhhhubeh}(h](jid6eh ]h"]("/sys/class/rc/rcn/wakeup_protocols!sys_class_rc_rcn_wakeup_protocolseh$]h&]uh1hhhhhhhhKZj9}jjsj;}jjsubh)}(hhh](h)}(h/sys/class/rc/rcN/wakeup_filterh]h/sys/class/rc/rcN/wakeup_filter}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKuubh)}(hSets 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.h](hHSets the scancode wakeup filter expected value. Use in combination with }(hjhhhNhNubj )}(h(``/sys/class/rc/rcN/wakeup_filter_mask``h]h$/sys/class/rc/rcN/wakeup_filter_mask}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j hjubhd to set the expected value of the bits set in the wakeup filter mask to trigger a system wake event.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKwhjhhubh)}(hIf 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.h]hIf 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.}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK{hjhhubh)}(h?This value may be reset to 0 if the wakeup protocol is altered.h]h?This value may be reset to 0 if the wakeup protocol is altered.}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubh)}(h(.. _sys_class_rc_rcN_wakeup_filter_mask:h]h}(h]h ]h"]h$]h&]h#sys-class-rc-rcn-wakeup-filter-maskuh1hhKhjhhhhubeh}(h](jid7eh ]h"](/sys/class/rc/rcn/wakeup_filtersys_class_rc_rcn_wakeup_filtereh$]h&]uh1hhhhhhhhKuj9}jRjsj;}jjsubh)}(hhh](h)}(h$/sys/class/rc/rcN/wakeup_filter_maskh]h$/sys/class/rc/rcN/wakeup_filter_mask}(hjZhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjWhhhhhKubh)}(hSets 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.h](hQSets the scancode wakeup filter mask of bits to compare. Use in combination with }(hjhhhhNhNubj )}(h#``/sys/class/rc/rcN/wakeup_filter``h]h/sys/class/rc/rcN/wakeup_filter}(hjphhhNhNubah}(h]h ]h"]h$]h&]uh1j hjhubht to set the bits of the scancode which should be compared against the expected value to trigger a system wake event.}(hjhhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjWhhubh)}(hIf 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.h]hIf 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.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjWhhubh)}(h?This value may be reset to 0 if the wakeup protocol is altered.h]h?This value may be reset to 0 if the wakeup protocol is altered.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjWhhubeh}(h](jKid8eh ]h"]($/sys/class/rc/rcn/wakeup_filter_mask#sys_class_rc_rcn_wakeup_filter_maskeh$]h&]uh1hhhhhhhhKj9}jjAsj;}jKjAsubeh}(h](remote-controller-s-sysfs-nodesheh ]h"](remote controller's sysfs nodesremote_controllers_sysfs_nodeseh$]h&]uh1hhhhhhhhKj9}jhsj;}hhsubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjerror_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}(h]hah]haj/]j%ajx]jnaj#]jaj]j|aj]jaj]jajK]jAaunameids}(jhjjj6hj5j2jj/j~j{j*jxj)j&jj#jjjjjjjjjjjRjjQjNjjKjju nametypes}(jjj6j5jj~j*j)jjjjjjjRjQjjuh}(hhjhhhj2hj/j=j{j=jxjj&jj#j/jj/jjjjjjjjjjjNjjKjWjjWu footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}jKsRparse_messages]transform_messages](hsystem_message)}(hhh]h)}(hhh]hDHyperlink target "remote-controllers-sysfs-nodes" is not referenced.}hjOsbah}(h]h ]h"]h$]h&]uh1hhjLubah}(h]h ]h"]h$]h&]levelKtypeINFOsourcehlineKuh1jJubjK)}(hhh]h)}(hhh]h2Hyperlink target "sys-class-rc" is not referenced.}hjjsbah}(h]h ]h"]h$]h&]uh1hhjgubah}(h]h ]h"]h$]h&]levelKtypejdsourcehlineK uh1jJubjK)}(hhh]h)}(hhh]h6Hyperlink target "sys-class-rc-rcn" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejdsourcehlineKuh1jJubjK)}(hhh]h)}(hhh]h@Hyperlink target "sys-class-rc-rcn-protocols" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejdsourcehlineK uh1jJubjK)}(hhh]h)}(hhh]h=Hyperlink target "sys-class-rc-rcn-filter" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejdsourcehlineK8uh1jJubjK)}(hhh]h)}(hhh]hBHyperlink target "sys-class-rc-rcn-filter-mask" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejdsourcehlineKGuh1jJubjK)}(hhh]h)}(hhh]hGHyperlink target "sys-class-rc-rcn-wakeup-protocols" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejdsourcehlineKWuh1jJubjK)}(hhh]h)}(hhh]hDHyperlink target "sys-class-rc-rcn-wakeup-filter" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejdsourcehlineKruh1jJubjK)}(hhh]h)}(hhh]hIHyperlink target "sys-class-rc-rcn-wakeup-filter-mask" is not referenced.}hj sbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejdsourcehlineKuh1jJube transformerN include_log] decorationNhhub.