1.4K Star 7.3K Fork 7.7K

OpenHarmony/docs

 / 详情

[Bug]: Display Off状态且系统未进入Deepsleep情况下, 按音量上下键或者收到TIME_CHANGE_EVENT会有DRM的绘制动作,导致DPU唤醒产生额外功耗

进行中
创建于  
2023-11-28 15:01

发生了什么问题?

前置条件:
插入usb黑屏即Display Off状态且系统未进入Deepsleep
测试case:
1. 按音量键会有绘图动作,有操作DRM绘图动作
2. 每分钟会产生TIME_CHANGE_EVENT动作,有操作DRM绘图动作
此状态会导致对应场景功耗增加,Android不会存在此情况:

期望行为是什么?

  1. 任何event 都不要在display off状态下有DRM ioctl操作
  2. 按键在不唤醒屏幕的情况下不要有操作display devices的行为

如何复现该缺陷

开启DRM log,插入usb黑屏过程,按键或者等待时间1分钟,通过观察ioctl命令可以看到此行为.
D:\work>hdc shell

echo 0xDF > /sys/module/drm/parameters/debug

dmesg -w |grep DRM

[ 2149.995049] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE
[ 2149.995798] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_ADDFB2
[ 2149.995874] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_RMFB
[ 2149.996536] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_GEM_CLOSE
[ 2149.996678] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_CREATEPROPBLOB
[ 2149.996864] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_ATOMIC
[ 2150.237080] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_DESTROYPROPBLOB
[ 2209.993618] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE
[ 2209.994451] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_ADDFB2
[ 2209.994528] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_RMFB
[ 2209.995188] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_GEM_CLOSE
[ 2209.995252] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_CREATEPROPBLOB
[ 2209.995435] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_ATOMIC
[ 2210.245223] [drm:drm_ioctl] comm="IPC_0_752" pid=752, dev=0xe200, auth=1, DRM_IOCTL_MODE_DESTROYPROPBLOB
[ 2210.246185] [drm:drm_ioctl] comm="IPC_1_753" pid=968, dev=0xe200, auth=1, DRM_IOCTL_WAIT_VBLANK
[ 2210.262826] [drm:drm_ioctl] comm="IPC_1_753" pid=968, dev=0xe200, auth=1, DRM_IOCTL_WAIT_VBLANK
[ 2210.278928] [drm:drm_ioctl] comm="IPC_1_753" pid=968, dev=0xe200, auth=1, DRM_IOCTL_WAIT_VBLANK
[ 2210.295572] [drm:drm_ioctl] comm="IPC_1_753" pid=968, dev=0xe200, auth=1, DRM_IOCTL_WAIT_VBLANK
[ 2210.312278] [drm:drm_ioctl] comm="IPC_1_753" pid=968, dev=0xe200, auth=1, DRM_IOCTL_WAIT_VBLANK
[ 2210.329024] [drm:drm_ioctl] comm="IPC_1_753" pid=968, dev=0xe200, auth=1, DRM_IOCTL_WAIT_VBLANK
[ 2210.346164] [drm:drm_ioctl] comm="IPC_1_753" pid=968, dev=0xe200, auth=1, DRM_IOCTL_WAIT_VBLANK

其他补充信息

版本或分支信息

  • master
  • Release 3.2
  • Release 3.1
  • Release 3.0

评论 (4)

bearyang2020 创建了任务 1年前
bearyang2020 添加了
 
bug
标签
1年前
展开全部操作日志

感谢提交Issue!关于Issue的交互操作,请访问OpenHarmony社区支持命令清单。如果有问题,请联系 @neeen @zengyawen @RayShih @Peter_1988 。如果需要调整订阅PR、Issue的变更状态,请访问链接



Thanks for submitting the issue. For more commands, please visit OpenHarmony Command List. If you have any questions, please refer to committer @neeen @zengyawen @RayShih @Peter_1988 for help. If you need to change the subscription of a Pull Request or Issue, please visit the link.

openharmony_ci 添加了
 
waiting_for_assign
标签
1年前
bearyang2020 修改了描述 1年前

这个确实需要修正下。
典型场景是灭屏时候MP3播放,按音量键调整音量大小
期望的不要绘图,只调整音量;现在还去绘图的话,对功耗不友好。
另外,RK参考板设计里面,DRM的runtime SUSPEND/RESUME功能能否做进去

yibiaowang 任务状态待办的 修改为进行中 1年前

开发者您好,请问下您是参考什么文档、或者哪个仓库碰到的问题吗?我们好联系对应模块的开发人员定位。

liyan 负责人设置为葛亚芳 1年前

您好, @ge-yafang ,issue已经分配给您,请及时处理。



@ge-yafang , the issue has been assigned to you. Please handle it in time.

openharmony_ci 移除了
 
waiting_for_assign
标签
1年前
openharmony_ci 添加了
 
waiting_for_fix
标签
1年前

登录 后才可以发表评论

状态
负责人
项目
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
预计工期 (小时)
开始日期   -   截止日期
-
置顶选项
优先级
里程碑
分支
参与者(4)
7387629 openharmony ci 1656582662 5VQLJ-gaobing7099 7806081 zengyawen 1628152844 bearyang2020-bearyang2020
其他
1
https://gitee.com/openharmony/docs.git
git@gitee.com:openharmony/docs.git
openharmony
docs
docs

搜索帮助