RE: [PATCH 2/4] USB: Fix core compile with CONFIG_USB_SUSPEND=n

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

 



 
> -----Original Message-----
> From: Sarah Sharp [mailto:sarah.a.sharp@xxxxxxxxxxxxxxx]
> Sent: Tuesday, May 22, 2012 12:06 AM
> To: Greg Kroah-Hartman
> Cc: linux-usb@xxxxxxxxxxxxxxx; Stephen Rothwell; Chen Peter-B29397
> Subject: [PATCH 2/4] USB: Fix core compile with CONFIG_USB_SUSPEND=n
> 
> When CONFIG_PM=n, make sure that the usb_[unlocked_][en/dis]able_lpm
> declarations are visible in include/linux/usb.h, and exported from
> drivers/usb/core/hub.c.
> 
> Before this patch, if CONFIG_USB_SUSPEND was turned off, it would cause
> build errors:
> 
> drivers/usb/core/hub.c: In function 'usb_disable_lpm':
> drivers/usb/core/hub.c:3394:2: error: implicit declaration of function
> 'usb_enable_lpm' [-Werror=implicit-function-declaration]
> drivers/usb/core/hub.c: At top level:
> drivers/usb/core/hub.c:3424:6: warning: conflicting types for
> 'usb_enable_lpm' [enabled by default]
> drivers/usb/core/hub.c:3394:2: note: previous implicit declaration of
> 'usb_enable_lpm' was here
> drivers/usb/core/driver.c: In function 'usb_probe_interface':
> drivers/usb/core/driver.c:339:2: error: implicit declaration of function
> 'usb_unlocked_disable_lpm' [-Werror=implicit-function-declaration]
> drivers/usb/core/driver.c:364:3: error: implicit declaration of function
> 'usb_unlocked_enable_lpm' [-Werror=implicit-function-declaration]
> drivers/usb/core/message.c: In function 'usb_set_interface':
> drivers/usb/core/message.c:1314:2: error: implicit declaration of
> function 'usb_disable_lpm' [-Werror=implicit-function-declaration]
> drivers/usb/core/message.c:1323:3: error: implicit declaration of
> function 'usb_enable_lpm' [-Werror=implicit-function-declaration]
> drivers/usb/core/message.c:1368:2: error: implicit declaration of
> function 'usb_unlocked_enable_lpm' [-Werror=implicit-function-declaration]
> 
> Signed-off-by: Sarah Sharp <sarah.a.sharp@xxxxxxxxxxxxxxx>
> Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> Reported-by: Chen Peter-B29397 <B29397@xxxxxxxxxxxxx>
Tested-by: Chen Peter-B29397 <B29397@xxxxxxxxxxxxx>

> ---
>  drivers/usb/core/hub.c |    4 ++++
>  include/linux/usb.h    |   12 ++++++------
>  2 files changed, 10 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
> index fcc244e..04fb834 100644
> --- a/drivers/usb/core/hub.c
> +++ b/drivers/usb/core/hub.c
> @@ -3472,15 +3472,19 @@ int usb_disable_lpm(struct usb_device *udev)
>  {
>  	return 0;
>  }
> +EXPORT_SYMBOL_GPL(usb_disable_lpm);
> 
>  void usb_enable_lpm(struct usb_device *udev) { }
> +EXPORT_SYMBOL_GPL(usb_enable_lpm);
> 
>  int usb_unlocked_disable_lpm(struct usb_device *udev)
>  {
>  	return 0;
>  }
> +EXPORT_SYMBOL_GPL(usb_unlocked_disable_lpm);
> 
>  void usb_unlocked_enable_lpm(struct usb_device *udev) { }
> +EXPORT_SYMBOL_GPL(usb_unlocked_enable_lpm);
>  #endif
> 
> 
> diff --git a/include/linux/usb.h b/include/linux/usb.h
> index c19297a..dea39dc 100644
> --- a/include/linux/usb.h
> +++ b/include/linux/usb.h
> @@ -592,12 +592,6 @@ extern void usb_autopm_put_interface_async(struct
> usb_interface *intf);
>  extern void usb_autopm_get_interface_no_resume(struct usb_interface
> *intf);
>  extern void usb_autopm_put_interface_no_suspend(struct usb_interface
> *intf);
> 
> -extern int usb_disable_lpm(struct usb_device *udev);
> -extern void usb_enable_lpm(struct usb_device *udev);
> -/* Same as above, but these functions lock/unlock the bandwidth_mutex.
> */
> -extern int usb_unlocked_disable_lpm(struct usb_device *udev);
> -extern void usb_unlocked_enable_lpm(struct usb_device *udev);
> -
>  static inline void usb_mark_last_busy(struct usb_device *udev)
>  {
>  	pm_runtime_mark_last_busy(&udev->dev);
> @@ -629,6 +623,12 @@ static inline void usb_mark_last_busy(struct
> usb_device *udev)
>  { }
>  #endif
> 
> +extern int usb_disable_lpm(struct usb_device *udev);
> +extern void usb_enable_lpm(struct usb_device *udev);
> +/* Same as above, but these functions lock/unlock the bandwidth_mutex.
> */
> +extern int usb_unlocked_disable_lpm(struct usb_device *udev);
> +extern void usb_unlocked_enable_lpm(struct usb_device *udev);
> +
>  /*----------------------------------------------------------------------
> ---*/
> 
>  /* for drivers using iso endpoints */
> --
> 1.7.9
> 


--
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