summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/clock/sifive/fu540-prci.yaml
blob: c79e752283aae7a1c309005de4804c40a3ddc903 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2020 SiFive, Inc.
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/sifive/fu540-prci.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: SiFive FU540 Power Reset Clock Interrupt Controller (PRCI)

maintainers:
  - Paul Walmsley  <paul.walmsley@sifive.com>

description:
  On the FU540 family of SoCs, most system-wide clock and reset integration
  is via the PRCI IP block.
  The clock consumer should specify the desired clock via the clock ID
  macros defined in include/dt-bindings/clock/sifive-fu540-prci.h.
  These macros begin with PRCI_CLK_.

  The hfclk and rtcclk nodes are required, and represent physical
  crystals or resonators located on the PCB.  These nodes should be present
  underneath /, rather than /soc.

properties:
  compatible:
    const: sifive,fu540-c000-prci

  reg:
    maxItems: 1

  clocks:
    items:
      - description: high frequency clock.
      - description: RTL clock.

  clock-names:
    items:
      - const: hfclk
      - const: rtcclk

  "#clock-cells":
    const: 1

required:
  - compatible
  - reg
  - clocks
  - "#clock-cells"

additionalProperties: false

examples:
  - |
    prci: clock-controller@10000000 {
      compatible = "sifive,fu540-c000-prci";
      reg = <0x10000000 0x1000>;
      clocks = <&hfclk>, <&rtcclk>;
      #clock-cells = <1>;
    };