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

Commit 7804302b authored by Anatolij Gustschin's avatar Anatolij Gustschin Committed by Dmitry Torokhov
Browse files

Input: ads7846 - allow specifying irq trigger type in platform data



On some platforms, for example with GPIO interrupts on mpc5121,
it is not possible to configure falling edge interrupts.

Specifying irq trigger type in platform data structure
allows using ads7846 driver on such platforms.

Signed-off-by: default avatarAnatolij Gustschin <agust@denx.de>
Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
parent c8f2edc5
Loading
Loading
Loading
Loading
+4 −1
Original line number Original line Diff line number Diff line
@@ -1174,7 +1174,10 @@ static int __devinit ads7846_probe(struct spi_device *spi)
		goto err_put_regulator;
		goto err_put_regulator;
	}
	}


	if (request_irq(spi->irq, ads7846_irq, IRQF_TRIGGER_FALLING,
	if (!pdata->irq_flags)
		pdata->irq_flags = IRQF_TRIGGER_FALLING;

	if (request_irq(spi->irq, ads7846_irq, pdata->irq_flags,
			spi->dev.driver->name, ts)) {
			spi->dev.driver->name, ts)) {
		dev_info(&spi->dev,
		dev_info(&spi->dev,
			"trying pin change workaround on irq %d\n", spi->irq);
			"trying pin change workaround on irq %d\n", spi->irq);
+1 −0
Original line number Original line Diff line number Diff line
@@ -54,5 +54,6 @@ struct ads7846_platform_data {
	void	(*filter_cleanup)(void *filter_data);
	void	(*filter_cleanup)(void *filter_data);
	void	(*wait_for_sync)(void);
	void	(*wait_for_sync)(void);
	bool	wakeup;
	bool	wakeup;
	unsigned long irq_flags;
};
};