[PATCH] efi: stmm: Constify struct efivar_operations
Ilias Apalodimas
ilias.apalodimas at linaro.org
Mon Feb 16 01:49:16 PST 2026
Hi Krzysztof,
On Sun, 15 Feb 2026 at 13:06, Krzysztof Kozlowski
<krzysztof.kozlowski at oss.qualcomm.com> wrote:
>
> The 'struct efivar_operations' is not modified by the driver after
> initialization, so it should follow typical practice of being static
> const for increased code safety and readability.
get_maintainers doesn't include me in the cc list?
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski at oss.qualcomm.com>
> ---
Reviewed-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>
> drivers/firmware/efi/stmm/tee_stmm_efi.c | 17 +++++++++--------
> 1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/firmware/efi/stmm/tee_stmm_efi.c b/drivers/firmware/efi/stmm/tee_stmm_efi.c
> index 7b04dd649629..3bea2ef50ef3 100644
> --- a/drivers/firmware/efi/stmm/tee_stmm_efi.c
> +++ b/drivers/firmware/efi/stmm/tee_stmm_efi.c
> @@ -14,7 +14,6 @@
> #include "mm_communication.h"
>
> static struct efivars tee_efivars;
> -static struct efivar_operations tee_efivar_ops;
>
> static size_t max_buffer_size; /* comm + var + func + data */
> static size_t max_payload_size; /* func + data */
> @@ -520,6 +519,15 @@ static void tee_stmm_restore_efivars_generic_ops(void)
> efivars_generic_ops_register();
> }
>
> +static const struct efivar_operations tee_efivar_ops = {
> + .get_variable = tee_get_variable,
> + .get_next_variable = tee_get_next_variable,
> + .set_variable = tee_set_variable,
> + .set_variable_nonblocking = tee_set_variable_nonblocking,
> + .query_variable_store = efi_query_variable_store,
> + .query_variable_info = tee_query_variable_info,
> +};
> +
> static int tee_stmm_efi_probe(struct tee_client_device *tee_dev)
> {
> struct device *dev = &tee_dev->dev;
> @@ -558,13 +566,6 @@ static int tee_stmm_efi_probe(struct tee_client_device *tee_dev)
> MM_VARIABLE_COMMUNICATE_SIZE +
> max_payload_size;
>
> - tee_efivar_ops.get_variable = tee_get_variable;
> - tee_efivar_ops.get_next_variable = tee_get_next_variable;
> - tee_efivar_ops.set_variable = tee_set_variable;
> - tee_efivar_ops.set_variable_nonblocking = tee_set_variable_nonblocking;
> - tee_efivar_ops.query_variable_store = efi_query_variable_store;
> - tee_efivar_ops.query_variable_info = tee_query_variable_info;
> -
> efivars_generic_ops_unregister();
> pr_info("Using TEE-based EFI runtime variable services\n");
> efivars_register(&tee_efivars, &tee_efivar_ops);
> --
> 2.51.0
>
>
More information about the linux-arm-kernel
mailing list