Hi WayneWWW
I tried to follow that thread, but I cannot fully follow what were the proper steps…
For example, should the registers 0x02440030, 0x02440038 and 0x02440040 have the value 0x450 in all of them? because in my case they are:
xavier@tegra-ubuntu:~$ sudo devmem2 0x02440030 w
/dev/mem opened.
Memory mapped at address 0x7fa2900000.
Value at address 0x2440030 (0x7fa2900030): 0x450
xavier@tegra-ubuntu:~$ sudo devmem2 0x02440038 w
/dev/mem opened.
Memory mapped at address 0x7fa9e85000.
Value at address 0x2440038 (0x7fa9e85038): 0x450
xavier@tegra-ubuntu:~$ sudo devmem2 0x02440040 w
/dev/mem opened.
Memory mapped at address 0x7f7ddc4000.
Value at address 0x2440040 (0x7f7ddc4040): 0x150
Additionally, I also removed the following in the common.dtsi file as we don’t have the usci_ccg device in our custom board:
// i2c@c240000 {
// ucsi_ccg: ucsi_ccg@8 {
// status = "disabled";
// typec-extcon {
// typec_port0: port-0 {
// status = "okay";
// #extcon-cells = <1>;
// };
// typec_port1: port-1 {
// status = "okay";
// #extcon-cells = <1>;
// };
// };
// typec-pd {
// typec_pd: pd {
// status = "okay";
// #extcon-cells = <1>;
// };
// };
// };
// };
...
xusb_padctl: xusb_padctl@3520000 {
@@ -194,9 +172,6 @@
#endif
tegra_xudc: xudc@3550000 {
// extcon-cables = <&typec_port0 0>;
// extcon-cable-names = "vbus";
// #extcon-cells = <1>;
#if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
<&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-2}>;
@@ -208,9 +183,6 @@
};
tegra_xhci: xhci@3610000 {
// extcon-cables = <&typec_port0 1>;
// extcon-cable-names = "id";
// #extcon-cells = <1>;
#if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
<&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-1}>,
@@ -281,25 +253,6 @@
status = "disabled"; // this is not even routed in fast-prototype
};
//&head0 {
// extcon-cables = <&typec_port0 2 &typec_port1 2>;
// extcon-cable-names = "typec0", "typec1";
// #extcon-cells = <1>;
//};
//&head1 {
// extcon-cables = <&typec_port0 2 &typec_port1 2>;
// extcon-cable-names = "typec0", "typec1";
// #extcon-cells = <1>;
//};
//&head2 {
// extcon-cables = <&typec_port0 2 &typec_port1 2>;
// extcon-cable-names = "typec0", "typec1";
// #extcon-cells = <1>;
//};
//&sor0 {
// nvidia,typec-port = /bits/ 8 <0>;
//};
//&sor1 {
// nvidia,typec-port = /bits/ 8 <1>;
//};
I’m attaching also the content of disp dtsi file:
/*
* tegra194-custom-board-disp.dtsi:
*
* Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
*
* t194 galen product uses 3 display heads out of the 4 available on t194:
* fb0: Head0->SOR2->HDMI
* fb1: Head1->SOR0->HDMI
* fb2: Head2->SOR1->HDMI
* Each display head is assigned two windows each.
*/
#include <dt-bindings/display/tegra-dc.h>
#include <dt-bindings/display/tegra-panel.h>
#include <t19x-common-platforms/tegra194-hdmi.dtsi>
#include "tegra194-fixed-regulator-custom-board-0000.dtsi"
#include "tegra194-spmic-p2888-0001.dtsi"
&head0 {
status = "okay";
nvidia,fb-bpp = <32>;
nvidia,fbmem-size = <265420800>; /* 8K (7680*4320) 32bpp double buffered */
nvidia,fb-flags = <TEGRA_FB_FLIP_ON_PROBE>;
win-mask = <0x3>;
nvidia,fb-win = <0>;
nvidia,dc-connector = <&sor2>;
nvidia,dc-flags = <TEGRA_DC_FLAG_ENABLED>;
avdd_hdmi-supply = <&p2888_spmic_sd0>; /* 1v0 */
avdd_hdmi_pll-supply = <&p2888_spmic_sd1>; /* 1v8 */
vdd_hdmi_5v0-supply = <&custom_board_hdmi_0_en>;
};
&head1 {
status = "okay";
nvidia,fb-bpp = <32>;
nvidia,fbmem-size = <265420800>; /* 8K (7680*4320) 32bpp double buffered */
nvidia,fb-flags = <TEGRA_FB_FLIP_ON_PROBE>;
win-mask = <0xC>;
nvidia,fb-win = <2>;
nvidia,dc-connector = <&sor0>;
nvidia,dc-flags = <TEGRA_DC_FLAG_ENABLED>;
avdd_hdmi-supply = <&p2888_spmic_sd0>; /* 1v0 */
avdd_hdmi_pll-supply = <&p2888_spmic_sd1>; /* 1v8 */
vdd_hdmi_5v0-supply = <&custom_board_hdmi_1_en>;
};
&head2 {
status = "disabled";
nvidia,fb-bpp = <32>;
nvidia,fbmem-size = <265420800>; /* 8K (7680*4320) 32bpp double buffered */
nvidia,fb-flags = <TEGRA_FB_FLIP_ON_PROBE>;
win-mask = <0x30>;
nvidia,fb-win = <4>;
nvidia,dc-connector = <&sor1>;
nvidia,dc-flags = <TEGRA_DC_FLAG_ENABLED>;
vdd-dp-pwr-supply = <&p2888_spmic_sd0>;
avdd-dp-pll-supply = <&p2888_spmic_sd1>;
vdd_hdmi_5v0-supply = <&custom_board_hdmi_2_en>;
};
&sor0 {
status = "okay";
nvidia,active-panel = <&sor0_hdmi_display>;
};
&sor0_hdmi_display {
status = "okay";
disp-default-out {
nvidia,out-flags = <TEGRA_DC_OUT_HOTPLUG_HIGH>;
};
};
&sor1 {
status = "okay";
nvidia,active-panel = <&sor1_hdmi_display>;
};
&sor1_hdmi_display {
status = "okay";
disp-default-out {
nvidia,out-flags = <TEGRA_DC_OUT_HOTPLUG_LOW>;
};
};
&sor2 {
status = "okay";
nvidia,active-panel = <&sor2_hdmi_display>;
};
&sor2_hdmi_display {
status = "okay";
disp-default-out {
nvidia,out-flags = <TEGRA_DC_OUT_HOTPLUG_HIGH>;
};
};
&dpaux0 {
status = "okay";
};
&dpaux1 {
status = "okay";
};
&dpaux2 {
status = "okay";
};
&tegra_cec {
status = "okay";
};
With the previous dtsi file I don’t get any output when connecting a display in SOR0.