嵌入式分享#57:Android14 亮度条失灵事件(RK3576)

描述

  题图:SpaceX 公司的 Falcon 9 火箭发射升空,海边的发射场弥漫着浓重的晨雾,火箭一跃而出,仿佛科幻片的场景。

欢迎关注,每周更新!☞

正文

前段时间调 RK3576-Android14 的 MIPI 屏时,遇到一个屏幕亮度(背光)问题,今天正好有时间整理分享~

【问题描述】:屏幕亮度在 Android UI 界面无法通过亮度条控制。

Android

但是,在 kernel 可以通过/sys/class/backlight/mipi_backlight/ 下的文件调节亮度。

Android

【问题分析】:顺着问题捋下来就很清晰了,问题应该出在 HAL 层和内核没对接上!按理来说,HAL 层是通过调用 mipi_backlight 这个节点来控制亮度的,既然是这个逻辑,那 DTS 里的背光节点名称就得和它对上才行,不然肯定调不了亮度。

【问题解决】:排查发现,在 dts 配置背光节点时,我手贱将默认的“backlight ”修成了“mipi_backlight ”,将其改回“backlight ”问题得到初步解决。

Android

但要是我就 “轴” 这一下,非要用 mipi_backlight 这个节点该怎么办?那就别办了!(乌鸦现身),只能改 Android 源码了!至于改源码的哪个地方?这就是接下来要办的事。

既然已经锁定问题大概率是 HAL 层和 Kernel 层没对接上,那接下来就好办了 —— 先找到 HAL 层里到底是哪段代码调用了背光节点,改了就行!我直接去 Android14-SDK 的 hardware 目录(这是 HAL 层源码的地盘),全局搜了 “backlight” 这个关键词,想找找谁在调用背光节点。

嘿,一搜一个准!直接揪出 3 个 “嫌疑犯”,接下来就是对着它们开刀了~

AndroidAndroidAndroid

经逐一修改验证,居然他们都不是凶手。只能说我很崩溃,很无奈。

Android

手上还有其他项目要赶,这问题实在没时间耗了,先放它一马吧!如有路过此地的 Android 大佬们,请指明我方向,必定以身(请喝奶茶)相许!

(完)

本人专注 Linux 驱动 & Linux/Android BSP 开发调试,可接外包项目/技术支持/问题定位。有需求或交个朋友可加微信:【Chen_WeChat2026】。

更多原创技术文章:《README 2026》。

审核编辑 黄宇

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分