Re: [PATCH 10/27] mmc: vub300: Remove redundant suspend and resume callbacks

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

 



On Thu, 26 Sep 2013, Ulf Hansson wrote:

> Suspend and resume of cards are handled by the protocol layer and
> consequently the mmc_suspend|resume_host APIs are marked as deprecated.
> 
> While moving away from using the deprecated APIs, there are nothing
> left to be done for the suspend and resume callbacks, so remove them.
> 
> Cc: Tony Olech <tony.olech@xxxxxxxxxxxxxxxxxxxxxx>
> Cc: linux-usb@xxxxxxxxxxxxxxx
> Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
> ---
>  drivers/mmc/host/vub300.c |   30 ------------------------------
>  1 file changed, 30 deletions(-)
> 
> diff --git a/drivers/mmc/host/vub300.c b/drivers/mmc/host/vub300.c
> index e9028ad..db99edc 100644
> --- a/drivers/mmc/host/vub300.c
> +++ b/drivers/mmc/host/vub300.c
> @@ -2389,34 +2389,6 @@ static void vub300_disconnect(struct usb_interface *interface)
>  	}
>  }
>  
> -#ifdef CONFIG_PM
> -static int vub300_suspend(struct usb_interface *intf, pm_message_t message)
> -{
> -	struct vub300_mmc_host *vub300 = usb_get_intfdata(intf);
> -	if (!vub300 || !vub300->mmc) {
> -		return 0;
> -	} else {
> -		struct mmc_host *mmc = vub300->mmc;
> -		mmc_suspend_host(mmc);
> -		return 0;
> -	}
> -}
> -
> -static int vub300_resume(struct usb_interface *intf)
> -{
> -	struct vub300_mmc_host *vub300 = usb_get_intfdata(intf);
> -	if (!vub300 || !vub300->mmc) {
> -		return 0;
> -	} else {
> -		struct mmc_host *mmc = vub300->mmc;
> -		mmc_resume_host(mmc);
> -		return 0;
> -	}
> -}
> -#else
> -#define vub300_suspend NULL
> -#define vub300_resume NULL
> -#endif
>  static int vub300_pre_reset(struct usb_interface *intf)
>  {				/* NOT irq */
>  	struct vub300_mmc_host *vub300 = usb_get_intfdata(intf);
> @@ -2437,8 +2409,6 @@ static struct usb_driver vub300_driver = {
>  	.name = "vub300",
>  	.probe = vub300_probe,
>  	.disconnect = vub300_disconnect,
> -	.suspend = vub300_suspend,
> -	.resume = vub300_resume,
>  	.pre_reset = vub300_pre_reset,
>  	.post_reset = vub300_post_reset,
>  	.id_table = vub300_table,

You shouldn't do it this way.  The USB core treats drivers differently 
depending on whether their suspend and resume callbacks are defined.  
If those method pointers are NULL, the driver will be treated as though 
it doesn't support power management at all.

You should keep the pointers and the routines.  The contents of the 
routines can be removed, leaving nothing but a "return 0;" line.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux