@@ -548,6 +548,7 @@ typec_register_altmode(struct device *parent,
alt->adev.dev.groups = alt->groups;
alt->adev.dev.type = &typec_altmode_dev_type;
dev_set_name(&alt->adev.dev, "%s.%u", dev_name(parent), id);
+ device_set_pm_not_required(&alt->adev.dev);
/* Link partners and plugs with the ports */
if (!is_port)
@@ -880,6 +881,7 @@ struct typec_partner *typec_register_partner(struct typec_port *port,
partner->dev.parent = &port->dev;
partner->dev.type = &typec_partner_dev_type;
dev_set_name(&partner->dev, "%s-partner", dev_name(&port->dev));
+ device_set_pm_not_required(&partner->dev);
ret = device_register(&partner->dev);
if (ret) {
@@ -1032,6 +1034,7 @@ struct typec_plug *typec_register_plug(struct typec_cable *cable,
plug->dev.parent = &cable->dev;
plug->dev.type = &typec_plug_dev_type;
dev_set_name(&plug->dev, "%s-%s", dev_name(cable->dev.parent), name);
+ device_set_pm_not_required(&plug->dev);
ret = device_register(&plug->dev);
if (ret) {
@@ -1197,6 +1200,7 @@ struct typec_cable *typec_register_cable(struct typec_port *port,
cable->dev.parent = &port->dev;
cable->dev.type = &typec_cable_dev_type;
dev_set_name(&cable->dev, "%s-cable", dev_name(&port->dev));
+ device_set_pm_not_required(&cable->dev);
ret = device_register(&cable->dev);
if (ret) {
@@ -2260,6 +2264,7 @@ struct typec_port *typec_register_port(struct device *parent,
port->dev.fwnode = cap->fwnode;
port->dev.type = &typec_port_dev_type;
dev_set_name(&port->dev, "port%d", id);
+ device_set_pm_not_required(&port->dev);
dev_set_drvdata(&port->dev, cap->driver_data);
port->cap = kmemdup(cap, sizeof(*cap), GFP_KERNEL);
@@ -183,6 +183,7 @@ typec_switch_register(struct device *parent,
sw_dev->dev.class = &typec_mux_class;
sw_dev->dev.type = &typec_switch_dev_type;
sw_dev->dev.driver_data = desc->drvdata;
+ device_set_pm_not_required(&sw_dev->dev);
ret = dev_set_name(&sw_dev->dev, "%s-switch", desc->name ? desc->name : dev_name(parent));
if (ret) {
put_device(&sw_dev->dev);
@@ -470,6 +471,7 @@ typec_mux_register(struct device *parent, const struct typec_mux_desc *desc)
mux_dev->dev.class = &typec_mux_class;
mux_dev->dev.type = &typec_mux_dev_type;
mux_dev->dev.driver_data = desc->drvdata;
+ device_set_pm_not_required(&mux_dev->dev);
ret = dev_set_name(&mux_dev->dev, "%s-mux", desc->name ? desc->name : dev_name(parent));
if (ret) {
put_device(&mux_dev->dev);
@@ -428,6 +428,7 @@ static int add_pdo(struct usb_power_delivery_capabilities *cap, u32 pdo, int pos
p->dev.parent = &cap->dev;
p->dev.type = type;
dev_set_name(&p->dev, "%u:%s", position + 1, name);
+ device_set_pm_not_required(&p->dev);
ret = device_register(&p->dev);
if (ret) {
@@ -490,6 +491,7 @@ usb_power_delivery_register_capabilities(struct usb_power_delivery *pd,
cap->dev.parent = &pd->dev;
cap->dev.type = &pd_capabilities_type;
dev_set_name(&cap->dev, "%s", cap_name[cap->role]);
+ device_set_pm_not_required(&cap->dev);
ret = device_register(&cap->dev);
if (ret) {
@@ -626,6 +628,7 @@ usb_power_delivery_register(struct device *parent, struct usb_power_delivery_des
pd->dev.type = &pd_type;
pd->dev.class = &pd_class;
dev_set_name(&pd->dev, "pd%d", pd->id);
+ device_set_pm_not_required(&pd->dev);
ret = device_register(&pd->dev);
if (ret) {
@@ -122,6 +122,7 @@ typec_retimer_register(struct device *parent, const struct typec_retimer_desc *d
retimer->dev.class = &retimer_class;
retimer->dev.type = &typec_retimer_dev_type;
retimer->dev.driver_data = desc->drvdata;
+ device_set_pm_not_required(&retimer->dev);
dev_set_name(&retimer->dev, "%s-retimer",
desc->name ? desc->name : dev_name(parent));
as there is no pm operation, call device_set_pm_not_required() to disable all typec class devices. Signed-off-by: Linyu Yuan <quic_linyyuan@quicinc.com> --- drivers/usb/typec/class.c | 5 +++++ drivers/usb/typec/mux.c | 2 ++ drivers/usb/typec/pd.c | 3 +++ drivers/usb/typec/retimer.c | 1 + 4 files changed, 11 insertions(+)