mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 06:31:31 +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
|
disabled with compatible string
|
||||||
"samsung,sysmmu-v3.3", with a "reg" property
|
"samsung,sysmmu-v3.3", with a "reg" property
|
||||||
holding the register address of FIMD sysmmu.
|
holding the register address of FIMD sysmmu.
|
||||||
|
samsung,pwm-out-gpio: PWM output GPIO.
|
||||||
|
samsung,bl-en-gpio: backlight enable GPIO.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
SOC specific part:
|
SOC specific part:
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
#include <asm/arch/mipi_dsim.h>
|
#include <asm/arch/mipi_dsim.h>
|
||||||
#include <asm/arch/dp_info.h>
|
#include <asm/arch/dp_info.h>
|
||||||
#include <asm/arch/system.h>
|
#include <asm/arch/system.h>
|
||||||
|
#include <asm/gpio.h>
|
||||||
#include <asm-generic/errno.h>
|
#include <asm-generic/errno.h>
|
||||||
|
|
||||||
#include "exynos_fb.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)
|
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);
|
udelay(vid->init_delay);
|
||||||
|
|
||||||
exynos_backlight_reset();
|
exynos_backlight_reset();
|
||||||
|
@ -121,6 +126,22 @@ static void lcd_panel_on(vidinfo_t *vid)
|
||||||
|
|
||||||
exynos_backlight_on(1);
|
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_cfg_ldo();
|
||||||
|
|
||||||
exynos_enable_ldo(1);
|
exynos_enable_ldo(1);
|
||||||
|
|
Loading…
Add table
Reference in a new issue