# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/crypto/rockchip,rk3288-crypto.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Rockchip Electronics Security Accelerator maintainers: - Heiko Stuebner <heiko@sntech.de> properties: compatible: enum: - rockchip,rk3288-crypto - rockchip,rk3328-crypto - rockchip,rk3399-crypto reg: maxItems: 1 interrupts: maxItems: 1 clocks: minItems: 3 maxItems: 4 clock-names: minItems: 3 maxItems: 4 resets: minItems: 1 maxItems: 3 reset-names: minItems: 1 maxItems: 3 allOf: - if: properties: compatible: contains: const: rockchip,rk3288-crypto then: properties: clocks: minItems: 4 clock-names: items: - const: aclk - const: hclk - const: sclk - const: apb_pclk resets: maxItems: 1 reset-names: items: - const: crypto-rst - if: properties: compatible: contains: const: rockchip,rk3328-crypto then: properties: clocks: maxItems: 3 clock-names: items: - const: hclk_master - const: hclk_slave - const: sclk resets: maxItems: 1 reset-names: items: - const: crypto-rst - if: properties: compatible: contains: const: rockchip,rk3399-crypto then: properties: clocks: maxItems: 3 clock-names: items: - const: hclk_master - const: hclk_slave - const: sclk resets: minItems: 3 reset-names: items: - const: master - const: slave - const: crypto-rst required: - compatible - reg - interrupts - clocks - clock-names - resets - reset-names additionalProperties: false examples: - | #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/clock/rk3288-cru.h> crypto@ff8a0000 { compatible = "rockchip,rk3288-crypto"; reg = <0xff8a0000 0x4000>; interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cru ACLK_CRYPTO>, <&cru HCLK_CRYPTO>, <&cru SCLK_CRYPTO>, <&cru ACLK_DMAC1>; clock-names = "aclk", "hclk", "sclk", "apb_pclk"; resets = <&cru SRST_CRYPTO>; reset-names = "crypto-rst"; };