Intel spec解析

2024-09-04 01:32
文章标签 解析 intel spec

本文主要是介绍Intel spec解析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  Intel的XMM6360 modem telephone部分分成两块:


1.The Radio Interface Layer (RIL) component.

2.The Java Middleware layer (Android* Telephony services).


modem chip和主处理器的接口是MIPI HSI,用的通信协议是Multiplexer Protocol

DLCI is a 6 bit field that identifies the virtual channel.上面的那个协议就是多路复用协议,到底用哪一路通信就是依靠DLCI这几个bit来识别。

其实最重要的是mmgr,mmgr的作用:

• Modem reset / boot sequence and IPC components being ready for communication.
moden的重启和下载自身驱动,ipc组件用来准备和用户空间通信
• Enables and configures the Cloverview SoC-to-XMM6360 IPC multiplexed
communications.
使能以及配置多路复用
• Synchronizes modem client(s) start-up with modem communication readiness.
同步modem当modem通信做好准备
• Monitors communication exceptions, informs RIL about modem state and recovers
from error situations (modem self-reset, unresponsive commands, core dumps).
监控modem的状态,比如出错之后怎么重置

默认情况下,modem一开始只支持单路通信,只有等多路复用的协议驱动启动完毕之后才能多路通信。mmgr保证modem正常启动,MMgr is declared as a native service in init.rc.是一个系统一开始就启动的服务。


对telephony sub-system来说一般是以下几个事件:
• Start-up.
• Shutdown and Switch to/from airplane mode.
• Fatal Modem Exceptions and recovery

mmgr做了以下几件事:
• It makes sure the modem has finished its boot sequence, before attempting any
further operation
保证modem的boot过程的完成,在下一步操作之前

• It establishes modem-to-Cloverview SoC communication:

Switches the modem into MUX mode

切换到多路复用模式

Activates the MUX driver by attaching a 3GPP 27.010 compliant line discipline
to ttyIFX, then configuring the line discipline parameters (including retry
timers). This step creates a set of gsmtty interfaces


使能多路复用驱动,配置参数,这个步骤生成了一系列的gsmtty接口

• Once MUX communication is set up, MMgr informs gsmtty clients (such as the RIL)
that the modem and ttys are ready. To send this information, MMgr first establishes
an IPC (socket-based) with those clients.


当多路复用建立后,通知client准备完毕,和这些client建立一个socket的通道

After that, MMgr enters a polling loop (based on the no-overhead, blocking poll
function call) to monitor the status of the modem in case the modem performs a
self-reset and core dump. When this situation occurs:

做完这些事之后进入一个loop中,监视modem的状态
— MMgr sends a message to inform gsmtty clients that ttys are temporarily not
available and shall not be used.

— MMgr monitors the modem boot (as in a fresh boot), then re-configures the
MUX mode

— MMgr sends a message again to gsmtty clients that the modem and ttys are
ready again. It is up to clients to decide their recovery procedure, but this must
include at least closing and opening gsmtty again (as the older gsmtty handles
are invalid). For instance, the RIL closes them and exits completely, and relies
on Android* init to be automatically re-started.


• MMgr also monitors messages sent from a gsmtty client such as the RIL, which can
also detect modem unresponsiveness.

监控client发送信息给modem之后如果modem没有回应

The MMgr provides an API to the Client to perform the following services:
• Modem State.
• Request for Modem Restart or Recovery.
• Modem Resource Management.
• Update Modem Firmware and Configuration (Will be described in a future version)












这篇关于Intel spec解析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1134613

相关文章

Agent开发核心技术解析以及现代Agent架构设计

《Agent开发核心技术解析以及现代Agent架构设计》在人工智能领域,Agent并非一个全新的概念,但在大模型时代,它被赋予了全新的生命力,简单来说,Agent是一个能够自主感知环境、理解任务、制定... 目录一、回归本源:到底什么是Agent?二、核心链路拆解:Agent的"大脑"与"四肢"1. 规划模

MySQL字符串转数值的方法全解析

《MySQL字符串转数值的方法全解析》在MySQL开发中,字符串与数值的转换是高频操作,本文从隐式转换原理、显式转换方法、典型场景案例、风险防控四个维度系统梳理,助您精准掌握这一核心技能,需要的朋友可... 目录一、隐式转换:自动但需警惕的&ld编程quo;双刃剑”二、显式转换:三大核心方法详解三、典型场景

SQL 注入攻击(SQL Injection)原理、利用方式与防御策略深度解析

《SQL注入攻击(SQLInjection)原理、利用方式与防御策略深度解析》本文将从SQL注入的基本原理、攻击方式、常见利用手法,到企业级防御方案进行全面讲解,以帮助开发者和安全人员更系统地理解... 目录一、前言二、SQL 注入攻击的基本概念三、SQL 注入常见类型分析1. 基于错误回显的注入(Erro

C++ 多态性实战之何时使用 virtual 和 override的问题解析

《C++多态性实战之何时使用virtual和override的问题解析》在面向对象编程中,多态是一个核心概念,很多开发者在遇到override编译错误时,不清楚是否需要将基类函数声明为virt... 目录C++ 多态性实战:何时使用 virtual 和 override?引言问题场景判断是否需要多态的三个关

Springboot主配置文件解析

《Springboot主配置文件解析》SpringBoot主配置文件application.yml支持多种核心值类型,包括字符串、数字、布尔值等,文章详细介绍了Profile环境配置和加载位置,本文... 目录Profile环境配置配置文件加载位置Springboot主配置文件 application.ym

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

一文解析C#中的StringSplitOptions枚举

《一文解析C#中的StringSplitOptions枚举》StringSplitOptions是C#中的一个枚举类型,用于控制string.Split()方法分割字符串时的行为,核心作用是处理分割后... 目录C#的StringSplitOptions枚举1.StringSplitOptions枚举的常用

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4