xref: /freebsd/sys/contrib/device-tree/Bindings/rng/brcm,bcm2835.yaml (revision 7fdf597e96a02165cfe22ff357b857d5fa15ed8a)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/rng/brcm,bcm2835.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: BCM2835/6368 Random number generator
8
9maintainers:
10  - Stefan Wahren <stefan.wahren@i2se.com>
11  - Florian Fainelli <f.fainelli@gmail.com>
12  - Herbert Xu <herbert@gondor.apana.org.au>
13
14properties:
15  compatible:
16    enum:
17      - brcm,bcm2835-rng
18      - brcm,bcm-nsp-rng
19      - brcm,bcm5301x-rng
20      - brcm,bcm6368-rng
21
22  reg:
23    maxItems: 1
24
25  clocks:
26    maxItems: 1
27
28  clock-names:
29    const: ipsec
30
31  resets:
32    maxItems: 1
33
34  reset-names:
35    const: ipsec
36
37  interrupts:
38    maxItems: 1
39
40required:
41  - compatible
42  - reg
43
44if:
45  properties:
46    compatible:
47      enum:
48        - brcm,bcm6368-rng
49then:
50  required:
51    - clocks
52    - clock-names
53    - resets
54    - reset-names
55
56additionalProperties: false
57
58examples:
59  - |
60    rng@7e104000 {
61        compatible = "brcm,bcm2835-rng";
62        reg = <0x7e104000 0x10>;
63        interrupts = <2 29>;
64    };
65
66  - |
67    rng@18033000 {
68        compatible = "brcm,bcm-nsp-rng";
69        reg = <0x18033000 0x14>;
70    };
71
72  - |
73    rng@10004180 {
74        compatible = "brcm,bcm6368-rng";
75        reg = <0x10004180 0x14>;
76
77        clocks = <&periph_clk 18>;
78        clock-names = "ipsec";
79
80        resets = <&periph_rst 4>;
81        reset-names = "ipsec";
82    };
83