tegra: enable LCD on PAZ00
authorMarc Dietrich <marvin24@gmx.de>
Sun, 25 Nov 2012 11:26:12 +0000 (11:26 +0000)
committerTom Warren <twarren@nvidia.com>
Wed, 16 Jan 2013 20:40:07 +0000 (13:40 -0700)
This adds LCD panel descriptions to the device tree of PAZ00 and
enables LCD support in the configuration.

Signed-off-by: Marc Dietrich <marvin24@gmx.de>
Signed-off-by: Tom Warren <twarren@nvidia.com>
board/compal/dts/tegra20-paz00.dts
board/compal/paz00/paz00.c
include/configs/paz00.h

index 9e3e16906965dfd0833330fd6b2caa977aecde31..afebbe59c6580122491616d391a8312756c8dcd0 100644 (file)
        usb@c5004000 {
                status = "disabled";
        };
+
+       host1x {
+               status = "okay";
+               dc@54200000 {
+                       status = "okay";
+                       rgb {
+                               status = "okay";
+                               nvidia,panel = <&lcd_panel>;
+                       };
+               };
+       };
+
+       lcd_panel: panel {
+               /* PAZ00 has 1024x600 */
+               clock = <54030000>;
+               xres = <1024>;
+               yres = <600>;
+               right-margin = <160>;
+               left-margin = <24>;
+               hsync-len = <136>;
+               upper-margin = <3>;
+               lower-margin = <61>;
+               vsync-len = <6>;
+               hsync-active-high;
+               nvidia,bits-per-pixel = <16>;
+               nvidia,pwm = <&pwm 0 0>;
+               nvidia,backlight-enable-gpios = <&gpio 164 0>;  /* PU4 */
+               nvidia,lvds-shutdown-gpios = <&gpio 102 0>;     /* PM6 */
+               nvidia,backlight-vdd-gpios = <&gpio 176 0>;     /* PW0 */
+               nvidia,panel-vdd-gpios = <&gpio 4 0>;           /* PA4 */
+               nvidia,panel-timings = <400 4 203 17 15>;
+       };
 };
index 6492d4168e1dacc08f13b4320b062c724d23906a..1447f47605b326cf51765c3c55c21c791b83b0f9 100644 (file)
@@ -71,3 +71,14 @@ int board_mmc_init(bd_t *bd)
        return 0;
 }
 #endif
+
+#ifdef CONFIG_LCD
+/* this is a weak define that we are overriding */
+void pin_mux_display(void)
+{
+       debug("init display pinmux\n");
+
+       /* EN_VDD_PANEL GPIO A4 */
+       pinmux_tristate_disable(PINGRP_DAP2);
+}
+#endif
index 38c79cfc2b58a00383d4b19c9ba127492df969cf..4a74d00f40400b810c308cefcac76043fe47589f 100644 (file)
@@ -36,6 +36,7 @@
 #define CONFIG_MACH_TYPE               MACH_TYPE_PAZ00
 
 #define CONFIG_BOARD_EARLY_INIT_F
+#define CONFIG_BOARD_LATE_INIT
 
 /* SD/MMC */
 #define CONFIG_MMC
 #define CONFIG_CMD_NET
 #define CONFIG_CMD_DHCP
 
+#undef TEGRA_DEVICE_SETTINGS
+#define TEGRA_DEVICE_SETTINGS  \
+       "stdin=serial\0"        \
+       "stdout=serial,lcd\0"   \
+       "stderr=serial,lcd\0"
+
+/* LCD support */
+#define CONFIG_LCD
+#define CONFIG_PWM_TEGRA
+#define CONFIG_VIDEO_TEGRA
+#define LCD_BPP                                LCD_COLOR16
+#define CONFIG_SYS_WHITE_ON_BLACK
+#define CONFIG_CONSOLE_SCROLL_LINES    10
+
 #include "tegra-common-post.h"
 
 #endif /* __CONFIG_H */