diag_service的GLINK_IST是怎么来的

2023-12-13 15:41:35

背景

平台:SA8155,Q+A 1.2.1

8155上集成了很多IP核,其中有不少的IP本质上是arm M核或者R核,这些模块在开发或者使用过程中也是需要监控和诊断的,但是他们并没有外部的调试接口,高通设计了整套诊断框架通过APSS(application processer subsystem)用来实现对这些IP核的诊断和监控。这套诊断框架支持从上位机PC的?QPST/QXDM软件对IP core的访问,也支持从APSS直接访问。

diag_service线程信息

在查看diag_service线程信息,我们能看到,这个有几个以GLINK_IST_x命名的中断线程:

# pidin -p 32790 threads
     pid tid name               thread name          STATE       Blocked                     
   32790   1 bin/diag_service   1                    RECEIVE     10                          
   32790   2 bin/diag_service   DALTimer_dispatcher  RECEIVE     2                           
   32790   3 bin/diag_service   Workloop             SEM         fff8089e64620f94            
   32790   4 bin/diag_service   GLINK_IST_481        INTR                                    
   32790   5 bin/diag_service   GLINK_IST_188        INTR                                    
   32790   6 bin/diag_service   GLINK_IST_606        INTR                                    
   32790   7 bin/diag_service   glink_ssr_handler    REPLY       24586                       
   32790   8 bin/diag_service   ipcr_lpass           CONDVAR     (0x270731be10)              
   32790   9 bin/diag_service   ipcr_cdsp            CONDVAR     (0x270731bce0)              
   32790  10 bin/diag_service   ipcr_mpss            CONDVAR     (0x270731bbb0)              
   32790  11 bin/diag_service   IPC_ROUTER_RM        RECEIVE     3                           
   32790  12 bin/diag_service   diag_timer_handler   RECEIVE     5                           
   32790  13 bin/diag_service   diag_task            CONDVAR     (0x5134b3e34)               
   32790  14 bin/diag_service   pdbg_rm              RECEIVE     6                           
   32790  15 bin/diag_service   diag_resmgr          RECEIVE     17                          
   32790  16 bin/diag_service   diag_fwd_task        CONDVAR     (0x5134bc17c)               
   32790  17 bin/diag_service   diag_compress_task   CONDVAR     (0x5134bc0cc)               
   32790  18 bin/diag_service   ssr_event_monitor    REPLY       700466                      
   32790  19 bin/diag_service   diagcomm_udp         CONDVAR     (0x270733cac0)              
   32790  20 bin/diag_service   GLinkSMEMlpass       CONDVAR     (0x27073104a4)              
   32790  21 bin/diag_service   GLinkSMEMmpss        CONDVAR     (0x27073104f4)              
   32790  22 bin/diag_service   GLinkSMEMcdsp        CONDVAR     (0x2707310544)

我们想了解的是这几个线程是怎么来的,如何创建的

GLINK_IST_x中断线程创建

调用时序图

参考

80-NA157-61 Rev. YE 《Diagnostic System User Guide》

文章来源:https://blog.csdn.net/kill150/article/details/134967236
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。