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.

[参考译文] AM4378:AM4378:HDMI 问题

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1188266/am4378-am4378-hdmi-issue

器件型号:AM4378

这与以下锁定线程相关:

AM4378:HDMI 问题-处理器论坛-处理器- TI E2E 支持论坛

我们仍然没有收到我们可以使其正常工作的回复、这显然是与软件/驱动程序相关的问题、我们希望获得更多帮助。  

我们仍然陷入-22错误、任何想法都将不胜感激。  

提前感谢您的帮助。  

此致、  

Berkay

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

    您好!

    让我在内部与我们的开发人员联系以获得更多反馈、我将在24-48小时内回复您。 请记住、我们尚未测试 您使用的 HDMI 发送器、支持将受到限制。

    此致、
    Krunal

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

    您好!

    根据我与开发人员的讨论、以下是几个要点:

    请恢复以下链接中提到的更改: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1172821/am4378-hdmi-issue/4429569#4429569 

    一般而言、社区已更新 DRM 框架、现在 DSS/编码器驱动程序(OMAP-DSS)应连接 到 DRM 连接器实体。  社区 已经更新了我们的 DSS 驱动程序以 与 DRM 框架兼容。 但是、tda19988桥接驱动器尚未更新为与新框架兼容、并且在 DSS 尝试连接桥接 器时报告错误:https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/gpu/drm/i2c/tda998x_drv.c?h=ti-linux-5.10.y#n1365

    我们的指导是与 tda19988制造商合作、并要求他们更新驱动程序。 以下是我们认为代码应如何显示的示例:

    static int simple_bridge_attach(struct drm_bridge *bridge,
                    enum drm_bridge_attach_flags flags)
    {
        struct simple_bridge *sbridge = drm_bridge_to_simple_bridge(bridge);
        int ret;
    
        ret = drm_bridge_attach(bridge->encoder, sbridge->next_bridge, bridge,
                    DRM_BRIDGE_ATTACH_NO_CONNECTOR);
        if (ret < 0)
            return ret;
    
        if (flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR)
            return 0;
    
        if (!bridge->encoder) {
            DRM_ERROR("Missing encoder\n");
            return -ENODEV;
        }
    
        drm_connector_helper_add(&sbridge->connector,
                     &simple_bridge_con_helper_funcs);
        ret = drm_connector_init_with_ddc(bridge->dev, &sbridge->connector,
                          &simple_bridge_con_funcs,
                          sbridge->info->connector_type,
                          sbridge->next_bridge->ddc);
        if (ret) {
            DRM_ERROR("Failed to initialize connector\n");
            return ret;
        }
    
        drm_connector_attach_encoder(&sbridge->connector, bridge->encoder);
    
        return 0;
    } 

    此致、
    Krunal