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

Commit 2cbbb3b5 authored by Richard Purdie's avatar Richard Purdie Committed by Linus Torvalds
Browse files

[PATCH] pxafb: Minor driver fixes



Fixes for the pxafb driver:

* Return -EINVAL for resolutions that are too large as per framebuffer
  driver policy.

* Increase the error timeout for disabling the LCD controller.  The current
  timeout is sometimes too short on the Sharp Zaurus Cxx00 hardware and an
  extra delay in an error path shouldn't pose any problems.

* Fix a dev reference which causes a compile error when DEBUG is defined.

Signed-off-by: default avatarRichard Purdie <rpurdie@rpsys.net>
Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 2c0f5fb0
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -232,9 +232,9 @@ static int pxafb_check_var(struct fb_var_screeninfo *var, struct fb_info *info)
	if (var->yres < MIN_YRES)
		var->yres = MIN_YRES;
	if (var->xres > fbi->max_xres)
		var->xres = fbi->max_xres;
		return -EINVAL;
	if (var->yres > fbi->max_yres)
		var->yres = fbi->max_yres;
		return -EINVAL;
	var->xres_virtual =
		max(var->xres_virtual, var->xres);
	var->yres_virtual =
@@ -781,7 +781,7 @@ static void pxafb_disable_controller(struct pxafb_info *fbi)
	LCCR0 &= ~LCCR0_LDM;	/* Enable LCD Disable Done Interrupt */
	LCCR0 |= LCCR0_DIS;	/* Disable LCD Controller */

	schedule_timeout(20 * HZ / 1000);
	schedule_timeout(200 * HZ / 1000);
	remove_wait_queue(&fbi->ctrlr_wait, &wait);

	/* disable LCD controller clock */
@@ -1274,7 +1274,7 @@ int __init pxafb_probe(struct platform_device *dev)
	struct pxafb_mach_info *inf;
	int ret;

	dev_dbg(dev, "pxafb_probe\n");
	dev_dbg(&dev->dev, "pxafb_probe\n");

	inf = dev->dev.platform_data;
	ret = -ENOMEM;