当前位置: 首页 > news >正文

MTK zephyr平台:系统休眠流程

一、概述:

当内核没有需要调度的东西时,就会进入空闲状态。
CONFIG_PM=y时允许内核调用PM subsys,将空闲系统置于支持的电源状态之一。
Application负责设置唤醒事件,该事件通常是由SoC外围模块触发的中断,例如:
SysTick、RTC、计数器、GPIO
并非所有外设在所有电源模式下都处于活动状态,因此不是所有唤醒源都可以在任何电源模式下对系统进行唤醒
相关代码目录如下,主要关注TFA和Zephyr:

ItemPath
Preloadermtk\modules\hal\boot\preloader\platform\mt6813\src\drivers\spm
TFAmtk\modules\hal\boot\tf-a-2.8\mtk\plat\mediatek\mt6813\drivers\spm
mtk\modules\hal\boot\tf-a-2.8\mtk\plat\mediatek\mt6813\include\drivers\spm
mtk\modules\hal\boot\tf-a-2.8\mtk\plat\mediatek\drivers\spm
mtk\modules\hal\boot\tf-a-2.8\mtk\plat\mediatek\drivers\pm
mtk\modules\hal\boot\tf-a-2.8\mtk\plat\mediatek\include\pm
LKmtk\modules\hal\boot\Lk\platform\mediatek\common\spm
mtk\modules\hal\boot\Lk\platform\mediatek\mt6813\include\platform
Zephyrmtk\modules\hal\drivers\lpm
mtk\modules\hal\subsys\pm
zephyr\subsys\pm
zephyr\kernel\idle.c

二、modem侧

modem在idle状态下会自动进入休眠,且modem支持不进入飞行模式的休眠,比如寻呼休眠等。modem休眠唤醒完全由modem控制,AP不做处理,暂不关注。

三、休眠流程

在MTK文档中有如下图示描述:
Upon entry into Zephyr, if the scheduler selects the idle task, the process of entering sleep mode will be automatically initiated by the MT6813.
在这里插入图片描述

  • Zephyr ldle Process: The driver is notified to enter sleep processing, and then PSCI (SYSTEM_SUSPEND) is called.
  • TFA PSCI Lib: Executes the system suspend process and notifies the SPM driver.
  • TFA SPM Driver: Sets the behavior of SPM to suspend.
  • T
http://www.xdnf.cn/news/530209.html

相关文章:

  • CAU数据库class2 SQL语言
  • Java 中Supplier延迟生成值的原因
  • AI提示词魔法公式 - 轻松应对70%挑战
  • LeetCode 39. 组合总和 LeetCode 40.组合总和II LeetCode 131.分割回文串
  • IDC数据中心动力环境监控系统解决方案
  • 安防综合管理系统EasyCVR视频融合平台安防知识:门禁系统与视频监控系统如何联动?
  • Supermemory:让大模型拥有“长效记忆“
  • Vue.js教学第六章:Vue 开发的高效路径,组件化基础
  • 如何设计一个二级缓存(Redis+Caffeine)架构?Redis 6.0多线程模型如何工作?
  • 【盈达科技】GEO优化实战策略
  • BUUCTF PWN刷题笔记(持续更新!!)
  • 2025年全国青少年信息素养大赛(图形化编程)小高组初赛真题及答案解析总结
  • App 发布后才想起安全?iOS 后置混淆的实战方法与工具路线(含 Ipa Guard 应用体验)
  • C++面试4-sizeof解析
  • Python Day26 学习
  • Flink流处理:实时计算URL访问量TopN(基于时间窗口)
  • GitHub 趋势日报 (2025年05月18日)
  • 《CF25E Test》
  • 浏览器的奇幻之旅:从输入网址到页面出现的幕后故事
  • ISO 26262-5 硬件详细设计
  • RV1126多线程获取SMARTP的GOP模式数据和普通GOP模式数据
  • 如何用体育数据做分析:从基础统计到AI驱动的决策科学
  • DB31/T 1545—2025《卫生健康数据分类分级要求》上海地方标准全面解析与未来对医院数据管理以及数据编程影响
  • gtest 库的安装和使用
  • 【保姆级】Nginx简介以及安装
  • vue3中element-plus修改el-tooltip的宽度
  • vue2使用three.js实现一个旋转球体
  • AI自媒体封面生成系统
  • c++字符串常用语法特性查询示例文档(二)
  • HarmonyOS开发样式布局