3 @@ -658,6 +658,19 @@ static int hidp_add_connection(const struct input_device *idev,
4 err = write(sk, buf, sizeof(buf));
7 + if (req->vendor == 0x056a && req->product == 0x81) {
8 + unsigned char buf[3];
9 + int sk = g_io_channel_unix_get_fd(iconn->ctrl_io);
11 + buf[0] = 0x53; /* HIDP_TRANS_SET_REPORT | HIDP_DATA_RTYPE_FEATURE */
12 + buf[1] = 0x03; buf[2] = 0x00;
13 + write(sk, buf, sizeof(buf));
15 + buf[0] = 0x53; /* HIDP_TRANS_SET_REPORT | HIDP_DATA_RTYPE_FEATURE */
16 + /* 0x06 - high reporting speed, 0x05 - low speed */
17 + buf[1] = 0x05; buf[2] = 0x00;
18 + write(sk, buf, sizeof(buf));
20 err = ioctl_connadd(req);