All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sumit Garg via OP-TEE <op-tee@lists.trustedfirmware.org>
To: "Uwe Kleine-König" <u.kleine-koenig@baylibre.com>
Cc: op-tee@lists.trustedfirmware.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1 01/17] tee: Add some helpers to reduce boilerplate for tee client drivers
Date: Mon, 15 Dec 2025 16:05:30 +0900	[thread overview]
Message-ID: <aT-zOu7dUtIPAjbJ@sumit-X1> (raw)
In-Reply-To: <899e887aa68206155f2fc56ad768cbcf40012fb6.1765472125.git.u.kleine-koenig@baylibre.com>

On Thu, Dec 11, 2025 at 06:14:55PM +0100, Uwe Kleine-König wrote:
> Similar to platform drivers (and others) create dedicated register and
> unregister functions and a macro to simplify modules that only need to
> handle driver registration in their init and exit handlers.
> 
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
> ---
>  drivers/tee/tee_core.c  | 16 ++++++++++++++++
>  include/linux/tee_drv.h |  9 +++++++++
>  2 files changed, 25 insertions(+)

Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>

-Sumit

> 
> diff --git a/drivers/tee/tee_core.c b/drivers/tee/tee_core.c
> index d65d47cc154e..51379f7fc5d5 100644
> --- a/drivers/tee/tee_core.c
> +++ b/drivers/tee/tee_core.c
> @@ -1405,6 +1405,22 @@ const struct bus_type tee_bus_type = {
>  };
>  EXPORT_SYMBOL_GPL(tee_bus_type);
>  
> +int __tee_client_driver_register(struct tee_client_driver *tee_driver,
> +				 struct module *owner)
> +{
> +	tee_driver->driver.owner = owner;
> +	tee_driver->driver.bus = &tee_bus_type;
> +
> +	return driver_register(&tee_driver->driver);
> +}
> +EXPORT_SYMBOL_GPL(__tee_client_driver_register);
> +
> +void tee_client_driver_unregister(struct tee_client_driver *tee_driver)
> +{
> +	driver_unregister(&tee_driver->driver);
> +}
> +EXPORT_SYMBOL_GPL(tee_client_driver_unregister);
> +
>  static int __init tee_init(void)
>  {
>  	int rc;
> diff --git a/include/linux/tee_drv.h b/include/linux/tee_drv.h
> index 88a6f9697c89..850c03b2cdea 100644
> --- a/include/linux/tee_drv.h
> +++ b/include/linux/tee_drv.h
> @@ -322,4 +322,13 @@ struct tee_client_driver {
>  #define to_tee_client_driver(d) \
>  		container_of_const(d, struct tee_client_driver, driver)
>  
> +#define tee_client_driver_register(drv) \
> +        __tee_client_driver_register(drv, THIS_MODULE)
> +int __tee_client_driver_register(struct tee_client_driver *, struct module *);
> +void tee_client_driver_unregister(struct tee_client_driver *);
> +
> +#define module_tee_client_driver(__tee_client_driver) \
> +	module_driver(__tee_client_driver, tee_client_driver_register, \
> +		      tee_client_driver_unregister)
> +
>  #endif /*__TEE_DRV_H*/
> -- 
> 2.47.3
> 

WARNING: multiple messages have this Message-ID (diff)
From: Sumit Garg <sumit.garg@kernel.org>
To: "Uwe Kleine-König" <u.kleine-koenig@baylibre.com>
Cc: Jens Wiklander <jens.wiklander@linaro.org>,
	op-tee@lists.trustedfirmware.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1 01/17] tee: Add some helpers to reduce boilerplate for tee client drivers
Date: Mon, 15 Dec 2025 16:05:30 +0900	[thread overview]
Message-ID: <aT-zOu7dUtIPAjbJ@sumit-X1> (raw)
In-Reply-To: <899e887aa68206155f2fc56ad768cbcf40012fb6.1765472125.git.u.kleine-koenig@baylibre.com>

On Thu, Dec 11, 2025 at 06:14:55PM +0100, Uwe Kleine-König wrote:
> Similar to platform drivers (and others) create dedicated register and
> unregister functions and a macro to simplify modules that only need to
> handle driver registration in their init and exit handlers.
> 
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
> ---
>  drivers/tee/tee_core.c  | 16 ++++++++++++++++
>  include/linux/tee_drv.h |  9 +++++++++
>  2 files changed, 25 insertions(+)

Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>

-Sumit

> 
> diff --git a/drivers/tee/tee_core.c b/drivers/tee/tee_core.c
> index d65d47cc154e..51379f7fc5d5 100644
> --- a/drivers/tee/tee_core.c
> +++ b/drivers/tee/tee_core.c
> @@ -1405,6 +1405,22 @@ const struct bus_type tee_bus_type = {
>  };
>  EXPORT_SYMBOL_GPL(tee_bus_type);
>  
> +int __tee_client_driver_register(struct tee_client_driver *tee_driver,
> +				 struct module *owner)
> +{
> +	tee_driver->driver.owner = owner;
> +	tee_driver->driver.bus = &tee_bus_type;
> +
> +	return driver_register(&tee_driver->driver);
> +}
> +EXPORT_SYMBOL_GPL(__tee_client_driver_register);
> +
> +void tee_client_driver_unregister(struct tee_client_driver *tee_driver)
> +{
> +	driver_unregister(&tee_driver->driver);
> +}
> +EXPORT_SYMBOL_GPL(tee_client_driver_unregister);
> +
>  static int __init tee_init(void)
>  {
>  	int rc;
> diff --git a/include/linux/tee_drv.h b/include/linux/tee_drv.h
> index 88a6f9697c89..850c03b2cdea 100644
> --- a/include/linux/tee_drv.h
> +++ b/include/linux/tee_drv.h
> @@ -322,4 +322,13 @@ struct tee_client_driver {
>  #define to_tee_client_driver(d) \
>  		container_of_const(d, struct tee_client_driver, driver)
>  
> +#define tee_client_driver_register(drv) \
> +        __tee_client_driver_register(drv, THIS_MODULE)
> +int __tee_client_driver_register(struct tee_client_driver *, struct module *);
> +void tee_client_driver_unregister(struct tee_client_driver *);
> +
> +#define module_tee_client_driver(__tee_client_driver) \
> +	module_driver(__tee_client_driver, tee_client_driver_register, \
> +		      tee_client_driver_unregister)
> +
>  #endif /*__TEE_DRV_H*/
> -- 
> 2.47.3
> 

  reply	other threads:[~2025-12-15  7:06 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-11 17:14 [PATCH v1 00/17] tee: Use bus callbacks instead of driver callbacks Uwe Kleine-König
2025-12-11 17:14 ` [PATCH v1 01/17] tee: Add some helpers to reduce boilerplate for tee client drivers Uwe Kleine-König
2025-12-15  7:05   ` Sumit Garg via OP-TEE [this message]
2025-12-15  7:05     ` Sumit Garg
2025-12-11 17:14 ` [PATCH v1 02/17] tee: Add probe, remove and shutdown bus callbacks to tee_client_driver Uwe Kleine-König
2025-12-15  7:23   ` Sumit Garg via OP-TEE
2025-12-15  7:23     ` Sumit Garg
2025-12-11 17:14 ` [PATCH v1 03/17] tee: Adapt documentation to cover recent additions Uwe Kleine-König
2025-12-15  7:24   ` Sumit Garg via OP-TEE
2025-12-15  7:24     ` Sumit Garg
2025-12-11 17:14 ` [PATCH v1 04/17] hwrng: optee - Make use of module_tee_client_driver() Uwe Kleine-König
2025-12-15  7:26   ` Sumit Garg
2025-12-15  7:26     ` Sumit Garg via OP-TEE
2025-12-11 17:14 ` [PATCH v1 05/17] hwrng: optee - Make use of tee bus methods Uwe Kleine-König
2025-12-15  7:27   ` Sumit Garg
2025-12-15  7:27     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 06/17] rtc: optee: Migrate to use tee specific driver registration function Uwe Kleine-König
2025-12-15  7:28   ` Sumit Garg
2025-12-15  7:28     ` Sumit Garg via OP-TEE
2025-12-15 10:41   ` Alexandre Belloni
2025-12-15 10:41     ` Alexandre Belloni via OP-TEE
2025-12-11 17:15 ` [PATCH v1 07/17] rtc: optee: Make use of tee bus methods Uwe Kleine-König
2025-12-15  7:30   ` Sumit Garg
2025-12-15  7:30     ` Sumit Garg via OP-TEE
2025-12-15 10:42   ` Alexandre Belloni
2025-12-15 10:42     ` Alexandre Belloni via OP-TEE
2025-12-11 17:15 ` [PATCH v1 08/17] efi: stmm: Make use of module_tee_client_driver() Uwe Kleine-König
2025-12-15  7:55   ` Sumit Garg
2025-12-15  7:55     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 09/17] efi: stmm: Make use of tee bus methods Uwe Kleine-König
2025-12-15  7:55   ` Sumit Garg
2025-12-15  7:55     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 10/17] firmware: arm_scmi: optee: Make use of module_tee_client_driver() Uwe Kleine-König
2025-12-12 12:33   ` Sudeep Holla
2025-12-12 12:33     ` Sudeep Holla
2025-12-15  7:30   ` Sumit Garg
2025-12-15  7:30     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 11/17] firmware: arm_scmi: Make use of tee bus methods Uwe Kleine-König
2025-12-12 12:34   ` Sudeep Holla
2025-12-12 12:34     ` Sudeep Holla
2025-12-15  7:32   ` Sumit Garg
2025-12-15  7:32     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 12/17] firmware: tee_bnxt: Make use of module_tee_client_driver() Uwe Kleine-König
2025-12-15  7:33   ` Sumit Garg
2025-12-15  7:33     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 13/17] firmware: tee_bnxt: Make use of tee bus methods Uwe Kleine-König
2025-12-15  7:34   ` Sumit Garg
2025-12-15  7:34     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 14/17] KEYS: trusted: Migrate to use tee specific driver registration function Uwe Kleine-König
2025-12-15  7:36   ` Sumit Garg
2025-12-15  7:36     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 15/17] KEYS: trusted: Make use of tee bus methods Uwe Kleine-König
2025-12-15  7:36   ` Sumit Garg
2025-12-15  7:36     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 16/17] tpm/tpm_ftpm_tee: Make use of tee specific driver registration Uwe Kleine-König
2025-12-15  7:38   ` Sumit Garg
2025-12-15  7:38     ` Sumit Garg via OP-TEE
2025-12-11 17:15 ` [PATCH v1 17/17] tpm/tpm_ftpm_tee: Make use of tee bus methods Uwe Kleine-König
2025-12-11 20:22   ` Jarkko Sakkinen
2025-12-11 20:22     ` Jarkko Sakkinen via OP-TEE
2025-12-11 20:22   ` Jarkko Sakkinen
2025-12-11 20:22     ` Jarkko Sakkinen via OP-TEE
2025-12-15  7:40   ` Sumit Garg
2025-12-15  7:40     ` Sumit Garg via OP-TEE
2025-12-15  7:54 ` [PATCH v1 00/17] tee: Use bus callbacks instead of driver callbacks Sumit Garg
2025-12-15  9:32   ` Uwe Kleine-König
2025-12-16  7:38     ` Sumit Garg
2025-12-16 11:08       ` Uwe Kleine-König
2025-12-17  7:55         ` Sumit Garg
2025-12-17  8:21           ` Uwe Kleine-König
2025-12-17  9:02             ` Sumit Garg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aT-zOu7dUtIPAjbJ@sumit-X1 \
    --to=op-tee@lists.trustedfirmware.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sumit.garg@kernel.org \
    --cc=u.kleine-koenig@baylibre.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.