Re: [PATCH] Wacom Intuos4 LED and OLED control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Dmitry.

It has been quite some time since our last conversation and I didn't
look in my inbox so frequent.

Thanks for reworking the patch to meet the requirements. The patch
appears to work for the status led, but not for the button images. I
tracked down the problem to a wrong command being used in
wacom_led_putimage. Please see inline. After I changed this line, the
kernel driver was also able to put images. I'd be happy to see the
patch in 3.2, but I'm not in a hurry.

Eduard

2011/8/17 Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>:
> +static int wacom_led_putimage(struct wacom *wacom, int button_id, const void *img)
> +{
> +       unsigned char *buf;
> +       int i, retval;
> +
> +       buf = kzalloc(259, GFP_KERNEL);
> +       if (!buf)
> +               return -ENOMEM;
> +
> +       /* Send 'start' command */
> +       buf[0] = WAC_CMD_ICON_START;
> +       buf[1] = 1;
> +       retval = wacom_set_report(wacom->intf, 0x03, WAC_CMD_ICON_START,
> +                                 buf, 2, WAC_CMD_RETRIES);
> +       if (retval < 0)
> +               goto out;
> +
> +       buf[0] = WAC_CMD_ICON_XFER;
> +       buf[1] = button_id & 0x07;
> +       for (i = 0; i < 4; i++) {
> +               buf[2] = i;
> +               memcpy(buf + 3, img + i * 256, 256);
> +
> +               retval = wacom_set_report(wacom->intf, 0x03, WAC_CMD_ICON_START,
> +                                         buf, 259, WAC_CMD_RETRIES);

Here is the error: WAC_CMD_ICON_START instead of the correct
WAC_CMD_ICON_XFER was used. Don't ask my why the command has to be
specified two times.

> +               if (retval < 0)
> +                       break;
> +       }
> +
> +       /* Send 'stop' */
> +       buf[0] = WAC_CMD_ICON_START;
> +       buf[1] = 0;
> +       wacom_set_report(wacom->intf, 0x03, WAC_CMD_ICON_START,
> +                        buf, 2, WAC_CMD_RETRIES);
> +
> +out:
> +       kfree(buf);
> +       return retval;
> +}
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux