Heikki Krogerus <heikki.kroge...@linux.intel.com> writes: > This should allow xhci to remove handling of platform data. > > Signed-off-by: Heikki Krogerus <heikki.kroge...@linux.intel.com> > Cc: Felipe Balbi <ba...@ti.com> > --- > drivers/usb/dwc3/host.c | 25 +++++++++++++++---------- > 1 file changed, 15 insertions(+), 10 deletions(-) > > diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c > index c679f63..d428d30 100644 > --- a/drivers/usb/dwc3/host.c > +++ b/drivers/usb/dwc3/host.c > @@ -16,14 +16,21 @@ > */ > > #include <linux/platform_device.h> > -#include <linux/usb/xhci_pdriver.h> > > #include "core.h" > > +static struct property_entry dwc3_host_properties[] = { > + PROPERTY_ENTRY_BOOL("usb3-lpm-capable"), > + { }, > +}; > + > +static struct property_set dwc3_host_pset = { > + .properties = dwc3_host_properties, > +}; > + > int dwc3_host_init(struct dwc3 *dwc) > { > struct platform_device *xhci; > - struct usb_xhci_pdata pdata; > int ret; > > xhci = platform_device_alloc("xhci-hcd", PLATFORM_DEVID_AUTO); > @@ -47,14 +54,12 @@ int dwc3_host_init(struct dwc3 *dwc) > goto err1; > } > > - memset(&pdata, 0, sizeof(pdata)); > - > - pdata.usb3_lpm_capable = dwc->usb3_lpm_capable; > - > - ret = platform_device_add_data(xhci, &pdata, sizeof(pdata)); > - if (ret) { > - dev_err(dwc->dev, "couldn't add platform data to xHCI > device\n"); > - goto err1; > + if (dwc->usb3_lpm_capable) { > + ret = platform_device_add_properties(xhci, &dwc3_host_pset); > + if (ret) { > + dev_err(dwc->dev, "failed to add properties to xHCI\n"); > + goto err1; > + }
This is very useful. So, I assume, it works with x86, ARM, ARC, etc ?? -- balbi
signature.asc
Description: PGP signature