mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [patch 5/8] Corgi Touchscreen: Code cleanup / fixes
@ 2005-07-29  9:46 Richard Purdie
  0 siblings, 0 replies; only message in thread
From: Richard Purdie @ 2005-07-29  9:46 UTC (permalink / raw)
  To: akpm; +Cc: vojtech, linux-kernel

Clean up some Corgi Touchscreen logic and merge the repeat calls to 
w100fb_blanking() in anticipation of the w100fb patch.

Fix a pm_message_t reference.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>

Index: linux-2.6.12/drivers/input/touchscreen/corgi_ts.c
===================================================================
--- linux-2.6.12.orig/drivers/input/touchscreen/corgi_ts.c	2005-07-28 16:20:38.000000000 +0100
+++ linux-2.6.12/drivers/input/touchscreen/corgi_ts.c	2005-07-28 16:21:17.000000000 +0100
@@ -79,6 +79,9 @@
 	int w100fb_xres = w100fb_get_xres();
 	unsigned int waittime = 0;
 
+	if (w100fb_get_blanking())
+		return 0;
+
 	if (w100fb_xres == 480 || w100fb_xres == 640) {
 		waittime = WAIT_HS_400_VGA * get_clk_frequency_khz(0) / 398131U;
 
@@ -98,11 +101,8 @@
 {
 	unsigned long timer1 = 0, timer2, pmnc = 0;
 	int pos = 0;
-	int dosleep;
-
-	dosleep = !w100fb_get_blanking();
 
-	if (dosleep && doSend) {
+	if (wait_time && doSend) {
 		PMNC_GET(pmnc);
 		if (!(pmnc & 0x01))
 			PMNC_SET(pmnc | 0x01);
@@ -122,11 +122,11 @@
 		corgi_ssp_ads7846_put(cmd);
 		corgi_ssp_ads7846_get();
 
-		if (dosleep) {
+		if (wait_time) {
 			/* Wait after HSync */
 			CCNT(timer2);
 			if (timer2-timer1 > wait_time) {
-				/* timeout */
+				/* too slow - timeout, try again */
 				SyncHS();
 				/* get OSCR */
 				CCNT(timer1);
@@ -137,7 +137,7 @@
 				CCNT(timer2);
 		}
 		corgi_ssp_ads7846_put(cmd);
-		if (dosleep && !(pmnc & 0x01))
+		if (wait_time && !(pmnc & 0x01))
 			PMNC_SET(pmnc);
 	}
 	return pos;
@@ -247,7 +247,7 @@
 }
 
 #ifdef CONFIG_PM
-static int corgits_suspend(struct device *dev, uint32_t state, uint32_t level)
+static int corgits_suspend(struct device *dev, pm_message_t state, uint32_t level)
 {
 	if (level == SUSPEND_POWER_DOWN) {
 		struct corgi_ts *corgi_ts = dev_get_drvdata(dev);



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2005-07-29  9:58 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-29  9:46 [patch 5/8] Corgi Touchscreen: Code cleanup / fixes Richard Purdie

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®