news 2026/6/11 8:06:51

安卓/MTK平台日志关键词详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
安卓/MTK平台日志关键词详解

安卓/MTK平台日志关键词详解

MDP (Media Data Path)

全称:多媒体数据通路
作用

  • 负责图像/视频数据的处理流水线
  • 包括缩放、旋转、格式转换等操作
  • 连接显示、摄像头、视频编解码等模块
    日志含义cmdq_core_resume_notifier ref:0表示MDP恢复通知,引用计数为0

CMDQ (Command Queue)

全称:命令队列引擎
作用

  • MTK独有的硬件加速架构
  • 将CPU任务卸载到专用硬件执行
  • 主要用于显示、视频、图像处理
    特点
  • 并行处理多个命令流
  • 减少CPU负载和功耗
  • cmdq_suspend ignore表示忽略挂起(可能没有活动任务)

SCP_DVFS (System Control Processor - Dynamic Voltage Frequency Scaling)

全称:系统控制处理器动态电压频率调节
作用

  • 管理协处理器(SCP)的电源状态
  • 根据负载动态调整SCP的电压和频率
  • SCP通常处理传感器、音频等低功耗任务
    日志含义scp_sleep_cnt_0 = 30007694记录SCP进入睡眠的次数

VCP (Video Co-Processor)

全称:视频协处理器
作用

  • 专门处理视频编解码的硬件模块
  • 支持H.264/H.265/VP9等格式
  • 功耗低于CPU/GPU处理
    日志含义PM_POST_SUSPEND entered 0 1表示视频协处理器进入休眠后状态

DIP (Digital Image Processor)

全称:数字图像处理器
作用

  • 专门处理摄像头图像数据的硬件
  • 包括降噪、HDR、色彩校正等
  • 位于摄像头流水线中
    日志含义G_u4DipEnClkCnt: 0, g_u4DipCnt: 0表示DIP时钟启用计数和实例计数都为0

MTK-BT (MediaTek Bluetooth)

全称:联发科蓝牙子系统
组成

  • 蓝牙协议栈
  • 蓝牙硬件控制器
  • 电源管理模块
    日志内容
  • BR_INQURY_SCAN:蓝牙查询扫描状态
  • BR_SCAN_MODE:蓝牙扫描模式
  • BLE_ADV:蓝牙低功耗广播状态

WLAN (Wireless LAN)

全称:无线局域网子系统
关键日志

  • FW OWN:1:固件拥有控制权
  • DRIVER OWN:驱动拥有控制权
  • qmFlushTimeoutReorderBubble:WiFi队列管理中的重新排序超时

PM (Power Management)

全称:电源管理
状态机

  1. PM_SUSPEND_PREPARE(3):准备进入休眠
  2. PM_SUSPEND_PREPARE(4):休眠后恢复
  3. PM_SUSPEND_PREPARE(2):恢复准备
    工作流程
  • Freezing user space processes:冻结用户空间进程
  • Freezing remaining freezable tasks:冻结剩余可冻结任务
  • OOM killer disabled:禁用内存不足杀手

WMT-CONSYS-HW (Wireless Module Technology - Connectivity SOC Hardware)

全称:无线模块技术-连接SOC硬件
作用

  • 管理WiFi/蓝牙/GPS的共存
  • 硬件资源共享和仲裁
  • 电源状态同步
    日志内容
  • consys_dump_osc_state:振荡器状态
  • consys_dump_gating_state:时钟门控状态

MTK-MSDC (MediaTek MultiMedia Card/SD Card Controller)

全称:联发科多媒体卡/SD卡控制器
关键操作

  1. HS400调校

    [msdc_execute_hs400_tuning_cmd]:执行HS400调校 phase: [map:ffffffff]:相位图 final_rise_delay.start=0,maxlen=32,final_phase=10:最终延迟设置
  2. 电源管理

    • msdc_runtime_resume: success to fix vcore:恢复时固定核心电压
    • msdc_runtime_suspend: success to release vcore:挂起时释放核心电压

DISP (Display)

全称:显示子系统
组成

  • 显示驱动
  • 合成器(Composer)
  • 显示接口(MIPI/HDMI)
    日志含义Disabling CRTC wakelock:禁用CRTC唤醒锁(CRTC:阴极射线管控制器,泛指显示控制器)

tlTeeSOTER

全称:Trustonic TEE SOTER(Secure Terminal)
作用

  • 提供可信执行环境
  • 安全密钥存储
  • 硬件级安全操作
    关键功能
  • ARMv8 crypto instructions:使用ARMv8加密指令
  • Neon instructions:使用Neon指令集加速
  • RPMB operations:Replay Protected Memory Block操作

SPM (System Power Manager)

全称:系统电源管理器
作用

  • 管理芯片级电源状态
  • 控制电源域开关
  • 时钟门控
    关键日志
  • suspend start:休眠开始时间戳
  • suspend end:休眠结束时间戳

关键操作详解

msdc_runtime_suspend: success to release vcore

含义:eMMC控制器运行时挂起成功,释放核心电压
技术细节

  • vcore:核心电压,eMMC控制器工作电压
  • release:降低电压或关闭电源域
  • 目的:在空闲时降低功耗

Suspend (挂起)

完整流程

  1. PM_SUSPEND_PREPARE(3):各模块准备休眠
  2. Freeze processes:冻结进程
  3. Peripheral suspend:外设挂起
  4. Clock gating:时钟门控
  5. Power domain off:关闭电源域

Resume (恢复)

完整流程

  1. IRQ trigger:中断触发唤醒
  2. Power domain on:开启电源域
  3. Clock enable:启用时钟
  4. Peripheral resume:外设恢复
  5. PM_POST_SUSPEND(4):休眠后处理
  6. Unfreeze processes:解冻进程

系统状态转换

正常状态 ↓ PM_SUSPEND_PREPARE 准备休眠 → 冻结进程 → 外设挂起 ↓ 深度休眠 (s2idle) ↓ IRQ唤醒触发 ↓ 恢复外设 → 解冻进程 ↓ PM_POST_SUSPEND 正常状态

错误场景分析

在日志中,问题是:

  1. 时序冲突:eMMC正在挂起(电源释放)
  2. 并发访问:TEE同时进行RPMB操作
  3. 权限违规:MCU在eMMC时钟关闭后仍尝试访问

根本原因:电源管理状态机与外设操作缺乏同步机制,导致竞争条件。

第一部分:唤醒过程(Resume) 时间戳:149012.910756 开始 MDP(Media Data Path):媒体数据路径,通常与显示、图像处理相关。[MDP]cmdq_core_resume_notifier ref:0:表示MDP的cmdq核心恢复通知,ref计数为0。 cmdq:Command Queue,命令队列,用于处理多媒体任务的硬件队列(如显示、视频编解码)。[cmdq]mdp buffer pool already created:表示mdp的缓冲区池已经创建。 Resume caused by IRQ138, wlan0:唤醒由中断138触发,即wlan0(无线网络)中断。 scp_dvfs:SCP(System Control Processor)动态电压频率调节。[scp_dvfs]:[SCP][mt_scp_dump_sleep_count:2137]- scp_sleep_cnt_0=30007694:SCP的睡眠计数,用于调试电源管理。 timesync:时间同步,记录系统时间。 timesynchostresume boottime361140487354924:主机恢复时的启动时间。 VCP(可能是Video Co-Processor,视频协处理器):[VCP]PM_POST_SUSPEND entered01:VCP进入PM_POST_SUSPEND状态(休眠后)。 SPM(System Power Manager):系统电源管理。[name:spm&][SPM]suspendend2025-12-01 07:50:22.835128 UTC:表示休眠结束。 CAM_MEM:摄像头内存管理。[CAM_MEM][cam_mem_pm_event_resume]EnableLarbCount:0,devct:1:摄像头内存恢复,启用Larb(Local Address Remap Buffer)计数。 DIP(Digital Image Processor):数字图像处理器。[DIP][dip_suspend_pm_event]DIP resume G_u4DipEnClkCnt:0, g_u4DipCnt:0:DIP恢复,时钟计数和DIP计数为0。 wlan:无线局域网。[wlan][10613]wlan_pm_notifier_call:(REQ INFO)pm_event:4PM_POST_SUSPEND:wlan电源管理通知,事件为PM_POST_SUSPEND(休眠后)。 MTK-BT:联发科蓝牙。[MTK-BT]bt_pm_notifier_callback: bt_pm_notifier_callback: btonflag[1], event[4]:蓝牙电源管理回调,事件4(PM_POST_SUSPEND)。 PM(Power Management):电源管理。 PM:suspendexit:表示休眠退出,即系统唤醒。 WMT-CONSYS-HW(Wireless Module Tethering - Connectivity SoC Hardware):无线连接SOC硬件。 打印了一些硬件状态信息,如时钟门控状态等。 mtk-msdc(MTK Memory Stick/SD Card Controller):MTK存储卡控制器(这里指eMMC控制器)。 日志中看到msdc在进行时钟调整和调谐(tuning),这是为了确保eMMC通信的稳定性。 DISP(Display):显示。 在后续的休眠日志中看到[DISP]Disabling CRTC wakelock,表示解除显示CRTC(阴极射线管控制器,这里泛指显示控制器)的唤醒锁。 第二部分:再次进入休眠(Suspend) 时间戳:149013.424675 PM:suspendentry(s2idle):系统进入休眠(s2idle是一种浅休眠状态)。 Filesystems sync:文件系统同步。 log_store:writepmic value 0x98:写PMIC(电源管理集成电路)值,可能是记录休眠事件。 VCP:[VCP]PM_SUSPEND_PREPARE entered00:VCP进入PM_SUSPEND_PREPARE状态(准备休眠)。 Trustonic TEE:一种可信执行环境(TEE)解决方案。 日志中出现了多个TEE相关的操作,包括RPMB(Replay Protected Memory Block)的读写。RPMB是eMMC中的一个安全分区,用于存储敏感数据。 SPM:[name:spm&][SPM]suspendstart2025-12-01 07:50:23.382566 UTC:SPM开始休眠。 CAM_MEM、DIP、wlan、MTK-BT等模块依次进入休眠准备。 Freezing user space processes:冻结用户空间进程,这是休眠的标准步骤。 OOM killer disabled:禁用OOM(Out Of Memory)杀手。 Freezing remaining freezable tasks:冻结剩余可冻结任务。 kbase_device_suspend:GPU(图形处理器)挂起。 MDP、cmdq、FDVT(Face Detection and Verification Technology,人脸检测和验证技术)等模块挂起。 TP(Touch Panel,触摸屏)挂起。 mt6685-rtc:实时时钟(RTC)设置报警时间。 upm7610:可能是电源管理芯片。 nfc_i2c_dev_suspend:NFC(近场通信)挂起。 第三部分:错误发生 在休眠过程中,出现了两个关键错误: eMMC命令超时: text[149013.510436][C1000000]mtk-msdc11230000.mmc: msdc_cmd_done:cmd=6arg=0x30F0001;rsp 0x0;cmd_error=-110;host_error=0x2 命令6(MMC_SWITCH)超时(-110),主机错误0x2(可能是命令超时或硬件错误)。 设备访问权限违规(DEVAPC Violation): text[149013.511080][C1000000][DEVAPC]: catch it from INFRAAXI_MI Master is: MCU_AP_M[149013.511096][C1000000][DEVAPC]: Violation - master: MCU_AP_M access violation slave: MSDC0_S-1[149013.511108][C1000000][DEVAPC]: Reason: power/clock is not enabled 设备访问保护(DEVAPC)发现违规:主设备MCU_AP_M试图访问从设备MSDC0_S-1(即eMMC控制器),但此时eMMC控制器的电源或时钟未开启。 随后,系统打印了时钟配置寄存器(CLK_CFG)的状态,可能是为了调试。 第四部分:关键术语解释 MDP:Media Data Path,媒体数据路径,处理视频、图像等媒体数据。 cmdq:Command Queue,命令队列,用于管理硬件任务队列,常见于多媒体任务。 scp_dvfs:System Control Processor Dynamic Voltage and Frequency Scaling,系统控制处理器动态电压频率调节,用于电源管理。 VCP:可能是Video Co-Processor,视频协处理器,用于视频编解码等。 DIP:Digital Image Processor,数字图像处理器,用于图像处理。 MTK-BT:联发科蓝牙模块。 wlan:无线局域网。 PM:Power Management,电源管理。 WMT-CONSYS-HW:无线连接SOC硬件,包括Wi-Fi、蓝牙、GPS等。 mtk-msdc:联发科存储卡控制器,用于控制eMMC或SD卡。 DISP:Display,显示相关。 tlTeeSOTER:Trustonic TEE(可信执行环境)的一个组件,用于安全操作。 SPM:System Power Manager,系统电源管理。 msdc_runtime_suspend: success to release vcore:msdc运行时挂起成功,释放核心电压(vcore)。 suspend:挂起,指设备进入低功耗状态。 Resume:恢复,指设备从低功耗状态唤醒。 总结 从日志看,系统在唤醒后很快又进入了休眠。在休眠过程中,eMMC控制器(msdc)发生了命令超时,并且随后发生了设备访问违规(DEVAPC),原因是eMMC控制器的电源或时钟已经关闭,但仍有主设备(MCU_AP_M)试图访问它。 可能的原因:在休眠流程中,eMMC控制器提前关闭了电源或时钟,但安全环境(TEE)中的RPMB操作仍在进行,导致访问冲突。这可能是电源管理时序问题,需要调整休眠流程中模块的关闭顺序,或者确保在eMMC控制器关闭前完成所有访问。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/8 4:43:21

开发与生产环境的10条生存铁律

开发环境和生产环境的核心差异,以及你必须刻在脑子里的 10 条“生存守则”:1. 数据 开发:随便造,库炸了 rm -rf 一把梭就能重来。 生产:一条 UPDATE 不带 WHERE 可能让公司上热搜。2. 配置 开发:把密钥写…

作者头像 李华
网站建设 2026/6/9 22:06:28

图片img之间出现白色底边的问题

问题:公司的小程序商品详情页出现了图片之间出现白色间隙的问题 分析: 我们设置的图片是inline-block,因为还是有inline的成分,inline元素默认是baseline对齐的。当baseline对齐的时候 下方会有4px 的空隙。 解决: vertical-a…

作者头像 李华
网站建设 2026/6/10 8:12:49

光储一体化解决方案推荐

在光储一体化项目快速发展的当下,科学的模拟设计分析是项目成功的关键,能有效规避容量错配、收益不及预期等问题。市面上有不少支持光伏和储能项目模拟设计的系统和软件,其中Pvsyst、鹧鸪云等凭借专业能力备受青睐,以下为大家详细…

作者头像 李华
网站建设 2026/6/10 17:33:24

嵌入式模块化设计—可维护、可扩展的固件架构

模块话设计在之前很多时候都提到过了,但是要想在各种纷繁复杂的项目中灵活运用其实还是很难的,在嵌入式系统开发中,随着项目复杂度不断增加,传统的单体架构往往导致代码难以维护、测试和重用,模块化模式(Mo…

作者头像 李华
网站建设 2026/6/11 1:32:39

基于《世界经济》方法测算的中国城市形态指标数据集(1992-2024)

数据简介 今天我们分享的是中国城市形态指标数据集,包含road、max、center三个指标,该指标是参考顶刊世界经济的处理方法,通过夜间灯光数据(见前文)计算而来,整理成面板数据,方便大家研究使用。 该数据指标中road是一个…

作者头像 李华