The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/soc/qcom/qcom,apr.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 Qualcomm APR (Asynchronous Packet Router) binding
    2 
    3 This binding describes the Qualcomm APR. APR is a IPC protocol for
    4 communication between Application processor and QDSP. APR is mainly
    5 used for audio/voice services on the QDSP.
    6 
    7 - compatible:
    8         Usage: required
    9         Value type: <stringlist>
   10         Definition: must be "qcom,apr-v<VERSION-NUMBER>", example "qcom,apr-v2"
   11 
   12 - qcom,apr-domain
   13         Usage: required
   14         Value type: <u32>
   15         Definition: Destination processor ID.
   16         Possible values are :
   17                         1 - APR simulator
   18                         2 - PC
   19                         3 - MODEM
   20                         4 - ADSP
   21                         5 - APPS
   22                         6 - MODEM2
   23                         7 - APPS2
   24 
   25 = APR SERVICES
   26 Each subnode of the APR node represents service tied to this apr. The name
   27 of the nodes are not important. The properties of these nodes are defined
   28 by the individual bindings for the specific service
   29 - All APR services MUST contain the following property:
   30 
   31 - reg
   32         Usage: required
   33         Value type: <u32>
   34         Definition: APR Service ID
   35         Possible values are :
   36                         3 - DSP Core Service
   37                         4 - Audio Front End Service.
   38                         5 - Voice Stream Manager Service.
   39                         6 - Voice processing manager.
   40                         7 - Audio Stream Manager Service.
   41                         8 - Audio Device Manager Service.
   42                         9 - Multimode voice manager.
   43                         10 - Core voice stream.
   44                         11 - Core voice processor.
   45                         12 - Ultrasound stream manager.
   46                         13 - Listen stream manager.
   47 
   48 - qcom,protection-domain
   49         Usage: optional
   50         Value type: <stringlist>
   51         Definition: Must list the protection domain service name and path
   52                     that the particular apr service has a dependency on.
   53         Possible values are :
   54                         "avs/audio", "msm/adsp/audio_pd".
   55                         "kernel/elf_loader", "msm/modem/wlan_pd".
   56                         "tms/servreg", "msm/adsp/audio_pd".
   57                         "tms/servreg", "msm/modem/wlan_pd".
   58                         "tms/servreg", "msm/slpi/sensor_pd".
   59 
   60 = EXAMPLE
   61 The following example represents a QDSP based sound card on a MSM8996 device
   62 which uses apr as communication between Apps and QDSP.
   63 
   64         apr {
   65                 compatible = "qcom,apr-v2";
   66                 qcom,apr-domain = <APR_DOMAIN_ADSP>;
   67 
   68                 apr-service@3 {
   69                         compatible = "qcom,q6core";
   70                         reg = <APR_SVC_ADSP_CORE>;
   71                 };
   72 
   73                 apr-service@4 {
   74                         compatible = "qcom,q6afe";
   75                         reg = <APR_SVC_AFE>;
   76 
   77                         dais {
   78                                 #sound-dai-cells = <1>;
   79                                 dai@1 {
   80                                         reg = <HDMI_RX>;
   81                                 };
   82                         };
   83                 };
   84 
   85                 apr-service@7 {
   86                         compatible = "qcom,q6asm";
   87                         reg = <APR_SVC_ASM>;
   88                         ...
   89                 };
   90 
   91                 apr-service@8 {
   92                         compatible = "qcom,q6adm";
   93                         reg = <APR_SVC_ADM>;
   94                         ...
   95                 };
   96         };
   97 
   98 = EXAMPLE 2
   99 The following example represents a QDSP based sound card with protection domain
  100 dependencies specified. Here some of the apr services are dependent on services
  101 running on protection domain hosted on ADSP/SLPI remote processors while others
  102 have no such dependency.
  103 
  104         apr {
  105                 compatible = "qcom,apr-v2";
  106                 qcom,glink-channels = "apr_audio_svc";
  107                 qcom,apr-domain = <APR_DOMAIN_ADSP>;
  108 
  109                 apr-service@3 {
  110                         compatible = "qcom,q6core";
  111                         reg = <APR_SVC_ADSP_CORE>;
  112                 };
  113 
  114                 q6afe: apr-service@4 {
  115                         compatible = "qcom,q6afe";
  116                         reg = <APR_SVC_AFE>;
  117                         qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
  118                         ...
  119                 };
  120 
  121                 q6asm: apr-service@7 {
  122                         compatible = "qcom,q6asm";
  123                         reg = <APR_SVC_ASM>;
  124                         qcom,protection-domain = "tms/servreg", "msm/slpi/sensor_pd";
  125                         ...
  126                 };
  127 
  128                 q6adm: apr-service@8 {
  129                         compatible = "qcom,q6adm";
  130                         reg = <APR_SVC_ADM>;
  131                         qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
  132                         ...
  133                 };
  134         };

Cache object: bff7ecbe99a32100e4828d1de4b58be6


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.