Messages in this thread | | | Date | Fri, 27 May 2022 16:26:01 +0530 | Subject | Re: [RFC 2/2] usb: dwc3: Refactor PHY logic to support Multiport Controller | From | Harsh Agarwal <> |
| |
On 5/23/2022 9:40 PM, Brian Masney wrote: > On Thu, May 19, 2022 at 06:04:55PM +0530, Harsh Agarwal wrote: >> - dwc->usb3_generic_phy = devm_phy_get(dev, "usb3-phy"); >> - if (IS_ERR(dwc->usb3_generic_phy)) { >> - ret = PTR_ERR(dwc->usb3_generic_phy); >> - if (ret == -ENOSYS || ret == -ENODEV) >> - dwc->usb3_generic_phy = NULL; >> - else >> - return dev_err_probe(dev, ret, "no usb3 phy configured\n"); >> + if (IS_ERR(dwc->usb2_phy[0])) { >> + ret = PTR_ERR(dwc->usb2_phy[0]); >> + if (ret == -ENXIO || ret == -ENODEV) >> + dwc->usb2_phy[0] = NULL; >> + else >> + return dev_err_probe(dev, ret, "no usb2 phy configured\n"); >> + } >> + >> + if (IS_ERR(dwc->usb3_phy[0])) { >> + ret = PTR_ERR(dwc->usb3_phy[0]); >> + if (ret == -ENXIO || ret == -ENODEV) >> + dwc->usb3_phy[0] = NULL; >> + else >> + return dev_err_probe(dev, ret, "no usb3 phy configured\n"); >> + } >> + >> + dwc->usb2_generic_phy = devm_phy_get(dev, "usb2-phy"); >> + if (IS_ERR(dwc->usb2_generic_phy)) { >> + ret = PTR_ERR(dwc->usb2_generic_phy); >> + if (ret == -ENOSYS || ret == -ENODEV) >> + dwc->usb2_generic_phy = NULL; >> + else >> + return dev_err_probe(dev, ret, "no usb2 phy configured\n"); >> + } > I know that this block is a copy and paste move from above, but is the > ENOSYS check really needed? It looks like the phy_get() only returns > -ENODEV. sure I got ENOSYS removed in my RFC V2 patch. This was present by default, so I did not change it earlier. >> @@ -1147,8 +1149,10 @@ struct dwc3 { >> >> struct reset_control *reset; >> >> - struct usb_phy *usb2_phy; >> - struct usb_phy *usb3_phy; >> + struct usb_phy **usb2_phy; >> + struct usb_phy **usb3_phy; >> + u32 num_hsphy; >> + u32 num_ssphy; > Rename num_hsphy / num_ssphy to num_usb2_phy and num_usb3_phy so this is > easier to audit. Okay will change this in my next Patch. > > Brian >
| |