17bae8979SJames HoganWhat: /sys/class/rc/ 27bae8979SJames HoganDate: Apr 2010 37bae8979SJames HoganKernelVersion: 2.6.35 4901b9dd5SMauro Carvalho ChehabContact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 57bae8979SJames HoganDescription: 67bae8979SJames Hogan The rc/ class sub-directory belongs to the Remote Controller 77bae8979SJames Hogan core and provides a sysfs interface for configuring infrared 87bae8979SJames Hogan remote controller receivers. 97bae8979SJames Hogan 10*fa1d8fddSMauro Carvalho ChehabWhat: /sys/class/rc/rc<N>/ 117bae8979SJames HoganDate: Apr 2010 127bae8979SJames HoganKernelVersion: 2.6.35 13901b9dd5SMauro Carvalho ChehabContact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 147bae8979SJames HoganDescription: 157bae8979SJames Hogan A /sys/class/rc/rcN directory is created for each remote 167bae8979SJames Hogan control receiver device where N is the number of the receiver. 177bae8979SJames Hogan 18*fa1d8fddSMauro Carvalho ChehabWhat: /sys/class/rc/rc<N>/protocols 197bae8979SJames HoganDate: Jun 2010 207bae8979SJames HoganKernelVersion: 2.6.36 21901b9dd5SMauro Carvalho ChehabContact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 227bae8979SJames HoganDescription: 237bae8979SJames Hogan Reading this file returns a list of available protocols, 2434433332SMauro Carvalho Chehab something like:: 2534433332SMauro Carvalho Chehab 267bae8979SJames Hogan "rc5 [rc6] nec jvc [sony]" 2734433332SMauro Carvalho Chehab 287bae8979SJames Hogan Enabled protocols are shown in [] brackets. 2934433332SMauro Carvalho Chehab 307bae8979SJames Hogan Writing "+proto" will add a protocol to the list of enabled 317bae8979SJames Hogan protocols. 3234433332SMauro Carvalho Chehab 337bae8979SJames Hogan Writing "-proto" will remove a protocol from the list of enabled 347bae8979SJames Hogan protocols. 3534433332SMauro Carvalho Chehab 367bae8979SJames Hogan Writing "proto" will enable only "proto". 3734433332SMauro Carvalho Chehab 387bae8979SJames Hogan Writing "none" will disable all protocols. 3934433332SMauro Carvalho Chehab 407bae8979SJames Hogan Write fails with EINVAL if an invalid protocol combination or 417bae8979SJames Hogan unknown protocol name is used. 4200942d1aSJames Hogan 43*fa1d8fddSMauro Carvalho ChehabWhat: /sys/class/rc/rc<N>/filter 4400942d1aSJames HoganDate: Jan 2014 4500942d1aSJames HoganKernelVersion: 3.15 46901b9dd5SMauro Carvalho ChehabContact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 4700942d1aSJames HoganDescription: 4800942d1aSJames Hogan Sets the scancode filter expected value. 4934433332SMauro Carvalho Chehab 5000942d1aSJames Hogan Use in combination with /sys/class/rc/rcN/filter_mask to set the 5100942d1aSJames Hogan expected value of the bits set in the filter mask. 5200942d1aSJames Hogan If the hardware supports it then scancodes which do not match 5300942d1aSJames Hogan the filter will be ignored. Otherwise the write will fail with 5400942d1aSJames Hogan an error. 5534433332SMauro Carvalho Chehab 5600942d1aSJames Hogan This value may be reset to 0 if the current protocol is altered. 5700942d1aSJames Hogan 58*fa1d8fddSMauro Carvalho ChehabWhat: /sys/class/rc/rc<N>/filter_mask 5900942d1aSJames HoganDate: Jan 2014 6000942d1aSJames HoganKernelVersion: 3.15 61901b9dd5SMauro Carvalho ChehabContact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 6200942d1aSJames HoganDescription: 6300942d1aSJames Hogan Sets the scancode filter mask of bits to compare. 6400942d1aSJames Hogan Use in combination with /sys/class/rc/rcN/filter to set the bits 6500942d1aSJames Hogan of the scancode which should be compared against the expected 6600942d1aSJames Hogan value. A value of 0 disables the filter to allow all valid 6700942d1aSJames Hogan scancodes to be processed. 6834433332SMauro Carvalho Chehab 6900942d1aSJames Hogan If the hardware supports it then scancodes which do not match 7000942d1aSJames Hogan the filter will be ignored. Otherwise the write will fail with 7100942d1aSJames Hogan an error. 7234433332SMauro Carvalho Chehab 7300942d1aSJames Hogan This value may be reset to 0 if the current protocol is altered. 7400942d1aSJames Hogan 75*fa1d8fddSMauro Carvalho ChehabWhat: /sys/class/rc/rc<N>/wakeup_protocols 760751d33cSSean YoungDate: Feb 2017 770751d33cSSean YoungKernelVersion: 4.11 78901b9dd5SMauro Carvalho ChehabContact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 79ab88c66dSJames HoganDescription: 80ab88c66dSJames Hogan Reading this file returns a list of available protocols to use 8134433332SMauro Carvalho Chehab for the wakeup filter, something like:: 8234433332SMauro Carvalho Chehab 830751d33cSSean Young "rc-5 nec nec-x rc-6-0 rc-6-6a-24 [rc-6-6a-32] rc-6-mce" 8434433332SMauro Carvalho Chehab 850751d33cSSean Young Note that protocol variants are listed, so "nec", "sony", 860751d33cSSean Young "rc-5", "rc-6" have their different bit length encodings 870751d33cSSean Young listed if available. 8834433332SMauro Carvalho Chehab 89ab88c66dSJames Hogan The enabled wakeup protocol is shown in [] brackets. 9034433332SMauro Carvalho Chehab 910751d33cSSean Young Only one protocol can be selected at a time. 9234433332SMauro Carvalho Chehab 93ab88c66dSJames Hogan Writing "proto" will use "proto" for wakeup events. 9434433332SMauro Carvalho Chehab 95ab88c66dSJames Hogan Writing "none" will disable wakeup. 9634433332SMauro Carvalho Chehab 97ab88c66dSJames Hogan Write fails with EINVAL if an invalid protocol combination or 98ab88c66dSJames Hogan unknown protocol name is used, or if wakeup is not supported by 99ab88c66dSJames Hogan the hardware. 100ab88c66dSJames Hogan 101*fa1d8fddSMauro Carvalho ChehabWhat: /sys/class/rc/rc<N>/wakeup_filter 10200942d1aSJames HoganDate: Jan 2014 10300942d1aSJames HoganKernelVersion: 3.15 104901b9dd5SMauro Carvalho ChehabContact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 10500942d1aSJames HoganDescription: 10600942d1aSJames Hogan Sets the scancode wakeup filter expected value. 10734433332SMauro Carvalho Chehab 10800942d1aSJames Hogan Use in combination with /sys/class/rc/rcN/wakeup_filter_mask to 10900942d1aSJames Hogan set the expected value of the bits set in the wakeup filter mask 11000942d1aSJames Hogan to trigger a system wake event. 11134433332SMauro Carvalho Chehab 11200942d1aSJames Hogan If the hardware supports it and wakeup_filter_mask is not 0 then 11300942d1aSJames Hogan scancodes which match the filter will wake the system from e.g. 11400942d1aSJames Hogan suspend to RAM or power off. 11534433332SMauro Carvalho Chehab 11600942d1aSJames Hogan Otherwise the write will fail with an error. 11734433332SMauro Carvalho Chehab 118ab88c66dSJames Hogan This value may be reset to 0 if the wakeup protocol is altered. 11900942d1aSJames Hogan 120*fa1d8fddSMauro Carvalho ChehabWhat: /sys/class/rc/rc<N>/wakeup_filter_mask 12100942d1aSJames HoganDate: Jan 2014 12200942d1aSJames HoganKernelVersion: 3.15 123901b9dd5SMauro Carvalho ChehabContact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> 12400942d1aSJames HoganDescription: 12500942d1aSJames Hogan Sets the scancode wakeup filter mask of bits to compare. 12634433332SMauro Carvalho Chehab 12700942d1aSJames Hogan Use in combination with /sys/class/rc/rcN/wakeup_filter to set 12800942d1aSJames Hogan the bits of the scancode which should be compared against the 12900942d1aSJames Hogan expected value to trigger a system wake event. 13034433332SMauro Carvalho Chehab 13100942d1aSJames Hogan If the hardware supports it and wakeup_filter_mask is not 0 then 13200942d1aSJames Hogan scancodes which match the filter will wake the system from e.g. 13300942d1aSJames Hogan suspend to RAM or power off. 13434433332SMauro Carvalho Chehab 13500942d1aSJames Hogan Otherwise the write will fail with an error. 13634433332SMauro Carvalho Chehab 137ab88c66dSJames Hogan This value may be reset to 0 if the wakeup protocol is altered. 138