TX2 DSI Ports

Hi all, Happy new year

I need dsi outputs. Where should I start!

dsi port for connecting to sharp panel (LQ080M1SX01) by panel-s-wuxga-7-0.dtsi
1_ In /Linux_for_Tegra/source/public/kernel_src/kernel/nvidia/drivers/video/tegra/dc/panel/panel-s-wuxga-8-0.c
Is this driver for LQ080M1SX01?
There is no Probe function in it! why?!

1_ In TRM :
DSI => 0x15300000
DSIB => 0x15400000
DSIC => 0x15900000
DSID => 0x15940000
TX2 has 4 DSI output??! or two?

2_How and where I should add nodes in dts?

nimadibaj,

TX2 has 4 DSI output??! or two?
From hardware aspect, it can support 2 DSI output.
However, our driver only implements 1 DSI.

When using some nv internal board, below nodes would be set to enable.
You could refer to them and enable nodes for your device tree too.

fragment-e3320-a01@1 {
 			ids = "3320-1000-100", "3320-1000-200";
 			overrides@1 {
 				target = <&{/i2c@3160000/tps65132@3e}>;
 				_overlay_ {
 					status = "okay";
 					outp {
 						ti,enable-gpio = <&gpio_i2c_0_77 4 0>;
 					};
 					outn {
 						delete-target-property = "ti,disable-active-discharge";
 						ti,enable-gpio = <&gpio_i2c_0_21 2 0>;
 						ti,active-discharge-gpio = <&gpio_i2c_0_21 3 0>;
 						ti,active-discharge-time = <2000>; /* in us */
 					};
 				};
 			};
 			overrides@2 {
 				target = <&en_vdd_disp_1v8>;
 				_overlay_ {
 					gpio = <&gpio_i2c_0_21 0 0>;
 				};
 			};
 			overrides@3 {
 				target = <&{/host1x}>;
 				_overlay_ {
 					nvdisplay@15200000 {
 						status = "okay";
 					};
 					dsi {
 						status = "okay";
 						nvidia,active-panel = <&panel_s_wuxga_8_0>;
 						panel-s-wuxga-8-0 {
 							status = "okay";
 						};
 					};
 				};
 			};
                         overrides@4 {
                                 target = <&{/i2c@3160000}>;
                                 _overlay_ {
                                         gpio@21 {
                                                 status = "okay";
                                         };
                                         lp8557-backlight-s-wuxga-8-0@2c {
                                                 status = "okay";
                                         };
                                 };
                         };
 		};

Hi WayneWWW,

1_In tegra186-quill-display-plugin-manager.dtsi,
==> what means ids = “3320-1000-100”, “3320-1000-200”;
==> what means e3320-a00@1 and e3320-a01@1
==> nvdisplay@15200000 is for HDMI or DSI?

2_ What are these?
==> nvdisplay@15200000 and nvdisplay@15210000 and nvdisplay@15220000
==> sor and sor1
==> What is the relation between dsi and sor and sor1?
==> What is the relation between dsi and nvdisplay

I’m sorry, but I can’t find any source for these issues and I’m totally confused
My manager is waiting for me at the end of this month with an ax. Please guide me

1_In tegra186-quill-display-plugin-manager.dtsi,
==> what means ids = “3320-1000-100”, “3320-1000-200”;
==> what means e3320-a00@1 and e3320-a01@1

3320-a00/a01 are two different NV internal board ID. When such board is connected, the driver would overrride the dts content.

==> nvdisplay@15200000 is for HDMI or DSI?
By default, nvdisplay@15200000 is connected to DSI. It depends on nvidia,dc-or-node to decide whether it is connected to dsi or sor.

==> nvdisplay@15200000 and nvdisplay@15210000 and nvdisplay@15220000
==> sor and sor1
==> What is the relation between dsi and sor and sor1?
==> What is the relation between dsi and nvdisplay

If you are not familiar with these terms, please refer to TX2 Technical reference manual (TRM) from our download center.

chapter 24 → display controller.

Also, if you don’t know what is in your device tree, you could check /proc/device-tree on your tegra after system boots up.

Hi, thanks.

Is panel-s-wuxga-8-0.c and panel-s-wuxga-7-0.dtsi for LQ080M1SX01?

  1. We don’t know whether these dtsi files are applicable to your panel or not.

  2. The driver name should match the dtsi name. If you check it again, you should see there is a “panel-s-wuxga-8-0.dtsi” → panel-s-wuxga-8-0.c
    "panel-s-wuxga-7-0.dtsi " → panel-s-wuxga-7-0.c

Hi
Now I can see video signals on DSI-A with oscilloscope.
I’ve bought an LQ080M1SX01 but haven’t got it yet and so I can’t see the output from the DSI port.
Please answer my questions
1_ What is DSI and HDMI device nodes in /dev ? For exaple the /dev/video0 is for camera module.
2_ I set nvidia,active-panel = <&panel_s_wuxga_8_0>; . What this means?
3_ nvoverlaysink or xvvideosink runnig on HDMI port or DSI port? this is true?

Hi,

  1. There is no real device node for tegra display framework. Native linux framebuffer node would be ready as /dev/fb0, /dev/fb1. But we seldom use it.

  2. Any device tree node with “&” indicates a alias to another node. If you keep tracking the device tree, you will see “panel_s_wuxga_8_0: panel-s-wuxga-8-0” in file “hardware/nvidia/platform/tegra/common/kernel-dts/panels/panel-s-wuxga-8-0.dtsi”. That is the specific device tree for this panel. You could see something like the dsi initial command in this file.

We put this line “nvidia,active-panel” under dsi node because dsi driver needs to know which callback needs to be used for specific driver. It means there is no “auto-detection” for dsi driver to know which panel driver needs to be loaded. That is why you need this line.

You could track the dsi.c driver code to know how the driver deals with this part directly.

  1. These two gstreamer components could run on any kinds of display. They do not care what kind of display interfaces they are running on. But you need to know that nvoverlaysink is a rather low-level component while xvvideosink runs on X11.

Hi, Thanks a lot

1_ In panel-s-wuxga-8-0.dtsi, for the following two modes I can see video signal
just on DSI_A_D0(p/n) and DSI_A_D1(p/n) : that’s mean on 2 lanes
nvidia,dsi-n-data-lanes = <4>;
nvidia,dsi-n-data-lanes = <8>;
why??!
Does data-lanes = <8> mean we have 8 physical channels? Or is there any virtual channel?

2_ How can I find DSI speed, or configure it?

3_ For nvidia,out-parent-clk = “pll_d_out0”;, TX2 booting failed.
But when I use nvidia,out-parent-clk = “pll_d”;, TX2 is booting correctly.
nvidia,out-parent-clk = “pll_d_out0”; is written in panel-s-wuxga-8-0.dtsi
nvidia,out-parent-clk = “pll_d”; is written in tegra186-quill-common.dtsi

In this file, there is no “pll_d_out0” !!!
/Linux_for_Tegra/source/public/kernel_src/hardware/nvidia/soc/t18x/kernel-dts/tegra186-soc/mods-simple-bus.dtsi

Thank you for your answers

Please guide me! :(

please