Re: [PATCH 2/2] usb: chipidea: usbmisc: prepare driver to handle more than one soc

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

 



Hi Marc,

usbmisc_imx6q.c is only for imx6x. And for a certain running kernel,
there will be always one driver instance.

Thanks
Richard

On Thu, Sep 06, 2012 at 02:37:59PM +0200, Marc Kleine-Budde wrote:
> Signed-off-by: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx>
> ---
>  drivers/usb/chipidea/usbmisc_imx6q.c |    9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/usb/chipidea/usbmisc_imx6q.c b/drivers/usb/chipidea/usbmisc_imx6q.c
> index edc0edd7..5989a80 100644
> --- a/drivers/usb/chipidea/usbmisc_imx6q.c
> +++ b/drivers/usb/chipidea/usbmisc_imx6q.c
> @@ -26,6 +26,7 @@ struct imx6q_usbmisc {
>  	spinlock_t lock;
>  	struct clk *clk;
>  	struct usbmisc_usb_device usbdev[USB_DEV_MAX];
> +	const struct usbmisc_ops *ops;
>  };
>  
>  static struct imx6q_usbmisc *usbmisc;
> @@ -78,7 +79,7 @@ static const struct usbmisc_ops imx6q_usbmisc_ops = {
>  };
>  
>  static const struct of_device_id usbmisc_imx6q_dt_ids[] = {
> -	{ .compatible = "fsl,imx6q-usbmisc"},
> +	{ .compatible = "fsl,imx6q-usbmisc", .data = (void *)&imx6q_usbmisc_ops },
>  	{ /* sentinel */ }
>  };
>  
> @@ -116,8 +117,10 @@ static int __devinit usbmisc_imx6q_probe(struct platform_device *pdev)
>  		return ret;
>  	}
>  
> +	data->ops = (const struct usbmisc_ops *)
> +		of_match_device(usbmisc_imx6q_dt_ids, &pdev->dev);
>  	usbmisc = data;
> -	ret = usbmisc_set_ops(&imx6q_usbmisc_ops);
> +	ret = usbmisc_set_ops(data->ops);
>  	if (ret) {
>  		usbmisc = NULL;
>  		clk_disable_unprepare(data->clk);
> @@ -129,7 +132,7 @@ static int __devinit usbmisc_imx6q_probe(struct platform_device *pdev)
>  
>  static int __devexit usbmisc_imx6q_remove(struct platform_device *pdev)
>  {
> -	usbmisc_unset_ops(&imx6q_usbmisc_ops);
> +	usbmisc_unset_ops(usbmisc->ops);
>  	clk_disable_unprepare(usbmisc->clk);
>  	usbmisc = NULL;
>  	return 0;
> -- 
> 1.7.10.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-usb" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

  Powered by Linux