主题中讨论的其他器件: SN65DSI83
你好
根据以下链接的内容、DSI 当前支持 TDA4VM 上的输出。
e2e.ti.com/.../tda4vm-tda4vm-dsi-support-on-linux
我们按照 TI 的说明修改内核相关设置。
但我们没有测量任何 DSI 时钟(E10/E11 DSI_TXCLKN/P 引脚)波形输出。
我的环境如下:
===================================================================================================================================
硬件:[J721e SoC]--DSI->[SN65DSI83]---LVD-->[LVDS 面板1280x720]
操作系统:Linux SDK 8.4.11/Kernel 5.10.120
===================================================================================================================================
内核 DTS 设置如下所示
k3-j721e-main.dtsi
dsi0: dsi@48000000 {
compatible = "ti,j721e-dsi";
reg = <0x0 0x04800000 0x0 0x100000>, <0x0 0x04710000 0x0 0x100>;
clocks = <&k3_clks 150 1>, <&k3_clks 150 5>;
clock-names = "dsi_p_clk", "dsi_sys_clk";
resets = <&k3_reset 150 1>;
reset-names = "dsi_p_rst";
power-domains = <&k3_pds 150 TI_SCI_PD_EXCLUSIVE>;
interrupt-parent = <&gic500>;
interrupts = <GIC_SPI 600 IRQ_TYPE_LEVEL_HIGH>;
phys = <&dphy2>;
phy-names = "dphy";
#address-cells = <1>;
#size-cells = <0>;
dsi0_ports: ports {
#address-cells = <1>;
#size-cells = <0>;
};
};
dphy2: phy@4480000 {
compatible = "ti,j721e-dphy", "cdns,dphy";
reg = <0x0 0x04480000 0x0 0x1100>;
clocks = <&k3_clks 296 1>, <&k3_clks 296 3>;
clock-names = "psm", "pll_ref";
#phy-cells = <0>;
power-domains = <&k3_pds 296 TI_SCI_PD_EXCLUSIVE>;
};
k3-j721e-test.dts
panel_disp0: panel_disp0@0 {
reg = <0 0 0x0 0x0>;
compatible = "panel-dpi";
power-supply = <®_backlight>;
enable-gpios = <&main_gpio0 117 GPIO_ACTIVE_HIGH>;
panel-timing {
clock-frequency = <75000000>;
hactive = <1280>;
vactive = <720>;
hback-porch = <140>;
hfront-porch = <14>;
vback-porch = <4>;
vfront-porch = <144>;
hsync-len = <2>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
port {
panel_in: endpoint {
remote-endpoint = <&panel_bridge_out>;
};
};
};
&main_i2c3 {
pinctrl-names = "default";
pinctrl-0 = <&main_i2c3_pins_default>;
clock-frequency = <400000>;
status = "okay";
sn65dsi@2c {
compatible = "ti,sn65dsi83";
reg = <0x2c>;
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_bridge_in: endpoint {
remote-endpoint = <&dsi0_out>;
};
};
port@1 {
reg = <1>;
panel_bridge_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
};
&dss_ports {
#address-cells = <1>;
#size-cells = <0>;
/* DP */
port@0 {
reg = <0>;
dpi0_out: endpoint {
remote-endpoint = <&dp0_in>;
};
};
/* DSI */
port@1 {
reg = <1>;
dpi1_out: endpoint {
remote-endpoint = <&dsi0_in>;
};
};
};
&mhdp {
pinctrl-names = "default";
pinctrl-0 = <&dp0_pins_default>;
};
&dp0_ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
dp0_in: endpoint {
remote-endpoint = <&dpi0_out>;
};
};
port@4 {
reg = <4>;
dp0_out: endpoint {
remote-endpoint = <&dp_connector_in>;
};
};
};
&dsi0 {
ports {
port@0 {
reg = <0>;
dsi0_out: endpoint {
remote-endpoint = <&panel_bridge_in>;
};
};
port@1 {
reg = <1>;
dsi0_in: endpoint {
remote-endpoint = <&dpi1_out>;
};
};
};
/*panel_disp0: panel_disp0@0 {
reg = <0 0 0x0 0x0>;
compatible = "lg,lh500wx1-sd03";
power-supply = <®_backlight>;
enable-gpios = <&main_gpio0 117 GPIO_ACTIVE_HIGH>;
port {
panel_in: endpoint {
remote-endpoint = <&panel_bridge_out>;
};
};
};*/
};
dmesg 日志作为附件文件
问题1:内核设置是否有任何问题?
Q2:如何使 DSI 时钟引脚输出频率信号?
谢谢。


