系列文章请扫点击如下链接!
本文主要包括部分:
一、Android13的Kernel 5.15版本
1.1 Kernel 5.15 情况说明
1.2 前置条件
二、QCM61*5 plane配置
2.1 multi-card配置
2.2 移植msm-lease
2.3 配置信息确认
三、Kernel 5.15 mutil-card方案实现
3.1 移植详细代码实现
1.1 Kernel 5.15 情况说明
高通提供Android 13基线代码,有的是基于Kernel 5.15,在前两篇文章中,讲解了Kernel 5.4、5.10中就已经不存在msm-lease了。所以在Kernel 5.15版本上,也是一样的。
在Kernel 5.15中,msm的驱动已经移至 target_ap/vendor/qcom/opensource/display-drivers路径下;需要将msm-lease移植适配到此路径下,msm-lease同样需要移植到此路径下;
1.2 前置条件
移植multi-card的前置条件是,DSI屏和DP屏的驱动已经调试正常,单card(android默认)下是显示相同内容的。
此时再按照以下patch实现multi-card。
2.1 multi-card配置
以QCM61*5为例,说明配置card信息;
下面配置:sde_card1的接口是DSI,并且分配了4个plane;sde_card2的接口是DP1,分配了2个plane。实际使用场景可以根据对现实的需求分配。
2.2 移植msm-lease
将适合该平台的msm-lease文件放到target_ap/vendor/qcom/opensource/display-drivers/路径下,并在内核中增加配置。
在内核中要增加头文件:
修改vendor/qcom/opensource/display-drivers/msm/msm_drv.h
vendor/qcom/opensource/display-drivers/msm/msm_drv.c ,使其调用msm_drm_register()注册drm时,调用msm_lease_drm_unregister()注册lease_drm。
移植完成,同样可以看到两个card节点,
2.3 配置信息确认
可以查看上两篇文章 中此章节内容
3.1 移植详细代码实现
dtsi的card配置信息,修改路径在target/vendor/qcom/proprietary/
*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************详见如下系列文章**************************