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

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.lryc.cn/news/2379789.html

相关文章:

  • 涨薪技术|0到1学会性能测试第71课-T-SQL调优
  • Spark SQL 之 Antlr grammar 具体分析
  • Python----目标检测(PASCAL VOC数据集)
  • LabVIEW汽车CAN总线检测系统开发
  • MySQL数据库基础 -- SQL 语句的分类,存储引擎
  • 二元Logistic回归
  • 如何从容应对面试?
  • 如何使用GIT管理项目代码
  • RHCE 练习三:架设一台 NFS 服务器
  • 【android bluetooth 协议分析 01】【HCI 层介绍 9】【ReadLocalSupportedCommands命令介绍】
  • stm32实战项目:无刷驱动
  • python打卡训练营打卡记录day30
  • 2025年- H33-Lc141 --148. 排序链表(快慢指针,快指针先出发一步)--Java版
  • 【prometheus+Grafana篇】基于Prometheus+Grafana实现Oracle数据库的监控与可视化
  • 板凳-------Mysql cookbook学习 (四)
  • 【D1,2】 贪心算法刷题
  • 算法题(150):拼数
  • Denoising Score Matching with Langevin Dynamics
  • Docker构建 Dify 应用定时任务助手
  • mongodb管理工具的使用
  • 第2篇 水滴穿透:IGBT模块的绝对防御体系
  • LVGL(lv_dropdown下拉列表控件)
  • 2.微服务-配置
  • python实现pdf转图片(针对每一页)
  • C语言练手磨时间
  • 数字图像处理——图像压缩
  • 验证器回调中value值没有数据
  • Python | 需求预测模型
  • 双指针算法:原理与应用详解
  • 打造灵感投掷器:我的「IdeaDice」开发记录