summaryrefslogtreecommitdiffstats
path: root/drivers/hid/hid-thingm.c
diff options
context:
space:
mode:
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>2014-04-14 22:50:20 +0200
committerJiri Kosina <jkosina@suse.cz>2014-04-15 14:42:52 +0200
commit3121b1c44d0748f0286fd05b89a76232f40d1091 (patch)
treeb4d2dcc31491d6b2df322a0b06cfa8938951636b /drivers/hid/hid-thingm.c
parentHID: thingm: refactor blink(1) support (diff)
downloadlinux-3121b1c44d0748f0286fd05b89a76232f40d1091.tar.xz
linux-3121b1c44d0748f0286fd05b89a76232f40d1091.zip
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/hid-thingm.c')
-rw-r--r--drivers/hid/hid-thingm.c7
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 @@
/* Firmware major number of supported devices */
#define THINGM_MAJOR_MK1 '1'
+#define THINGM_MAJOR_MK2 '2'
struct thingm_fwinfo {
char major;
@@ -35,6 +36,10 @@ const struct thingm_fwinfo thingm_fwinfo[] = {
.major = THINGM_MAJOR_MK1,
.numrgb = 1,
.first = 0,
+ }, {
+ .major = THINGM_MAJOR_MK2,
+ .numrgb = 2,
+ .first = 1,
}
};
@@ -117,7 +122,7 @@ static int thingm_version(struct thingm_device *tdev)
static int thingm_write_color(struct thingm_rgb *rgb)
{
- u8 buf[REPORT_SIZE] = { REPORT_ID, 'n', 0, 0, 0, 0, 0, 0, 0 };
+ u8 buf[REPORT_SIZE] = { REPORT_ID, 'c', 0, 0, 0, 0, 0, rgb->num, 0 };
buf[2] = rgb->red.ldev.brightness;
buf[3] = rgb->green.ldev.brightness;