Re: [U-Boot] [PATCH] mx6sabresd: Allow LVDS backlight to be functional after a kernel reboot
On 08/06/2016 20:05, Marco Franchi wrote: > Currently the LVDS backlight does not work in U-Boot after a “reboot” comand > in the kernel. > > This problem occurs because the kernel uses this pin in PWM mode and U-Boot > does not configure the backlight pin as GPIO functionality. > > So fix the problem by explicitly configuring the backlight pin as GPIO in > U-Boot. > > Signed-off-by: Marco Franchi > --- Applied to master (bug fix), thanks ! Best regards, Stefano Babic -- = DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sba...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] mx6sabresd: Allow LVDS backlight to be functional after a kernel reboot
Hi Marco, On Wed, Jun 8, 2016 at 3:05 PM, Marco Franchi wrote: > Currently the LVDS backlight does not work in U-Boot after a “reboot” comand > in the kernel. > > This problem occurs because the kernel uses this pin in PWM mode and U-Boot > does not configure the backlight pin as GPIO functionality. > > So fix the problem by explicitly configuring the backlight pin as GPIO in > U-Boot. > > Signed-off-by: Marco Franchi Thanks for fixing this bug: Tested-by: Fabio Estevam ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] mx6sabresd: Allow LVDS backlight to be functional after a kernel reboot
Hi Marco, On 08/06/2016 20:05, Marco Franchi wrote: > Currently the LVDS backlight does not work in U-Boot after a “reboot” comand > in the kernel. > > This problem occurs because the kernel uses this pin in PWM mode and U-Boot > does not configure the backlight pin as GPIO functionality. > > So fix the problem by explicitly configuring the backlight pin as GPIO in > U-Boot. > > Signed-off-by: Marco Franchi > --- > board/freescale/mx6sabresd/mx6sabresd.c | 18 -- > 1 file changed, 16 insertions(+), 2 deletions(-) > > diff --git a/board/freescale/mx6sabresd/mx6sabresd.c > b/board/freescale/mx6sabresd/mx6sabresd.c > index 54ba36b..28c969d 100644 > --- a/board/freescale/mx6sabresd/mx6sabresd.c > +++ b/board/freescale/mx6sabresd/mx6sabresd.c > @@ -177,13 +177,27 @@ static iomux_v3_cfg_t const rgb_pads[] = { > MX6_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 | MUX_PAD_CTRL(NO_PAD_CTRL), > MX6_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 | MUX_PAD_CTRL(NO_PAD_CTRL), > MX6_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 | MUX_PAD_CTRL(NO_PAD_CTRL), > +}; > + > +static iomux_v3_cfg_t const bl_pads[] = { > MX6_PAD_SD1_DAT3__GPIO1_IO21 | MUX_PAD_CTRL(NO_PAD_CTRL), > }; > > +static void enable_backlight(void) > +{ > + imx_iomux_v3_setup_multiple_pads(bl_pads, ARRAY_SIZE(bl_pads)); > + gpio_direction_output(DISP0_PWR_EN, 1); > +} > + > static void enable_rgb(struct display_info_t const *dev) > { > imx_iomux_v3_setup_multiple_pads(rgb_pads, ARRAY_SIZE(rgb_pads)); > - gpio_direction_output(DISP0_PWR_EN, 1); > + enable_backlight(); > +} > + > +static void enable_lvds(struct display_info_t const *dev) > +{ > + enable_backlight(); > } > > static struct i2c_pads_info i2c_pad_info1 = { > @@ -370,7 +384,7 @@ struct display_info_t const displays[] = {{ > .addr = 0, > .pixfmt = IPU_PIX_FMT_RGB666, > .detect = NULL, > - .enable = NULL, > + .enable = enable_lvds, > .mode = { > .name = "Hannstar-XGA", > .refresh= 60, > Acked-by: Stefano Babic Best regards, Stefano Babic -- = DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sba...@denx.de = ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] mx6sabresd: Allow LVDS backlight to be functional after a kernel reboot
Currently the LVDS backlight does not work in U-Boot after a “reboot” comand in the kernel. This problem occurs because the kernel uses this pin in PWM mode and U-Boot does not configure the backlight pin as GPIO functionality. So fix the problem by explicitly configuring the backlight pin as GPIO in U-Boot. Signed-off-by: Marco Franchi --- board/freescale/mx6sabresd/mx6sabresd.c | 18 -- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/board/freescale/mx6sabresd/mx6sabresd.c b/board/freescale/mx6sabresd/mx6sabresd.c index 54ba36b..28c969d 100644 --- a/board/freescale/mx6sabresd/mx6sabresd.c +++ b/board/freescale/mx6sabresd/mx6sabresd.c @@ -177,13 +177,27 @@ static iomux_v3_cfg_t const rgb_pads[] = { MX6_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 | MUX_PAD_CTRL(NO_PAD_CTRL), MX6_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 | MUX_PAD_CTRL(NO_PAD_CTRL), MX6_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 | MUX_PAD_CTRL(NO_PAD_CTRL), +}; + +static iomux_v3_cfg_t const bl_pads[] = { MX6_PAD_SD1_DAT3__GPIO1_IO21 | MUX_PAD_CTRL(NO_PAD_CTRL), }; +static void enable_backlight(void) +{ + imx_iomux_v3_setup_multiple_pads(bl_pads, ARRAY_SIZE(bl_pads)); + gpio_direction_output(DISP0_PWR_EN, 1); +} + static void enable_rgb(struct display_info_t const *dev) { imx_iomux_v3_setup_multiple_pads(rgb_pads, ARRAY_SIZE(rgb_pads)); - gpio_direction_output(DISP0_PWR_EN, 1); + enable_backlight(); +} + +static void enable_lvds(struct display_info_t const *dev) +{ + enable_backlight(); } static struct i2c_pads_info i2c_pad_info1 = { @@ -370,7 +384,7 @@ struct display_info_t const displays[] = {{ .addr = 0, .pixfmt = IPU_PIX_FMT_RGB666, .detect = NULL, - .enable = NULL, + .enable = enable_lvds, .mode = { .name = "Hannstar-XGA", .refresh= 60, -- 2.7.4 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot