Hi Paul/Felip,
On Wed, May 07, 2014 at 11:15:33AM +0530, Pratyush Anand wrote:
> Hi Paul,
>
> On Tue, May 06, 2014 at 11:54:19AM +0800, Pratyush ANAND wrote:
> > All dwc3 based xhci host controller supports USB3.0 LPM functionality.
> > Therefore enable it in platform data for all dwc3 based xhci device.
> >
> > Signed-off-by: Pratyush Anand <[email protected]>
> > ---
> > drivers/usb/dwc3/host.c | 12 ++++++++++++
> > 1 file changed, 12 insertions(+)
> >
> > diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c
> > index 32db328..1fda6e8 100644
> > --- a/drivers/usb/dwc3/host.c
> > +++ b/drivers/usb/dwc3/host.c
> > @@ -16,12 +16,14 @@
> > */
> >
> > #include <linux/platform_device.h>
> > +#include <linux/usb/xhci_pdriver.h>
> >
> > #include "core.h"
> >
> > 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);
> > @@ -46,6 +48,16 @@ int dwc3_host_init(struct dwc3 *dwc)
> > goto err1;
> > }
> >
> > + memset(&pdata, 0, sizeof(pdata));
> > +
> > + pdata.usb3_lpm_capable = 1;
>
> Even though all dwc3 platform is usb3 lpm capable, I would like to
> make it optional, as I see some performance impact when capability is
> enabled vs not enabled.
>
> When enabled:
> ./testusb -a -t 2 -c 1000000 -s 1024
> takes 198 sec to execute
> vs when not enabled , it takes 169 sec to execute.
>
> And this impact is with a gadget with maxburst and mult as 0.
> Performance will be impacted more with higher maxburst and mult.
>
> So making it optional would be a better choice. What do you say.
Do you think that it would be wiser to add an optional flag in
usb3-lpm-enable in dwc3 dt? If yes, I will send a quick next revision,
else I think patches can be applied.
Regards
Pratyush
>
> Pratyush
>
>
> > +
> > + 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;
> > + }
> > +
> > ret = platform_device_add(xhci);
> > if (ret) {
> > dev_err(dwc->dev, "failed to register xHCI device\n");
> > --
> > 1.8.1.2
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html