Message ID | 20240218-device_cleanup-usb-v1-0-77423c4da262@marliere.net |
---|---|
Headers | show |
Series | usb: constify struct device_type usage | expand |
On Sun, Feb 18, 2024 at 04:18:09PM -0300, Ricardo B. Marliere wrote: > Since commit aed65af1cc2f ("drivers: make device_type const"), the driver > core can properly handle constant struct device_type. Move all the > device_type variables in use by the driver to be constant structures as > well, placing it into read-only memory which can not be modified at > runtime. > > Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net> Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> > --- > drivers/usb/typec/pd.c | 30 +++++++++++++++--------------- > 1 file changed, 15 insertions(+), 15 deletions(-) > > diff --git a/drivers/usb/typec/pd.c b/drivers/usb/typec/pd.c > index b9cca2be76fc..d78c04a421bc 100644 > --- a/drivers/usb/typec/pd.c > +++ b/drivers/usb/typec/pd.c > @@ -157,7 +157,7 @@ static const struct attribute_group source_fixed_supply_group = { > }; > __ATTRIBUTE_GROUPS(source_fixed_supply); > > -static struct device_type source_fixed_supply_type = { > +static const struct device_type source_fixed_supply_type = { > .name = "pdo", > .release = pdo_release, > .groups = source_fixed_supply_groups, > @@ -182,7 +182,7 @@ static const struct attribute_group sink_fixed_supply_group = { > }; > __ATTRIBUTE_GROUPS(sink_fixed_supply); > > -static struct device_type sink_fixed_supply_type = { > +static const struct device_type sink_fixed_supply_type = { > .name = "pdo", > .release = pdo_release, > .groups = sink_fixed_supply_groups, > @@ -213,7 +213,7 @@ static struct attribute *source_variable_supply_attrs[] = { > }; > ATTRIBUTE_GROUPS(source_variable_supply); > > -static struct device_type source_variable_supply_type = { > +static const struct device_type source_variable_supply_type = { > .name = "pdo", > .release = pdo_release, > .groups = source_variable_supply_groups, > @@ -227,7 +227,7 @@ static struct attribute *sink_variable_supply_attrs[] = { > }; > ATTRIBUTE_GROUPS(sink_variable_supply); > > -static struct device_type sink_variable_supply_type = { > +static const struct device_type sink_variable_supply_type = { > .name = "pdo", > .release = pdo_release, > .groups = sink_variable_supply_groups, > @@ -258,7 +258,7 @@ static struct attribute *source_battery_attrs[] = { > }; > ATTRIBUTE_GROUPS(source_battery); > > -static struct device_type source_battery_type = { > +static const struct device_type source_battery_type = { > .name = "pdo", > .release = pdo_release, > .groups = source_battery_groups, > @@ -272,7 +272,7 @@ static struct attribute *sink_battery_attrs[] = { > }; > ATTRIBUTE_GROUPS(sink_battery); > > -static struct device_type sink_battery_type = { > +static const struct device_type sink_battery_type = { > .name = "pdo", > .release = pdo_release, > .groups = sink_battery_groups, > @@ -339,7 +339,7 @@ static struct attribute *source_pps_attrs[] = { > }; > ATTRIBUTE_GROUPS(source_pps); > > -static struct device_type source_pps_type = { > +static const struct device_type source_pps_type = { > .name = "pdo", > .release = pdo_release, > .groups = source_pps_groups, > @@ -353,7 +353,7 @@ static struct attribute *sink_pps_attrs[] = { > }; > ATTRIBUTE_GROUPS(sink_pps); > > -static struct device_type sink_pps_type = { > +static const struct device_type sink_pps_type = { > .name = "pdo", > .release = pdo_release, > .groups = sink_pps_groups, > @@ -371,30 +371,30 @@ static const char * const apdo_supply_name[] = { > [APDO_TYPE_PPS] = "programmable_supply", > }; > > -static struct device_type *source_type[] = { > +static const struct device_type *source_type[] = { > [PDO_TYPE_FIXED] = &source_fixed_supply_type, > [PDO_TYPE_BATT] = &source_battery_type, > [PDO_TYPE_VAR] = &source_variable_supply_type, > }; > > -static struct device_type *source_apdo_type[] = { > +static const struct device_type *source_apdo_type[] = { > [APDO_TYPE_PPS] = &source_pps_type, > }; > > -static struct device_type *sink_type[] = { > +static const struct device_type *sink_type[] = { > [PDO_TYPE_FIXED] = &sink_fixed_supply_type, > [PDO_TYPE_BATT] = &sink_battery_type, > [PDO_TYPE_VAR] = &sink_variable_supply_type, > }; > > -static struct device_type *sink_apdo_type[] = { > +static const struct device_type *sink_apdo_type[] = { > [APDO_TYPE_PPS] = &sink_pps_type, > }; > > /* REVISIT: Export when EPR_*_Capabilities need to be supported. */ > static int add_pdo(struct usb_power_delivery_capabilities *cap, u32 pdo, int position) > { > - struct device_type *type; > + const struct device_type *type; > const char *name; > struct pdo *p; > int ret; > @@ -460,7 +460,7 @@ static void pd_capabilities_release(struct device *dev) > kfree(to_usb_power_delivery_capabilities(dev)); > } > > -static struct device_type pd_capabilities_type = { > +static const struct device_type pd_capabilities_type = { > .name = "capabilities", > .release = pd_capabilities_release, > }; > @@ -575,7 +575,7 @@ static void pd_release(struct device *dev) > kfree(pd); > } > > -static struct device_type pd_type = { > +static const struct device_type pd_type = { > .name = "usb_power_delivery", > .release = pd_release, > .groups = pd_groups, > > -- > 2.43.0
This is a simple and straight forward cleanup series that makes all device types in the net subsystem constants. This has been possible since 2011 [1] but not all occurrences were cleaned. --- [1] https://lore.kernel.org/all/1305850262-9575-5-git-send-email-gregkh@suse.de/ Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net> --- Ricardo B. Marliere (4): usb: typec: constify the struct device_type usage usb: phy: constify the struct device_type usage usb: gadget: constify the struct device_type usage usb: core: constify the struct device_type usage drivers/usb/core/endpoint.c | 2 +- drivers/usb/core/message.c | 2 +- drivers/usb/core/port.c | 2 +- drivers/usb/core/usb.c | 2 +- drivers/usb/core/usb.h | 8 ++++---- drivers/usb/gadget/function/u_ether.c | 2 +- drivers/usb/phy/phy.c | 2 +- drivers/usb/typec/pd.c | 30 +++++++++++++++--------------- 8 files changed, 25 insertions(+), 25 deletions(-) --- base-commit: cf92b9df3dcf45eab0fe3fcf9e97ce55c31c48c0 change-id: 20240218-device_cleanup-usb-98fac2ef0160 Best regards,