Re: [PATCH v2 3/4] dt-bindings: firmware: Add Qualcomm QSEECOM interface

From: Rob Herring
Date: Mon Jan 30 2023 - 16:06:10 EST


On Fri, Jan 27, 2023 at 07:46:49PM +0100, Maximilian Luz wrote:
> Add bindings for the Qualcomm Secure Execution Environment interface
> (QSEECOM).
>
> Signed-off-by: Maximilian Luz <luzmaximilian@xxxxxxxxx>
> ---
>
> Changes in v2:
> - Replaces uefisecapp bindings.
> - Fix various dt-checker complaints.
>
> ---
> .../bindings/firmware/qcom,qseecom.yaml | 49 +++++++++++++++++++
> MAINTAINERS | 1 +
> 2 files changed, 50 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/firmware/qcom,qseecom.yaml
>
> diff --git a/Documentation/devicetree/bindings/firmware/qcom,qseecom.yaml b/Documentation/devicetree/bindings/firmware/qcom,qseecom.yaml
> new file mode 100644
> index 000000000000..540a604f81bc
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/firmware/qcom,qseecom.yaml
> @@ -0,0 +1,49 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/firmware/qcom,qseecom.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm Secure Execution Environment Communication Interface
> +
> +maintainers:
> + - Maximilian Luz <luzmaximilian@xxxxxxxxx>
> +
> +description: |
> + QSEECOM provides an interface to Qualcomm's Secure Execution Environment
> + (SEE) running in the Trust Zone via SCM calls. In particular, it allows

SCM is SMCCC or something else?

> + communication with secure applications running therein.
> +
> + Applications running in this environment can, for example, include
> + 'uefisecapp', which is required for accessing UEFI variables on certain
> + systems as these cannot be accessed directly.
> +
> +properties:
> + compatible:
> + items:
> + - enum:
> + - qcom,qseecom-sc8280xp
> + - const: qcom,qseecom
> +
> + qcom,scm:
> + $ref: '/schemas/types.yaml#/definitions/phandle'
> + description:
> + A phandle pointing to the QCOM SCM device (see ./qcom,scm.yaml).
> +
> +required:
> + - compatible
> + - qcom,scm
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + firmware {
> + scm {
> + compatible = "qcom,scm-sc8280xp", "qcom,scm";
> + };
> + qseecom {
> + compatible = "qcom,qseecom-sc8280xp", "qcom,qseecom";
> + qcom,scm = <&scm>;

Why do you need this in DT? If you already know you have a firmware
interface (via "qcom,scm"), then query the firmware to see if the SEE is
there.

Rob