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

相关文章

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

MySQL 缓存机制与架构解析(最新推荐)

《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查

在Rust中要用Struct和Enum组织数据的原因解析

《在Rust中要用Struct和Enum组织数据的原因解析》在Rust中,Struct和Enum是组织数据的核心工具,Struct用于将相关字段封装为单一实体,便于管理和扩展,Enum用于明确定义所有... 目录为什么在Rust中要用Struct和Enum组织数据?一、使用struct组织数据:将相关字段绑

使用Java实现一个解析CURL脚本小工具

《使用Java实现一个解析CURL脚本小工具》文章介绍了如何使用Java实现一个解析CURL脚本的工具,该工具可以将CURL脚本中的Header解析为KVMap结构,获取URL路径、请求类型,解析UR... 目录使用示例实现原理具体实现CurlParserUtilCurlEntityICurlHandler

深入解析Spring TransactionTemplate 高级用法(示例代码)

《深入解析SpringTransactionTemplate高级用法(示例代码)》TransactionTemplate是Spring框架中一个强大的工具,它允许开发者以编程方式控制事务,通过... 目录1. TransactionTemplate 的核心概念2. 核心接口和类3. TransactionT

数据库使用之union、union all、各种join的用法区别解析

《数据库使用之union、unionall、各种join的用法区别解析》:本文主要介绍SQL中的Union和UnionAll的区别,包括去重与否以及使用时的注意事项,还详细解释了Join关键字,... 目录一、Union 和Union All1、区别:2、注意点:3、具体举例二、Join关键字的区别&php

Spring IOC控制反转的实现解析

《SpringIOC控制反转的实现解析》:本文主要介绍SpringIOC控制反转的实现,IOC是Spring的核心思想之一,它通过将对象的创建、依赖注入和生命周期管理交给容器来实现解耦,使开发者... 目录1. IOC的基本概念1.1 什么是IOC1.2 IOC与DI的关系2. IOC的设计目标3. IOC

java中的HashSet与 == 和 equals的区别示例解析

《java中的HashSet与==和equals的区别示例解析》HashSet是Java中基于哈希表实现的集合类,特点包括:元素唯一、无序和可包含null,本文给大家介绍java中的HashSe... 目录什么是HashSetHashSet 的主要特点是HashSet 的常用方法hasSet存储为啥是无序的

Linux中shell解析脚本的通配符、元字符、转义符说明

《Linux中shell解析脚本的通配符、元字符、转义符说明》:本文主要介绍shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊... 目录一、linux shell通配符(wildcard)二、shell元字符(特殊字符 Meta)三、s

使用Python实现批量访问URL并解析XML响应功能

《使用Python实现批量访问URL并解析XML响应功能》在现代Web开发和数据抓取中,批量访问URL并解析响应内容是一个常见的需求,本文将详细介绍如何使用Python实现批量访问URL并解析XML响... 目录引言1. 背景与需求2. 工具方法实现2.1 单URL访问与解析代码实现代码说明2.2 示例调用