All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 2/2] sh: make interrupt resource optional in SH framebuffer
@ 2010-04-30 16:07 Guennadi Liakhovetski
  2010-05-01 12:08 ` [PATCH 2/2] sh: make interrupt resource optional in SH Magnus Damm
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Guennadi Liakhovetski @ 2010-04-30 16:07 UTC (permalink / raw)
  To: linux-fbdev

The SH LCDC driver can also function without the IRQ, in which case the
FBIO_WAITFORVSYNC ioctl() cannot be supported. Enable such a mode.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
---
 drivers/video/sh_mobile_lcdcfb.c |   19 ++++++++++++-------
 1 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/drivers/video/sh_mobile_lcdcfb.c b/drivers/video/sh_mobile_lcdcfb.c
index e498fb5..b8f7811 100644
--- a/drivers/video/sh_mobile_lcdcfb.c
+++ b/drivers/video/sh_mobile_lcdcfb.c
@@ -791,6 +791,9 @@ static int sh_mobile_wait_for_vsync(struct fb_info *info)
 	unsigned long ldintr;
 	int ret;
 
+	if (!ch->lcdc->irq)
+		return -ENOIOCTLCMD;
+
 	/* Enable VSync End interrupt */
 	ldintr = lcdc_read(ch->lcdc, _LDINTR);
 	ldintr |= LDINTR_VEE;
@@ -962,7 +965,7 @@ static int __devinit sh_mobile_lcdc_probe(struct platform_device *pdev)
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	i = platform_get_irq(pdev, 0);
-	if (!res || i < 0) {
+	if (!res) {
 		dev_err(&pdev->dev, "cannot get platform resources\n");
 		return -ENOENT;
 	}
@@ -975,14 +978,16 @@ static int __devinit sh_mobile_lcdc_probe(struct platform_device *pdev)
 
 	platform_set_drvdata(pdev, priv);
 
-	error = request_irq(i, sh_mobile_lcdc_irq, IRQF_DISABLED,
-			    dev_name(&pdev->dev), priv);
-	if (error) {
-		dev_err(&pdev->dev, "unable to request irq\n");
-		goto err1;
+	if (i >= 0) {
+		error = request_irq(i, sh_mobile_lcdc_irq, IRQF_DISABLED,
+				    dev_name(&pdev->dev), priv);
+		if (error) {
+			dev_err(&pdev->dev, "unable to request irq\n");
+			goto err1;
+		}
+		priv->irq = i;
 	}
 
-	priv->irq = i;
 	pdata = pdev->dev.platform_data;
 
 	j = 0;
-- 
1.6.2.4


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-05-01 20:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-30 16:07 [PATCH 2/2] sh: make interrupt resource optional in SH framebuffer Guennadi Liakhovetski
2010-05-01 12:08 ` [PATCH 2/2] sh: make interrupt resource optional in SH Magnus Damm
2010-05-01 12:15 ` [PATCH 2/2] sh: make interrupt resource optional in SH framebuffer Guennadi Liakhovetski
2010-05-01 12:43 ` [PATCH 2/2] sh: make interrupt resource optional in SH Magnus Damm
2010-05-01 12:55 ` [PATCH 2/2] sh: make interrupt resource optional in SH framebuffer driver Paul Mundt
2010-05-01 20:07 ` [PATCH 2/2] sh: make interrupt resource optional in SH framebuffer Guennadi Liakhovetski

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.