Input: synaptics_i2c_rmi: Add irqflags to platform data struct to pass them to driver
authorRebecca Schultz Zavin <rebecca@android.com>
Mon, 30 Mar 2009 05:10:22 +0000 (22:10 -0700)
committerColin Cross <ccross@android.com>
Tue, 14 Jun 2011 16:08:50 +0000 (09:08 -0700)
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Signed-off-by: Arve Hjønnevåg <arve@android.com>
drivers/input/touchscreen/synaptics_i2c_rmi.c
include/linux/synaptics_i2c_rmi.h

index 65436f65a92e6a2f589ad8c32ca7aab690bc2744..5729602cbb63a474c5fa2457d37862e5c9cfb9f5 100644 (file)
@@ -266,6 +266,7 @@ static int synaptics_ts_probe(
        uint16_t max_x, max_y;
        int fuzz_x, fuzz_y, fuzz_p, fuzz_w;
        struct synaptics_i2c_rmi_platform_data *pdata;
+       unsigned long irqflags;
        int inactive_area_left;
        int inactive_area_right;
        int inactive_area_top;
@@ -345,6 +346,7 @@ static int synaptics_ts_probe(
                        pdata++;
                ts->flags = pdata->flags;
                ts->sensitivity_adjust = pdata->sensitivity_adjust;
+               irqflags = pdata->irqflags;
                inactive_area_left = pdata->inactive_left;
                inactive_area_right = pdata->inactive_right;
                inactive_area_top = pdata->inactive_top;
@@ -362,6 +364,7 @@ static int synaptics_ts_probe(
                fuzz_p = pdata->fuzz_p;
                fuzz_w = pdata->fuzz_w;
        } else {
+               irqflags = 0;
                inactive_area_left = 0;
                inactive_area_right = 0;
                inactive_area_top = 0;
@@ -513,7 +516,7 @@ static int synaptics_ts_probe(
                goto err_input_register_device_failed;
        }
        if (client->irq) {
-               ret = request_irq(client->irq, synaptics_ts_irq_handler, 0, client->name, ts);
+               ret = request_irq(client->irq, synaptics_ts_irq_handler, irqflags, client->name, ts);
                if (ret == 0) {
                        ret = i2c_smbus_write_byte_data(ts->client, 0xf1, 0x01); /* enable abs int */
                        if (ret)
index 0e40703807f4d364921b7e3e65dd6b6ed11d96ce..5539cc5207796f4f9186b137286fecfbeeeb11d4 100644 (file)
@@ -32,6 +32,7 @@ struct synaptics_i2c_rmi_platform_data {
                                /* If non-zero another array entry follows */
        int (*power)(int on);   /* Only valid in first array entry */
        uint32_t flags;
+       unsigned long irqflags;
        uint32_t inactive_left; /* 0x10000 = screen width */
        uint32_t inactive_right; /* 0x10000 = screen width */
        uint32_t inactive_top; /* 0x10000 = screen height */