Skip to contentSkip to conversation

mx3fb: some debug and initialisation fixes.

PATCH In review Alberto Panizzo 2 participants 3 messages Jan 20, 2010 – Jan 27, 2010 Framebuffer layer

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 mx3fb: some debug and initialisation fixes.

Hi all!
I've already sent this patch to the linux-arm-kernel mailing list but I've not cc'ed you.

http://thread.gmane.org/gmane.linux.ports.arm.kernel/71120

This patch apply to linus .33-rc4 tree, tell me if I have to rebase it over other repository.

Thanks

patch below..
---------------------------------------------------------------------

Fix the kernel oops when dev_dbg is called with mx3_fbi->txd == NULL

Fix the late initialisation of mx3fb->backlight_level.
If not, in the chain of function started by init_fb_chan(), in __blank() call sdc_set_brightness(mx3fb, mx3fb->backlight_level) that will shut down the CONTRAST PWM output.

Acked-by Guennadi Liakhovetski <g.liakhovetski <at> gmx.de>
---
 drivers/video/mx3fb.c |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)
drivers/video/mx3fb.c +8 -4
index 054ef29..772ba3f 100644
@@ -324,8 +324,11 @@ static void sdc_enable_channel(struct mx3fb_info *mx3_fbi)
        unsigned long flags;
        dma_cookie_t cookie;
 
-       dev_dbg(mx3fb->dev, "mx3fbi %p, desc %p, sg %p\n", mx3_fbi,
-               to_tx_desc(mx3_fbi->txd), to_tx_desc(mx3_fbi->txd)->sg);
+       if (mx3_fbi->txd)
+               dev_dbg(mx3fb->dev, "mx3fbi %p, desc %p, sg %p\n", mx3_fbi,
+                       to_tx_desc(mx3_fbi->txd), to_tx_desc(mx3_fbi->txd)->sg);
+       else
+               dev_dbg(mx3fb->dev, "mx3fbi %p, txd = NULL\n", mx3_fbi);
 
        /* This enables the channel */
        if (mx3_fbi->cookie < 0) {
@@ -646,6 +649,7 @@ static int sdc_set_global_alpha(struct mx3fb_data *mx3fb, bool enable, uint8_t a
 
 static void sdc_set_brightness(struct mx3fb_data *mx3fb, uint8_t value)
 {
+       dev_dbg(mx3fb->dev, "%s: value = %d\n", __func__, value);
        /* This might be board-specific */
        mx3fb_write_reg(mx3fb, 0x03000000UL | value << 16, SDC_PWM_CTRL);
        return;
@@ -1486,12 +1490,12 @@ static int mx3fb_probe(struct platform_device *pdev)
                goto ersdc0;
        }
 
+       mx3fb->backlight_level = 255;
+
        ret = init_fb_chan(mx3fb, to_idmac_chan(chan));
        if (ret < 0)
                goto eisdc0;
 
-       mx3fb->backlight_level = 255;
-
        return 0;
 
 eisdc0:
Signature · 1 line
1.6.3.3
#1 lore raw
Quoted 6 lines · On Wed, 20 Jan 2010 15:57:14 +0100 Alberto Panizzo…

Fix the kernel oops when dev_dbg is called with mx3_fbi->txd == NULL

Fix the late initialisation of mx3fb->backlight_level.
If not, in the chain of function started by init_fb_chan(), in __blank() call sdc_set_brightness(mx3fb, mx3fb->backlight_level) that will shut down the CONTRAST PWM output.

I guess these aren't the biggest bugs we ever had but I tagged the patch for backporting into 2.6.32.x anyway - the fixes are prety obvious.

Your email client replaces tabs with spaces. I fixed that up, but please do prevent it from happening next time. Documentation/email-clients.txt has some Evolution tips.

#2 lore raw
Quoted 5 lines · Andrew Morton
Quoted 2 lines · On Wed, 20 Jan 2010 15:57:14 +0100 Alberto Panizzo…

Fix the kernel oops when dev_dbg is called with mx3_fbi->txd == NULL

Quoted 8 lines
Quoted 4 lines

Fix the late initialisation of mx3fb->backlight_level.
If not, in the chain of function started by init_fb_chan(), in __blank() call sdc_set_brightness(mx3fb, mx3fb->backlight_level) that will shut down the CONTRAST PWM output.

I guess these aren't the biggest bugs we ever had but I tagged the patch for backporting into 2.6.32.x anyway - the fixes are prety obvious.

Yes, apart of the debug part, the late initialisation of mx3fb->backlight_level prevent screen switch-on on boot in my development board. So for me (and for all hardware that make use of the CONTRAST PWM to control the brightness) is important.

Quoted 5 lines

Your email client replaces tabs with spaces. I fixed that up, but please do prevent it from happening next time. Documentation/email-clients.txt has some Evolution tips.

The Evolution client lose tabs in copy/past between mails.... I'll take more care on this in future.

Thanks!

Alberto!