diff mbox series

usb: typec: constify struct class usage

Message ID 20240301-class_cleanup-usb-v1-1-50309e325095@marliere.net (mailing list archive)
State Accepted
Commit c40b51b3f365f6bc903719acc4fac7eed8a56639
Headers show
Series usb: typec: constify struct class usage | expand

Commit Message

Ricardo B. Marliere March 1, 2024, 9:19 p.m. UTC
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@linuxfoundation.org>
Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
---
 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(-)


---
base-commit: a560a5672826fc1e057068bda93b3d4c98d037a2
change-id: 20240301-class_cleanup-usb-4c3cef5bb0ca

Best regards,

Comments

Heikki Krogerus March 12, 2024, 9:19 a.m. UTC | #1
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@linuxfoundation.org>
> Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>

Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>

> ---
>  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@marliere.net>
diff mbox series

Patch

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",
 };