Commit 919ed895 authored by Iiro Valkonen's avatar Iiro Valkonen Committed by Dmitry Torokhov
Browse files

Input: atmel_mxt_ts - allow board code to specify IRQ flags



Different board have different requirements/setups so let's be more
flexible.

Signed-off-by: default avatarIiro Valkonen <iiro.valkonen@atmel.com>
Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
parent 71749f5c
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@
#include <linux/gpio_keys.h>
#include <linux/input.h>
#include <linux/gpio.h>
#include <linux/interrupt.h>

#include <asm/mach/arch.h>
#include <asm/mach/map.h>
@@ -231,6 +232,7 @@ static struct mxt_platform_data qt602240_platform_data = {
	.threshold	= 0x28,
	.voltage	= 2800000,              /* 2.8V */
	.orient		= MXT_DIAGONAL,
	.irqflags	= IRQF_TRIGGER_FALLING,
};

static struct s3c2410_platform_i2c i2c2_data __initdata = {
+4 −3
Original line number Diff line number Diff line
@@ -1106,11 +1106,12 @@ static void mxt_input_close(struct input_dev *dev)
static int __devinit mxt_probe(struct i2c_client *client,
		const struct i2c_device_id *id)
{
	const struct mxt_platform_data *pdata = client->dev.platform_data;
	struct mxt_data *data;
	struct input_dev *input_dev;
	int error;

	if (!client->dev.platform_data)
	if (!pdata)
		return -EINVAL;

	data = kzalloc(sizeof(struct mxt_data), GFP_KERNEL);
@@ -1149,7 +1150,7 @@ static int __devinit mxt_probe(struct i2c_client *client,

	data->client = client;
	data->input_dev = input_dev;
	data->pdata = client->dev.platform_data;
	data->pdata = pdata;
	data->irq = client->irq;

	i2c_set_clientdata(client, data);
@@ -1159,7 +1160,7 @@ static int __devinit mxt_probe(struct i2c_client *client,
		goto err_free_object;

	error = request_threaded_irq(client->irq, NULL, mxt_interrupt,
			IRQF_TRIGGER_FALLING, client->dev.driver->name, data);
			pdata->irqflags, client->dev.driver->name, data);
	if (error) {
		dev_err(&client->dev, "Failed to register interrupt\n");
		goto err_free_object;
+1 −0
Original line number Diff line number Diff line
@@ -38,6 +38,7 @@ struct mxt_platform_data {
	unsigned int threshold;
	unsigned int voltage;
	unsigned char orient;
	unsigned long irqflags;
};

#endif /* __LINUX_ATMEL_MXT_TS_H */