1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>Remote Controller's sysfs nodes</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="LINUX MEDIA INFRASTRUCTURE API"><link rel="up" href="remote_controllers.html" title="Chapter&#160;17.&#160;Remote Controllers"><link rel="prev" href="remote_controllers.html" title="Chapter&#160;17.&#160;Remote Controllers"><link rel="next" href="Remote_controllers_tables.html" title="Remote controller tables"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Remote Controller's sysfs nodes</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="remote_controllers.html">Prev</a>&#160;</td><th width="60%" align="center">Chapter&#160;17.&#160;Remote Controllers</th><td width="20%" align="right">&#160;<a accesskey="n" href="Remote_controllers_tables.html">Next</a></td></tr></table><hr></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="remote_controllers_sysfs_nodes"></a>Remote Controller's sysfs nodes</h2></div></div></div><div class="toc"><dl class="toc"><dt><span class="section"><a href="remote_controllers_sysfs_nodes.html#sys_class_rc">/sys/class/rc/</a></span></dt><dt><span class="section"><a href="remote_controllers_sysfs_nodes.html#sys_class_rc_rcN">/sys/class/rc/rcN/</a></span></dt><dt><span class="section"><a href="remote_controllers_sysfs_nodes.html#sys_class_rc_rcN_protocols">/sys/class/rc/rcN/protocols</a></span></dt><dt><span class="section"><a href="remote_controllers_sysfs_nodes.html#sys_class_rc_rcN_filter">/sys/class/rc/rcN/filter</a></span></dt><dt><span class="section"><a href="remote_controllers_sysfs_nodes.html#sys_class_rc_rcN_filter_mask">/sys/class/rc/rcN/filter_mask</a></span></dt><dt><span class="section"><a href="remote_controllers_sysfs_nodes.html#sys_class_rc_rcN_wakeup_protocols">/sys/class/rc/rcN/wakeup_protocols</a></span></dt><dt><span class="section"><a href="remote_controllers_sysfs_nodes.html#sys_class_rc_rcN_wakeup_filter">/sys/class/rc/rcN/wakeup_filter</a></span></dt><dt><span class="section"><a href="remote_controllers_sysfs_nodes.html#sys_class_rc_rcN_wakeup_filter_mask">/sys/class/rc/rcN/wakeup_filter_mask</a></span></dt></dl></div><p>As defined at <code class="constant">Documentation/ABI/testing/sysfs-class-rc</code>, those are the sysfs nodes that control the Remote Controllers:</p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sys_class_rc"></a>/sys/class/rc/</h3></div></div></div><p>The <code class="constant">/sys/class/rc/</code> class sub-directory belongs to the Remote Controller
2core and provides a sysfs interface for configuring infrared remote controller receivers.
3</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sys_class_rc_rcN"></a>/sys/class/rc/rcN/</h3></div></div></div><p>A <code class="constant">/sys/class/rc/rcN</code> directory is created for each remote
4  control receiver device where N is the number of the receiver.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sys_class_rc_rcN_protocols"></a>/sys/class/rc/rcN/protocols</h3></div></div></div><p>Reading this file returns a list of available protocols, something like:</p><p><code class="constant">rc5 [rc6] nec jvc [sony]</code></p><p>Enabled protocols are shown in [] brackets.</p><p>Writing "+proto" will add a protocol to the list of enabled protocols.</p><p>Writing "-proto" will remove a protocol from the list of enabled protocols.</p><p>Writing "proto" will enable only "proto".</p><p>Writing "none" will disable all protocols.</p><p>Write fails with EINVAL if an invalid protocol combination or unknown protocol name is used.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sys_class_rc_rcN_filter"></a>/sys/class/rc/rcN/filter</h3></div></div></div><p>Sets the scancode filter expected value.</p><p>Use in combination with <code class="constant">/sys/class/rc/rcN/filter_mask</code> to set the
5expected value of the bits set in the filter mask.
6If the hardware supports it then scancodes which do not match
7the filter will be ignored. Otherwise the write will fail with
8an error.</p><p>This value may be reset to 0 if the current protocol is altered.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sys_class_rc_rcN_filter_mask"></a>/sys/class/rc/rcN/filter_mask</h3></div></div></div><p>Sets the scancode filter mask of bits to compare.
9Use in combination with <code class="constant">/sys/class/rc/rcN/filter</code> to set the bits
10of the scancode which should be compared against the expected
11value. A value of 0 disables the filter to allow all valid
12scancodes to be processed.</p><p>If the hardware supports it then scancodes which do not match
13the filter will be ignored. Otherwise the write will fail with
14an error.</p><p>This value may be reset to 0 if the current protocol is altered.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sys_class_rc_rcN_wakeup_protocols"></a>/sys/class/rc/rcN/wakeup_protocols</h3></div></div></div><p>Reading this file returns a list of available protocols to use for the
15wakeup filter, something like:</p><p><code class="constant">rc5 rc6 nec jvc [sony]</code></p><p>The enabled wakeup protocol is shown in [] brackets.</p><p>Writing "+proto" will add a protocol to the list of enabled wakeup
16protocols.</p><p>Writing "-proto" will remove a protocol from the list of enabled wakeup
17protocols.</p><p>Writing "proto" will use "proto" for wakeup events.</p><p>Writing "none" will disable wakeup.</p><p>Write fails with EINVAL if an invalid protocol combination or unknown
18protocol name is used, or if wakeup is not supported by the hardware.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sys_class_rc_rcN_wakeup_filter"></a>/sys/class/rc/rcN/wakeup_filter</h3></div></div></div><p>Sets the scancode wakeup filter expected value.
19Use in combination with <code class="constant">/sys/class/rc/rcN/wakeup_filter_mask</code> to
20set the expected value of the bits set in the wakeup filter mask
21to trigger a system wake event.</p><p>If the hardware supports it and wakeup_filter_mask is not 0 then
22scancodes which match the filter will wake the system from e.g.
23suspend to RAM or power off.
24Otherwise the write will fail with an error.</p><p>This value may be reset to 0 if the wakeup protocol is altered.</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="sys_class_rc_rcN_wakeup_filter_mask"></a>/sys/class/rc/rcN/wakeup_filter_mask</h3></div></div></div><p>Sets the scancode wakeup filter mask of bits to compare.
25Use in combination with <code class="constant">/sys/class/rc/rcN/wakeup_filter</code> to set
26the bits of the scancode which should be compared against the
27expected value to trigger a system wake event.</p><p>If the hardware supports it and wakeup_filter_mask is not 0 then
28scancodes which match the filter will wake the system from e.g.
29suspend to RAM or power off.
30Otherwise the write will fail with an error.</p><p>This value may be reset to 0 if the wakeup protocol is altered.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="remote_controllers.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="remote_controllers.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="Remote_controllers_tables.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&#160;17.&#160;Remote Controllers&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;Remote controller tables</td></tr></table></div></body></html>
31