xref: /freebsd/sys/contrib/device-tree/Bindings/crypto/qcom,prng.yaml (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1e67e8565SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only
2e67e8565SEmmanuel Vadot%YAML 1.2
3e67e8565SEmmanuel Vadot---
4e67e8565SEmmanuel Vadot$id: http://devicetree.org/schemas/crypto/qcom,prng.yaml#
5e67e8565SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6e67e8565SEmmanuel Vadot
7e67e8565SEmmanuel Vadottitle: Qualcomm Pseudo Random Number Generator
8e67e8565SEmmanuel Vadot
9e67e8565SEmmanuel Vadotmaintainers:
10e67e8565SEmmanuel Vadot  - Vinod Koul <vkoul@kernel.org>
11e67e8565SEmmanuel Vadot
12e67e8565SEmmanuel Vadotproperties:
13e67e8565SEmmanuel Vadot  compatible:
1484943d6fSEmmanuel Vadot    oneOf:
1584943d6fSEmmanuel Vadot      - enum:
16e67e8565SEmmanuel Vadot          - qcom,prng  # 8916 etc.
17e67e8565SEmmanuel Vadot          - qcom,prng-ee  # 8996 and later using EE
1884943d6fSEmmanuel Vadot      - items:
1984943d6fSEmmanuel Vadot          - enum:
20*b2d2a78aSEmmanuel Vadot              - qcom,sa8255p-trng
2184943d6fSEmmanuel Vadot              - qcom,sa8775p-trng
2284943d6fSEmmanuel Vadot              - qcom,sc7280-trng
2384943d6fSEmmanuel Vadot              - qcom,sm8450-trng
2484943d6fSEmmanuel Vadot              - qcom,sm8550-trng
258d13bc63SEmmanuel Vadot              - qcom,sm8650-trng
2684943d6fSEmmanuel Vadot          - const: qcom,trng
27e67e8565SEmmanuel Vadot
28e67e8565SEmmanuel Vadot  reg:
29e67e8565SEmmanuel Vadot    maxItems: 1
30e67e8565SEmmanuel Vadot
31e67e8565SEmmanuel Vadot  clocks:
32e67e8565SEmmanuel Vadot    maxItems: 1
33e67e8565SEmmanuel Vadot
34e67e8565SEmmanuel Vadot  clock-names:
35e67e8565SEmmanuel Vadot    items:
36e67e8565SEmmanuel Vadot      - const: core
37e67e8565SEmmanuel Vadot
38e67e8565SEmmanuel Vadotrequired:
39e67e8565SEmmanuel Vadot  - compatible
40e67e8565SEmmanuel Vadot  - reg
4184943d6fSEmmanuel Vadot
4284943d6fSEmmanuel VadotallOf:
4384943d6fSEmmanuel Vadot  - if:
4484943d6fSEmmanuel Vadot      not:
4584943d6fSEmmanuel Vadot        properties:
4684943d6fSEmmanuel Vadot          compatible:
4784943d6fSEmmanuel Vadot            contains:
4884943d6fSEmmanuel Vadot              const: qcom,trng
4984943d6fSEmmanuel Vadot    then:
5084943d6fSEmmanuel Vadot      required:
51e67e8565SEmmanuel Vadot        - clocks
52e67e8565SEmmanuel Vadot        - clock-names
53e67e8565SEmmanuel Vadot
54e67e8565SEmmanuel VadotadditionalProperties: false
55e67e8565SEmmanuel Vadot
56e67e8565SEmmanuel Vadotexamples:
57e67e8565SEmmanuel Vadot  - |
58e67e8565SEmmanuel Vadot    rng@f9bff000 {
59e67e8565SEmmanuel Vadot        compatible = "qcom,prng";
60e67e8565SEmmanuel Vadot        reg = <0xf9bff000 0x200>;
61e67e8565SEmmanuel Vadot        clocks = <&clk 125>;
62e67e8565SEmmanuel Vadot        clock-names = "core";
63e67e8565SEmmanuel Vadot    };
64