^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) %YAML 1.2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) ---
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) $id: http://devicetree.org/schemas/rng/arm-cctrng.yaml#
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) $schema: http://devicetree.org/meta-schemas/core.yaml#
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) title: Arm TrustZone CryptoCell TRNG engine
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) maintainers:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - Hadar Gat <hadar.gat@arm.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) description: |+
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) Arm TrustZone CryptoCell TRNG (True Random Number Generator) engine.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) compatible:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) enum:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - arm,cryptocell-713-trng
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) - arm,cryptocell-703-trng
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) interrupts:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) maxItems: 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) reg:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) maxItems: 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) arm,rosc-ratio:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) Arm TrustZone CryptoCell TRNG engine has 4 ring oscillators.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) Sampling ratio values for these 4 ring oscillators. (from calibration)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) $ref: /schemas/types.yaml#/definitions/uint32-array
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) maxItems: 4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) clocks:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) maxItems: 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) required:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) - compatible
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) - interrupts
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) - reg
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) - arm,rosc-ratio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) additionalProperties: false
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) examples:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) - |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) arm_cctrng: rng@60000000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) compatible = "arm,cryptocell-713-trng";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) interrupts = <0 29 4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) reg = <0x60000000 0x10000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) arm,rosc-ratio = <5000 1000 500 0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) };