From: Peter Chen Date: Tue, 31 Mar 2020 08:10:02 +0000 (+0800) Subject: usb: cdns3: core: get role switch node from firmware X-Git-Tag: v5.8-rc1~108^2~73 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=0f2d776199ec3ae80623fdc5978d5a1ef3accb49;p=linux-2.6-block.git usb: cdns3: core: get role switch node from firmware After that, the role switch device (eg, Type-C device) could call cdns3_role_set to finish the role switch. Signed-off-by: Peter Chen Reviewed-by: Roger Quadros Link: https://lore.kernel.org/r/20200331081005.32752-1-peter.chen@nxp.com Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/cdns3/core.c b/drivers/usb/cdns3/core.c index 4aafba20f450..704c679a0c5d 100644 --- a/drivers/usb/cdns3/core.c +++ b/drivers/usb/cdns3/core.c @@ -528,6 +528,8 @@ static int cdns3_probe(struct platform_device *pdev) sw_desc.get = cdns3_role_get; sw_desc.allow_userspace_control = true; sw_desc.driver_data = cdns; + if (device_property_read_bool(dev, "usb-role-switch")) + sw_desc.fwnode = dev->fwnode; cdns->role_sw = usb_role_switch_register(dev, &sw_desc); if (IS_ERR(cdns->role_sw)) {