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/remoteproc/qcom,q6v5.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 Hexagon Peripheral Image Loader
    2 
    3 This document defines the binding for a component that loads and boots firmware
    4 on the Qualcomm Hexagon core.
    5 
    6 - compatible:
    7         Usage: required
    8         Value type: <string>
    9         Definition: must be one of:
   10                     "qcom,q6v5-pil",
   11                     "qcom,ipq8074-wcss-pil"
   12                     "qcom,qcs404-wcss-pil"
   13                     "qcom,msm8916-mss-pil",
   14                     "qcom,msm8974-mss-pil"
   15                     "qcom,msm8996-mss-pil"
   16                     "qcom,msm8998-mss-pil"
   17                     "qcom,sdm845-mss-pil"
   18 
   19 - reg:
   20         Usage: required
   21         Value type: <prop-encoded-array>
   22         Definition: must specify the base address and size of the qdsp6 and
   23                     rmb register blocks
   24 
   25 - reg-names:
   26         Usage: required
   27         Value type: <stringlist>
   28         Definition: must be "q6dsp" and "rmb"
   29 
   30 - interrupts-extended:
   31         Usage: required
   32         Value type: <prop-encoded-array>
   33         Definition: reference to the interrupts that match interrupt-names
   34 
   35 - interrupt-names:
   36         Usage: required
   37         Value type: <stringlist>
   38         Definition: The interrupts needed depends on the compatible
   39                     string:
   40         qcom,q6v5-pil:
   41         qcom,ipq8074-wcss-pil:
   42         qcom,qcs404-wcss-pil:
   43         qcom,msm8916-mss-pil:
   44         qcom,msm8974-mss-pil:
   45                     must be "wdog", "fatal", "ready", "handover", "stop-ack"
   46         qcom,msm8996-mss-pil:
   47         qcom,msm8998-mss-pil:
   48         qcom,sdm845-mss-pil:
   49                     must be "wdog", "fatal", "ready", "handover", "stop-ack",
   50                     "shutdown-ack"
   51 
   52 - firmware-name:
   53         Usage: optional
   54         Value type: <stringlist>
   55         Definition: must list the relative firmware image paths for mba and
   56                     modem. They are used for booting and authenticating the
   57                     Hexagon core.
   58 
   59 - clocks:
   60         Usage: required
   61         Value type: <phandle>
   62         Definition: reference to the clocks that match clock-names
   63 
   64 - clock-names:
   65         Usage: required
   66         Value type: <stringlist>
   67         Definition: The clocks needed depend on the compatible string:
   68         qcom,ipq8074-wcss-pil:
   69                     no clock names required
   70         qcom,qcs404-wcss-pil:
   71                     must be "xo", "gcc_abhs_cbcr", "gcc_abhs_cbcr",
   72                     "gcc_axim_cbcr", "lcc_ahbfabric_cbc", "tcsr_lcc_cbc",
   73                     "lcc_abhs_cbc", "lcc_tcm_slave_cbc", "lcc_abhm_cbc",
   74                     "lcc_axim_cbc", "lcc_bcr_sleep"
   75         qcom,q6v5-pil:
   76         qcom,msm8916-mss-pil:
   77         qcom,msm8974-mss-pil:
   78                     must be "iface", "bus", "mem", "xo"
   79         qcom,msm8996-mss-pil:
   80                     must be "iface", "bus", "mem", "xo", "gpll0_mss",
   81                     "snoc_axi", "mnoc_axi", "pnoc", "qdss"
   82         qcom,msm8998-mss-pil:
   83                     must be "iface", "bus", "mem", "xo", "gpll0_mss",
   84                     "snoc_axi", "mnoc_axi", "qdss"
   85         qcom,sdm845-mss-pil:
   86                     must be "iface", "bus", "mem", "xo", "gpll0_mss",
   87                     "snoc_axi", "mnoc_axi", "prng"
   88 
   89 - resets:
   90         Usage: required
   91         Value type: <phandle>
   92         Definition: reference to the reset-controller for the modem sub-system
   93                     reference to the list of 3 reset-controllers for the
   94                     wcss sub-system
   95                     reference to the list of 2 reset-controllers for the modem
   96                     sub-system on SDM845 SoCs
   97 
   98 - reset-names:
   99         Usage: required
  100         Value type: <stringlist>
  101         Definition: must be "mss_restart" for the modem sub-system
  102                     must be "wcss_aon_reset", "wcss_reset", "wcss_q6_reset"
  103                     for the wcss sub-system
  104                     must be "mss_restart", "pdc_reset" for the modem
  105                     sub-system on SDM845 SoCs
  106 
  107 For devices where the mba and mpss sub-nodes are not specified, mba/mpss region
  108 should be referenced as follows:
  109 - memory-region:
  110         Usage: required
  111         Value type: <phandle>
  112         Definition: reference to the reserved-memory for the mba region followed
  113                     by the mpss region
  114 
  115 For the compatible strings below the following supplies are required:
  116   "qcom,q6v5-pil"
  117   "qcom,msm8916-mss-pil",
  118 - cx-supply: (deprecated, use power domain instead)
  119 - mx-supply: (deprecated, use power domain instead)
  120 - pll-supply:
  121         Usage: required
  122         Value type: <phandle>
  123         Definition: reference to the regulators to be held on behalf of the
  124                     booting of the Hexagon core
  125 
  126 For the compatible string below the following supplies are required:
  127   "qcom,msm8974-mss-pil"
  128 - cx-supply: (deprecated, use power domain instead)
  129 - mss-supply:
  130 - mx-supply: (deprecated, use power domain instead)
  131 - pll-supply:
  132         Usage: required
  133         Value type: <phandle>
  134         Definition: reference to the regulators to be held on behalf of the
  135                     booting of the Hexagon core
  136 
  137 For the compatible string below the following supplies are required:
  138   "qcom,qcs404-wcss-pil"
  139 - cx-supply:
  140         Usage: required
  141         Value type: <phandle>
  142         Definition: reference to the regulators to be held on behalf of the
  143                     booting of the Hexagon core
  144 
  145 For the compatible string below the following supplies are required:
  146   "qcom,msm8996-mss-pil"
  147 - pll-supply:
  148         Usage: required
  149         Value type: <phandle>
  150         Definition: reference to the regulators to be held on behalf of the
  151                     booting of the Hexagon core
  152 
  153 - power-domains:
  154         Usage: required
  155         Value type: <phandle>
  156         Definition: reference to power-domains that match power-domain-names
  157 
  158 - power-domain-names:
  159         Usage: required
  160         Value type: <stringlist>
  161         Definition: The power-domains needed depend on the compatible string:
  162         qcom,ipq8074-wcss-pil:
  163                     no power-domain names required
  164         qcom,q6v5-pil:
  165         qcom,msm8916-mss-pil:
  166         qcom,msm8974-mss-pil:
  167         qcom,msm8996-mss-pil:
  168         qcom,msm8998-mss-pil:
  169                     must be "cx", "mx"
  170         qcom,sdm845-mss-pil:
  171                     must be "cx", "mx", "mss"
  172 
  173 - qcom,qmp:
  174         Usage: optional
  175         Value type: <phandle>
  176         Definition: reference to the AOSS side-channel message RAM.
  177 
  178 - qcom,smem-states:
  179         Usage: required
  180         Value type: <phandle>
  181         Definition: reference to the smem state for requesting the Hexagon to
  182                     shut down
  183 
  184 - qcom,smem-state-names:
  185         Usage: required
  186         Value type: <stringlist>
  187         Definition: must be "stop"
  188 
  189 - qcom,halt-regs:
  190         Usage: required
  191         Value type: <prop-encoded-array>
  192         Definition: a phandle reference to a syscon representing TCSR followed
  193                     by the three offsets within syscon for q6, modem and nc
  194                     halt registers.
  195 
  196 The Hexagon node must contain iommus property as described in ../iommu/iommu.txt
  197 on platforms which do not have TrustZone.
  198 
  199 = SUBNODES:
  200 The Hexagon node must contain two subnodes, named "mba" and "mpss" representing
  201 the memory regions used by the Hexagon firmware. Each sub-node must contain:
  202 
  203 - memory-region:
  204         Usage: required
  205         Value type: <phandle>
  206         Definition: reference to the reserved-memory for the region
  207 
  208 The Hexagon node may also have an subnode named either "smd-edge" or
  209 "glink-edge" that describes the communication edge, channels and devices
  210 related to the Hexagon.  See ../soc/qcom/qcom,smd.yaml and
  211 ../soc/qcom/qcom,glink.txt for details on how to describe these.
  212 
  213 = EXAMPLE
  214 The following example describes the resources needed to boot control the
  215 Hexagon, as it is found on MSM8974 boards.
  216 
  217         remoteproc@fc880000 {
  218                 compatible = "qcom,msm8974-mss-pil";
  219                 reg = <0xfc880000 0x100>, <0xfc820000 0x020>;
  220                 reg-names = "qdsp6", "rmb";
  221 
  222                 interrupts-extended = <&intc GIC_SPI 24 IRQ_TYPE_EDGE_RISING>,
  223                                       <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
  224                                       <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
  225                                       <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
  226                                       <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
  227                 interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack";
  228 
  229                 clocks = <&gcc GCC_MSS_Q6_BIMC_AXI_CLK>,
  230                          <&gcc GCC_MSS_CFG_AHB_CLK>,
  231                          <&gcc GCC_BOOT_ROM_AHB_CLK>,
  232                          <&xo_board>;
  233                 clock-names = "iface", "bus", "mem", "xo";
  234 
  235                 resets = <&gcc GCC_MSS_RESTART>;
  236                 reset-names = "mss_restart";
  237 
  238                 cx-supply = <&pm8841_s2>;
  239                 mss-supply = <&pm8841_s3>;
  240                 mx-supply = <&pm8841_s1>;
  241                 pll-supply = <&pm8941_l12>;
  242 
  243                 qcom,halt-regs = <&tcsr_mutex_block 0x1180 0x1200 0x1280>;
  244 
  245                 qcom,smem-states = <&modem_smp2p_out 0>;
  246                 qcom,smem-state-names = "stop";
  247 
  248                 mba {
  249                         memory-region = <&mba_region>;
  250                 };
  251 
  252                 mpss {
  253                         memory-region = <&mpss_region>;
  254                 };
  255 
  256                 smd-edge {
  257                         interrupts = <GIC_SPI 25 IRQ_TYPE_EDGE_RISING>;
  258 
  259                         qcom,ipc = <&apcs 8 12>;
  260                         qcom,smd-edge = <0>;
  261 
  262                         label = "modem";
  263                 };
  264         };

Cache object: d78cab74a69692b03d1cea5a1c92b50f


[ 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.