Commit 246835fc authored by Jason Gerecke's avatar Jason Gerecke Committed by Dmitry Torokhov

Input: wacom - add LED support for Cintiq 24HD

The Cintiq 24HD has three LEDs on the left side of the tablet and
three LEDs on the right side of the tablet. Switching to LED 0,
1, or 2 will enable the top, middle, or bottom LED for the respective
side. Switching to LED 3 turns off the LEDs on the respective side.
Signed-off-by: default avatarJason Gerecke <killertofu@gmail.com>
Reviewed-by: default avatarPing Cheng <pingc@wacom.com>
Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
parent 803296b6
...@@ -15,9 +15,9 @@ Contact: linux-input@vger.kernel.org ...@@ -15,9 +15,9 @@ Contact: linux-input@vger.kernel.org
Description: Description:
Attribute group for control of the status LEDs and the OLEDs. Attribute group for control of the status LEDs and the OLEDs.
This attribute group is only available for Intuos 4 M, L, This attribute group is only available for Intuos 4 M, L,
and XL (with LEDs and OLEDs) and Cintiq 21UX2 (LEDs only). and XL (with LEDs and OLEDs) and Cintiq 21UX2 and Cintiq 24HD
Therefore its presence implicitly signifies the presence of (LEDs only). Therefore its presence implicitly signifies the
said LEDs and OLEDs on the tablet device. presence of said LEDs and OLEDs on the tablet device.
What: /sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/status0_luminance What: /sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/status0_luminance
Date: August 2011 Date: August 2011
...@@ -41,16 +41,17 @@ Date: August 2011 ...@@ -41,16 +41,17 @@ Date: August 2011
Contact: linux-input@vger.kernel.org Contact: linux-input@vger.kernel.org
Description: Description:
Writing to this file sets which one of the four (for Intuos 4) Writing to this file sets which one of the four (for Intuos 4)
or of the right four (for Cintiq 21UX2) status LEDs is active (0..3). or of the right four (for Cintiq 21UX2 and Cintiq 24HD) status
The other three LEDs on the same side are always inactive. LEDs is active (0..3). The other three LEDs on the same side are
always inactive.
What: /sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/status_led1_select What: /sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/status_led1_select
Date: September 2011 Date: September 2011
Contact: linux-input@vger.kernel.org Contact: linux-input@vger.kernel.org
Description: Description:
Writing to this file sets which one of the left four (for Cintiq 21UX2) Writing to this file sets which one of the left four (for Cintiq 21UX2
status LEDs is active (0..3). The other three LEDs on the left are always and Cintiq 24HD) status LEDs is active (0..3). The other three LEDs on
inactive. the left are always inactive.
What: /sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/buttons_luminance What: /sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/buttons_luminance
Date: August 2011 Date: August 2011
......
...@@ -563,7 +563,8 @@ static int wacom_led_control(struct wacom *wacom) ...@@ -563,7 +563,8 @@ static int wacom_led_control(struct wacom *wacom)
if (!buf) if (!buf)
return -ENOMEM; return -ENOMEM;
if (wacom->wacom_wac.features.type == WACOM_21UX2) if (wacom->wacom_wac.features.type == WACOM_21UX2 ||
wacom->wacom_wac.features.type == WACOM_24HD)
led = (wacom->led.select[1] << 4) | 0x40; led = (wacom->led.select[1] << 4) | 0x40;
led |= wacom->led.select[0] | 0x4; led |= wacom->led.select[0] | 0x4;
...@@ -782,6 +783,7 @@ static int wacom_initialize_leds(struct wacom *wacom) ...@@ -782,6 +783,7 @@ static int wacom_initialize_leds(struct wacom *wacom)
&intuos4_led_attr_group); &intuos4_led_attr_group);
break; break;
case WACOM_24HD:
case WACOM_21UX2: case WACOM_21UX2:
wacom->led.select[0] = 0; wacom->led.select[0] = 0;
wacom->led.select[1] = 0; wacom->led.select[1] = 0;
...@@ -816,6 +818,7 @@ static void wacom_destroy_leds(struct wacom *wacom) ...@@ -816,6 +818,7 @@ static void wacom_destroy_leds(struct wacom *wacom)
&intuos4_led_attr_group); &intuos4_led_attr_group);
break; break;
case WACOM_24HD:
case WACOM_21UX2: case WACOM_21UX2:
sysfs_remove_group(&wacom->intf->dev.kobj, sysfs_remove_group(&wacom->intf->dev.kobj,
&cintiq_led_attr_group); &cintiq_led_attr_group);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment