summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/nvidia/seaboard/tegra2-asymptote.dts2
-rw-r--r--common/fdt_decode.c3
-rw-r--r--drivers/video/tegra2.c6
-rw-r--r--include/fdt_decode.h2
4 files changed, 7 insertions, 6 deletions
diff --git a/board/nvidia/seaboard/tegra2-asymptote.dts b/board/nvidia/seaboard/tegra2-asymptote.dts
index c5a3529dcb..292c32152e 100644
--- a/board/nvidia/seaboard/tegra2-asymptote.dts
+++ b/board/nvidia/seaboard/tegra2-asymptote.dts
@@ -84,7 +84,7 @@
/* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
backlight-enable = <&gpio 28 1>; /* PD4 */
lvds-shutdown = <&gpio 10 1>; /* PB2 */
- backlight-vdd = <&gpio 165 1>; /* PU5 */
+ /* Asymptote does not have backlight-vdd */
panel-vdd = <&gpio 22 1>; /* PC6 */
/*
diff --git a/common/fdt_decode.c b/common/fdt_decode.c
index adad546fb0..e204368606 100644
--- a/common/fdt_decode.c
+++ b/common/fdt_decode.c
@@ -518,8 +518,7 @@ int fdt_decode_lcd(const void *blob, struct fdt_lcd *config)
&config->backlight_en);
err |= fdt_decode_gpio(blob, node, "lvds-shutdown",
&config->lvds_shutdown);
- err |= fdt_decode_gpio(blob, node, "backlight-vdd",
- &config->backlight_vdd);
+ fdt_decode_gpio(blob, node, "backlight-vdd", &config->backlight_vdd);
err |= fdt_decode_gpio(blob, node, "panel-vdd", &config->panel_vdd);
if (err)
return -FDT_ERR_MISSING;
diff --git a/drivers/video/tegra2.c b/drivers/video/tegra2.c
index a8d83d3708..429194b047 100644
--- a/drivers/video/tegra2.c
+++ b/drivers/video/tegra2.c
@@ -152,8 +152,10 @@ static void init_lcd_pwm(struct fdt_lcd *config)
if ((long)(config->panel_timings[1] * 1000) > pre_delay)
udelay((long)(config->panel_timings[1] * 1000) - pre_delay);
- gpio_set_value(config->backlight_vdd.gpio, 1);
- udelay(config->panel_timings[2] * 1000);
+ if (fdt_gpio_isvalid(&config->backlight_vdd)) {
+ gpio_set_value(config->backlight_vdd.gpio, 1);
+ udelay(config->panel_timings[2] * 1000);
+ }
/* Enable PWM at 15/16 high, divider 1 */
pwfm_setup(config->pwfm, 1, 0xdf, 1);
diff --git a/include/fdt_decode.h b/include/fdt_decode.h
index b4daac86c6..d044aff245 100644
--- a/include/fdt_decode.h
+++ b/include/fdt_decode.h
@@ -111,7 +111,7 @@ struct fdt_gpio_state {
};
/* This tells us whether a fdt_gpio_state record is valid or not */
-#define fdt_gpio_isvalid(gpio) ((gpio)->gpio != FDT_GPIO_NONE)
+#define fdt_gpio_isvalid(x) ((x)->gpio != FDT_GPIO_NONE)
#define FDT_LCD_TIMINGS 4