vsense: use shorter data transfers
authorGrazvydas Ignotas <notasas@gmail.com>
Wed, 28 Oct 2009 14:31:16 +0000 (16:31 +0200)
committerGrazvydas Ignotas <notasas@gmail.com>
Wed, 28 Oct 2009 22:27:47 +0000 (00:27 +0200)
The nub controller supports terminating transfer early,
so read only data we need for quicker transfers.

drivers/input/misc/vsense.c

index 6d44cdc..ca0e405 100644 (file)
@@ -45,7 +45,7 @@ static void vsense_work(struct work_struct *work)
 {
        struct vsense_drvdata *ddata;
        int ax = 0, ay = 0, rx = 0, ry = 0;
-       signed char buff[8];
+       signed char buff[4];
        int ret;
 
        ddata = container_of(work, struct vsense_drvdata, work.work);
@@ -53,8 +53,8 @@ static void vsense_work(struct work_struct *work)
        if (unlikely(gpio_get_value(ddata->irq_gpio)))
                goto dosync;
 
-       ret = i2c_master_recv(ddata->client, buff, 8);
-       if (unlikely(ret != 8)) {
+       ret = i2c_master_recv(ddata->client, buff, sizeof(buff));
+       if (unlikely(ret != sizeof(buff))) {
                dev_err(&ddata->client->dev, "read failed with %i\n", ret);
                goto dosync;
        }