power: supply: core: constify the struct device_type usage
authorRicardo B. Marliere <ricardo@marliere.net>
Sat, 24 Feb 2024 20:15:41 +0000 (17:15 -0300)
committerSebastian Reichel <sebastian.reichel@collabora.com>
Sun, 25 Feb 2024 20:05:53 +0000 (21:05 +0100)
commit7b46b60944d77e361a727cd8ce46aec31c146e26
tree62e6b62846a9e642abe7f6dba074c5cf688aa920
parent9e6047c01159697cfd2f9b7788af9fe90fc7f544
power: supply: core: constify the struct device_type usage

Since commit aed65af1cc2f ("drivers: make device_type const"), the driver
core can properly handle constant struct device_type. Move the
power_supply_dev_type variable to be a constant structure as well, placing
it into read-only memory which can not be modified at runtime.

In order to accomplish that, export power_supply_attr_group in
power_supply.h and use it with the macro __ATTRIBUTE_GROUPS when defining
power_supply_dev_type in power_supply_core.c. Therefore the attribute group
is no longer static. Lastly, because power_supply_attr_groups is no longer
dynamically associated to power_supply_dev_type in
power_supply_init_attrs(), make the function receive zero arguments.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
Link: https://lore.kernel.org/r/20240224-device_cleanup-power-v2-1-465ff94b896c@marliere.net
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/supply/power_supply.h
drivers/power/supply/power_supply_core.c
drivers/power/supply/power_supply_sysfs.c