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

相关文章

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Redis中高并发读写性能的深度解析与优化

《Redis中高并发读写性能的深度解析与优化》Redis作为一款高性能的内存数据库,广泛应用于缓存、消息队列、实时统计等场景,本文将深入探讨Redis的读写并发能力,感兴趣的小伙伴可以了解下... 目录引言一、Redis 并发能力概述1.1 Redis 的读写性能1.2 影响 Redis 并发能力的因素二、

Spring MVC使用视图解析的问题解读

《SpringMVC使用视图解析的问题解读》:本文主要介绍SpringMVC使用视图解析的问题解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC使用视图解析1. 会使用视图解析的情况2. 不会使用视图解析的情况总结Spring MVC使用视图

利用Python和C++解析gltf文件的示例详解

《利用Python和C++解析gltf文件的示例详解》gltf,全称是GLTransmissionFormat,是一种开放的3D文件格式,Python和C++是两个非常强大的工具,下面我们就来看看如何... 目录什么是gltf文件选择语言的原因安装必要的库解析gltf文件的步骤1. 读取gltf文件2. 提

Java中的runnable 和 callable 区别解析

《Java中的runnable和callable区别解析》Runnable接口用于定义不需要返回结果的任务,而Callable接口可以返回结果并抛出异常,通常与Future结合使用,Runnab... 目录1. Runnable接口1.1 Runnable的定义1.2 Runnable的特点1.3 使用Ru

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis

Java的volatile和sychronized底层实现原理解析

《Java的volatile和sychronized底层实现原理解析》文章详细介绍了Java中的synchronized和volatile关键字的底层实现原理,包括字节码层面、JVM层面的实现细节,以... 目录1. 概览2. Synchronized2.1 字节码层面2.2 JVM层面2.2.1 ente