mirror of
https://github.com/joel16/android_kernel_sony_msm8994_rework.git
synced 2024-11-27 13:50:53 +00:00
mx3fb: some debug and initialisation fixes
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. Signed-off-by: Alberto Panizzo <maramaopercheseimorto@gmail.com> Acked-by: Guennadi Liakhovetski <g.liakhovetski <at> gmx.de> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
859ddf0974
commit
b3cb537218
@ -324,8 +324,11 @@ static void sdc_enable_channel(struct mx3fb_info *mx3_fbi)
|
|||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
dma_cookie_t cookie;
|
dma_cookie_t cookie;
|
||||||
|
|
||||||
dev_dbg(mx3fb->dev, "mx3fbi %p, desc %p, sg %p\n", mx3_fbi,
|
if (mx3_fbi->txd)
|
||||||
to_tx_desc(mx3_fbi->txd), to_tx_desc(mx3_fbi->txd)->sg);
|
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 */
|
/* This enables the channel */
|
||||||
if (mx3_fbi->cookie < 0) {
|
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)
|
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 */
|
/* This might be board-specific */
|
||||||
mx3fb_write_reg(mx3fb, 0x03000000UL | value << 16, SDC_PWM_CTRL);
|
mx3fb_write_reg(mx3fb, 0x03000000UL | value << 16, SDC_PWM_CTRL);
|
||||||
return;
|
return;
|
||||||
@ -1486,12 +1490,12 @@ static int mx3fb_probe(struct platform_device *pdev)
|
|||||||
goto ersdc0;
|
goto ersdc0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mx3fb->backlight_level = 255;
|
||||||
|
|
||||||
ret = init_fb_chan(mx3fb, to_idmac_chan(chan));
|
ret = init_fb_chan(mx3fb, to_idmac_chan(chan));
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto eisdc0;
|
goto eisdc0;
|
||||||
|
|
||||||
mx3fb->backlight_level = 255;
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
eisdc0:
|
eisdc0:
|
||||||
|
Loading…
Reference in New Issue
Block a user