1c2f24933SRafał Miłecki# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2c2f24933SRafał Miłecki%YAML 1.2
3c2f24933SRafał Miłecki---
4c2f24933SRafał Miłecki$id: http://devicetree.org/schemas/mfd/brcm,cru.yaml#
5c2f24933SRafał Miłecki$schema: http://devicetree.org/meta-schemas/core.yaml#
6c2f24933SRafał Miłecki
7c2f24933SRafał Miłeckititle: Broadcom CRU
8c2f24933SRafał Miłecki
9c2f24933SRafał Miłeckimaintainers:
10c2f24933SRafał Miłecki  - Rafał Miłecki <rafal@milecki.pl>
11c2f24933SRafał Miłecki
12c2f24933SRafał Miłeckidescription: |
13c2f24933SRafał Miłecki  Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware
14c2f24933SRafał Miłecki  block grouping smaller blocks. On Broadcom Northstar platform it contains e.g.
15c2f24933SRafał Miłecki  clocks, pinctrl, USB PHY and thermal.
16c2f24933SRafał Miłecki
17c2f24933SRafał Miłeckiproperties:
18c2f24933SRafał Miłecki  compatible:
19c2f24933SRafał Miłecki    items:
20c2f24933SRafał Miłecki      - enum:
21c2f24933SRafał Miłecki          - brcm,ns-cru
22c2f24933SRafał Miłecki      - const: simple-mfd
23c2f24933SRafał Miłecki
24c2f24933SRafał Miłecki  reg:
25c2f24933SRafał Miłecki    description: CRU registers
26c2f24933SRafał Miłecki
27c2f24933SRafał Miłecki  ranges: true
28c2f24933SRafał Miłecki
29c2f24933SRafał Miłecki  "#address-cells":
30c2f24933SRafał Miłecki    const: 1
31c2f24933SRafał Miłecki
32c2f24933SRafał Miłecki  "#size-cells":
33c2f24933SRafał Miłecki    const: 1
34c2f24933SRafał Miłecki
35c2f24933SRafał Miłecki  pinctrl:
36c2f24933SRafał Miłecki    $ref: ../pinctrl/brcm,ns-pinmux.yaml
37c2f24933SRafał Miłecki
38c2f24933SRafał MiłeckipatternProperties:
39c2f24933SRafał Miłecki  '^clock-controller@[a-f0-9]+$':
40c2f24933SRafał Miłecki    $ref: ../clock/brcm,iproc-clocks.yaml
41c2f24933SRafał Miłecki
42*15fd4ca4SRafał Miłecki  '^syscon@[a-f0-9]+$':
43*15fd4ca4SRafał Miłecki    $ref: syscon.yaml
44*15fd4ca4SRafał Miłecki
45c2f24933SRafał Miłecki  '^thermal@[a-f0-9]+$':
46c2f24933SRafał Miłecki    $ref: ../thermal/brcm,ns-thermal.yaml
47c2f24933SRafał Miłecki
48c2f24933SRafał MiłeckiadditionalProperties: false
49c2f24933SRafał Miłecki
50c2f24933SRafał Miłeckirequired:
51c2f24933SRafał Miłecki  - reg
52c2f24933SRafał Miłecki
53c2f24933SRafał Miłeckiexamples:
54c2f24933SRafał Miłecki  - |
55c2f24933SRafał Miłecki    cru-bus@1800c100 {
56c2f24933SRafał Miłecki        compatible = "brcm,ns-cru", "simple-mfd";
57c2f24933SRafał Miłecki        reg = <0x1800c100 0x1d0>;
58c2f24933SRafał Miłecki        ranges;
59c2f24933SRafał Miłecki        #address-cells = <1>;
60c2f24933SRafał Miłecki        #size-cells = <1>;
61c2f24933SRafał Miłecki
62c2f24933SRafał Miłecki        clock-controller@100 {
63c2f24933SRafał Miłecki            #clock-cells = <1>;
64c2f24933SRafał Miłecki            compatible = "brcm,nsp-lcpll0";
65c2f24933SRafał Miłecki            reg = <0x100 0x14>;
66c2f24933SRafał Miłecki            clocks = <&osc>;
67c2f24933SRafał Miłecki            clock-output-names = "lcpll0", "pcie_phy", "sdio", "ddr_phy";
68c2f24933SRafał Miłecki        };
69c2f24933SRafał Miłecki
70c2f24933SRafał Miłecki        clock-controller@140 {
71c2f24933SRafał Miłecki            #clock-cells = <1>;
72c2f24933SRafał Miłecki            compatible = "brcm,nsp-genpll";
73c2f24933SRafał Miłecki            reg = <0x140 0x24>;
74c2f24933SRafał Miłecki            clocks = <&osc>;
75c2f24933SRafał Miłecki            clock-output-names = "genpll", "phy", "ethernetclk", "usbclk",
76c2f24933SRafał Miłecki                                 "iprocfast", "sata1", "sata2";
77c2f24933SRafał Miłecki        };
78c2f24933SRafał Miłecki
79*15fd4ca4SRafał Miłecki        syscon@180 {
80*15fd4ca4SRafał Miłecki            compatible = "brcm,cru-clkset", "syscon";
81*15fd4ca4SRafał Miłecki            reg = <0x180 0x4>;
82*15fd4ca4SRafał Miłecki        };
83*15fd4ca4SRafał Miłecki
84c2f24933SRafał Miłecki        pinctrl {
85c2f24933SRafał Miłecki            compatible = "brcm,bcm4708-pinmux";
86c2f24933SRafał Miłecki            offset = <0x1c0>;
87c2f24933SRafał Miłecki        };
88c2f24933SRafał Miłecki
89c2f24933SRafał Miłecki        thermal@2c0 {
90c2f24933SRafał Miłecki            compatible = "brcm,ns-thermal";
91c2f24933SRafał Miłecki            reg = <0x2c0 0x10>;
92c2f24933SRafał Miłecki            #thermal-sensor-cells = <0>;
93c2f24933SRafał Miłecki        };
94c2f24933SRafał Miłecki    };
95