diff options
author | Vivien Didelot <vivien.didelot@savoirfairelinux.com> | 2014-04-14 16:50:20 -0400 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2014-04-15 08:42:52 -0400 |
commit | 3121b1c44d0748f0286fd05b89a76232f40d1091 (patch) | |
tree | b4d2dcc31491d6b2df322a0b06cfa8938951636b /drivers/hid | |
parent | f70ed8a6f7cd9c55cc16287c584cb26efb53cbd7 (diff) |
HID: thingm: add support for blink(1) mk2
The blink(1) mk2 is a new version of the blink(1) USB RGB LED. The new
generation has 2 individually-controllable RGB chips.
This patch adds support for this device to the thingm driver, which
registers 3 new standard LED class instances for the second RGB chip.
Note that the 'n' (set) command does not support setting a color for a
single RGB chip, so it was changed to 'c' (fade) with a timeout of 0.
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid')
-rw-r--r-- | drivers/hid/hid-thingm.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/hid/hid-thingm.c b/drivers/hid/hid-thingm.c index 0af0eb446636..31de890d14cf 100644 --- a/drivers/hid/hid-thingm.c +++ b/drivers/hid/hid-thingm.c | |||
@@ -23,6 +23,7 @@ | |||
23 | 23 | ||
24 | /* Firmware major number of supported devices */ | 24 | /* Firmware major number of supported devices */ |
25 | #define THINGM_MAJOR_MK1 '1' | 25 | #define THINGM_MAJOR_MK1 '1' |
26 | #define THINGM_MAJOR_MK2 '2' | ||
26 | 27 | ||
27 | struct thingm_fwinfo { | 28 | struct thingm_fwinfo { |
28 | char major; | 29 | char major; |
@@ -35,6 +36,10 @@ const struct thingm_fwinfo thingm_fwinfo[] = { | |||
35 | .major = THINGM_MAJOR_MK1, | 36 | .major = THINGM_MAJOR_MK1, |
36 | .numrgb = 1, | 37 | .numrgb = 1, |
37 | .first = 0, | 38 | .first = 0, |
39 | }, { | ||
40 | .major = THINGM_MAJOR_MK2, | ||
41 | .numrgb = 2, | ||
42 | .first = 1, | ||
38 | } | 43 | } |
39 | }; | 44 | }; |
40 | 45 | ||
@@ -117,7 +122,7 @@ static int thingm_version(struct thingm_device *tdev) | |||
117 | 122 | ||
118 | static int thingm_write_color(struct thingm_rgb *rgb) | 123 | static int thingm_write_color(struct thingm_rgb *rgb) |
119 | { | 124 | { |
120 | u8 buf[REPORT_SIZE] = { REPORT_ID, 'n', 0, 0, 0, 0, 0, 0, 0 }; | 125 | u8 buf[REPORT_SIZE] = { REPORT_ID, 'c', 0, 0, 0, 0, 0, rgb->num, 0 }; |
121 | 126 | ||
122 | buf[2] = rgb->red.ldev.brightness; | 127 | buf[2] = rgb->red.ldev.brightness; |
123 | buf[3] = rgb->green.ldev.brightness; | 128 | buf[3] = rgb->green.ldev.brightness; |