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

频道:保险市场 日期: 浏览:46802

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

欢迎关注,每周更新!

正文

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

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

wKgZPGmozoqAT1jeAA1Cdamlh2U571.png

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

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

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

wKgZPGmozoqAbAyXAAF1t9pO-RA830.png

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

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

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

wKgZPGmozouALBBqAAFSGjcAKao955.pngwKgZPGmozouAdWGIAADAVIA9xRc703.png

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

wKgZPGmozouABPWLAAJUc1-qGQ4900.png

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

(完)

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

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

审核编辑 黄宇

  • 随机文章
  • 热门文章
  • 热评文章