mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 15:41:40 +00:00
video: exynos_fb: configure backlight GPIOs if specified in DT
Add support to configure PWM_OUT(PWM output) GPIO and BL_EN(backlight enable) GPIO, if provided in FIMD DT node. Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
This commit is contained in:
parent
6102560891
commit
9018efa7e2
2 changed files with 23 additions and 0 deletions
|
@ -61,6 +61,8 @@ Board(panel specific):
|
|||
disabled with compatible string
|
||||
"samsung,sysmmu-v3.3", with a "reg" property
|
||||
holding the register address of FIMD sysmmu.
|
||||
samsung,pwm-out-gpio: PWM output GPIO.
|
||||
samsung,bl-en-gpio: backlight enable GPIO.
|
||||
|
||||
Example:
|
||||
SOC specific part:
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
#include <asm/arch/mipi_dsim.h>
|
||||
#include <asm/arch/dp_info.h>
|
||||
#include <asm/arch/system.h>
|
||||
#include <asm/gpio.h>
|
||||
#include <asm-generic/errno.h>
|
||||
|
||||
#include "exynos_fb.h"
|
||||
|
@ -102,6 +103,10 @@ __weak int exynos_lcd_misc_init(vidinfo_t *vid)
|
|||
|
||||
static void lcd_panel_on(vidinfo_t *vid)
|
||||
{
|
||||
struct gpio_desc pwm_out_gpio;
|
||||
struct gpio_desc bl_en_gpio;
|
||||
unsigned int node;
|
||||
|
||||
udelay(vid->init_delay);
|
||||
|
||||
exynos_backlight_reset();
|
||||
|
@ -121,6 +126,22 @@ static void lcd_panel_on(vidinfo_t *vid)
|
|||
|
||||
exynos_backlight_on(1);
|
||||
|
||||
#ifdef CONFIG_OF_CONTROL
|
||||
node = fdtdec_next_compatible(gd->fdt_blob, 0,
|
||||
COMPAT_SAMSUNG_EXYNOS_FIMD);
|
||||
if (node <= 0) {
|
||||
debug("FIMD: Can't get device node for FIMD\n");
|
||||
return;
|
||||
}
|
||||
gpio_request_by_name_nodev(gd->fdt_blob, node, "samsung,pwm-out-gpio",
|
||||
0, &pwm_out_gpio,
|
||||
GPIOD_IS_OUT | GPIOD_IS_OUT_ACTIVE);
|
||||
|
||||
gpio_request_by_name_nodev(gd->fdt_blob, node, "samsung,bl-en-gpio", 0,
|
||||
&bl_en_gpio,
|
||||
GPIOD_IS_OUT | GPIOD_IS_OUT_ACTIVE);
|
||||
|
||||
#endif
|
||||
exynos_cfg_ldo();
|
||||
|
||||
exynos_enable_ldo(1);
|
||||
|
|
Loading…
Reference in a new issue