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.

[参考译文] TDA4VM:Linux 上的 TDA4VM DSI 支持

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1131651/tda4vm-tda4vm-dsi-support-on-linux

器件型号:TDA4VM
主题中讨论的其他器件: TDA4VL

您好!

我们希望使用 TDA4VM 的 MIPI-DSI 输出、而不是 DisplayPort。 简单的原因是、我们希望允许使用显示接口、并且可以访问 SERDES4、将其用作 SGMII 或 QSGMII、以便从 CPSW9G 提供4个 GbE 端口。  如果使用 DisplayPort、SERDES4的 TX 通道将与 DP 功能一同使用。

从1年前发布的这篇文章中可以解释说、Linux 不支持 DSI、未来也没有计划:

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1005337/tda4vm-dsi-support-in-psdkla

但是、从以下 e2e 帖子中、TI 似乎打算在 SDK 8.4中添加对 DSI 的支持:

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1113577/tda4vm-tda4vm-dsi-support-in-psdkla-with-sdk-version-ti-processor-sdk-linux-j7-evm-08_02_00_03?tisearch=e2e-sitesearch&keymatch=TDA4VM%252520MIPI%252520DSI%252520Linux#

但是、最新的 PSDK Linux 发行说明(8.4)似乎不支持 DSI:

https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-rt-jacinto7/latest/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/Display/DSS7.html

具有 DSI 支持将允许将更具成本效益的 LCD 面板直接连接到 TDA4VM。 此外、扩展到 LVDS、HDMI 和 FPDLinkIII 也是非常可能的。 我们的用例涉及将其用作 HMI、而不是摄像头预览屏幕、因此使用 Linux 而不是 RTOS 来驱动它更有意义。

在 J7上向 Linux 添加 DSI 支持的计划是什么?

谢谢!

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

    尊敬的

    我认为应该已经得到了支持、让我与团队内部进行核实、然后就此向您回复。  

    此致、

    Brijesh

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

    您好、Brijesh、

    选中8.04后、我们可以在 DTS 中找到一些对 MIPI-DSI 的引用。 这意味着即使发行说明中另有说明、也确实添加了支持。

    您是否知道这是否通过了显示器测试?

    谢谢!

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

    尊敬的 

    是的、这已经过验证、但在 TDA4VL 器 件上、我认为即使在 TDA4VM 上、也可以使用相同的器件节点进行检查。  

    此致、

    Brijesh

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

    您好、Brijesh:

    您能否为我们提供一些有关如何在 TDA4VM 的 DSI 节点中设置时钟、电源域和中断的线索?

    DSI0DSI@4800000
            兼容="ti、j721e-DSI"
            REG =<0x0 0x04800000 0x0 0x100000>、<0x0 0x04710000 0x0 0x100>
            时钟=<&K3_CLKS 154 4>、<&K3_CLKS 154 1>
            时钟名称="DSI_p_clk""DSI_SYS_clk"
            电源域=<&K3_PDS 154 TI_SCI_PD_Excluse>
            interrupt-parent =<&gic500>
            中断=<GIC_SPI 600 IRQ_TYPE_LEVEL_HIGH>
            phys =<&dphy0>
            PHY-names ="dphy"

            dsi0_ports端口
                #address-cells =<1>
                #size-cells =<0>
                端口@0
                    reg =<0>
                };
                端口@1
                    reg =<1>
                };
            };
        };

    BR、

    Richard

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

    您好 Richard、

    请参阅以下 DTS 节点吗? 这些用于 j721e、但类似的也可用于 j721s2。

    github.com/.../k3-j721e-main.dtsi

    github.com/.../k3-j721e-beagleboneai64.dts

    https://github.com/ravi-rahul/BeagleBoard-DeviceTrees/blob/a4070e54bc1e701ff857b15b260a3977403382a2/src/arm64/k3-j721e-beagleboneai64.dts#L2111

    此致、

    Brijesh

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

    您好、Brijesh:

    我正在努力通过我们的定制 TDA4VM 电路板 DS90UB941/DS90UB948来启用 LVDS 面板。

    TDA4VM (MIPI DSI 4通道)-> DS90SUB941 ->(FPDLINK) DS90UB948 ->(LVDS) 1280x800面板


    我们已在 NXP i.mx8MP 平台上成功启用它。
    在 TDA4VM 上、我遇到了 DSI 面板无法 CDNS-DSI-core.c 中"通过 mode_valid"且始终在"phy_validate"中失败的问题。

    ----------------------------------------------------------------------

    Kern :debug:[DRM:DRM_sysfs_connector_add]将"DSI-1"添加到 sysfs 中
    Kern :debug:[DRM:DRM_sysfs_hotplug_event]生成热插拔事件
    Kern :info :[DRM]为次要0上的4a00000.dss 初始化了 tids 1.0.0 20180215
    Kern :debug :[DRM:DRM_CLIENT_MODEET_PROM]
    Kern :debug:[DRM:DRM_MODE_OBJECT_GET] OBJ ID:39 (2)
    Kern :debug:[DRM:DRM_helper_probe_single_connector_modes][connector:39:DSI-1]
    Kern :debug:[DRM:DRM_helper_probe_single_connector_modes][connector:39:DSI-1]状态从未知更新为已连接
                  -->文件:drivers/GPU/DRM/BRIDE/CADEN/CDS-DSI-CORE.c,函数:CDNS_DSI_BRIDGE_MODE_VALID,行:249
                  --> CDNS_DSI_CHECK_conf -启动
                  --> CDNs_DSI_CHECK_conf - CDNS_DSI_mode2cfg
                  --> CDNs_DSI_CHECK_conf - phy_mipi_dphy_get_ddefault_config
                  --> CDNS_DSI_ADJUST_phy_config - CDNS_DSI_ADJUST_phy_config
                  -->文件:drivers/GPU/DRM/BRIDE/BRIDEN/CDNS-DSI-CORE.c,函数:CDNS_DSI_ADJUST_phy_config,行:129
                  --> CDNS_DSI_ADJUST_phy_config,通道号:4.
                  --> CDNS_DSI_ADJUST_phy_config - phy_validate
                  --> CDNs_DSI_BRIDGE_MODE_VALID - MODE_BAD
    Kern :debug:[DRM:DRM_MODE_DEBUG_printmodeline] Modeline“1280x800”:58 68900 1280 1320 1400 1440 800 813 803 823 0x48 0xA
    Kern :debug:[DRM:DRM_MODE_prune_invalid]未使用1280x800模式:错误
    Kern :debug:[DRM:DRM_CLIENT_MODEET_PROM]未报告与模式连接的连接器
    Kern :debug:[DRM:DRM_CLIENT_MODEET_PROM]连接器39是否已启用? 是的
    Kern :debug:[DRM:DRM_CLIENT_MODEET_PROM]不使用固件配置
    Kern :debug:[DRM:DRM_CLIENT_modeset_probe]在连接器39上查找命令行模式
    Kern :debug:[DRM:DRM_CLIENT_MODEET_PROM]在连接器39 0上查找首选模式
    Kern :debug:[DRM:DRM_CLIENT_MODEET_PROM]找到模式无
    Kern :debug:[DRM:DRM_CLIENT_Modeset_probe]为8096x8096配置挑选 CRC
    Kern :debug:[DRM:DRM_MODE_OBJECT_PLOT.PLE3.3] OBJ ID:39 (2)
    Kern :debug : tids 4a00000.dss:[DRM:__DRM_fb_helper_initial_config_and_unlock]测试 CRTC 0主平面
    Kern :info : tids 4a00000.dss:[DRM]找不到任何 CRTC 或大小

    ----------------------------------------------------------------------

    示波器上没有显示 DSI 时钟输出。
    我们只能看到要启用的背光。 它说明了 SERDES 面板的配置生效。
    我已尝试在   CDNS-DSI-CORE.c 中标记"phy_validate"检查
    但仍然没有 DSI 时钟输出。

    我们可以测量 NXP i.mx8MP 上的 DSI 时钟。

    测量时钟213MHz 对应于位时钟。
    位时钟(bitclk)= htotal x vtotal x 60 x (bpp)/(通道数)  
                = 1440 x 823 x 60 x 24 / 4 = 426、643、200 = 426 MHz
    因为 MIPI 时钟是 DDR 触发器。 因此测量的时钟频率是位时钟数据速率的一半。
    426MHz/2 =213MHz

    要启用 MIPI DSI 支持、我修改了:
    1.我应用 K3-j721e-main.dts 中的 DSI 相关补丁
    https://github.com/TechNexion-customization/linux-ti/commit/c9d231f24fc7c726919fb75453c91d1b28dc2f7b

    2.在"drrivers/GPU/DRM/panel/panel-simple.c"中添加显示时序设置
    https://github.com/TechNexion-customization/linux-ti/commit/13f14b309407046c43f22af54e025119ec2bd9c2

    3.将设备树覆盖添加到启用面板
    https://github.com/TechNexion-customization/linux-ti/commit/558bbb76379a786b4fc728ae1bca1ebc67905b0d

    我的问题是如何使 CDNS-DSI-CORE 通过'phy_validate'? 在"phy_validate"中失败时、这意味着什么

    是否有任何示例可演示 TDA4VM 的 CDN DSI? (例如,MIPI 面板可与 面板模拟和 CDNS-DSI 驱动器配合使用。)
    然后、虽然我没有物理面板、但我仍然可以测量 DSI 时钟输出以证明 DSI 控制器工作正常。

    谢谢~!!!

    BR、

    Richard

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

    我按照下面的更改在 'panel-simple.c'的'rm_display_mode'设置中添加了 CRTC_clock、CRTC_hdisplay 、然后  CDNS-DSI-CORE 可以通过'phy_validate'

    https://github.com/beagleboard/linux/commit/77f3db77d12b545326d33a9d7e2807da16af4f2f

    下面是我所做的更改:

    https://github.com/TechNexion-customization/linux-ti/commit/ac541020a6b17cddfed7fa8ee97da24e9d07d359

    但我仍然无法在示波器上测量 DSI 时钟。

    我没有从 tids 中获取 bus_formats 消息、我将尝试解决它。

    root@j7-evm:~# systemctl stop Weston
    root@J7-EVM:~#[   35.689557] tids 4a00000。dss:tids_encoder_at原 子检查:已连接显示中没有 bus_formats
    [35.701290]   tids 4a00000.dss:tids_encoder_at原 子_check:连接的显示中没有 bus_formats
    根目录@J7-EVM:~# kmsprint
    连接器0 (39) DSI-1 (已连接)
    [43.305264]   tids 4a00000.dss:tids_encoder_atel_check:连接的显示中没有 bus_formats
      编码器0 (38)无
    root@J7-EVM:~# kmstest -c 0
    连接器0/@39:DSI-1[51.854265]   tids 4a00000。dss:tids_encoder_at原 子检查:连接的显示屏中没有 bus_formats
      CRTC 0/@37:1280x800 68.900 1280/40/80/40/- 800/3/10/10/- 58[   51.864986] tids 4a00000。dss:tidss_encoder_at原 子_check:在连接的显示屏中没有 bus_formats
    (58.14) 0xA 0x48
      平面0/@31:0、0-1280x800
        FB 59 1280x800-XR24
    原子测试失败:-22

    我注意到 BeagleBone AI 64发生了变化、改为对 RPI 7英寸面板使用 VESA 计时。

    CDN DSI 驱动程序是否需要?

    导致无 DSI 时钟输出的任何其他可能原因吗?

    BR、

    Richard

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

    在使用 panel-simple.c 的自定义面板中指定总线格式后、我可以看到有 DSI 时钟输出:

    https://github.com/TechNexion-customization/linux-ti/commit/b0c027c8a48ab786e22a841545a6eddf272f085d

    但显示屏仍然没有显示任何内容。 我将继续处理它。

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

    我可以从 DES 获取 LVDS 时钟输出。

    但显示屏上仍然没有显示任何内容。

    不确定是什么问题导致不显示。

    当我执行 kmstest 时、DSI 时钟停止。

    正确吗? 如果显示正常、则应输出测试图案。


    root@j7-evm:~# systemctl stop Weston
    根目录@J7-EVM:~# kmsprint
    连接器0 (39) DSI-1 (已连接)
      编码器0 (38)无
        CRTC 0 (37) 1280x800 68.900 1280/40/80/40 800/3/10/58 (58.14)
          平面0 (31) fb-id:58 (crtcs:0) 0、0 1280x800 -> 0、0 1280x800 (AR12 AB12 RA12 RG16 BG16 AR15 AB24 AR24 AB24 RA24 BA24 RG24 BG24 AR30 AB30 YXR12 RX12 AB15 XR24 RX24 RX24 RX24 24 24 24 RX24 24 24 24 V RXB24 V30)
            FB 58 1280x800
    root@J7-EVM:~# kmstest -c 0
    [288.495604]  tids 4a00000。dss:CRTC2同步丢失:(IRQ 8000)
    [288.501335]  tids 4a00000.dss:CRTC2 SYNC 丢失:(IRQ 8000)
    [288.506822]  tids 4a00000.dss:CRTC2同步丢失:(IRQ 8000)
    [288.512310]  tids 4a00000。dss:CRTC2同步丢失:(IRQ 8000)
    [288.517794]  tids 4a00000.dss:CRTC2同步丢失:(IRQ 8000)
    [288.523280]  tids 4a00000.dss:CRTC2同步丢失:(IRQ 8000)
    [288.528954]  tids 4a00000.dss:CRTC2同步丢失:(IRQ 8000)
    [288.534481]  tids 4a00000。dss:CRTC2同步丢失:(IRQ 8000)
    [288.539974]  tids 4a00000.dss:CRTC2同步丢失:(IRQ 8000)
    [288.54545453]  tids 4a00000.dss:CRTC2 SYNC 丢失:(IRQ 8000)
    连接器0/@39:DSI-1[288.558305]  tids 4a00000。DSS:VP2:时钟速率600000000与请求的68900000相差5%以上
      CRTC 0/@37:1280x800 68.900 1280/40/80/40/- 800/3/10/- 58 (58.14) 0xA 0x48
      平面0/@31:0、0-1280x800
        FB 59 1280x800-XR24
    按 ENTER 键退出
    root@j7-evm:~ kms-t窃取-CRTC /dev/dri/card0
    使用屏幕 DSI-0、分辨率为1280x800

    BR、

    Richard

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

    您好 Richard:

    我将与 TI Rnd 一起检查此 E2E。

    在得出结论之前,我认为这可能是根本原因。   tids 4a00000:dss:vp2:时钟速率600000000与请求的68900000相差5%以上

    您可以检查时钟设置吗?

    谢谢。

    BR RIO

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

    可能会降低该值以进行尝试吗? =>.CRTC_CLOCK  = 68900/* 68900、*/

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

    感谢您的反馈。

    我尝试将像素时钟增加到71000kHz、降低到67900kHz、并设置精确的68900kHz 时钟。
    它看起来没有区别。 我仍然看到黑色显示屏。


    更新最新状态:

    在定制的 TDA4VM 电路板上、我可以测量示波器上的 DSI 时钟输出和 LVDS 时钟输出。

    (TDA4VM 的 DSI 时钟输出大约为213MHz,如下所示)

    但我看不到下面显示的示波器中显示的 DSI 数据输出。

    我认为这可能是导致屏幕上显示黑屏的根本原因。

    我们已在 NXP i.mx8mp 上启用 SERDES 面板。

    我们可以从 i.mx8mp 获取清晰的 DSI 时钟和 DSI 数据输出。

    (i.mx8mp 的 DSI 时钟输出如下所示。)

    (imx8mp 的 DSI 数据输出如下所示。)

    我的问题是:

    1.我不确定我没有漏掉什么来使 TI DSS 和 DSI 不输出 DSI 数据。

    这是我所做的更改。

    https://github.com/TechNexion-customization/linux-ti/commits/tn-ti_5.10.120_08.04.00.005-next-dsi-vizionpanel

    2.我们了解到08.04.00 BSP 中的 TDA4VM 不支持 DSI、因此我们的职责是启用自定义面板。

    但是、您能否为我们提供一个示例或演示如何使用 panel-simple-DSI 驱动程序(panel-simple.c)启用 DSI 面板。

    因此、即使我没有手头上的面板、我仍然可以测量 DSI 时钟和数据输出、以确保 DSS 和 DSI 正常工作。

    BR、

    Richard

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

    您好 Richard:

    感谢您的快速回复。

    我们的 RND 正在为该问题找到正确的补丁。

    我们将尽快回来。

    BR RIO

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

    您好 Richard、

    DSI 从 DSS 获取输入数据、因此为了从 DSI 获取数据输出、我们需要通过 DSS 发送一些数据。 是否可以使用以下命令发送一些数据?  

    kmstest

    此致、

    Brijesh

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

    尊敬的

    以下 TT 有类似的问题、您可以参考吗?  

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1159173/tda4vm-tda4vm-can-not-output-dsi-frequency-signal-on-linux

    此致、

    Brijesh

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

    e2e.ti.com/.../modetest_5F002D00_M_5F00_tidss_5F00_on_5F00_custom_5F00_tda4vm_5F00_20221012.txt

    感谢您的反馈。

     将附加 modetest 的日志文件。

    我检查过这个帖子、看起来我穿着他的鞋子。

    他还只获得 DSI 时钟输出、而没有 DSI 数据输出。

    BR、

    Richard

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

    您好 Richard、

    您是否还可以运行 kmstest 命令并查看输出中是否有任何内容?

    此致、

    Brijesh

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

    另请参阅以下命令的输出。 这将在实际显示屏上显示一些测试模式。

    modetest -M tids -s 39@37:1280x800

    另外、请确认以下链接中提到的两个项目是否已得到处理。  

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1159173/tda4vm-tda4vm-can-not-output-dsi-frequency-signal-on-linux/4364549#4364549

    此致、

    Brijesh

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

    e2e.ti.com/.../modetest_5F002D00_M_5F00_tidss_5F00_on_5F00_custom_5F00_tda4vm_5F00_20221013.txt

    随附测试命令结果。

    1.除了"tids 4a00000.dss:vp2:时钟速率600000000与请求的6700000相差5%以上"之外,我没有看到任何错误消息。

    2.我可以在开头的示波器上看到 DSI 时钟输出。 但是在我发出"kmstest"后、DSI 时钟停止输出。

    3. Weston 应该已经在屏幕上输出 wayland 桌面。 kmstest 仅输出特定模式以检查显示大小和颜色。

    BR、

    Richard

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

    Ri Brijesh

    在开始本 e2e 主题之前、我们已根据 BeagleBoard DTS 的参考实现了 DS/DSI、因此我们应该很好。 请查看:

    1) 1)对于 DSS 端口分配:

    github.com/.../k3-j721e-rovy-4vm-vizionpanel-vl10112880.dts

    2) 2)对于 phy2时钟分配、请参阅:

    github.com/.../k3-j721e-rovy-4vm-vizionpanel-vl10112880.dts

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

    你(们)好、Richard

    我看到您之前提到的关于"item3"的消息

    3. Weston 应该已经在屏幕上输出 wayland 桌面。 kmstest 仅输出特定模式以检查显示大小和颜色。

    根据您的案例、有一点好奇、  

    所以您可以输出屏幕形式"DSI TX"?

    只需检查一下

    非常感谢

    Gibbs

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

    我对这种误解感到抱歉。

    我无法从"DSI TX"输出屏幕、因为没有来自 TDA4VM 的 DSI 数据信号输出。

    我在第3项中的意思是"Weston 已经利用了 kms 来呈现某些东西。 无需使用 kmstest 进行渲染。 如果我不发出 kmstest 命令、这不应该是导致无显示输出的原因。"

    BR、

    Richard

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

    因为 DSI 控制器配置为在连续模式下工作。

    因此、即使没有数据、它也会不断输出 DSI 时钟。(看起来 DSI 控制器已正确激活。)

    我同意你的说法。

    DSS 可能不会将数据流输出到 DSI 控制器。

    但是、我如何检查和验证它呢?

    谢谢~!!!

    BR、

    Richard

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

    你(们)好、Richard

    我不确定这是有用的信息

    我正在学习 TVG 发生器、它可能会确保 DSI+D PHY 首先运行良好

    供您参考。

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1159173/tda4vm-tda4vm-can-not-output-dsi-frequency-signal-on-linux

    Gibbs

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

    TRM 中有关 DSI 块的信息有限、我找不到有关 DSI 寄存器表的任何说明。

    是否有任何其他文档包含 DSI 详细信息?

    谢谢~

    BR、

    Richard

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

    你(们)好、Richard

    https://www.ti.com/product/TDA4VM?utm_source=google&utm_medium=cpc&utm_campaign=epd-null-apro-prodfolderdynamic-cpc-pf-google-wwe&utm_content=prodfolddynamic&ds_k=DYNAMIC+SEARCH+ADS&DCM=yes&gclid=Cj0KCQjwnbmaBhD-ARIsAGTPcfW-23Lai1fFiyasIJIjCqUC_eF6XL87r21zAssv9JDA8vrhiioAmJIaAoFCEALw_wcB&gclsrc=aw.ds#tech-docs

    selsct 用户指南(RevC)

    * spruil1c.pdf -->  12.6.5.7 DSI 编程指南,p3149

    * J721E_register5.pdf

    Gibbs

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

    谢谢! 我没有注意到寄存器表位于另一个 pdf 中...

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

    我尝试转储 DSI 状态寄存器并获取一些信息:

    根目录@J7-EVM:~# devmem2 0x0480002C
    /dev/mem 已打开。
    映射到地址0xff80970000的存储器。
    在地址  0x0480002C (0xff8097002c)上读取:0x000402A6

    它表示只有 CLK 通道处于 HS 模式、4个数据通道处于空闲状态。

    它与我在示波器上看到的结果相匹配。


    根目录@J7-EVM:~# devmem2 0x04800024
    /dev/mem 已打开。
    映射到地址0xffffff5437000的存储器。
    在地址  0x04800024 (0xffa5437024)处读取:0x0000003F

    它表示 clk 通道、4个数据通道就绪。


    根目录@J7-EVM:~# devmem2 0x048000F0
    /dev/mem 已打开。
    映射到地址0xFFbd858000的存储器。
    在地址  0x048000F0 (0xffbd8580f0):0x00000004处读取

    它指示"显示 HSYNC "。 不确定是如何发生的。


    我看到"tids"的中断计数不断增加。
    root@j7-EVM:~# cat /proc/interrupts | grep -i "DSI\|DSS"
    41:          0          0     GICv3 632等级     4800000。DSI
    42:       1286          0     GICv3 634级     链接

    它表示 tids 处于活动状态!?


    但在我“最可爱”之后。 DSI 状态寄存器显示如下:

    根目录@J7-EVM:~# devmem2 0x0480002C
    /dev/mem 已打开。
    映射到地址0xff86c74000的内存。
    在地址 0x0480002C (0xff86c7402c)上读取:0x00000000
    根目录@J7-EVM:~# devmem2 0x04800024
    /dev/mem 已打开。
    映射到地址0xff920b5000的内存。
    读取地址 0x04800024 (0xff920b5024):0x00000001
    根目录@J7-EVM:~# devmem2 0x048000F0
    /dev/mem 已打开。
    映射到地址0xff89a04000的存储器。
    在地址 0x048000F0 (0xff89a040f0):0x00000000处读取

    它看起来时钟和数据通道尚未处于就绪状态!?

    BR、

    Richard

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

    您好 Richard、

    我想您现在可以在从 Rohit 应用补丁后从 DSI 获取一些有效数据、因此请告知我们是否可以关闭此 TT。

    此致、

    Brijesh

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

    我们可以关闭此 TT。 谢谢!

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

    谢谢、