tee: optee: GET_OS_REVISION: document a2 as a build identifier
authorJérôme Forissier <jerome.forissier@linaro.org>
Fri, 24 Nov 2017 14:47:17 +0000 (15:47 +0100)
committerJens Wiklander <jens.wiklander@linaro.org>
Tue, 6 Mar 2018 10:03:55 +0000 (11:03 +0100)
In the OPTEE_SMC_CALL_GET_OS_REVISION request, the previously reserved
parameter a2 is now documented as being an optional build identifier
(such as an SCM revision or commit ID, for instance).

A new structure optee_smc_call_get_os_revision_result is introduced to
be used when querying the secure OS version, instead of re-using the
struct defined for OPTEE_SMC_CALLS_REVISION.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Matthias Brugger <mbruger@suse.com>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
drivers/tee/optee/optee_smc.h

index 7cd327243ada916e0e8017300c06ef34e1b07ea4..bbf0cf028c16204ebed7eb33926c41710d619b47 100644 (file)
@@ -112,12 +112,20 @@ struct optee_smc_calls_revision_result {
  * Trusted OS, not of the API.
  *
  * Returns revision in a0-1 in the same way as OPTEE_SMC_CALLS_REVISION
- * described above.
+ * described above. May optionally return a 32-bit build identifier in a2,
+ * with zero meaning unspecified.
  */
 #define OPTEE_SMC_FUNCID_GET_OS_REVISION OPTEE_MSG_FUNCID_GET_OS_REVISION
 #define OPTEE_SMC_CALL_GET_OS_REVISION \
        OPTEE_SMC_FAST_CALL_VAL(OPTEE_SMC_FUNCID_GET_OS_REVISION)
 
+struct optee_smc_call_get_os_revision_result {
+       unsigned long major;
+       unsigned long minor;
+       unsigned long build_id;
+       unsigned long reserved1;
+};
+
 /*
  * Call with struct optee_msg_arg as argument
  *