https://github.com/torvalds/linux
Revision c284979affcc6870a9a6545fc4b1adb3816dfcbf authored by Benjamin Tissoires on 31 January 2013, 16:50:02 UTC, committed by Jiri Kosina on 31 January 2013, 16:57:53 UTC
i2c_hid_output_raw_report is used by hidraw to forward set_report requests.
The current implementation of i2c_hid_set_report needs to take the
report_id as an argument. The report_id is stored in the first byte
of the buffer in argument of i2c_hid_output_raw_report.

Not removing the report_id from the given buffer adds this byte 2 times
in the command, leading to a non working command.

Reported-by: Andrew Duggan <aduggan@synaptics.com>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
1 parent 320cde1
Raw File
Tip revision: c284979affcc6870a9a6545fc4b1adb3816dfcbf authored by Benjamin Tissoires on 31 January 2013, 16:50:02 UTC
HID: i2c-hid: fix i2c_hid_output_raw_report
Tip revision: c284979
video-output.txt

		Video Output Switcher Control
		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		2006 luming.yu@intel.com

The output sysfs class driver provides an abstract video output layer that
can be used to hook platform specific methods to enable/disable video output
device through common sysfs interface. For example, on my IBM ThinkPad T42
laptop, The ACPI video driver registered its output devices and read/write
method for 'state' with output sysfs class. The user interface under sysfs is:

linux:/sys/class/video_output # tree .
.
|-- CRT0
|   |-- device -> ../../../devices/pci0000:00/0000:00:01.0
|   |-- state
|   |-- subsystem -> ../../../class/video_output
|   `-- uevent
|-- DVI0
|   |-- device -> ../../../devices/pci0000:00/0000:00:01.0
|   |-- state
|   |-- subsystem -> ../../../class/video_output
|   `-- uevent
|-- LCD0
|   |-- device -> ../../../devices/pci0000:00/0000:00:01.0
|   |-- state
|   |-- subsystem -> ../../../class/video_output
|   `-- uevent
`-- TV0
   |-- device -> ../../../devices/pci0000:00/0000:00:01.0
   |-- state
   |-- subsystem -> ../../../class/video_output
   `-- uevent

back to top