Add a wakeup_protocols sysfs file which controls the new rc_dev::enabled_protocols[RC_FILTER_WAKEUP], which is the mask of protocols that are used for the wakeup filter. A new RC driver callback change_wakeup_protocol() is called to change the wakeup protocol mask. Signed-off-by: James Hogan <james.hogan@imgtec.com> Reviewed-by: Antti Seppälä <a.seppala@gmail.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
		
			
				
	
	
		
			111 lines
		
	
	
	
		
			4.2 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			111 lines
		
	
	
	
		
			4.2 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
What:		/sys/class/rc/
 | 
						|
Date:		Apr 2010
 | 
						|
KernelVersion:	2.6.35
 | 
						|
Contact:	Mauro Carvalho Chehab <m.chehab@samsung.com>
 | 
						|
Description:
 | 
						|
		The rc/ class sub-directory belongs to the Remote Controller
 | 
						|
		core and provides a sysfs interface for configuring infrared
 | 
						|
		remote controller receivers.
 | 
						|
 | 
						|
What:		/sys/class/rc/rcN/
 | 
						|
Date:		Apr 2010
 | 
						|
KernelVersion:	2.6.35
 | 
						|
Contact:	Mauro Carvalho Chehab <m.chehab@samsung.com>
 | 
						|
Description:
 | 
						|
		A /sys/class/rc/rcN directory is created for each remote
 | 
						|
		control receiver device where N is the number of the receiver.
 | 
						|
 | 
						|
What:		/sys/class/rc/rcN/protocols
 | 
						|
Date:		Jun 2010
 | 
						|
KernelVersion:	2.6.36
 | 
						|
Contact:	Mauro Carvalho Chehab <m.chehab@samsung.com>
 | 
						|
Description:
 | 
						|
		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.
 | 
						|
 | 
						|
What:		/sys/class/rc/rcN/filter
 | 
						|
Date:		Jan 2014
 | 
						|
KernelVersion:	3.15
 | 
						|
Contact:	Mauro Carvalho Chehab <m.chehab@samsung.com>
 | 
						|
Description:
 | 
						|
		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.
 | 
						|
 | 
						|
What:		/sys/class/rc/rcN/filter_mask
 | 
						|
Date:		Jan 2014
 | 
						|
KernelVersion:	3.15
 | 
						|
Contact:	Mauro Carvalho Chehab <m.chehab@samsung.com>
 | 
						|
Description:
 | 
						|
		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.
 | 
						|
 | 
						|
What:		/sys/class/rc/rcN/wakeup_protocols
 | 
						|
Date:		Feb 2014
 | 
						|
KernelVersion:	3.15
 | 
						|
Contact:	Mauro Carvalho Chehab <m.chehab@samsung.com>
 | 
						|
Description:
 | 
						|
		Reading this file returns a list of available protocols to use
 | 
						|
		for the wakeup filter, something like:
 | 
						|
		    "rc5 rc6 nec jvc [sony]"
 | 
						|
		The enabled wakeup protocol is shown in [] brackets.
 | 
						|
		Writing "+proto" will add a protocol to the list of enabled
 | 
						|
		wakeup protocols.
 | 
						|
		Writing "-proto" will remove a protocol from the list of enabled
 | 
						|
		wakeup protocols.
 | 
						|
		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.
 | 
						|
 | 
						|
What:		/sys/class/rc/rcN/wakeup_filter
 | 
						|
Date:		Jan 2014
 | 
						|
KernelVersion:	3.15
 | 
						|
Contact:	Mauro Carvalho Chehab <m.chehab@samsung.com>
 | 
						|
Description:
 | 
						|
		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.
 | 
						|
 | 
						|
What:		/sys/class/rc/rcN/wakeup_filter_mask
 | 
						|
Date:		Jan 2014
 | 
						|
KernelVersion:	3.15
 | 
						|
Contact:	Mauro Carvalho Chehab <m.chehab@samsung.com>
 | 
						|
Description:
 | 
						|
		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.
 |