We use JetPack7.1/L4T 38.4 SDK and custom PCB to setup 3 HDMI output. There are 3 HMDI output but HDMI hotplug only hpd1 work. hpd0 and hpd2 are failed.
1.dcb
=== Reading DCB blob ===
=== Chip Variant T26X ===
########## Tegra DCB BLOB ###############
########### Display Devices #############
Display Devices::
Display Devices : [0]
Type : [TMDS]
CCB : [0]
Heads : 0:[Y] 1:[Y]
Sor : [0 ]
HDMI capable : [1]
Connector : [0]
Bus : [0]
Pad Link : [0]
Display Devices : [1]
Type : [TMDS]
CCB : [1]
Heads : 0:[Y] 1:[Y]
Sor : [0 ]
HDMI capable : [1]
Connector : [1]
Bus : [1]
Pad Link : [1]
Display Devices : [2]
Type : [TMDS]
CCB : [2]
Heads : 0:[Y] 1:[Y]
Sor : [1 ]
HDMI capable : [1]
Connector : [2]
Bus : [2]
Pad Link : [2]
############### CCB Entries ###############
CCB::
*CCB entries that have both I2C and AUX ports unused (value = 31) are not displayed
CCB Index : 0
I2C Port : [6]
AUX Port : [0]
CCB Index : 1
I2C Port : [10]
AUX Port : [1]
CCB Index : 2
I2C Port : [4]
AUX Port : [2]
########### Connector entries #############
Connectors::
Connector Index : 0x0
Type : [HDMI]
Hotplug : A:[Y]
Connector Index : 0x1
Type : [HDMI]
Hotplug : A:[Y]
Connector Index : 0x2
Type : [HDMI]
Hotplug : A:[Y]
################# ******* #################
2.device tree
display@8808c00000 {
status = "okay";
os_gpio_hotplug_a = <&gpio_main TEGRA264_MAIN_GPIO(F, 4) GPIO_ACTIVE_LOW>;
os_gpio_hotplug_b = <&gpio_main TEGRA264_MAIN_GPIO(F, 3) GPIO_ACTIVE_LOW>;
os_gpio_hotplug_c = <&gpio_main TEGRA264_MAIN_GPIO(F, 5) GPIO_ACTIVE_LOW>;
nvdisplay-niso {
status = "okay";
};
};
3.gpio
gpio@ac300000 {
default {
gpio-input = <
TEGRA264_MAIN_GPIO(F, 3)
TEGRA264_MAIN_GPIO(F, 4)
TEGRA264_MAIN_GPIO(F, 5)
>;
};
};
4.pinmux
dp_aux_ch0_p {
nvidia,pins = "dp_aux_ch0_p";
- nvidia,function = "dp_aux_ch0_p";
+ nvidia,function = "i2c6_clk";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -592,7 +592,7 @@
dp_aux_ch0_n {
nvidia,pins = "dp_aux_ch0_n";
- nvidia,function = "dp_aux_ch0_n";
+ nvidia,function = "i2c6_dat";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -625,7 +625,7 @@
dp_aux_ch2_p {
nvidia,pins = "dp_aux_ch2_p";
- nvidia,function = "dp_aux_ch2_p";
+ nvidia,function = "i2c4_clk";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -636,7 +636,7 @@
dp_aux_ch2_n {
nvidia,pins = "dp_aux_ch2_n";
- nvidia,function = "dp_aux_ch2_n";
+ nvidia,function = "i2c4_dat";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;