File tree Expand file tree Collapse file tree 1 file changed +4
-1
lines changed Expand file tree Collapse file tree 1 file changed +4
-1
lines changed Original file line number Diff line number Diff line change @@ -2996,7 +2996,7 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
29962996{
29972997 struct usb_power_delivery_desc desc = { port -> negotiated_rev };
29982998 struct usb_power_delivery_capabilities_desc caps = { };
2999- struct usb_power_delivery_capabilities * cap ;
2999+ struct usb_power_delivery_capabilities * cap = port -> partner_source_caps ;
30003000
30013001 if (!port -> partner_pd )
30023002 port -> partner_pd = usb_power_delivery_register (NULL , & desc );
@@ -3006,6 +3006,9 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
30063006 memcpy (caps .pdo , port -> source_caps , sizeof (u32 ) * port -> nr_source_caps );
30073007 caps .role = TYPEC_SOURCE ;
30083008
3009+ if (cap )
3010+ usb_power_delivery_unregister_capabilities (cap );
3011+
30093012 cap = usb_power_delivery_register_capabilities (port -> partner_pd , & caps );
30103013 if (IS_ERR (cap ))
30113014 return PTR_ERR (cap );
You can’t perform that action at this time.
0 commit comments