162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/crypto/qcom-qce.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: Qualcomm crypto engine driver 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Bhupesh Sharma <bhupesh.sharma@linaro.org> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_cidescription: 1362306a36Sopenharmony_ci This document defines the binding for the QCE crypto 1462306a36Sopenharmony_ci controller found on Qualcomm parts. 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ciproperties: 1762306a36Sopenharmony_ci compatible: 1862306a36Sopenharmony_ci oneOf: 1962306a36Sopenharmony_ci - const: qcom,crypto-v5.1 2062306a36Sopenharmony_ci deprecated: true 2162306a36Sopenharmony_ci description: Kept only for ABI backward compatibility 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci - const: qcom,crypto-v5.4 2462306a36Sopenharmony_ci deprecated: true 2562306a36Sopenharmony_ci description: Kept only for ABI backward compatibility 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci - items: 2862306a36Sopenharmony_ci - enum: 2962306a36Sopenharmony_ci - qcom,ipq4019-qce 3062306a36Sopenharmony_ci - qcom,sm8150-qce 3162306a36Sopenharmony_ci - const: qcom,qce 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_ci - items: 3462306a36Sopenharmony_ci - enum: 3562306a36Sopenharmony_ci - qcom,ipq6018-qce 3662306a36Sopenharmony_ci - qcom,ipq8074-qce 3762306a36Sopenharmony_ci - qcom,ipq9574-qce 3862306a36Sopenharmony_ci - qcom,msm8996-qce 3962306a36Sopenharmony_ci - qcom,qcm2290-qce 4062306a36Sopenharmony_ci - qcom,sdm845-qce 4162306a36Sopenharmony_ci - qcom,sm6115-qce 4262306a36Sopenharmony_ci - const: qcom,ipq4019-qce 4362306a36Sopenharmony_ci - const: qcom,qce 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci - items: 4662306a36Sopenharmony_ci - enum: 4762306a36Sopenharmony_ci - qcom,sm8250-qce 4862306a36Sopenharmony_ci - qcom,sm8350-qce 4962306a36Sopenharmony_ci - qcom,sm8450-qce 5062306a36Sopenharmony_ci - qcom,sm8550-qce 5162306a36Sopenharmony_ci - const: qcom,sm8150-qce 5262306a36Sopenharmony_ci - const: qcom,qce 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci reg: 5562306a36Sopenharmony_ci maxItems: 1 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci clocks: 5862306a36Sopenharmony_ci minItems: 1 5962306a36Sopenharmony_ci maxItems: 3 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci clock-names: 6262306a36Sopenharmony_ci minItems: 1 6362306a36Sopenharmony_ci maxItems: 3 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci iommus: 6662306a36Sopenharmony_ci minItems: 1 6762306a36Sopenharmony_ci maxItems: 8 6862306a36Sopenharmony_ci description: 6962306a36Sopenharmony_ci phandle to apps_smmu node with sid mask. 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci interconnects: 7262306a36Sopenharmony_ci maxItems: 1 7362306a36Sopenharmony_ci description: 7462306a36Sopenharmony_ci Interconnect path between qce crypto and main memory. 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci interconnect-names: 7762306a36Sopenharmony_ci const: memory 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci dmas: 8062306a36Sopenharmony_ci items: 8162306a36Sopenharmony_ci - description: DMA specifiers for rx dma channel. 8262306a36Sopenharmony_ci - description: DMA specifiers for tx dma channel. 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci dma-names: 8562306a36Sopenharmony_ci items: 8662306a36Sopenharmony_ci - const: rx 8762306a36Sopenharmony_ci - const: tx 8862306a36Sopenharmony_ci 8962306a36Sopenharmony_ciallOf: 9062306a36Sopenharmony_ci - if: 9162306a36Sopenharmony_ci properties: 9262306a36Sopenharmony_ci compatible: 9362306a36Sopenharmony_ci contains: 9462306a36Sopenharmony_ci enum: 9562306a36Sopenharmony_ci - qcom,crypto-v5.1 9662306a36Sopenharmony_ci - qcom,crypto-v5.4 9762306a36Sopenharmony_ci - qcom,ipq6018-qce 9862306a36Sopenharmony_ci - qcom,ipq8074-qce 9962306a36Sopenharmony_ci - qcom,msm8996-qce 10062306a36Sopenharmony_ci - qcom,sdm845-qce 10162306a36Sopenharmony_ci then: 10262306a36Sopenharmony_ci properties: 10362306a36Sopenharmony_ci clocks: 10462306a36Sopenharmony_ci maxItems: 3 10562306a36Sopenharmony_ci clock-names: 10662306a36Sopenharmony_ci items: 10762306a36Sopenharmony_ci - const: iface 10862306a36Sopenharmony_ci - const: bus 10962306a36Sopenharmony_ci - const: core 11062306a36Sopenharmony_ci required: 11162306a36Sopenharmony_ci - clocks 11262306a36Sopenharmony_ci - clock-names 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci - if: 11562306a36Sopenharmony_ci properties: 11662306a36Sopenharmony_ci compatible: 11762306a36Sopenharmony_ci contains: 11862306a36Sopenharmony_ci enum: 11962306a36Sopenharmony_ci - qcom,qcm2290-qce 12062306a36Sopenharmony_ci - qcom,sm6115-qce 12162306a36Sopenharmony_ci then: 12262306a36Sopenharmony_ci properties: 12362306a36Sopenharmony_ci clocks: 12462306a36Sopenharmony_ci maxItems: 1 12562306a36Sopenharmony_ci clock-names: 12662306a36Sopenharmony_ci items: 12762306a36Sopenharmony_ci - const: core 12862306a36Sopenharmony_ci required: 12962306a36Sopenharmony_ci - clocks 13062306a36Sopenharmony_ci - clock-names 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_cirequired: 13362306a36Sopenharmony_ci - compatible 13462306a36Sopenharmony_ci - reg 13562306a36Sopenharmony_ci - dmas 13662306a36Sopenharmony_ci - dma-names 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_ciadditionalProperties: false 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ciexamples: 14162306a36Sopenharmony_ci - | 14262306a36Sopenharmony_ci #include <dt-bindings/clock/qcom,gcc-apq8084.h> 14362306a36Sopenharmony_ci crypto-engine@fd45a000 { 14462306a36Sopenharmony_ci compatible = "qcom,ipq6018-qce", "qcom,ipq4019-qce", "qcom,qce"; 14562306a36Sopenharmony_ci reg = <0xfd45a000 0x6000>; 14662306a36Sopenharmony_ci clocks = <&gcc GCC_CE2_AHB_CLK>, 14762306a36Sopenharmony_ci <&gcc GCC_CE2_AXI_CLK>, 14862306a36Sopenharmony_ci <&gcc GCC_CE2_CLK>; 14962306a36Sopenharmony_ci clock-names = "iface", "bus", "core"; 15062306a36Sopenharmony_ci dmas = <&cryptobam 2>, <&cryptobam 3>; 15162306a36Sopenharmony_ci dma-names = "rx", "tx"; 15262306a36Sopenharmony_ci iommus = <&apps_smmu 0x584 0x0011>, 15362306a36Sopenharmony_ci <&apps_smmu 0x586 0x0011>, 15462306a36Sopenharmony_ci <&apps_smmu 0x594 0x0011>, 15562306a36Sopenharmony_ci <&apps_smmu 0x596 0x0011>; 15662306a36Sopenharmony_ci }; 157