]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
[PATCH] Input: ads7846: fix byteorder in the filtering logic
authorImre Deak <imre.deak@nokia.com>
Mon, 15 May 2006 09:14:41 +0000 (02:14 -0700)
committerTony Lindgren <tony@atomide.com>
Mon, 15 May 2006 09:14:41 +0000 (02:14 -0700)
The BE->CPU conversion must be done also in the filtering logic.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
drivers/input/touchscreen/ads7846.c

index 05a70b490e2bc9ececcc62879cf71e22f54183ed..cb7fda152e44103221862ef35f4dc508c7ab8c47 100644 (file)
@@ -471,7 +471,7 @@ static void ads7846_debounce(void *ads)
 
        m = &ts->msg[ts->msg_idx];
        t = list_entry(m->transfers.prev, struct spi_transfer, transfer_list);
-       val = (*(u16 *)t->rx_buf) >> 3;
+       val = (be16_to_cpu(*(__be16 *)t->rx_buf) >> 3) & 0x0fff;
        if (!ts->read_cnt || (abs(ts->last_read - val) > ts->debounce_tol)) {
                /* Repeat it, if this was the first read or the read
                 * wasn't consistent enough. */