Re: [PATCH] usb: typec: constify struct class usage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 01, 2024 at 06:19:28PM -0300, Ricardo B. Marliere wrote:
> Since commit 43a7206b0963 ("driver core: class: make class_register() take
> a const *"), the driver core allows for struct class to be in read-only
> memory, so move the structures typec_mux_class, retimer_class and
> typec_class to be declared at build time placing them into read-only
> memory, instead of having to be dynamically allocated at boot time.
> 
> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Suggested-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Ricardo B. Marliere <ricardo@xxxxxxxxxxxx>

Reviewed-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>

> ---
>  drivers/usb/typec/class.c   | 2 +-
>  drivers/usb/typec/class.h   | 6 +++---
>  drivers/usb/typec/mux.c     | 2 +-
>  drivers/usb/typec/retimer.c | 2 +-
>  4 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/usb/typec/class.c b/drivers/usb/typec/class.c
> index caea2b829980..389c7f0b8d93 100644
> --- a/drivers/usb/typec/class.c
> +++ b/drivers/usb/typec/class.c
> @@ -21,7 +21,7 @@
>  
>  static DEFINE_IDA(typec_index_ida);
>  
> -struct class typec_class = {
> +const struct class typec_class = {
>  	.name = "typec",
>  };
>  
> diff --git a/drivers/usb/typec/class.h b/drivers/usb/typec/class.h
> index 759b98355eeb..7485cdb9dd20 100644
> --- a/drivers/usb/typec/class.h
> +++ b/drivers/usb/typec/class.h
> @@ -93,9 +93,9 @@ extern const struct device_type typec_port_dev_type;
>  #define is_typec_plug(dev) ((dev)->type == &typec_plug_dev_type)
>  #define is_typec_port(dev) ((dev)->type == &typec_port_dev_type)
>  
> -extern struct class typec_mux_class;
> -extern struct class retimer_class;
> -extern struct class typec_class;
> +extern const struct class typec_mux_class;
> +extern const struct class retimer_class;
> +extern const struct class typec_class;
>  
>  #if defined(CONFIG_ACPI)
>  int typec_link_ports(struct typec_port *connector);
> diff --git a/drivers/usb/typec/mux.c b/drivers/usb/typec/mux.c
> index 80dd91938d96..49926d6e72c7 100644
> --- a/drivers/usb/typec/mux.c
> +++ b/drivers/usb/typec/mux.c
> @@ -469,6 +469,6 @@ void *typec_mux_get_drvdata(struct typec_mux_dev *mux_dev)
>  }
>  EXPORT_SYMBOL_GPL(typec_mux_get_drvdata);
>  
> -struct class typec_mux_class = {
> +const struct class typec_mux_class = {
>  	.name = "typec_mux",
>  };
> diff --git a/drivers/usb/typec/retimer.c b/drivers/usb/typec/retimer.c
> index 4a7d1b5c4d86..b519fcf358ca 100644
> --- a/drivers/usb/typec/retimer.c
> +++ b/drivers/usb/typec/retimer.c
> @@ -155,6 +155,6 @@ void *typec_retimer_get_drvdata(struct typec_retimer *retimer)
>  }
>  EXPORT_SYMBOL_GPL(typec_retimer_get_drvdata);
>  
> -struct class retimer_class = {
> +const struct class retimer_class = {
>  	.name = "retimer",
>  };
> 
> ---
> base-commit: a560a5672826fc1e057068bda93b3d4c98d037a2
> change-id: 20240301-class_cleanup-usb-4c3cef5bb0ca
> 
> Best regards,
> -- 
> Ricardo B. Marliere <ricardo@xxxxxxxxxxxx>

-- 
heikki




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux