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,wcnss.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 WCNSS Binding
    2 
    3 This binding describes the Qualcomm WCNSS hardware. It consists of control
    4 block and a BT, WiFi and FM radio block, all using SMD as command channels.
    5 
    6 - compatible:
    7         Usage: required
    8         Value type: <string>
    9         Definition: must be: "qcom,wcnss",
   10 
   11 - qcom,smd-channel:
   12         Usage: required
   13         Value type: <string>
   14         Definition: standard SMD property specifying the SMD channel used for
   15                     communication with the WiFi firmware.
   16                     Should be "WCNSS_CTRL".
   17 
   18 - qcom,mmio:
   19         Usage: required
   20         Value type: <prop-encoded-array>
   21         Definition: reference to a node specifying the wcnss "ccu" and "dxe"
   22                     register blocks. The node must be compatible with one of
   23                     the following:
   24                     "qcom,riva",
   25                     "qcom,pronto"
   26 
   27 - firmware-name:
   28         Usage: optional
   29         Value type: <string>
   30         Definition: specifies the relative firmware image path for the WLAN NV
   31                     blob. Defaults to "wlan/prima/WCNSS_qcom_wlan_nv.bin" if
   32                     not specified.
   33 
   34 = SUBNODES
   35 The subnodes of the wcnss node are optional and describe the individual blocks in
   36 the WCNSS.
   37 
   38 == Bluetooth
   39 The following properties are defined to the bluetooth node:
   40 
   41 - compatible:
   42         Usage: required
   43         Value type: <string>
   44         Definition: must be:
   45                     "qcom,wcnss-bt"
   46 
   47 - local-bd-address:
   48         Usage: optional
   49         Value type: <u8 array>
   50         Definition: see Documentation/devicetree/bindings/net/bluetooth.txt
   51 
   52 == WiFi
   53 The following properties are defined to the WiFi node:
   54 
   55 - compatible:
   56         Usage: required
   57         Value type: <string>
   58         Definition: must be one of:
   59                     "qcom,wcnss-wlan",
   60 
   61 - interrupts:
   62         Usage: required
   63         Value type: <prop-encoded-array>
   64         Definition: should specify the "rx" and "tx" interrupts
   65 
   66 - interrupt-names:
   67         Usage: required
   68         Value type: <stringlist>
   69         Definition: must contain "rx" and "tx"
   70 
   71 - qcom,smem-state:
   72         Usage: required
   73         Value type: <prop-encoded-array>
   74         Definition: should reference the tx-enable and tx-rings-empty SMEM states
   75 
   76 - qcom,smem-state-names:
   77         Usage: required
   78         Value type: <stringlist>
   79         Definition: must contain "tx-enable" and "tx-rings-empty"
   80 
   81 = EXAMPLE
   82 The following example represents a SMD node, with one edge representing the
   83 "pronto" subsystem, with the wcnss device and its wcn3680 BT and WiFi blocks
   84 described; as found on the 8974 platform.
   85 
   86 smd {
   87         compatible = "qcom,smd";
   88 
   89         pronto-edge {
   90                 interrupts = <0 142 1>;
   91 
   92                 qcom,ipc = <&apcs 8 17>;
   93                 qcom,smd-edge = <6>;
   94 
   95                 wcnss {
   96                         compatible = "qcom,wcnss";
   97                         qcom,smd-channels = "WCNSS_CTRL";
   98 
   99                         #address-cells = <1>;
  100                         #size-cells = <1>;
  101 
  102                         qcom,mmio = <&pronto>;
  103 
  104                         bt {
  105                                 compatible = "qcom,wcnss-bt";
  106 
  107                                 /* BD address 00:11:22:33:44:55 */
  108                                 local-bd-address = [ 55 44 33 22 11 00 ];
  109                         };
  110 
  111                         wlan {
  112                                 compatible = "qcom,wcnss-wlan";
  113 
  114                                 interrupts = <0 145 0>, <0 146 0>;
  115                                 interrupt-names = "tx", "rx";
  116 
  117                                 qcom,smem-state = <&apps_smsm 10>, <&apps_smsm 9>;
  118                                 qcom,smem-state-names = "tx-enable", "tx-rings-empty";
  119                         };
  120                 };
  121         };
  122 };
  123 
  124 soc {
  125         pronto: pronto {
  126                 compatible = "qcom,pronto";
  127 
  128                 reg = <0xfb204000 0x2000>, <0xfb202000 0x1000>, <0xfb21b000 0x3000>;
  129                 reg-names = "ccu", "dxe", "pmu";
  130         };
  131 };

Cache object: ebe5da5534142eb745e91c3a705baf6f


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