Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d422be5f authored by Dmitry Torokhov's avatar Dmitry Torokhov
Browse files

Input: eeti_ts - expect platform code to set interrupt trigger



Instead of keying interrupt trigger off GPIO polarity, let's rely on
platform code to set it up properly for us.

Reviewed-by: default avatarDaniel Mack <daniel@zonque.org>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 0378008a
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -970,10 +970,19 @@ static struct eeti_ts_platform_data eeti_ts_pdata = {
	.irq_gpio = GPIO_TOUCH_IRQ,
};

static const struct resource raumfeld_controller_resources[] = __initconst {
	{
		.start	= PXA_GPIO_TO_IRQ(GPIO_TOUCH_IRQ),
		.end	= PXA_GPIO_TO_IRQ(GPIO_TOUCH_IRQ),
		.flags	= IORESOURCE_IRQ | IRQF_TRIGGER_HIGH,
	},
};

static struct i2c_board_info raumfeld_controller_i2c_board_info __initdata = {
	.type	= "eeti_ts",
	.addr	= 0x0a,
	.irq	= PXA_GPIO_TO_IRQ(GPIO_TOUCH_IRQ),
	.resources = raumfeld_controller_resources,
	.num_resources = ARRAY_SIZE(raumfeld_controller_resources),
	.platform_data = &eeti_ts_pdata,
};

+1 −5
Original line number Diff line number Diff line
@@ -157,7 +157,6 @@ static int eeti_ts_probe(struct i2c_client *client,
	struct eeti_ts_platform_data *pdata = dev_get_platdata(dev);
	struct eeti_ts *eeti;
	struct input_dev *input;
	unsigned int irq_flags;
	int error;

	/*
@@ -201,15 +200,12 @@ static int eeti_ts_probe(struct i2c_client *client,

	eeti->irq_active_high = pdata->irq_active_high;

	irq_flags = eeti->irq_active_high ?
		IRQF_TRIGGER_HIGH : IRQF_TRIGGER_LOW;

	i2c_set_clientdata(client, eeti);
	input_set_drvdata(input, eeti);

	error = devm_request_threaded_irq(dev, client->irq,
					  NULL, eeti_ts_isr,
					  irq_flags | IRQF_ONESHOT,
					  IRQF_ONESHOT,
					  client->name, eeti);
	if (error) {
		dev_err(dev, "Unable to request touchscreen IRQ: %d\n",