Commit bb628a6e authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

input: touchscreen: mainstone: fix pxa2xx+pxa3xx configuration



There are two different ways of flushing the ac97 queue
in this driver, selected by a compile time option.

Change this to a runtime selection to make it work when both
are enabled.

Acked-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
Acked-by: default avatarRobert Jarzmik <robert.jarzmik@free.fr>
Cc: linux-input@vger.kernel.org
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parent f0b66b60
Loading
Loading
Loading
Loading
+7 −12
Original line number Diff line number Diff line
@@ -98,25 +98,20 @@ MODULE_PARM_DESC(ac97_touch_slot, "Touch screen data slot AC97 number");


/* flush AC97 slot 5 FIFO on pxa machines */
#ifdef CONFIG_PXA27x
static void wm97xx_acc_pen_up(struct wm97xx *wm)
{
	schedule_timeout_uninterruptible(1);

	while (MISR & (1 << 2))
		MODR;
}
#else
static void wm97xx_acc_pen_up(struct wm97xx *wm)
{
	unsigned int count;

	schedule_timeout_uninterruptible(1);

	if (cpu_is_pxa27x()) {
		while (MISR & (1 << 2))
			MODR;
	} else if (cpu_is_pxa3xx()) {
		for (count = 0; count < 16; count++)
			MODR;
	}
#endif
}

static int wm97xx_acc_pen_down(struct wm97xx *wm)
{