Re: [PATCH 2/3] usb: dwc3: host: use build-in property instead of platform data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx> writes:
> This should allow xhci to remove handling of platform data.
>
> Signed-off-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
> Cc: Felipe Balbi <balbi@xxxxxx>
> ---
>  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

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux