Commit 32f78abe authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman

driver core: bus: constantify subsys_register() calls

The functions subsys_register() and subsys_virtual_register() should be
taking a constant pointer to a struct bus_type, as they do not actually
modify anything in it, so fix up the function definitions to do so
properly.

This also changes the pointer type in struct subsys_interface to be
constant as well, as again, that's the proper signature of it.

Cc: Rafael J. Wysocki <rafael@kernel.org>
Reviewed-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/2023121908-grove-genetics-f8af@gregkhSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 5ae81209
...@@ -1194,7 +1194,7 @@ static void system_root_device_release(struct device *dev) ...@@ -1194,7 +1194,7 @@ static void system_root_device_release(struct device *dev)
kfree(dev); kfree(dev);
} }
static int subsys_register(struct bus_type *subsys, static int subsys_register(const struct bus_type *subsys,
const struct attribute_group **groups, const struct attribute_group **groups,
struct kobject *parent_of_root) struct kobject *parent_of_root)
{ {
...@@ -1264,7 +1264,7 @@ static int subsys_register(struct bus_type *subsys, ...@@ -1264,7 +1264,7 @@ static int subsys_register(struct bus_type *subsys,
* directory itself and not some create fake root-device placed in * directory itself and not some create fake root-device placed in
* /sys/devices/system/<name>. * /sys/devices/system/<name>.
*/ */
int subsys_system_register(struct bus_type *subsys, int subsys_system_register(const struct bus_type *subsys,
const struct attribute_group **groups) const struct attribute_group **groups)
{ {
return subsys_register(subsys, groups, &system_kset->kobj); return subsys_register(subsys, groups, &system_kset->kobj);
...@@ -1282,7 +1282,7 @@ EXPORT_SYMBOL_GPL(subsys_system_register); ...@@ -1282,7 +1282,7 @@ EXPORT_SYMBOL_GPL(subsys_system_register);
* There's no restriction on device naming. This is for kernel software * There's no restriction on device naming. This is for kernel software
* constructs which need sysfs interface. * constructs which need sysfs interface.
*/ */
int subsys_virtual_register(struct bus_type *subsys, int subsys_virtual_register(const struct bus_type *subsys,
const struct attribute_group **groups) const struct attribute_group **groups)
{ {
struct kobject *virtual_dir; struct kobject *virtual_dir;
......
...@@ -63,7 +63,7 @@ struct msi_device_data; ...@@ -63,7 +63,7 @@ struct msi_device_data;
*/ */
struct subsys_interface { struct subsys_interface {
const char *name; const char *name;
struct bus_type *subsys; const struct bus_type *subsys;
struct list_head node; struct list_head node;
int (*add_dev)(struct device *dev, struct subsys_interface *sif); int (*add_dev)(struct device *dev, struct subsys_interface *sif);
void (*remove_dev)(struct device *dev, struct subsys_interface *sif); void (*remove_dev)(struct device *dev, struct subsys_interface *sif);
...@@ -72,9 +72,9 @@ struct subsys_interface { ...@@ -72,9 +72,9 @@ struct subsys_interface {
int subsys_interface_register(struct subsys_interface *sif); int subsys_interface_register(struct subsys_interface *sif);
void subsys_interface_unregister(struct subsys_interface *sif); void subsys_interface_unregister(struct subsys_interface *sif);
int subsys_system_register(struct bus_type *subsys, int subsys_system_register(const struct bus_type *subsys,
const struct attribute_group **groups); const struct attribute_group **groups);
int subsys_virtual_register(struct bus_type *subsys, int subsys_virtual_register(const struct bus_type *subsys,
const struct attribute_group **groups); const struct attribute_group **groups);
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment