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/interconnect/interconnect.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 Interconnect Provider Device Tree Bindings
    2 =========================================
    3 
    4 The purpose of this document is to define a common set of generic interconnect
    5 providers/consumers properties.
    6 
    7 
    8 = interconnect providers =
    9 
   10 The interconnect provider binding is intended to represent the interconnect
   11 controllers in the system. Each provider registers a set of interconnect
   12 nodes, which expose the interconnect related capabilities of the interconnect
   13 to consumer drivers. These capabilities can be throughput, latency, priority
   14 etc. The consumer drivers set constraints on interconnect path (or endpoints)
   15 depending on the use case. Interconnect providers can also be interconnect
   16 consumers, such as in the case where two network-on-chip fabrics interface
   17 directly.
   18 
   19 Required properties:
   20 - compatible : contains the interconnect provider compatible string
   21 - #interconnect-cells : number of cells in a interconnect specifier needed to
   22                         encode the interconnect node id and optionally add a
   23                         path tag
   24 
   25 Example:
   26 
   27                 snoc: interconnect@580000 {
   28                         compatible = "qcom,msm8916-snoc";
   29                         #interconnect-cells = <1>;
   30                         reg = <0x580000 0x14000>;
   31                         clock-names = "bus_clk", "bus_a_clk";
   32                         clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
   33                                  <&rpmcc RPM_SMD_SNOC_A_CLK>;
   34                 };
   35 
   36 
   37 = interconnect consumers =
   38 
   39 The interconnect consumers are device nodes which dynamically express their
   40 bandwidth requirements along interconnect paths they are connected to. There
   41 can be multiple interconnect providers on a SoC and the consumer may consume
   42 multiple paths from different providers depending on use case and the
   43 components it has to interact with.
   44 
   45 Required properties:
   46 interconnects : Pairs of phandles and interconnect provider specifier to denote
   47                 the edge source and destination ports of the interconnect path.
   48                 An optional path tag value could specified as additional argument
   49                 to both endpoints and in such cases, this information will be passed
   50                 to the interconnect framework to do aggregation based on the attached
   51                 tag.
   52 
   53 Optional properties:
   54 interconnect-names : List of interconnect path name strings sorted in the same
   55                      order as the interconnects property. Consumers drivers will use
   56                      interconnect-names to match interconnect paths with interconnect
   57                      specifier pairs.
   58 
   59                      Reserved interconnect names:
   60                          * dma-mem: Path from the device to the main memory of
   61                                     the system
   62 
   63 Example:
   64 
   65         sdhci@7864000 {
   66                 ...
   67                 interconnects = <&pnoc MASTER_SDCC_1 &bimc SLAVE_EBI_CH0>;
   68                 interconnect-names = "sdhc-mem";
   69         };
   70 
   71 Example with path tags:
   72 
   73         gnoc: interconnect@17900000 {
   74                 ...
   75                 interconnect-cells = <2>;
   76         };
   77 
   78         mnoc: interconnect@1380000 {
   79                 ...
   80                 interconnect-cells = <2>;
   81         };
   82 
   83         cpu@0 {
   84                 ...
   85                 interconnects = <&gnoc MASTER_APPSS_PROC 3 &mnoc SLAVE_EBI1 3>;
   86         }

Cache object: 83228587954af0327fc4812f061f7bfb


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