From 3d5331410a751587e289275fce965fb3f7ab50fd Mon Sep 17 00:00:00 2001 From: Nageswara reddy Karnati Date: Wed, 6 Mar 2024 02:31:40 -0800 Subject: [PATCH 1/2] dt-bindings: Add dt binding for qseecom Addition of dt binding file for qseecom node. Change-Id: I0e0443352915559e5e5a4cdc32d92f0fb48e221a Signed-off-by: Nageswara reddy Karnati --- bindings/qseecom/qcom,qseecom.yaml | 143 +++++++++++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 bindings/qseecom/qcom,qseecom.yaml diff --git a/bindings/qseecom/qcom,qseecom.yaml b/bindings/qseecom/qcom,qseecom.yaml new file mode 100644 index 00000000..3fa58a85 --- /dev/null +++ b/bindings/qseecom/qcom,qseecom.yaml @@ -0,0 +1,143 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: "http://devicetree.org/schemas/qseecom/qcom,qseecom.yaml#" +$schema: "http://devicetree.org/meta-schemas/core.yaml#" + +title: "QSEECOM driver to provide transport between TZ and Linux." + +description: | + The QSEECOM driver facilitates the communication and data transfer between + Trust Zone and Linux OS. + +maintainers: + - Vikas Kumar Sharma + +properties: + compatible: + const: qcom,qseecom + reg: + description: "Should contain memory region address reserved for loading secure apps." + maxItems: 2 + + qcom,disk-encrypt-pipe-pair: + description: "Indicates what CE HW pipe pair is used for disk encryption." + $ref: "/schemas/types.yaml#/definitions/uint32" + + qcom,file-encrypt-pipe-pair: + description: "Indicates what CE HW pipe pair is used for file encryption." + $ref: "/schemas/types.yaml#/definitions/uint32" + + qcom,support-multiple-ce-hw-instance: + description: "Indicates if multicore CE support is supported." + type: boolean + + qcom,hlos-num-ce-hw-instances: + description: "Indicates number of CE HW instances hlos can use." + $ref: "/schemas/types.yaml#/definitions/uint32" + + qcom,qsee-ce-hw-instance: + description: "Indicates what CE HW is used by secure domain (TZ) crypto driver." + $ref: "/schemas/types.yaml#/definitions/uint32" + + qcom,msm_bus,name: + description: "Should be 'qseecom-noc'." + const: "qseecom-noc" + + qcom,msm_bus,num_cases: + description: "Depends on the use cases for bus scaling." + $ref: "/schemas/types.yaml#/definitions/uint32" + + qcom,msm_bus,num_paths: + description: "The paths for source and destination ports." + $ref: "/schemas/types.yaml#/definitions/uint32" + + qcom,msm_bus,vectors: + description: "Vectors for bus topology." + $ref: "/schemas/types.yaml#/definitions/uint32-array" + + qcom,ce-opp-freq: + description: "Indicates the CE operating frequency in Hz, changes from target to target." + $ref: "/schemas/types.yaml#/definitions/uint32" + + qcom,full-disk-encrypt-info: + description: "Vectors defining full disk encryption unit, crypto engine, pipe pair configuration in ." + $ref: "/schemas/types.yaml#/definitions/uint32-array" + + qcom,per-file-encrypt-info: + description: "Vectors defining per file encryption unit, crypto engine, pipe pair configuration in ." + $ref: "/schemas/types.yaml#/definitions/uint32-array" + + qcom,support-bus-scaling: + description: "Indicates if driver supports scaling the bus for crypto operation." + type: boolean + + qcom,support-fde: + description: "Indicates if driver supports key managing for full disk encryption feature." + type: boolean + + qcom,support-pfe: + description: "Indicates if driver supports key managing for per file encryption feature." + type: boolean + + qcom,no-clock-support: + description: "Indicates clocks are not handled by qseecom (could be handled by RPM)." + type: boolean + + qcom,appsbl-qseecom-support: + description: "Indicates if there is qseecom support in apps bootloader." + type: boolean + + qcom,qsee-reentrancy-support: + description: "Indicates the qsee reentrancy phase supported by the target." + type: boolean + + qcom,commonlib64-loaded-by-uefi: + description: "Indicates commonlib64 is loaded by UEFI already." + type: boolean + + qcom,fde-key-size: + description: "Indicates which FDE key size is used in device." + type: boolean + +required: + - compatible + - reg + - qcom,disk-encrypt-pipe-pair + - qcom,file-encrypt-pipe-pair + - qcom,support-multiple-ce-hw-instance + - qcom,hlos-num-ce-hw-instances + - qcom,qsee-ce-hw-instance + - qcom,msm_bus,name + - qcom,msm_bus,num_cases + - qcom,msm_bus,num_paths + - qcom,msm_bus,vectors + - qcom,ce-opp-freq + - qcom,full-disk-encrypt-info + - qcom,per-file-encrypt-info + +additionalProperties: false + +examples: + - | + qcom,qseecom@7f00000: + compatible: "qcom,qseecom" + reg: <0x7f00000 0x500000> + reg-names: "secapp-region" + qcom,disk-encrypt-pipe-pair: <2> + qcom,file-encrypt-pipe-pair: <0> + qcom,support-multiple-ce-hw-instance: true + qcom,hlos-num-ce-hw-instances: <2> + qcom,qsee-ce-hw-instance: <0> + qcom,support-fde: true + qcom,support-pfe: true + qcom,msm_bus,name: "qseecom-noc" + qcom,msm_bus,num_cases: <4> + qcom,msm_bus,active_only: <0> + qcom,msm_bus,num_paths: <1> + qcom,no-clock-support: true + qcom,appsbl-qseecom-support: true + qcom,fde-key-size: true + qcom,msm_bus,vectors: [<55, 512, 0, 0>, <55, 512, 3936000000, 393600000>, <55, 512, 3936000000, 393600000>, <55, 512, 3936000000, 393600000>] + qcom,ce-opp-freq: <100000000> + vdd-hba-supply: "&gdsc_ufs" From bd5fa79a770b8a1db4dd6b02212491c66202065b Mon Sep 17 00:00:00 2001 From: Nageswara reddy Karnati Date: Fri, 31 May 2024 02:15:31 -0700 Subject: [PATCH 2/2] ARM: dts: msm: parrot: Add qseecom compatible Add dt support for qseecom for Parrot SOC. Change-Id: Idfca637295821e47183e865fd257e44cb4a4dc58 Signed-off-by: Nageswara reddy Karnati --- qcom/parrot.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/qcom/parrot.dtsi b/qcom/parrot.dtsi index 72be3bec..cde29e0e 100644 --- a/qcom/parrot.dtsi +++ b/qcom/parrot.dtsi @@ -1772,6 +1772,7 @@ }; qcom_qseecom: qseecom@c1700000 { + compatible = "qcom,qseecom"; memory-region = <&qseecom_mem>; qseecom_mem = <&qseecom_mem>; qseecom_ta_mem = <&qseecom_ta_mem>;