Panthor driver on iMX95

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Panthor driver on iMX95

1,330 次查看
TikiMatt
Contributor I

Hi everyone,

I'm trying to learn how the graphic stack works on the iMX95, and I would like to use the open-source DRM Driver (Panthor) in order to be able to understand the whole stack (from OpenGL to lower driver actions).

As the Mesa3D+OpenSource driver is more comprehensible as the ARM stack, I want to create a linux kernel which uses the DRM driver.

I changed the GPU node in the DTS to be compatible with the Panthor driver, and forced the option (while disabling the ARM driver one) in the menuconfig.

At startup, the panthor loads succesfully until the "devm_pm_opp_set_regulators" call in panthor_devfreq.c:panthor_devfreq_init.

Does anyone already used this driver on this board, or have any idea on what I have to change ?

 

Thanks.

标记 (4)
0 项奖励
回复
2 回复数

1,191 次查看
sophia057loy
Contributor I

Hello,

The devm_pm_opp_set_regulators failure happens because the i.MX95 manages its GPU voltage and power states through the SCMI (System Control and Management Interface) rather than direct discrete regulators, and the Panthor driver expects a traditional regulator string to manage DVFS. To fix this, you need to ensure your Device Tree's gpu node contains a mali-supply property pointing to an SCMI-based regulator (e.g., mali-supply = <&scmi_perf_gpc>;) or, for a quicker test, define a "dummy" fixed regulator in your DTS and link it to the GPU to satisfy the driver's initialization check. If you just want to reach the lower driver actions without dealing with power management yet, you can comment out the devm_pm_opp_set_regulators call in panthor_devfreq.c, but keep in mind that the driver will still eventually require the Mali CSF firmware (mali_csffw.bin) to be present in your rootfs to initialize the G310 hardware.

0 项奖励
回复

1,296 次查看
Oswalag
NXP TechSupport
NXP TechSupport

Hello,

Unfortunately, the i.MX95 is still in the pre‑production stage, and therefore we do not yet have a validated reference or an officially supported configuration to provide a definitive implementation path.
0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2300523%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EiMX95%20%E4%B8%8A%E7%9A%84%20Panthor%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2300523%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%A4%A7%E5%AE%B6%E5%A5%BD%EF%BC%8C%3C%2FP%3E%3CP%3E%E6%88%91%E6%83%B3%E4%BA%86%E8%A7%A3%20iMX95%20%E7%9A%84%E5%9B%BE%E5%BD%A2%E5%A0%86%E6%A0%88%E6%98%AF%E5%A6%82%E4%BD%95%E5%B7%A5%E4%BD%9C%E7%9A%84%EF%BC%8C%E6%88%91%E6%83%B3%E4%BD%BF%E7%94%A8%E5%BC%80%E6%BA%90%20DRM%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%20(Panthor)%EF%BC%8C%E4%BB%A5%E4%BE%BF%E4%BA%86%E8%A7%A3%E6%95%B4%E4%B8%AA%E5%A0%86%E6%A0%88%EF%BC%88%E4%BB%8E%20OpenGL%20%E5%88%B0%E4%BD%8E%E7%BA%A7%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E6%93%8D%E4%BD%9C%EF%BC%89%E3%80%82%3C%2FP%3E%3CP%3E%E7%94%B1%E4%BA%8E%20Mesa3d%2BOpenSource%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E4%BD%9C%E4%B8%BA%20ARM%20%E5%A0%86%E6%A0%88%E6%9B%B4%E6%98%93%E4%BA%8E%E7%90%86%E8%A7%A3%EF%BC%8C%E6%89%80%E4%BB%A5%E6%88%91%E6%83%B3%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E4%BD%BF%E7%94%A8%20DRM%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%20linux%20%E5%86%85%E6%A0%B8%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E5%B0%86%20DTS%20%E4%B8%AD%E7%9A%84%20GPU%20%E8%8A%82%E7%82%B9%E6%9B%B4%E6%94%B9%E4%B8%BA%E4%B8%8E%20Panthor%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E5%85%BC%E5%AE%B9%EF%BC%8C%E5%B9%B6%E5%9C%A8%E8%8F%9C%E5%8D%95%E9%85%8D%E7%BD%AE%E4%B8%AD%E5%BC%BA%E5%88%B6%E4%BD%BF%E7%94%A8%E8%AF%A5%E9%80%89%E9%A1%B9%EF%BC%88%E5%90%8C%E6%97%B6%E7%A6%81%E7%94%A8%20ARM%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%EF%BC%89%E3%80%82%3C%2FP%3E%3CP%3E%E5%90%AF%E5%8A%A8%E6%97%B6%EF%BC%8Cpanthor%20%E4%BC%9A%E6%88%90%E5%8A%9F%E5%8A%A0%E8%BD%BD%EF%BC%8C%E7%9B%B4%E5%88%B0%E5%9C%A8%20panthor_devfreq.c%3Apanthor_devfreq_init%20%E4%B8%AD%E8%B0%83%E7%94%A8%22devm_pm_opp_set_regulators%22%20%E3%80%82%3C%2FP%3E%3CP%3E%E6%9C%89%E4%BA%BA%E5%B7%B2%E7%BB%8F%E5%9C%A8%E8%BF%99%E4%B8%AA%E6%9D%BF%E4%B8%8A%E4%BD%BF%E7%94%A8%E8%BF%87%E8%BF%99%E4%B8%AA%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E5%90%97%EF%BC%8C%E6%88%96%E8%80%85%E5%AF%B9%E6%88%91%E5%BF%85%E9%A1%BB%E6%9B%B4%E6%94%B9%E4%BB%80%E4%B9%88%E6%9C%89%E4%BB%BB%E4%BD%95%E6%83%B3%E6%B3%95%E5%90%97%EF%BC%9F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E8%B0%A2%E8%B0%A2%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2300689%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Panthor%20driver%20on%20iMX95%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2300689%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3C%2FP%3E%0A%3CDIV%3E%E4%B8%8D%E5%B9%B8%E7%9A%84%E6%98%AF%EF%BC%8Ci.MX95%E4%BB%8D%E5%A4%84%E4%BA%8E%E9%A2%84%E7%94%9F%E4%BA%A7%E9%98%B6%E6%AE%B5%EF%BC%8C%E5%9B%A0%E6%AD%A4%E6%88%91%E4%BB%AC%E8%BF%98%E6%B2%A1%E6%9C%89%E7%BB%8F%E8%BF%87%E9%AA%8C%E8%AF%81%E7%9A%84%E5%8F%82%E8%80%83%E6%88%96%E5%AE%98%E6%96%B9%E6%94%AF%E6%8C%81%E7%9A%84%E9%85%8D%E7%BD%AE%EF%BC%8C%E6%97%A0%E6%B3%95%E6%8F%90%E4%BE%9B%E6%98%8E%E7%A1%AE%E7%9A%84%E5%AE%9E%E7%8E%B0%E8%B7%AF%E5%BE%84%E3%80%82%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2325502%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Panthor%20driver%20on%20iMX95%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2325502%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3C%2FP%3E%3CP%3E%E4%B9%8B%E6%89%80%E4%BB%A5%E4%BC%9A%E5%87%BA%E7%8E%B0%20devm_pm_opp_set_regulators%20%E6%95%85%E9%9A%9C%EF%BC%8C%E6%98%AF%E5%9B%A0%E4%B8%BA%20i.MX95%20%E6%98%AF%E9%80%9A%E8%BF%87%20SCMI%EF%BC%88%E7%B3%BB%E7%BB%9F%E6%8E%A7%E5%88%B6%E5%92%8C%E7%AE%A1%E7%90%86%E6%8E%A5%E5%8F%A3%EF%BC%89%E8%80%8C%E9%9D%9E%E7%9B%B4%E6%8E%A5%E5%88%86%E7%AB%8B%E5%BC%8F%E7%A8%B3%E5%8E%8B%E5%99%A8%E6%9D%A5%E7%AE%A1%E7%90%86%20GPU%20%E7%94%B5%E5%8E%8B%E5%92%8C%E7%94%B5%E6%BA%90%E7%8A%B6%E6%80%81%E7%9A%84%EF%BC%8C%E8%80%8C%20Panthor%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E5%88%99%E5%B8%8C%E6%9C%9B%E4%BD%BF%E7%94%A8%E4%BC%A0%E7%BB%9F%E7%A8%B3%E5%8E%8B%E5%99%A8%E4%B8%B2%E6%9D%A5%E7%AE%A1%E7%90%86%20DVFS%E3%80%82%E8%A6%81%E8%A7%A3%E5%86%B3%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%EF%BC%8C%E4%BD%A0%E9%9C%80%E8%A6%81%E7%A1%AE%E4%BF%9D%E8%AE%BE%E5%A4%87%E6%A0%91%E7%9A%84%20GPU%20%E8%8A%82%E7%82%B9%E5%8C%85%E5%90%AB%E4%B8%80%E4%B8%AA%E6%8C%87%E5%90%91%E5%9F%BA%E4%BA%8E%20SCMI%20%E7%9A%84%E8%B0%83%E8%8A%82%E5%99%A8%E7%9A%84%E6%81%B6%E6%84%8F%E4%BE%9B%E5%BA%94%E5%B1%9E%E6%80%A7%EF%BC%88%E4%BE%8B%E5%A6%82%EF%BC%8Cmali-supply%20%3D%20%26lt%3B%20%26amp%3B%20scmi_perf_gpc%20%26gt%3B%3B)%EF%BC%8C%E6%88%96%E8%80%85%E4%B8%BA%E4%BA%86%E6%9B%B4%E5%BF%AB%E5%9C%B0%E8%BF%9B%E8%A1%8C%E6%B5%8B%E8%AF%95%EF%BC%8C%E5%9C%A8%20DTS%20%E4%B8%AD%E5%AE%9A%E4%B9%89%20%22%20dummy%20%22%20%E5%9B%BA%E5%AE%9A%E8%B0%83%E8%8A%82%E5%99%A8%E5%B9%B6%E5%B0%86%E5%85%B6%E9%93%BE%E6%8E%A5%E5%88%B0%20GPU%20%E4%BB%A5%E6%BB%A1%E8%B6%B3%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E5%88%9D%E5%A7%8B%E5%8C%96%E6%A3%80%E6%9F%A5%E3%80%82%E5%A6%82%E6%9E%9C%E4%BD%A0%E5%8F%AA%E6%83%B3%E5%9C%A8%E4%B8%8D%E5%A4%84%E7%90%86%E7%94%B5%E6%BA%90%E7%AE%A1%E7%90%86%E5%8D%95%E5%85%83%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E8%BE%BE%E5%88%B0%E8%BE%83%E4%BD%8E%E7%9A%84%E9%A9%B1%E5%8A%A8%E5%99%A8%E5%8A%A8%E4%BD%9C%EF%BC%8C%E4%BD%A0%E5%8F%AF%E4%BB%A5%E5%9C%A8%20panthor_devfreq.c%20%E4%B8%AD%E6%B3%A8%E9%87%8A%E6%8E%89%20devm_pm_opp_set_regulators%20%E8%B0%83%E7%94%A8%EF%BC%8C%E4%BD%86%E8%AF%B7%E8%AE%B0%E4%BD%8F%EF%BC%8C%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E6%9C%80%E7%BB%88%E4%BB%8D%E9%9C%80%E8%A6%81%20Mali%20CSF%20%E5%9B%BA%E4%BB%B6%20(mali_csffw.bin)%E4%BB%A5%E5%88%9D%E5%A7%8B%E5%8C%96%20G310%20%E7%A1%AC%E4%BB%B6%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E