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.

[参考译文] AM62P:AM62P DSI 驱动器变更

Guru**** 2905440 points

Other Parts Discussed in Thread: AM62P

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1642641/am62p-am62p-dsi-driver-changes

部件号: AM62P

尊敬的 Apps 团队:  

 

在客户 behalv 上发帖、他正在使用 TI Linux 6.12.y 在 AM62P 的产品上构建 MIPI-DSI 面板 他们以前在不同的 SOC 上有一个用于相同 dislpay 的工作面板驱动程序、但在 AM62P 上、他们观察到 dislpay 在启动后偶尔保持黑色。 分配 e2e 主题后、我将通过电子邮件向您发送文件 但这是请求:  

 

在对面板驱动程序进行重大更改并将面板 DCS 初始化转换为 Prepare () 之后,我们发现在我们的设置中,准备时间直接 DSI 传输不可靠。 因此、系统可以在面板保持未初始化状态的情况下启动视频流水线、从而导致黑屏。

我们目前的理解是、它无法仅通过显示面板驱动程序来解决。  

 

我们的本地客户变化将执行以下任务:

  1. cdns_dsi_transfer ():pm_runtime_resume_and_get ()-> cdns_DSI_init_link ()-> cdns_DSI_hs_init ()-> cdns_DSI_wait_for_lane_ready ()-> transfer -> pm_runtime_put ()
  2. cdns_dsi_hs_init () 现在返回 int 并传播 phy_init ()、phy_configure () 和 phy_power_on () failures
  3. PLL 锁定轮询已扩展
  4. Atomic_pre_enable () 现在使用相同的链接/HS/lane 就绪序列
  5. 运行时挂起会关闭 PHY 并清除 phy_initialized/link_initialized

 

如果没有此顺序、第一条准备时间 DSI 命令在我们的设置中未可靠地生效、这可能会在视频仍在启动时使面板保持未初始化状态。

通过上述更改和一些主要的面板驱动程序修改、我们能够完全缓解该问题。

 

请告知:

  • 这是否与 TI Linux 6.12.y 中的已知问题或建议时序相匹配、用于启用视频之前的直接传输?
  • 您是否 发现此运行时 PM / PHY /通道就绪处理存在任何问题或回归风险?
  • 如果方法看起来 正确、TI 是否更希望将其保留在下游、或将其作为 TI 树的补丁系列发送?

 

请查找所附的当前驱动器。  

我可以将 Cadence 主机端更改作为补丁发送、如果更易于查看、则可以使用任何其他方法发送。 如果有任何问题、我们这边还需要其他问题、请随时与我联系。

谢谢您、  

Marinus  

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

    您好:Marinus、
    在测试我们支持直接 DCS 写入的一个内部面板时、我们需要在 6.12 时进行以下更改、请告诉我这些更改是否与您的内容一致: e2e.ti.com/.../0245.0001_2D00_Enable_2D00_Microtips_2D00_DSI_2D00_panel_2D00_on_2D00_6_5F00_12.patch

    面板驱动器侧主要发生变化、但 Cadence 驱动器侧也有一些变化。 请告诉我、Cadence 驾驶员侧的更改是否也对您的 case 有帮助、将使合并这些更改变得更容易。 此外、客户面板是基于 ili9881c 还是其他一些控制器芯片?

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

    尊敬的

    感谢您分享补丁、很抱歉稍后回复。

    我修改了您的贴片后的 DSI 端变化、还修复了我们的面板集成以及相关的面板驱动程序修改。 完成这些更改后、显示屏现在可以在我们的设置中正常工作。

     cdns-dsi-core 另一方面,我接管的主要变化是:

    • 移动时钟/数据通道就绪等待进入 cdns_dsi_hs_init()
    •  cdns_dsi_hs_init() 也从传输路径调用、因此在直接命令之前会初始化 PHY
    • 在发送直接命令之前复位 DCS 写入 FIFO
    •  link_initialized  phy_initialized 在暂停期间清除和、以便在恢复后干净地重新完成链路/PHY 设置

    我尝试保持 TI DSI 驱动器增量尽可能小、并与您的方法保持一致、同时处理面板驱动器中特定于面板的行为。

    您能告诉我们您希望这些更改会在哪个即将发布的 TI 内核版本或内核版本中合并吗? 这将有助于我们决定我们应继续进行当地适应的时间。

    谢谢、
    Máté Szabó μ s

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

    您好 Máté、
    很高兴知道这对我们有所帮助。 我们还需要客户确认此修补程序是否正常。
    我们希望这个补丁有望在 12.01 年包含在我们的 SDK 中、或者在更糟糕的情况下在 12.02 年 SDK 版本中。