xref: /freebsd/sys/contrib/device-tree/Bindings/crypto/qcom,prng.yaml (revision a0ca4af9455b844c5e094fc1b09b1390ffa979fc)
1# SPDX-License-Identifier: GPL-2.0-only
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/crypto/qcom,prng.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm Pseudo Random Number Generator
8
9maintainers:
10  - Vinod Koul <vkoul@kernel.org>
11
12properties:
13  compatible:
14    oneOf:
15      - enum:
16          - qcom,prng  # 8916 etc.
17          - qcom,prng-ee  # 8996 and later using EE
18      - items:
19          - enum:
20              - qcom,sa8775p-trng
21              - qcom,sc7280-trng
22              - qcom,sm8450-trng
23              - qcom,sm8550-trng
24              - qcom,sm8650-trng
25          - const: qcom,trng
26
27  reg:
28    maxItems: 1
29
30  clocks:
31    maxItems: 1
32
33  clock-names:
34    items:
35      - const: core
36
37required:
38  - compatible
39  - reg
40
41allOf:
42  - if:
43      not:
44        properties:
45          compatible:
46            contains:
47              const: qcom,trng
48    then:
49      required:
50        - clocks
51        - clock-names
52
53additionalProperties: false
54
55examples:
56  - |
57    rng@f9bff000 {
58        compatible = "qcom,prng";
59        reg = <0xf9bff000 0x200>;
60        clocks = <&clk 125>;
61        clock-names = "core";
62    };
63