Wed, Oct 29, 2025 at 03:14:27PM +0800, Chaoyi Chen kirjoitti: > From: Chaoyi Chen <[email protected]> > > Export all typec device types for identification. > > Signed-off-by: Chaoyi Chen <[email protected]>
Reviewed-by: Heikki Krogerus <[email protected]> > --- > drivers/usb/typec/class.c | 4 ++++ > drivers/usb/typec/class.h | 10 ---------- > include/linux/usb/typec.h | 10 ++++++++++ > 3 files changed, 14 insertions(+), 10 deletions(-) > > diff --git a/drivers/usb/typec/class.c b/drivers/usb/typec/class.c > index 51e971bc68d1..04b55f066b06 100644 > --- a/drivers/usb/typec/class.c > +++ b/drivers/usb/typec/class.c > @@ -793,6 +793,7 @@ const struct device_type typec_partner_dev_type = { > .groups = typec_partner_groups, > .release = typec_partner_release, > }; > +EXPORT_SYMBOL_GPL(typec_partner_dev_type); > > static void typec_partner_link_device(struct typec_partner *partner, struct > device *dev) > { > @@ -1147,6 +1148,7 @@ const struct device_type typec_plug_dev_type = { > .groups = typec_plug_groups, > .release = typec_plug_release, > }; > +EXPORT_SYMBOL_GPL(typec_plug_dev_type); > > /** > * typec_plug_set_num_altmodes - Set the number of available plug altmodes > @@ -1295,6 +1297,7 @@ const struct device_type typec_cable_dev_type = { > .groups = typec_cable_groups, > .release = typec_cable_release, > }; > +EXPORT_SYMBOL_GPL(typec_cable_dev_type); > > /** > * typec_cable_get - Get a reference to the USB Type-C cable > @@ -2034,6 +2037,7 @@ const struct device_type typec_port_dev_type = { > .uevent = typec_uevent, > .release = typec_release, > }; > +EXPORT_SYMBOL_GPL(typec_port_dev_type); > > /* --------------------------------------- */ > /* Driver callbacks to report role updates */ > diff --git a/drivers/usb/typec/class.h b/drivers/usb/typec/class.h > index db2fe96c48ff..f04f6987bed8 100644 > --- a/drivers/usb/typec/class.h > +++ b/drivers/usb/typec/class.h > @@ -87,16 +87,6 @@ struct typec_port { > #define to_typec_cable(_dev_) container_of(_dev_, struct typec_cable, dev) > #define to_typec_partner(_dev_) container_of(_dev_, struct typec_partner, > dev) > > -extern const struct device_type typec_partner_dev_type; > -extern const struct device_type typec_cable_dev_type; > -extern const struct device_type typec_plug_dev_type; > -extern const struct device_type typec_port_dev_type; > - > -#define is_typec_partner(dev) ((dev)->type == &typec_partner_dev_type) > -#define is_typec_cable(dev) ((dev)->type == &typec_cable_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 const struct class typec_mux_class; > extern const struct class retimer_class; > extern const struct class typec_class; > diff --git a/include/linux/usb/typec.h b/include/linux/usb/typec.h > index 309251572e2e..02fed8293415 100644 > --- a/include/linux/usb/typec.h > +++ b/include/linux/usb/typec.h > @@ -56,6 +56,16 @@ enum typec_role { > TYPEC_SOURCE, > }; > > +extern const struct device_type typec_partner_dev_type; > +extern const struct device_type typec_cable_dev_type; > +extern const struct device_type typec_plug_dev_type; > +extern const struct device_type typec_port_dev_type; > + > +#define is_typec_partner(dev) ((dev)->type == &typec_partner_dev_type) > +#define is_typec_cable(dev) ((dev)->type == &typec_cable_dev_type) > +#define is_typec_plug(dev) ((dev)->type == &typec_plug_dev_type) > +#define is_typec_port(dev) ((dev)->type == &typec_port_dev_type) > + > static inline int is_sink(enum typec_role role) > { > return role == TYPEC_SINK; > -- > 2.49.0 -- heikki
