This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] PROCESSOR-SDK-AM67:用于 DSI 转换为 HDMI 的 DTS 配置

Guru**** 2482225 points
Other Parts Discussed in Thread: AM67, SYSCONFIG

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/amplifiers-group/amplifiers/f/amplifiers-forum/1456851/processor-sdk-am67-dts-configuration-for-dsi-convert-to-hdmi

器件型号:PROCESSOR-SDK-AM67
Thread 中讨论的其他器件:AM67SysConfigAB15

工具/软件:

你(们)好  

客户使用 AM67和 ADV7535作为桥接器、以支持 DSI 转 HDMI。  

这是他们的 DTS 文件、请帮助检查配置、谢谢。

e2e.ti.com/.../k3_2D00_j722s_2D00_evm.dts

此致

Zekun

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    由于专家不在办公室、请预计回复会有一些延迟。

    此致

    Tarun Mukesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Zekun:

    您尝试从 DSI 获得哪种输出分辨率? 也是在 AM67 EVM 上试用的吗?  

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    该电路板上还使用了哪个 SYSCLK? 从本质上讲、我们需要了解与 EVM 的区别是什么?

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Brijesh、

    SYSCLK 为25M、分辨率为1920x1080。
    下面是我的新 DSI 配置和内核日志

    我可以访问 ADV7535寄存器、地址为0x3D。

     当我将 dsi0配置为面板(raspberrypi、7英寸-DSI)时、dsi0具有时钟输出、但 dsi0无数据输出、 如何配置 DSI0_TXNx/TXPx?

     当我配置 dsi0 -> adb7535 -> hdsi, dsi0无时钟和数据输出时、似乎不是 dts 配置问题、是否可以提供配置 dsi0->adb7535->hdmi 进行测试?

    谢谢

    e2e.ti.com/.../am67_5F00_dsi0_5F00_config.txt

    e2e.ti.com/.../kernel.log

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Brijesh、  

    这是 TI FAE、客户设计请参考 Beagle AI、并使用 DSI 转 HDMI 桥接器支持显示。  

    EVM 使用 DPI 到 HDMI 桥接器、客户使用 ADV7535、因为它们在其他项目中曾将 ADV7535与其他 ARM SOC 一起使用。  

    我们假设 ADV7535初始化应与其他项目相同、但我们无法确认。  

    客户已按照以下说明启用 DT 叠加到 DSI、并参阅 DSI 时钟输出。  

    此外、还要确认 I2C0可以成功地读取/写入 ADV7535。   

    您能否查看配置文件并告知您需要哪些其他输入?  

    要在 AM62P5-SK 上启用这些显示、请参阅 如何在 Linux 指南中启用 DT 叠加、并  为 OLDI 输出启用 k3-am62p5-sk-microtips-mf101hie-panel.dtbo DT 叠加、以及  为 DSI 输出启用 k3-am62p5-sk-DSI-Rpi-7inch-panel.dtbo DT 叠加。

    https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-am67/10_01_08_01/exports/docs/linux/How_to_Guides/Target/How_to_enable_DT_overlays_in_linux.html

    Br、Rich

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、  

    我回复了上一篇文章: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1454230/processor-sdk-am67-sdk-9-2-am6734-dsi-converter-to-hdmi-config

    除了前一个线程中的响应(通过查看配置文件)外、我还看到 Adi、adv7535桥接器 (git.ti.com/.../adi,adv7533.yaml

    如果在前一个工程中使用了此桥接器、并且在前一个工程中使用了 Linux 驱动程序、我建议检查桥接器件的器件树节点。 如果不使用 Linux、我建议检查 Linux 驱动程序是否配置了前一个工程中涉及的所有寄存器。 例如、我看不到您的共享 DTS 文件中定义的时钟或中断、或"EDID"寄存器、但器件树绑定 YAML 文件示例正在定义所有这些寄存器。

    此致、

    Takuma

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma  

    客户 DTS 文件如本主题所附。  

    如果未启用 DT 叠加、就不会有 DSI 时钟输出。  

    启用  k3-am62p5-sk-DSI-RPI-7 inch-pante.dtbo 的 DT 叠加后、客户会看到 DSI 时钟输出、但数据对上没有信号。  

    我不熟悉设备树规则。

    AM67x 的 DSI 输出是独特的、客户使用 I2C0来访问 ADV7535、地址为0x3D。 使用4个通道。  

    是否可以以客户为例修改具有 ADV7535的 DTS?

    DSI 输出到 ADV7535至 HDMI 连接器。  

    Br、Rich

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    顾名思义、DT overlay 会覆盖并覆盖 DTB 文件顶部 dtbo (设备树 blob overlay)文件的内容。  k3-am62p5-sk-dsi-Rpi-7inch-panel.dtbo 是一个覆盖层、用于更新 DSI、I2C 和 DSS 节点、并定义硬编码显示。 这很可能是输出 DSI 时钟、但没有输出数据、因为没有连接实际的 RPi 显示、也没有运行有效软件。 HDMI 与 DSI 面板不同、因为 DSI 面板会对时序参数进行硬编码、而 HDMI 通过 EDID 动态协商显示器的时序参数。

    请指示客户通过引用器件树绑定文档来修改 DTS。 这是适用于所有 Linux 器件驱动程序的文档、其中说明了器件树中所需的字段、并提供了有关如何在器件树中设置节点 的示例:https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/Documentation/devicetree/bindings/display/bridge/adi,adv7533.yaml?h=ti-linux-6.1.y

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma  

    感谢解释,这是清楚的,并对这种情况有意义。  

    但是、客户声称随附的 DTS 已参考了器件绑定文档、并且他们的设置可使用 NXP i.MX8解决方案。  

    DTS 结构与 NXP 和 TI 不同、现在的主要问题是在这种修改后的 DTS 中不会出现 DSI 时钟。  

    请帮助查看此 DTS 并确定是否缺少部件或设置不正确。  

    Br、Rich  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    除了缺少 adv7535的属性外、设备树中没有任何突出的属性。 如果客户声称尽管缺少9个必需属性中的5个属性、他们的 adv7535桥 DTS 仍能正常工作、我将回答他们的   问题(因为缺少的属性是电源引脚、可能是在硬件中处理的?)。

    然后三个问题/建议:

    • DSI_INT_OUT -此信号连接在哪里? 我注意到在器件树绑定示例中、它们定义了中断、但对于客户 DTS、不会设置中断。 它不是所需属性的一部分、因此可能不是必要的信号。 但是、在原理图上设置此信号看起来很奇怪、通过绑定示例来定义信号、 但 在最终的定制 DTS 文件中未定义该信号、因此建议检查此信号的连接位置(可能是悬空的、我们可以忽略该信号?)
    • HDMI_HPD - 此信号连接在哪里? 我假设它仅连接在 HDMI 连接器和桥接器之间、但如果连接在 SoC 和桥接器之间、则设备树可能需要进行一些更新。
    • 与 RPI 叠加和定制 DTS 共享"k3conf dump device"的输出。 这将转储所有器件状态、以查看某些 SoC 元件是否已断电。 我们可以进行比较、看看显示流水线中的元件是否已正确上电。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Takuma:

      k3config 转储文件:

    e2e.ti.com/.../3034.k3conf_5F00_dump_5F00_device.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    三 件事:

    • 我看到了 GPU DEVICE_STATE_OFF (如果是有意为之、这是可以的)、但是否有任何软件正在运行以将数据发送到 HDMI 接口? 比如 kmscube、kmstest、weston 等
    • 您是否还可以使用 RPI 叠加执行 k3conf 转储、其中您声称 DSI 有时钟、因此我们可以进行比较?
    • DSI_INT_OUT -您是否可以对此进行引脚多路复用并将其连接到设备树中的 ADV 桥接节点? 我假设这是一个中断。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Takuma:

      1>运行 kmstest 时、GPU 仍关闭。

      2>使用 RPI 配置时、dsi0时钟/数据具有输出、k3conf 转储与以前相同。

      3> DSI_INT_OUT 连接 (L22) OSPI0_DQS.GPIO0_2、如何配置该引脚? 它符合以下配置吗?

    adv_bridge:Bridge@3d{
      状态="正常";

      Compatible ="Adi、adv7535";

      pinctrl-0 =<&MAIN_DSI_int_pins_default>;
      中断父级=<&MAIN_GPIO0>;
      中断=<2 IRQ_TYPE_EDGE_FALLING>;

    }

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    使用 SysConfig 将引脚配置为 GPIO。 如下所示:

    &main_pmx0 {
    	mygpio1_pins_default: mygpio1-default-pins {
    		pinctrl-single,pins = <
    			J722S_IOPAD(0x0008, PIN_INPUT, 7) /* (L22) OSPI0_DQS.GPIO0_2 */
    		>;
    	};
    };

    下面的配置是否正确?

    是的、假设引脚多路复用是通过 SysConfig 完成的。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Takuma、

     我使用引脚多路复用 L22并将其连接到器件树中的 ADV 桥接器节点 、但与之前相同、DSI0不提供时钟和数据输出。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    如果连接了示波器、您能否对其进行配置、使其在达到电压阈值时捕获边沿或停止?  

    此外、您能否共享"devmem2 0x305000F0"的输出? 该寄存器应包含一些错误状态。 根据当前信息、我怀疑存在 HSYNC 缺失。

    以下是该寄存器中每个非保留位的含义。

    10. VSG_RECOVERY
    9. ERR_VRS_Wrong_length
    8. ERR_LONGREAD
    7. ERR_LINEWRITE
    6. ERR_BURSTWRITE
    5. REG_ERR_SMALL_HEIGHT
    4. REG_ERR_SMALL_LENGTH
    3. ERR_MISSING_VSYNC
    2. ERR_MISSING_HSYNC
    1. ERR_MISSING_DATA
    0 VSG_running

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    devmem2 0x305000F0
    /dev/mem 已打开。
    映射到地址0xff96b2a000的存储器。
    读取地址0x305000F0 (0xff96b2a0f0):0x00000004

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、  

    它看起来像是设置了 ERR_MISSING_HSYNC 位、因此问题与时序参数有关。 作为一个实验,在 ADI,adv7535桥接驱动器中,您可以将首选模式设置为 800×480(我认为它与 RPI 面板相同)。

    下面是将首选分辨率设置为 1280x1024的另一个网桥的补丁、但我希望 ADI 网桥也可以添加类似的补丁:

    e2e.ti.com/.../0008_2D00_HACK_2D00_drm_2D00_bridge_2D00_lt8912b_2D00_Add_2D00_custom_2D00_DMT_2D00_modes_2D00_for_2D00_our.patch

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Takuma:

    我已将模式设置为800x480、但与之前相同、 DSI0不是时钟和数据输出。

    ~# devmem2 0x305000F0
    /dev/mem 已打开。
    在地址0xffffabc00000映射的存储器。
    读取地址0x305000F0 (0xffabc000f0):0x00000004

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、  

    有两点:

    • 如果连接了示波器、 是否能够对其进行配置、以便在达到电压阈值时捕获边沿或停止? 如果是、 您应该能够在两个时钟和数据都静默之前看到一些时钟和数据。
    • 使用800x480设置时、您能否运行"modetest -M tidss"并共享输出?

    第一个要点是确保我们的方向正确。

    第二个要点是检查我们使用的是负同步还是正同步。 过去已经看到了正同步的问题,因此如果我们使用正同步,我们可以强制负同步作为一个实验。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Takuma、

    编码器没有、似乎已连接到编码器、如何从 dsi0连接到编码器?

    ~# modetest -M tidss
    编码器:
    ID CRTC 类型可能的 crtcs 可能的克隆
    39 38 NONE 0x00000001 0x00000001

    连接器:
    ID 编码器状态名称大小(mm)模式编码器
    40 39已连接 HDMI-A-1 520x310 17 39
    模式:
    索引名称刷新(Hz) hdisp HSS htot vdisp VSS VSE vtot
    #0 1920x1080 60.00 1920 2008 2052 2200 1080 1082 1087 1125 148500 flags : phsync , pvsync ;类型:首选,驱动程序
    #1 1920x1080 60.00 1920 2008 2052 2200 1080 1084 1089 1125 148500 flags:phsync、pvsync;类型:驱动程序
    #2 1920x1080 59.94 1920 2008 2052 2200 1080 1084 1089 1125 148352 flags : phsync , pvsync ; type: driver
    #3 1920x1080 50.00 1920 2448 2492 2640 1080 1084 1089 1125 148500标志: phsync , pvsync ;类型:驱动程序
    #4 1920x1080 30.00 1920 2008 2052 2200 1080 1084 1089 1125 74250标志: phsync , pvsync ;类型:驱动程序
    #5 1920x1080 29.97 1920 2008 2052 2200 1080 1084 1089 1125 74176标志: phsync , pvsync ;类型:驱动程序
    #6 1920x1080 25.00 1920 2448 2492 2640 1080 1084 1089 1125 74250标志: phsync , pvsync ;类型:驱动程序
    #7 1920x1080 24.00 1920 2558 2602 2750 1080 1084 1089 1125 74250标志: phsync , pvsync ;类型:驱动程序
    #8 1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250标志:phsync、pvsync;类型:驱动程序
    #9 1280x720 50.00 1280 1720 1760 1980 720 725 730 750 74250标志: phsync , pvsync ;类型:驱动程序
    #10 1280x720 30.00 1280 3040 3080 3300 720 725 730 750 74250标志:phsync、pvsync;类型:驱动程序
    #11 1280x720 29.97 1280 3040 3080 3300 720 725 730 750 74176标志:phsync、pvsync;类型:驱动程序
    #12 1280x720 25.00 1280 3700 3740 3960 720 725 730 750 74250标志:phsync、pvsync;类型:驱动程序
    #13 1280x720 24.00 1280 3040 3080 3300 720 725 730 750 59400标志:phsync、pvsync;类型:驱动程序
    #14 1280x720 23.98 1280 3040 3080 3300 720 725 730 750 59341标志: phsync , pvsync ;类型:驱动程序
    #15 800x600 60.32 800 840 968 1056 600 601 605 628 40000标志:phsync、pvsync;类型:驱动程序
    #16 720x480 60.00 720 736 798 858 480 489 495 525 27027标志:nhsync、nvsync;类型:驱动程序
    道具:
    1 EDID:
    旗帜:不可变的 blob
    Blob:

    值:
    00ffffffffffffffffff002601002401010101
    0720010380341f783eee91a3544c9926
    0f5054210800d1c0010101010101010101
    0101010101023a801871382d40582c
    250008362100001e000000fc00474632
    34300a20202020202020000000ff0064
    656d6f7365742d310a203020000000fd
    0032911eb424000a202020202001a5.
    020339f24d9001020304131f2021223c
    3d3e23097f078301000067030c001000
    1848e200d5e305c000e606050169694f
    681a000001013290e65c82808c70382d
    4030203a0055502100001e8a6f80a070
    3840403020250055502100001e0e5c80
    a0703835403020250056502100001e00
    000000000000000000000000000000db
    2 DPMS:
    旗帜:枚举
    枚举:ON=0待机=1挂起=2关闭=3
    值:0
    5链路状态:
    旗帜:枚举
    枚举:Good=0 bad=1
    值:0
    6非台式机:
    标志:不可变范围
    值:0 1
    值:0
    4个逻辑块:
    旗帜:不可变的 blob
    Blob:

    值:

    CRTC:
    ID fb 位置大小
    38 49 (0、0)(1920x1080)
    #0 1920x1080 60.00 1920 2008 2052 2200 1080 1082 1087 1125 148500 flags : phsync , pvsync ;类型:首选,驱动程序
    道具:
    24 VRR_ENABLED:
    标志:范围
    值:0 1
    值:0
    27 CTM:
    旗帜:blob
    Blob:

    值:
    28 GAMMA_LUT:
    旗帜:blob
    Blob:

    值:
    29 gamma_lut_size:
    标志:不可变范围
    值:0 4294967295
    值:256

    层面:
    Id crtc fb crtc x、y x、y gamma size 可能是 crtcs
    31 38 49 0、0 0 0 0 0x00000001
    格式:AR12 AB12 RA12 RG16 BG16 AR15 AB15 AR24 AB24 RA24 BA24 RG24 BG24 AR30 AB30 XR12 X12 RX12 XR15 XB15 NV24 XB24 X24 XR30 XB30 YUYVY XR12
    道具:
    8类型:
    旗帜:不可变的枚举
    枚举:overlay=0 Primary=1 Cursor=2
    值:1.
    30 in_formats:
    旗帜:不可变的 blob
    Blob:

    值:
    01000000000000001d00000018000000
    01000000900000004152313241423132
    52413132524731364247313641523135.
    414231354152344142323452413234
    4241323452473234424732344231523330
    41423330585231325842313252583132
    5852313558423135585234584234.
    52583234425832345852333058423330
    59555956555956594e56313200000000
    ffffffff1f00000000000000000000
    0000000000000000
    IN_FORMAS blob 解码:
    AR12:线性
    AB12:线性
    RA12:线性
    RG16:线性
    BG16:线性
    AR15:线性
    AB15:线性
    AR24:线性
    AB24:线性
    RA24:线性
    BA24:线性
    RG24:线性
    BG24:线性
    AR30:线性
    AB30:线性
    XR12:线性
    XB12:线性
    RX12:线性
    XR15:线性
    XB15:线性
    XR24:线性
    XB24:线性
    RX24:线性
    BX24:线性
    XR30:线性
    XB30:线性
    YUYV:线性
    UYVY:线性
    NV12:线性
    33 zpos:
    标志:范围
    值:0 1
    值:0
    34 COLOR_ENCODING:
    旗帜:枚举
    枚举:ITU-R BT.601 YCbCr = 0 ITU-R BT.709 YCbCr = 1
    值:0
    35 COLOR_RANGE:
    旗帜:枚举
    枚举:YCbCr 限量程=0 YCbCr 全量程=1
    值:1.
    36 α:
    标志:范围
    值:0 65535
    值:65535
    37像素混合模式:
    旗帜:枚举
    枚举:前乘数=0覆盖率=1
    值:0
    41 0 0 0 0 0 0 0 0 0 0 0x00000001
    格式:AR12 AB12 RA12 RG16 BG16 AR15 AB15 AR24 AB24 RA24 BA24 RG24 BG24 AR30 AB30 XR12 X12 RX12 XR15 XB15 NV24 XB24 X24 XR30 XB30 YUYVY XR12
    道具:
    8类型:
    旗帜:不可变的枚举
    枚举:overlay=0 Primary=1 Cursor=2
    值:0
    30 in_formats:
    旗帜:不可变的 blob
    Blob:

    值:
    01000000000000001d00000018000000
    01000000900000004152313241423132
    52413132524731364247313641523135.
    414231354152344142323452413234
    4241323452473234424732344231523330
    41423330585231325842313252583132
    5852313558423135585234584234.
    52583234425832345852333058423330
    59555956555956594e56313200000000
    ffffffff1f00000000000000000000
    0000000000000000
    IN_FORMAS blob 解码:
    AR12:线性
    AB12:线性
    RA12:线性
    RG16:线性
    BG16:线性
    AR15:线性
    AB15:线性
    AR24:线性
    AB24:线性
    RA24:线性
    BA24:线性
    RG24:线性
    BG24:线性
    AR30:线性
    AB30:线性
    XR12:线性
    XB12:线性
    RX12:线性
    XR15:线性
    XB15:线性
    XR24:线性
    XB24:线性
    RX24:线性
    BX24:线性
    XR30:线性
    XB30:线性
    YUYV:线性
    UYVY:线性
    NV12:线性
    43 zpos:
    标志:范围
    值:0 1
    值:1.
    44 COLOR_ENCODING:
    旗帜:枚举
    枚举:ITU-R BT.601 YCbCr = 0 ITU-R BT.709 YCbCr = 1
    值:0
    45 COLOR_RANGE:
    旗帜:枚举
    枚举:YCbCr 限量程=0 YCbCr 全量程=1
    值:1.
    46 alpha:
    标志:范围
    值:0 65535
    值:65535
    47像素混合模式:
    旗帜:枚举
    枚举:前乘数=0覆盖率=1
    值:0

    帧缓冲区:
    ID 尺寸间距

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    根据日志、编码器已连接到连接器。 也就是说、连接器 ID 40使用编码器 ID 39。

    但是、似乎仍然使用1920x1080分辨率、因此模式不会设置为800x480。 查看 modetest、可能是因为显示器不支持800x480。

    您能否再次尝试下面的补丁并共享"dmesg"和"modetest -M tidss"中的日志?

    e2e.ti.com/.../0001_2D00_Force_2D00_800x600_2D00_resolution_2D00_for_2D00_ADVx_2D00_display_2D00_bridge.patch

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Takuma、

      "之前   "日志消息设置为模式800x600日志、但似乎未成功设置。 我使用了 modetest 设置模式15、但未正常显示。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您需要使用我共享的补丁程序将驱动程序设置为800x600的首选模式。 我以前使用过 另一种 HDMI 桥接器、在该桥接器上、最大分辨率会导致 HSYNC 出现一些问题、因此该实验是要看看问题是否相同。

    此外、仅需在引导后设置模式、这还不够、因为根据您分享的错误寄存器、该问题是 HSYNC 问题。 发生这种情况时、在用户空间中设置新模式不会恢复显示。  

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Takuma:

      我已经修补了您的修补程序、日志与之前的日志消息相同。

      如何解决 HSYNC 问题?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    如果日志相同、则意味着补丁未正确应用、或设置模式的代码未运行。

    您能否再次检查以确保驱动程序构建没有错误、刷写没有错误、并共享"dmesg"中的日志?

    HSYNC 是由于 HSYNC 的时序参数或极性问题而导致的。 我们首先尝试使用我共享的补丁来更改时序、然后我们可以调整极性。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma

    我记得我从其他 e2e 帖子中了解到、我们曾经为 TDA4系列支持其他 DSI 转 HDMI。

    您是否有我们曾经支持的特定器件型号?  

    Br、Rich

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Takuma、

      驱动程序加载正确、但 未调用 adv7511_get_Modes 函数。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我懂了。 由于美国假期、我目前外出、因此 明天我将尝试为驾驶员制作新的实验补丁。 感谢您的耐心。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    [引述 userid="9853" url="~/support/amplifiers-group/amplifiers/f/amplifiers-forum/1456851/processor-sdk-am67-dts-configuration-for-dsi-convert-to-hdmi/5661629 #5661629"]

    我记得我从其他 e2e 帖子中了解到、我们曾经为 TDA4系列支持其他 DSI 转 HDMI。

    您是否有我们曾经支持的特定器件型号?  

    [/报价]

    为了回答这个问题、我们已经 在以下主题中支持了朗迅科技有限公司8912b: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1334454/sk-tda4vm-issue-with-making-lontium-lt8912b-stream-video-to-hdmi-connector/5101749

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    为了继续调试、我注意到默认的首选模式时序参数在共享的 modetest 日志中是非标准的。 HDMI 使用的 EDID 时序参数可在此处找到: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/gpu/drm/drm_edid.c?h=ti-linux-6.6.y、 第一种模式不适合任何模式。 这可能是问题所在。

    因此、为了进行实验、我们希望能够在引导时手动选择要选择的模式。 您能否试用 这 两个补丁并共享"dmesg"中的日志、以便我可以按照代码的方向操作?

    e2e.ti.com/.../5224.0001_2D00_Force_2D00_800x600_2D00_resolution_2D00_for_2D00_ADVx_2D00_display_2D00_bridge.patch

    e2e.ti.com/.../0002_2D00_Add_2D00_debug_2D00_prints_2D00_and_2D00_remove_2D00_from_2D00_prune_2D00_config.patch

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Takuma、

    请参阅以下日志文件、也不会调用 adv7511_get_modes 函数。

    e2e.ti.com/.../am67_5F00_dsi_5F00_hdmi_5F00_log.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    感谢您试验和共享日志。 我可以在2天内进行内部讨论、实验并制作新的补丁吗?

    我计划使用具有 DPI 到 HDMI 桥接器的 TI AM67-SK 电路板、查看是否可以在不通过 GET_MODES 挂钩的情况下手动设置模式。

    同时、您可以并行尝试的一个实验是查看您是否可以通过 Linux 内核命令手动设置 EDID。 步骤如下:

    1. 在引导过程中、连续按任意键在 U-Boot 中停止
    2. 运行 finduuid
    3. setenv args_mmc "run finduid;setenv bootargs console=${console}${optargs}root=PARTUID=${uuid}rw rootfstype=${mmcrootfstype}video=HDMI-a-11920x1080@30"
    4. 引导
    5. 之后、请再次发布  modetest -M tidss 的输出

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Takuna:

    DSI 和 HDMI 有信号、但 HDMI 显示器没有图像显示、波形是否正确?

    DSI 信号:

    HDMI 信号:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我在内部讨论了并了解到、由于 Linux 的软件架构发生变化、get_mode 连接器功能不再使用。  

    但是、最好看到时钟和数据输出! 这是否是运行 U-Boot 命令将优先级设置为1920x1080@30Hz 的实验的结果?

    如果是、您能否添加以下补丁:

    e2e.ti.com/.../0001_2D00_HACK_2D00_force_2D00_negative_2D00_syncs_2D00_for_2D00_1920x1080_2D00_30Hz.patch

    然后共享"modetest -M tidss"中的日志

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Takuma、

      请重新引用日志文件

    .e2e.ti.com/.../modetest_5F00_log.txt

    e2e.ti.com/.../am67_5F00_dsi_5F00_log.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您能否使用经过修补的驱动程序执行 U-Boot 参数? 在 modetest 中、应该会显示带有"#4 1920x1080 30.00"的行是用户定义的首选项。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Takuma:

      我添加 u-boot 参数 video=HDMI-A-1:1920x1080@30以启动、日志消息如下、HDMO 监视器不显示。

    另一方面,我使用了 adv7535 测试模式, HDMI 显示器显示如下。

    e2e.ti.com/.../dsi_5F00_1920_5F00_1080_5F00_30.txt

    e2e.ti.com/.../dmeg_5F00_1920x1080_5F00_30.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    感谢您使用测试图形模式进行检查。 这应该缩小问题发生的位置、具体而言、我们可以更有信心确保桥接器后的流水线正常工作。

    对于日志、它们看起来确实会应用补丁、并且 U-Boot 会在30FPS 下选择1920x1080。 我曾希望这会使展示工作。

    无论如何,我还有3个想法,我们可以尝试。

    第一个想法、您是否可以尝试应用此补丁:

    e2e.ti.com/.../0001_2D00_HACK_2D00_force_2D00_adv_2D00_HDMI_2D00_bridge_2D00_for_2D00_720x480.patch

    这应该会使最小分辨率成为首选模式。 时间安排也应该最宽松。

    为了准备我的第二个想法、您知道 adv7535 测试模式使用的计时参数是什么吗? 我们可以尝试使用与测试模式相同的时序。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma

     我给您的补丁打补丁、和之前一样、不显示。

    对于 adv7535测试图形模式、我使用了以下配置文件设置。

    e2e.ti.com/.../1920_5F00_1080p_5F00_4Lane_5F00_DSI.txt

    e2e.ti.com/.../am67_5F00_dsi_5F00_modetest.txt

    e2e.ti.com/.../am67_5F00_dsi_5F00_dmesg.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    感谢您的日志。 这些日志有点出乎意料。 该补丁应该使720x480成为首选的分辨率...

    让我今天/明天再创建两个增补程序、供您试用。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    对于第一个实验、您是否可以还原过去所做的更改并应用此修补程序:

     e2e.ti.com/.../0001_2D00_adjust_2D00_1920x1080_2D00_60Hz_2D00_mode_2D00_timings.patch

    然后、不要运行 U-Boot 命令来更改内核参数、并让显示屏选择自动使用的模式。 modetest 命令应给出以下行作为第一种模式:

     #0 1920x1080 60.00 1920 2008 2052 2200 1080 1082 1087 1125 148500 flags:nhsync、nvsync;类型:首选、驱动程序

    如果在此补丁之后仍然没有显示、请再次发送 modetest 日志、并使用  devmem2 0x305000F0检查状态寄存器。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma

      我安装了这个补丁、它也无法显示输出。

    devmem2 0x305000F0
    /dev/mem 已打开。
    映射到地址0xffffab7c5000的存储器。
    读取地址0x305000F0 (0xffab7c50f0):0x00000004

    e2e.ti.com/.../am67_5F00_dsi_5F00_hdmi_5F00_patch250303.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma

     即 SoC DSI 支持  视频模式操作?

    在测试模式下,adv7535检测到片区为 x4且视频输入格式为576i 未激活,在正常模式  下,adv7535检测到片区为 x2且视频输入格式为240p 激活。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、  

    是、DSI 支持使用非突发同步脉冲进行视频模式操作。

    至于寄存器、我假定 adv75x Linux 驱动程序对正确的值进行编程。 但作为实验、您可以尝试更改编程以匹配测试图形模式的寄存器值。 默认值如下所示: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c?h=ti-linux-6.6.y#n42

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma

       adv7535驱动程序会检测和设置   寄存器值、当我修改寄存器值时、adv7535驱动程序会对其进行修改。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    修改 寄存器值时、它将被 adv7535驱动程序修改回。

    寄存器值是如何修改的? 您是否使用 i2cset 等工具通过 I2C 写入进行修改? 或者您是否使用不同的默认寄存器值修改 adv7535驱动程序。 我假设 adv7535驱动程序只是从 adv7511_drv.c 中获取默认寄存器、因为很多代码都是共享的。

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma

      我使用 i2cset 来修改寄存器值、我认为它不是 adb7535驱动程序的默认值。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您是否可以尝试修改驱动程序? 此驱动程序中的"adv7511_register_default"变量应该是存储寄存器值的位置:

    https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c?h=ti-linux-6.6.y#n42

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Takuma

      adv7535驱动器已通过 DSI 输入修改默认值、请参阅以下转储 adv7535寄存器。