Hi,
Ive been running the T20 with Iris 1.1 to a 7" touch display and custom 20 pin LVDS cable. Iris 2.0 has added a 2 channel LVDS connector and I had to have a new cable made to accommodate.
Now, when powering up the module, the screen slowly lights up but no graphics appear. In looking at the data sheets, I found the “Migrate Iris from 1.1 to 2.0” article https://developer.toradex.com/knowledge-base/migrate-from-iris-v11-to-v20
Here it shows to add the following code, but being new to CE, I’m not sure where or how to add or modify this file… Any help or pointing to a direction would be tremendously appreciated…
Colibri T20
On Colibri T20 SODIMM 99 is an output with a buffer on the module. Check the datasheet Figure 4 for more details.
If you want to have LVDS output on Colibri T20 we need to do two things. First, we need to make sure that the buffer is tri-stated (High-Z) and the actual GPIO for SODIMM 99 driven high in order for the RGB-to-LVDS transceiver to turn on.
With the following code added, SODIMM 99 will by default be driven high. You can then change the output via sysfs in /sys/class/gpio/gpio203/value
by writing a 0 or 1.
diff --git a/arch/arm/mach-tegra/board-colibri_t20-pinmux.c b/arch/arm/mach-tegra/board-colibri_t20-pinmux.c
index e2db57e783c4a..82a5ab9673cb0 100644
--- a/arch/arm/mach-tegra/board-colibri_t20-pinmux.c
+++ b/arch/arm/mach-tegra/board-colibri_t20-pinmux.c
@@ -368,15 +368,9 @@ int __init colibri_t20_pinmux_init(void)
gpio_request(TEGRA_GPIO_PI4, "SODIMM 87 nRESET_OUT");
gpio_direction_output(TEGRA_GPIO_PI4, 1);
-#if defined(CONFIG_CAN_SJA1000) || defined(CONFIG_CAN_SJA1000_MODULE)
- /* not tri-stating GMI_WR_N on SODIMM pin 99 nPWE */
- gpio_request(TEGRA_GPIO_PT5, "GMI_WR_N on 99");
- gpio_direction_output(TEGRA_GPIO_PT5, 0);
-#else /* CONFIG_CAN_SJA1000 | CONFIG_CAN_SJA1000_MODULE */
/* tri-stating GMI_WR_N on SODIMM pin 99 nPWE */
gpio_request(TEGRA_GPIO_PT5, "no GMI_WR_N on 99");
gpio_direction_output(TEGRA_GPIO_PT5, 1);
-#endif /* CONFIG_CAN_SJA1000 | CONFIG_CAN_SJA1000_MODULE */
/* not tri-stating GMI_WR_N on SODIMM pin 93 RDnWR */
gpio_request(TEGRA_GPIO_PT6, "GMI_WR_N on 93 RDnWR");
diff --git a/arch/arm/mach-tegra/board-colibri_t20.c b/arch/arm/mach-tegra/board-colibri_t20.c
index cd5b3e3c757f9..b9fa95d3ac86b 100644
--- a/arch/arm/mach-tegra/board-colibri_t20.c
+++ b/arch/arm/mach-tegra/board-colibri_t20.c
@@ -587,6 +587,7 @@ static struct gpio colibri_t20_gpios[] = {
{TEGRA_GPIO_PX6, GPIOF_IN, "102, I X13 ForceOFF#"},
{TEGRA_GPIO_PX7, GPIOF_IN, "104, I X14 ForceOFF#"},
{TEGRA_GPIO_PZ2, GPIOF_IN, "SODIMM pin 156"},
+ {TEGRA_GPIO_PZ3, GPIOF_OUT_INIT_HIGH, "LVDS PWRDN# pin 99"}
{TEGRA_GPIO_PZ4, GPIOF_IN, "SODIMM pin 164"},
#if !defined(GMI_32BIT) && !defined SDHCI_8BIT
{TEGRA_GPIO_PAA4, GPIOF_IN, "SODIMM pin 166"},
Checking this and setting appropriate vidargs in U-Boot will make the LVDS screen work. For example for the Toradex Capacitive Touch Display 10.1" LVDS display: setenv vidargs video=tegrafb0:1280x800-16@60 && saveenv
Blockquote