1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2fac71e4eSEmmanuel Vadot%YAML 1.2 3fac71e4eSEmmanuel Vadot--- 4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/crypto/qcom-qce.yaml# 5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6fac71e4eSEmmanuel Vadot 7fac71e4eSEmmanuel Vadottitle: Qualcomm crypto engine driver 8fac71e4eSEmmanuel Vadot 9fac71e4eSEmmanuel Vadotmaintainers: 10fac71e4eSEmmanuel Vadot - Bhupesh Sharma <bhupesh.sharma@linaro.org> 11fac71e4eSEmmanuel Vadot 12fac71e4eSEmmanuel Vadotdescription: 13fac71e4eSEmmanuel Vadot This document defines the binding for the QCE crypto 14fac71e4eSEmmanuel Vadot controller found on Qualcomm parts. 15fac71e4eSEmmanuel Vadot 16fac71e4eSEmmanuel Vadotproperties: 17fac71e4eSEmmanuel Vadot compatible: 18fac71e4eSEmmanuel Vadot oneOf: 19fac71e4eSEmmanuel Vadot - const: qcom,crypto-v5.1 20fac71e4eSEmmanuel Vadot deprecated: true 21fac71e4eSEmmanuel Vadot description: Kept only for ABI backward compatibility 22fac71e4eSEmmanuel Vadot 23fac71e4eSEmmanuel Vadot - const: qcom,crypto-v5.4 24fac71e4eSEmmanuel Vadot deprecated: true 25fac71e4eSEmmanuel Vadot description: Kept only for ABI backward compatibility 26fac71e4eSEmmanuel Vadot 27fac71e4eSEmmanuel Vadot - items: 28fac71e4eSEmmanuel Vadot - enum: 29f126890aSEmmanuel Vadot - qcom,ipq4019-qce 30f126890aSEmmanuel Vadot - qcom,sm8150-qce 31f126890aSEmmanuel Vadot - const: qcom,qce 32f126890aSEmmanuel Vadot 33f126890aSEmmanuel Vadot - items: 34f126890aSEmmanuel Vadot - enum: 35fac71e4eSEmmanuel Vadot - qcom,ipq6018-qce 36fac71e4eSEmmanuel Vadot - qcom,ipq8074-qce 37aa1a8ff2SEmmanuel Vadot - qcom,ipq9574-qce 38fac71e4eSEmmanuel Vadot - qcom,msm8996-qce 39f126890aSEmmanuel Vadot - qcom,qcm2290-qce 40fac71e4eSEmmanuel Vadot - qcom,sdm845-qce 41f126890aSEmmanuel Vadot - qcom,sm6115-qce 42fac71e4eSEmmanuel Vadot - const: qcom,ipq4019-qce 43fac71e4eSEmmanuel Vadot - const: qcom,qce 44fac71e4eSEmmanuel Vadot 45fac71e4eSEmmanuel Vadot - items: 46fac71e4eSEmmanuel Vadot - enum: 478d13bc63SEmmanuel Vadot - qcom,sc7280-qce 48*01950c46SEmmanuel Vadot - qcom,sm6350-qce 49fac71e4eSEmmanuel Vadot - qcom,sm8250-qce 50fac71e4eSEmmanuel Vadot - qcom,sm8350-qce 51fac71e4eSEmmanuel Vadot - qcom,sm8450-qce 52fac71e4eSEmmanuel Vadot - qcom,sm8550-qce 538d13bc63SEmmanuel Vadot - qcom,sm8650-qce 54fac71e4eSEmmanuel Vadot - const: qcom,sm8150-qce 55fac71e4eSEmmanuel Vadot - const: qcom,qce 56fac71e4eSEmmanuel Vadot 57fac71e4eSEmmanuel Vadot reg: 58fac71e4eSEmmanuel Vadot maxItems: 1 59fac71e4eSEmmanuel Vadot 60fac71e4eSEmmanuel Vadot clocks: 61f126890aSEmmanuel Vadot minItems: 1 62f126890aSEmmanuel Vadot maxItems: 3 63fac71e4eSEmmanuel Vadot 64fac71e4eSEmmanuel Vadot clock-names: 65f126890aSEmmanuel Vadot minItems: 1 66f126890aSEmmanuel Vadot maxItems: 3 67fac71e4eSEmmanuel Vadot 68fac71e4eSEmmanuel Vadot iommus: 69fac71e4eSEmmanuel Vadot minItems: 1 70fac71e4eSEmmanuel Vadot maxItems: 8 71fac71e4eSEmmanuel Vadot description: 72fac71e4eSEmmanuel Vadot phandle to apps_smmu node with sid mask. 73fac71e4eSEmmanuel Vadot 74fac71e4eSEmmanuel Vadot interconnects: 75fac71e4eSEmmanuel Vadot maxItems: 1 76fac71e4eSEmmanuel Vadot description: 77fac71e4eSEmmanuel Vadot Interconnect path between qce crypto and main memory. 78fac71e4eSEmmanuel Vadot 79fac71e4eSEmmanuel Vadot interconnect-names: 80fac71e4eSEmmanuel Vadot const: memory 81fac71e4eSEmmanuel Vadot 82fac71e4eSEmmanuel Vadot dmas: 83fac71e4eSEmmanuel Vadot items: 84fac71e4eSEmmanuel Vadot - description: DMA specifiers for rx dma channel. 85fac71e4eSEmmanuel Vadot - description: DMA specifiers for tx dma channel. 86fac71e4eSEmmanuel Vadot 87fac71e4eSEmmanuel Vadot dma-names: 88fac71e4eSEmmanuel Vadot items: 89fac71e4eSEmmanuel Vadot - const: rx 90fac71e4eSEmmanuel Vadot - const: tx 91fac71e4eSEmmanuel Vadot 92fac71e4eSEmmanuel VadotallOf: 93fac71e4eSEmmanuel Vadot - if: 94fac71e4eSEmmanuel Vadot properties: 95fac71e4eSEmmanuel Vadot compatible: 96fac71e4eSEmmanuel Vadot contains: 97fac71e4eSEmmanuel Vadot enum: 98fac71e4eSEmmanuel Vadot - qcom,crypto-v5.1 99fac71e4eSEmmanuel Vadot - qcom,crypto-v5.4 100f126890aSEmmanuel Vadot - qcom,ipq6018-qce 101f126890aSEmmanuel Vadot - qcom,ipq8074-qce 1028d13bc63SEmmanuel Vadot - qcom,ipq9574-qce 103f126890aSEmmanuel Vadot - qcom,msm8996-qce 104f126890aSEmmanuel Vadot - qcom,sdm845-qce 105fac71e4eSEmmanuel Vadot then: 106f126890aSEmmanuel Vadot properties: 107f126890aSEmmanuel Vadot clocks: 108f126890aSEmmanuel Vadot maxItems: 3 109f126890aSEmmanuel Vadot clock-names: 110f126890aSEmmanuel Vadot items: 111f126890aSEmmanuel Vadot - const: iface 112f126890aSEmmanuel Vadot - const: bus 113f126890aSEmmanuel Vadot - const: core 114f126890aSEmmanuel Vadot required: 115f126890aSEmmanuel Vadot - clocks 116f126890aSEmmanuel Vadot - clock-names 117f126890aSEmmanuel Vadot 118f126890aSEmmanuel Vadot - if: 119f126890aSEmmanuel Vadot properties: 120f126890aSEmmanuel Vadot compatible: 121f126890aSEmmanuel Vadot contains: 122f126890aSEmmanuel Vadot enum: 123f126890aSEmmanuel Vadot - qcom,qcm2290-qce 124f126890aSEmmanuel Vadot - qcom,sm6115-qce 125f126890aSEmmanuel Vadot then: 126f126890aSEmmanuel Vadot properties: 127f126890aSEmmanuel Vadot clocks: 128f126890aSEmmanuel Vadot maxItems: 1 129f126890aSEmmanuel Vadot clock-names: 130f126890aSEmmanuel Vadot items: 131f126890aSEmmanuel Vadot - const: core 132fac71e4eSEmmanuel Vadot required: 133fac71e4eSEmmanuel Vadot - clocks 134fac71e4eSEmmanuel Vadot - clock-names 135fac71e4eSEmmanuel Vadot 1368d13bc63SEmmanuel Vadot - if: 1378d13bc63SEmmanuel Vadot properties: 1388d13bc63SEmmanuel Vadot compatible: 1398d13bc63SEmmanuel Vadot contains: 1408d13bc63SEmmanuel Vadot enum: 1418d13bc63SEmmanuel Vadot - qcom,sm8150-qce 1428d13bc63SEmmanuel Vadot then: 1438d13bc63SEmmanuel Vadot properties: 1448d13bc63SEmmanuel Vadot clocks: false 1458d13bc63SEmmanuel Vadot clock-names: false 1468d13bc63SEmmanuel Vadot 147fac71e4eSEmmanuel Vadotrequired: 148fac71e4eSEmmanuel Vadot - compatible 149fac71e4eSEmmanuel Vadot - reg 150fac71e4eSEmmanuel Vadot - dmas 151fac71e4eSEmmanuel Vadot - dma-names 152fac71e4eSEmmanuel Vadot 153fac71e4eSEmmanuel VadotadditionalProperties: false 154fac71e4eSEmmanuel Vadot 155fac71e4eSEmmanuel Vadotexamples: 156fac71e4eSEmmanuel Vadot - | 157fac71e4eSEmmanuel Vadot #include <dt-bindings/clock/qcom,gcc-apq8084.h> 158fac71e4eSEmmanuel Vadot crypto-engine@fd45a000 { 159fac71e4eSEmmanuel Vadot compatible = "qcom,ipq6018-qce", "qcom,ipq4019-qce", "qcom,qce"; 160fac71e4eSEmmanuel Vadot reg = <0xfd45a000 0x6000>; 161fac71e4eSEmmanuel Vadot clocks = <&gcc GCC_CE2_AHB_CLK>, 162fac71e4eSEmmanuel Vadot <&gcc GCC_CE2_AXI_CLK>, 163fac71e4eSEmmanuel Vadot <&gcc GCC_CE2_CLK>; 164fac71e4eSEmmanuel Vadot clock-names = "iface", "bus", "core"; 165fac71e4eSEmmanuel Vadot dmas = <&cryptobam 2>, <&cryptobam 3>; 166fac71e4eSEmmanuel Vadot dma-names = "rx", "tx"; 167fac71e4eSEmmanuel Vadot iommus = <&apps_smmu 0x584 0x0011>, 168fac71e4eSEmmanuel Vadot <&apps_smmu 0x586 0x0011>, 169fac71e4eSEmmanuel Vadot <&apps_smmu 0x594 0x0011>, 170fac71e4eSEmmanuel Vadot <&apps_smmu 0x596 0x0011>; 171fac71e4eSEmmanuel Vadot }; 172