*参考文档:     搜索modem qmi       qmi-qualcomm

*    http://wenku.baidu.com/link?url=WtNOI1ojokVsXT3LiWmCRg6IAyNRm5U_rwq_-Os_C_aDnZBtjtTNMKTANv-RpyP_-A2BRXgOlbQMu5Bcg_yMJZfYCe6WOf_9MkvH2VSppI7

*

/*********************************************

****qmi通信的双方的角色及位置如下

*********************************************

****qmux server               qmux client****

****   modem                     linux*******

****   AMSS                      linux*******

**********************************************/

nv6873(QMI Port Config List)项可以配置qmi port (QMI Port Config List)如下图:通过QXDM读取

modem 侧的代码:

qmux_state[ ],qmi_ctl_cfg[ ]

ds_qmux.c中会调用qmuxi_set_default_port_configuration函数来设置默认的qmi口

qmux_state.io.port_info.sio_port/default_ep_id/qmi_stream/frame_mode (这四个成员跟nv里的值对应)

RUNTIME Device Mapper(RDM)

qmi_ctl_cfg.cbs.recv = qmi_ctil_recv(),此函数接收client(linux端)传送过来的数据

每个qmi service创建两个信号list:client transations single list 和 command buffer single list,

他们都包含在qmi_common_client_state_type结构体中(.qmi_transaction_type和.qmi_cmd_buf_type结构体)

所有的qmi services都会执行q_init函数来完成下图任务

qmi_transaction_s = q_get( struct q_type );

qmi_transaction_s.cmd_list[]中有许多命令,  这里先将qmi通信理解为cmd集合吧。。

linux侧发送qmi的代码为qmi_client_send_msg_sync((qmi_client_type) clnt,

QMI_TMD_SET_MITIGATION_LEVEL_REQ_V01,

&data_req, sizeof(data_req),

&data_resp, sizeof(data_resp), 0);

每个qmi service都有几个指定的状态 ,用特定的结构体表示,如下图

定义格式如下:

typedef struct {   uint16                           num_qmi_instances;  /*Not used at the moment. May be used in the future*/   qmi_ati_client_state_ptr_type    client[ATI_MAX_CLIDS]; } qmi_ati_state_type;                                           SIO接收到数据后:qmuxi_sio_rx_cb()会被调用,它不处理信息,只是将所有的信息转发给不同的命令处理函数*handler,如下 dcc_set_cmd_handler dcc_set_sig_handler等 1 当AMSS QMUX 接收到数据后from SIO,用qmuxi_process_rx_sig为每个instance来查看其qmux_s->io.rx_wm是否有数据需要处理 没有数据的话会在QXDM的log中打印:ds_qmux.c 01757 no pending command on QMUX link 1/2/3 2 qmuxi_process_msg

高通modem和linux区别,qualcomm qmi(modem-linux通信)相关推荐

  1. 高通QSD MSM APQ区别

    高通msm是Mobile Station Modem 的缩写,即移动基带工作站,是指带有基带芯片的移动处理器,实际就是基带内置的手机处理器(soc)系列. qsd是qualcomm snapdrago ...

  2. 小米网络信号测试软件,【小米5X评测】高通:骁龙625移动平台Modem及信号是亮点_手机评测-中关村在线...

    高通:骁龙625移动平台Modem及信号是亮点 骁龙移动平台=高跑分?如果你一直这样认为那就错了:高运算性能只是它真正实力的冰山一角.举个例子,你或许不知道,高速+高效的网络连接也是骁龙移动平台能够提 ...

  3. QPST 2.7.460 高通产品专用支持套件 (Qualcomm Product Support Tools)

    QPST是一个针对高通芯片开发的传输套件.它包含资源管理器(EFS Explorer).工厂测试模式(Factory Test Mode Application).内存调试模式(memory debu ...

  4. 1.SOC CPU 2.高通 海思 瑞芯微 联发科 3. LINUX

    嵌入式行业公司及所属产业 手机供应链 1.手机主控芯片厂家: 高通,MTK,展讯,华为海思,苹果,三星,Intel,Marvell等等 2.OEM/ODM方案公司: 3.手机代工厂: 平板供应链 1. ...

  5. macbook系统和linux区别,Mac OS和Linux有什么区别?

    问题描述 Apple OS X和Linux之间的主要技术差异是什么?我知道Mac和Linux都有类似的架构,那么主要的差异是什么阻止了例如mac应用程序与linux兼容? 最佳解决方法 Mac OS基 ...

  6. 简介 高通(Qualcomm)

    引言 持续一年有余的高通反垄断案终于尘埃落定.国家发改委宣布,因违反中国反垄断法律,高通公司将被罚款9.75亿美元,并对智能手机专利授权做出多项调整.这一金额创下了中国反垄断罚款最高纪录.高通公司表示 ...

  7. 骁龙cpu linux内核,高通骁龙888开始被Linux内核5.12版正式支持

    – 内核减少了21.4万行代码,删除了许多旧的/过时的ARM平台,这次被取消的有EFM32.PicoXcell.PRIMA2.Tango.U300.ZX和ARCH/C6X. – 支持Intel eAS ...

  8. 高通华裔工程师跳楼自杀!中年IT男,为何这么难?

    " "中年 IT 男"这个近两年的热点词汇,最近又因为美国高通总部员工的跳楼事件而再度火爆起来. 对中年 IT 男来说,失业可能真的很艰难,哪怕有高通的履历也不行. 美国 ...

  9. 【转载】高通msm8996平台的ASOC音频路径分析(基于androidN及linux3.1x)

    高通msm8996平台的ASOC音频路径分析(基于androidN及linux3.1x) tags : msm8996 sound linux android 原文:高通msm8996平台的ASOC音 ...

最新文章

  1. Google在中国打败百度的方法其实很简单.只要需改变5点.
  2. c++ 回调函数_Java中的回调机制,这篇给你整的明明白白的
  3. Visual Studio 2005 Beta 2 will ship on April 25th
  4. NIO实例:Selector+SocketChannel实现多人聊天
  5. Python实训day08pm【面试和职场的经验分享】
  6. vlc内部运行机制以及架构分析
  7. ssh oracle id native,hibernate解决oracle的id自增?
  8. python获得项目根目录路径root path
  9. windows删除文件c语言函数,c rename()函数是否删除文件?
  10. ubuntu使用byzanz截取gif动态图
  11. git 拉取最新代码覆盖本地
  12. Ubuntu系统设置时区时间
  13. Dynamics CRM 审批流引擎
  14. Kingdom Rush 国王保卫战图文攻略
  15. 周易六十四卦——谦卦
  16. 系统总裁SC系统封装WIN7
  17. 答大三犹豫考研的同学兼向大一学生叨叨几句
  18. 机器学习入门的书单(数据挖掘、模式识别等一样)
  19. android 文字Flash特效
  20. QT利用opengl 进行视频裁剪、拼接,4宫格,9宫格

热门文章

  1. 机械剪板机的设计及分析(说明书+CAD图纸+proe三维+开题报告+答辩PPT+文献翻译)
  2. 日常(更新至2019.6.27)
  3. JAVA数据结构 之 BitSet 类的使用方法
  4. pythonsocket数据对接_python中socket接受数据的三种方法
  5. 2021年钎焊考试资料及钎焊理论考试
  6. CPOJ 2018.10.14提高测试 图片拼图板
  7. vue跨域问题解决方法
  8. 【ACM】hdu_zs1_1003_放大的X _201307271557
  9. GOPATH,go vendor,go mod解析
  10. fifa18 服务器维护,fifa18链接服务器