RE: [PATCH] usb: renesas_usbhs: mark PM functions as __maybe_unused

From: Yoshihiro Shimoda
Date: Tue Dec 11 2018 - 21:11:50 EST


Hi Arnd,

Thank you for the patch!

> From: Arnd Bergmann, Sent: Tuesday, December 11, 2018 7:06 PM
> To: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Cc: Arnd Bergmann <arnd@xxxxxxxx>; Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx>; Felipe Balbi
> <felipe.balbi@xxxxxxxxxxxxxxx>; Simon Horman <horms+renesas@xxxxxxxxxxxx>; Chris Brandt <Chris.Brandt@xxxxxxxxxxx>;
> linux-usb@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: [PATCH] usb: renesas_usbhs: mark PM functions as __maybe_unused
>
> Without CONFIG_PM, we get a new build warning here:
>
> drivers/usb/renesas_usbhs/common.c:860:12: error: 'usbhsc_resume' defined but not used [-Werror=unused-function]
> static int usbhsc_resume(struct device *dev)
> ^~~~~~~~~~~~~
> drivers/usb/renesas_usbhs/common.c:844:12: error: 'usbhsc_suspend' defined but not used [-Werror=unused-function]
> static int usbhsc_suspend(struct device *dev)
> ^~~~~~~~~~~~~~
>
> No idea why this never happened before, but it's trivial to work
> around by marking the functions as __maybe_unused so the compiler
> can silently discard them.

This build warning cause the commit d54d334e75b9 ("usb: renesas_usbhs:
Use SIMPLE_DEV_PM_OPS macro").

So, I'd like to add the following tag on this commit log.

Fixes: d54d334e75b9 ("usb: renesas_usbhs: Use SIMPLE_DEV_PM_OPS macro")

Also, we can remove "No idea why this never happened before, but"
from the commit log.

> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>

After revised the commit log a little:

Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx>

Best regards,
Yoshihiro Shimoda

> ---
> drivers/usb/renesas_usbhs/common.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/usb/renesas_usbhs/common.c b/drivers/usb/renesas_usbhs/common.c
> index 02c1d2bf4f86..2ff7991f4517 100644
> --- a/drivers/usb/renesas_usbhs/common.c
> +++ b/drivers/usb/renesas_usbhs/common.c
> @@ -841,7 +841,7 @@ static int usbhs_remove(struct platform_device *pdev)
> return 0;
> }
>
> -static int usbhsc_suspend(struct device *dev)
> +static __maybe_unused int usbhsc_suspend(struct device *dev)
> {
> struct usbhs_priv *priv = dev_get_drvdata(dev);
> struct usbhs_mod *mod = usbhs_mod_get_current(priv);
> @@ -857,7 +857,7 @@ static int usbhsc_suspend(struct device *dev)
> return 0;
> }
>
> -static int usbhsc_resume(struct device *dev)
> +static __maybe_unused int usbhsc_resume(struct device *dev)
> {
> struct usbhs_priv *priv = dev_get_drvdata(dev);
> struct platform_device *pdev = usbhs_priv_to_pdev(priv);
> --
> 2.20.0