Hi Karim,

Karim 'Kasi Mir' Senoucci wrote:
> Am 11.07.2012 15:38, schrieb Juergen Beisert:
> >> Well, I tried it with both the current kernel 3.4.4 and a quite old one
> >> (2.6.39) now (both compiled using ptxdist-2012.06.0) now, and both
> >> result in the same black display. Either my configuration ist wrong (but
> >> I don't know what to change at all), or it actually doesn't work and
> >> hasn't worked for some time. Theres only one older kernel with patch
> >> files in the BSP (2.6.38), I will give that one a try as well.
> >
> > Do not use older kernels from my BSP. If the 3.4.4 does not work, even
> > the older ones will not work. It seems the kernel code for the AT070TN83
> > is broken since the beginning.
>
> Well, before I could heed your warning, a funny thing happened: the
> 2.6.38 kernel works.

Arrghh, you found an ugly bug in the BSP: the patch for the kernel to enable 
the LCD controller even if no framebuffer console is enabled is broken for 
Linux-3.3 and Linux-3.4. I owe you a beer (or something different you 
prefer).

It also does not work here with a different LCD I have (I thought my display 
unit is broken...). To be more precise: it does not work for every display!

Please try the attached patch and follow the steps in the header of this file. 
Please test it with the most recent Linux-3.4. With this patch, also my 
display is alive again.

Regards,
Juergen

-- 
Pengutronix e.K.                              | Juergen Beisert             |
Linux Solutions for Science and Industry      | http://www.pengutronix.de/  |
Hot fix the blank LCD screen

Note: This patch is intended for the

    'OSELAS.BSP-Pengutronix-Mini2440-2012.06.0'

board support package release.

It fixes the blank screen by fixing the broken patches which comes with this
board support package.

How to apply:

$ tar -xzf OSELAS.BSP-Pengutronix-Mini2440-2012.06.0.tgz
$ cd OSELAS.BSP-Pengutronix-Mini2440-2012.06.0
$ patch -p1 < OSELAS.BSP-Pengutronix-Mini2440-2012.06.0.patch

After applying this patch, continue to build the board support package as
mentioned in the manual.

diff --git a/configs/platform-friendlyarm-mini2440/patches/linux-3.3/enable_screen_without_console.diff b/configs/platform-friendlyarm-mini2440/patches/linux-3.3/enable_screen_without_console.diff
index cc7fd72..1d463fb 100644
--- a/configs/platform-friendlyarm-mini2440/patches/linux-3.3/enable_screen_without_console.diff
+++ b/configs/platform-friendlyarm-mini2440/patches/linux-3.3/enable_screen_without_console.diff
@@ -6,25 +6,20 @@ If no graphics console is enabled the LCD gets not activated otherwise.
 Signed-off-by: Juergen Beisert <[email protected]>
 
 ---
- drivers/video/s3c2410fb.c |    2 ++
- 1 file changed, 2 insertions(+)
+ drivers/video/s3c2410fb.c |    3 +++
+ 1 file changed, 3 insertions(+)
 
 Index: linux-3.3/drivers/video/s3c2410fb.c
 ===================================================================
 --- linux-3.3.orig/drivers/video/s3c2410fb.c
 +++ linux-3.3/drivers/video/s3c2410fb.c
-@@ -970,12 +970,14 @@ static int __devinit s3c24xxfb_probe(str
- 		goto free_video_memory;
- 	}
- 
+@@ -983,6 +983,9 @@ static int __devinit s3c24xxfb_probe(str
+ 	if (ret)
+ 		dev_err(&pdev->dev, "failed to add debug attribute\n");
+ #endif
 +#ifndef CONFIG_FRAMEBUFFER_CONSOLE
- 	ret = register_framebuffer(fbinfo);
- 	if (ret < 0) {
- 		dev_err(&pdev->dev, "Failed to register framebuffer device: %d\n",
- 			ret);
- 		goto free_cpufreq;
- 	}
++	s3c2410fb_set_par(fbinfo);
 +#endif
+ 	printk(KERN_INFO "fb%d: %s frame buffer device\n",
+ 		fbinfo->node, fbinfo->fix.id);
  
- #ifdef CONFIG_FB_S3C2410_DEBUG
- 	/* create device files */
diff --git a/configs/platform-friendlyarm-mini2440/patches/linux-3.4/enable_screen_without_console.diff b/configs/platform-friendlyarm-mini2440/patches/linux-3.4/enable_screen_without_console.diff
index 5a2a323..0386b1f 100644
--- a/configs/platform-friendlyarm-mini2440/patches/linux-3.4/enable_screen_without_console.diff
+++ b/configs/platform-friendlyarm-mini2440/patches/linux-3.4/enable_screen_without_console.diff
@@ -6,25 +6,20 @@ If no graphics console is enabled the LCD gets not activated otherwise.
 Signed-off-by: Juergen Beisert <[email protected]>
 
 ---
- drivers/video/s3c2410fb.c |    2 ++
- 1 file changed, 2 insertions(+)
+ drivers/video/s3c2410fb.c |    3 +++
+ 1 file changed, 3 insertions(+)
 
 Index: linux-3.4/drivers/video/s3c2410fb.c
 ===================================================================
 --- linux-3.4.orig/drivers/video/s3c2410fb.c
 +++ linux-3.4/drivers/video/s3c2410fb.c
-@@ -970,12 +970,14 @@ static int __devinit s3c24xxfb_probe(str
- 		goto free_video_memory;
- 	}
- 
+@@ -983,6 +983,9 @@ static int __devinit s3c24xxfb_probe(str
+ 	if (ret)
+ 		dev_err(&pdev->dev, "failed to add debug attribute\n");
+ #endif
 +#ifndef CONFIG_FRAMEBUFFER_CONSOLE
- 	ret = register_framebuffer(fbinfo);
- 	if (ret < 0) {
- 		dev_err(&pdev->dev, "Failed to register framebuffer device: %d\n",
- 			ret);
- 		goto free_cpufreq;
- 	}
++	s3c2410fb_set_par(fbinfo);
 +#endif
+ 	printk(KERN_INFO "fb%d: %s frame buffer device\n",
+ 		fbinfo->node, fbinfo->fix.id);
  
- #ifdef CONFIG_FB_S3C2410_DEBUG
- 	/* create device files */

Reply via email to