Hi,
I have a carrier board for TX1 module that changed the HDMI to DP, so I would like to change the HDMI to DP on R32.2 and modified the codes as below:
- Change the pinmux:
hdmi_int_dp_hpd_pcc1 {
nvidia,pins = "hdmi_int_dp_hpd_pcc1";
- nvidia,function = "rsvd1";
+ nvidia,function = "dp";
nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,io-high-voltage = <TEGRA_PIN_DISABLE>;
};
- Modified the the device tree as below:
/* tegradc.1 */
dc@54240000 {
status = "okay";
nvidia,dc-flags = <TEGRA_DC_FLAG_ENABLED>;
nvidia,emc-clk-rate = <300000000>;
nvidia,cmu-enable = <1>;
nvidia,fb-bpp = <32>; /* bits per pixel */
nvidia,fb-flags = <TEGRA_FB_FLIP_ON_PROBE>;
nvidia,dc-or-node = "/host1x/sor1";
nvidia,dc-connector = <&sor1>;
win-mask = <0x7>; /* Assign only wins A/B/C */
};
sor1 {
nvidia,dpaux = <0xa6>;
compatible = "nvidia,tegra210-sor1";
clocks = <0x41 0x16f 0x41 0xde 0x41 0x16e 0x41 0xb7 0x41 0x12f 0x41 0xf3 0x41 0xca 0x41 0x7d 0x41 0x6f 0x41 0x80>;
resets = <0x41 0xb7 0x41 0x7d 0x41 0x6f 0x41 0x80>;
pad-names = "hdmi";
reg-names = "sor";
clock-names = "sor1_ref", "sor_safe", "sor1_pad_clkout", "sor1", "pll_dp", "pll_p", "maud", "hda", "hda2codec_2x", "hda2hdmi";
nvidia,sor1-output-type = "dp";
status = "okay";
nvidia,xbar-ctrl = <0x2 0x1 0x0 0x3 0x4>;
interrupts = <0x0 0x4c 0x4>;
phandle = <0x9d>;
nvidia,sor-ctrlnum = <0x1>;
reg = <0x0 0x54580000 0x0 0x40000>;
reset-names = "sor1", "hda_rst", "hda2codec_2x_rst", "hda2hdmi_rst";
linux,phandle = <0x9d>;
nvidia,active-panel = <0xa7>;
prod-settings {
#prod-cells = <0x3>;
status = "okay";
prod_list_hdmi_soc = "prod_c_hdmi_0m_54m", "prod_c_hdmi_54m_111m", "prod_c_hdmi_111m_223m", "prod_c_hdmi_223m_300m", "prod_c_hdmi_300m_600m";
prod_c_75M {
prod = <0x3a0 0x2 0x2 0x5c 0xf000700 0x1000100 0x60 0xf01f00 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333a3a3a 0x148 0xffffffff 0x0 0x170 0x40ff00 0x404000>;
};
prod {
prod = <0x3a0 0x1 0x1 0x5c 0xf000700 0x1000000 0x60 0xf01f00 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333a3a3a 0x148 0xffffffff 0x0 0x170 0x40ff00 0x401000>;
};
prod_c_hdmi_111m_223m {
prod = <0x3a0 0x2 0x0 0x5c 0xf000700 0x1000300 0x60 0xff0fe0ff 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333a3a3a 0x148 0xffffffff 0x0 0x170 0x40ff00 0x406600>;
};
prod_c_hbr2 {
prod = <0x60 0xf00000 0x600000>;
};
prod_c_rbr {
prod = <0x60 0xf00000 0x300000>;
};
prod_c_hdmi_223m_300m {
prod = <0x3a0 0x2 0x0 0x5c 0xf000700 0x1000300 0x60 0xf01f00 0x401380 0x68 0xf000000 0xa000000 0x138 0xffffffff 0x333f3f3f 0x148 0xffffffff 0x171717 0x170 0x40ff00 0x406600>;
};
prod_c_hdmi_0m_54m {
prod = <0x3a0 0x2 0x2 0x5c 0xf000700 0x1000000 0x60 0xf01f00 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333a3a3a 0x148 0xffffffff 0x0 0x170 0x40ff00 0x401000>;
};
prod_c_hbr {
prod = <0x60 0xf00000 0x400000>;
};
prod_c_600M {
prod = <0x3a0 0x2 0x2 0x5c 0xf000700 0x1000300 0x60 0xf01f00 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333f3f3f 0x148 0xffffffff 0x0 0x170 0x40ff00 0x406600>;
};
prod_c_300M {
prod = <0x3a0 0x2 0x0 0x5c 0xf000700 0x1000300 0x60 0xf01f00 0x401380 0x68 0xf000000 0xa000000 0x138 0xffffffff 0x333f3f3f 0x148 0xffffffff 0x171717 0x170 0x40ff00 0x406600>;
};
prod_c_54M {
prod = <0x3a0 0x2 0x2 0x5c 0xf000700 0x1000000 0x60 0xf01f00 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333a3a3a 0x148 0xffffffff 0x0 0x170 0x40ff00 0x401000>;
};
prod_c_hdmi_54m_111m {
prod = <0x3a0 0x2 0x2 0x5c 0xf000700 0x1000100 0x60 0xf01f00 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333a3a3a 0x148 0xffffffff 0x0 0x170 0x40ff00 0x404000>;
};
prod_c_150M {
prod = <0x3a0 0x2 0x0 0x5c 0xf000700 0x1000300 0x60 0xff0fe0ff 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333a3a3a 0x148 0xffffffff 0x0 0x170 0x40ff00 0x406600>;
};
prod_c_hdmi_300m_600m {
prod = <0x3a0 0x2 0x2 0x5c 0xf000700 0x1000300 0x60 0xf01f00 0x401380 0x68 0xf000000 0x8000000 0x138 0xffffffff 0x333f3f3f 0x148 0xffffffff 0x0 0x170 0x40ff00 0x406600>;
};
prod_c_dp {
prod = <0x5c 0xf000f10 0x1000310 0x60 0x3f00100 0x400100 0x68 0x2000 0x2000 0x70 0xffffffff 0x0 0x180 0x1 0x1>;
};
};
hdmi-display {
compatible = "hdmi,display";
status = "disabled";
phandle = <0x185>;
linux,phandle = <0x185>;
disp-default-out {
status = "disabled";
};
};
dp-display {
compatible = "dp, display";
nvidia,is_ext_dp_panel = <0x1>;
nvidia,tx-pu-disable = <0x1>;
status = "okay";
phandle = <0xa7>;
linux,phandle = <0xa7>;
nvidia,hpd-gpio = <0x82 0xe1 0x0>;
disp-default-out {
nvidia,out-align = <0x0>;
nvidia,out-parent-clk = "pll_dp";
nvidia,out-order = <0x0>;
nvidia,out-pins = <0x1 0x0 0x2 0x0 0x3 0x0 0x0 0x1>;
nvidia,out-flags = <0x0>;
nvidia,out-type = <0x3>;
};
dp-lt-settings {
lt-setting@2 {
nvidia,load-adj = <0x6>;
nvidia,post-cursor = <0x0 0x0 0x0 0x0>;
nvidia,lane-preemphasis = <0x1 0x1 0x1 0x1>;
nvidia,tx-pu = <0x0>;
nvidia,drive-current = <0x0 0x0 0x0 0x0>;
};
lt-setting@0 {
nvidia,load-adj = <0x3>;
nvidia,post-cursor = <0x0 0x0 0x0 0x0>;
nvidia,lane-preemphasis = <0x0 0x0 0x0 0x0>;
nvidia,tx-pu = <0x0>;
nvidia,drive-current = <0x0 0x0 0x0 0x0>;
};
lt-setting@1 {
nvidia,load-adj = <0x4>;
nvidia,post-cursor = <0x0 0x0 0x0 0x0>;
nvidia,lane-preemphasis = <0x0 0x0 0x0 0x0>;
nvidia,tx-pu = <0x0>;
nvidia,drive-current = <0x0 0x0 0x0 0x0>;
};
};
};
};
dpaux1 {
status = "okay";
};
I could not see the output on DP port after changed the device tree on our board. Then I tarced the codes and found that the dpaux1 DPAUX_DP_AUXSTAT was always zero.
I do not know why the dpaux1 DPAUX_DP_AUXSTAT is alway zero, please give me some advice, Thanks.
Best Regards,
Michael