fbdev: auo_k190x: avoid unused function warnings
PATCH 1/1 fbdev: auo_k190x: avoid unused function warnings
The auo_k190x framebuffer driver encloses the power-management functions in #ifdef CONFIG_PM, but the auok190x_suspend/resume functions are only really used when CONFIG_PM_SLEEP is also set, as a frequent gcc warning shows:
drivers/video/fbdev/auo_k190x.c:859:12: warning: 'auok190x_suspend' defined but not used drivers/video/fbdev/auo_k190x.c:899:12: warning: 'auok190x_resume' defined but not used
This changes the driver to remove the #ifdef and instead mark the functions as __maybe_unused, which is a nicer anyway, as it provides build testing for all the code in all configurations and is harder to get wrong.
drivers/video/fbdev/auo_k190x.c +4 -7
@@ -773,9 +773,7 @@ static void auok190x_recover(struct auok190xfb_par *par)/* * Power-management */ - -#ifdef CONFIG_PM -static int auok190x_runtime_suspend (struct device *dev) +static int __maybe_unused auok190x_runtime_suspend (struct device *dev) {struct platform_device *pdev =to_platform_device (dev);struct fb_info *info =platform_get_drvdata (pdev);
@@ -822,7 +820,7 @@ finish:return 0 ; } -static int auok190x_runtime_resume (struct device *dev) +static int __maybe_unused auok190x_runtime_resume (struct device *dev) {struct platform_device *pdev =to_platform_device (dev);struct fb_info *info =platform_get_drvdata (pdev);
@@ -856,7 +854,7 @@ static int auok190x_runtime_resume(struct device *dev)return 0 ; } -static int auok190x_suspend (struct device *dev) +static int __maybe_unused auok190x_suspend (struct device *dev) {struct platform_device *pdev =to_platform_device (dev);struct fb_info *info =platform_get_drvdata (pdev);
@@ -896,7 +894,7 @@ static int auok190x_suspend(struct device *dev)return 0 ; } -static int auok190x_resume (struct device *dev) +static int __maybe_unused auok190x_resume (struct device *dev) {struct platform_device *pdev =to_platform_device (dev);struct fb_info *info =platform_get_drvdata (pdev);
@@ -933,7 +931,6 @@ static int auok190x_resume(struct device *dev)return 0 ; } -#endif const struct dev_pm_ops auok190x_pm = { SET_RUNTIME_PM_OPS(auok190x_runtime_suspend, auok190x_runtime_resume,
Quoted 5 lines · Arnd Bergmann
The
auo_k190xframebuffer driver encloses the power-management functions in #ifdefCONFIG_PM, but the auok190x_suspend/resume functions are only really used whenCONFIG_PM_SLEEPis also set, as a frequent gcc warning shows:
Quoted 7 lines
drivers/video/fbdev/auo_k190x.c:859:12: warning: 'auok190x_suspend' defined but not useddrivers/video/fbdev/auo_k190x.c:899:12: warning: 'auok190x_resume' defined but not usedThis changes the driver to remove the #ifdef and instead mark the functions as
__maybe_unused, which is a nicer anyway, as it provides build testing for all the code in all configurations and is harder to get wrong.
Applied for 4.5.
Btw, do you know if the linker will optimize the __maybe_unused funcs away if they are not used? I presume so.
Tomi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151207/976a5215/attachment.sig>
Quoted 14 lines · On Monday 07 December 2015 18:10:04 Tomi Valkeinen wrote:
Quoted 5 lines · Arnd Bergmann
The
auo_k190xframebuffer driver encloses the power-management functions in #ifdefCONFIG_PM, but the auok190x_suspend/resume functions are only really used whenCONFIG_PM_SLEEPis also set, as a frequent gcc warning shows:Quoted 7 lines
drivers/video/fbdev/auo_k190x.c:859:12: warning: 'auok190x_suspend' defined but not useddrivers/video/fbdev/auo_k190x.c:899:12: warning: 'auok190x_resume' defined but not usedThis changes the driver to remove the #ifdef and instead mark the functions as
__maybe_unused, which is a nicer anyway, as it provides build testing for all the code in all configurations and is harder to get wrong.
Quoted 5 lines
Applied for 4.5.
Btw, do you know if the linker will optimize the
__maybe_unusedfuncs away if they are not used? I presume so.
The compiler does it correctly when built with -O1 or higher (we don't support -O0), and the linker is not involved here.
Arnd
Quoted 15 lines · Arnd Bergmann
Quoted 14 lines · On Monday 07 December 2015 18:10:04 Tomi Valkeinen wrote:
Quoted 12 lines · Arnd Bergmann
The
auo_k190xframebuffer driver encloses the power-management functions in #ifdefCONFIG_PM, but the auok190x_suspend/resume functions are only really used whenCONFIG_PM_SLEEPis also set, as a frequent gcc warning shows:
drivers/video/fbdev/auo_k190x.c:859:12: warning: 'auok190x_suspend' defined but not useddrivers/video/fbdev/auo_k190x.c:899:12: warning: 'auok190x_resume' defined but not usedThis changes the driver to remove the #ifdef and instead mark the functions as
__maybe_unused, which is a nicer anyway, as it provides build testing for all the code in all configurations and is harder to get wrong.
Quoted 8 lines
Quoted 5 lines
Applied for 4.5.
Btw, do you know if the linker will optimize the
__maybe_unusedfuncs away if they are not used? I presume so.The compiler does it correctly when built with -O1 or higher (we don't support -O0), and the linker is not involved here.
Ah, right, they were static. I was thinking of non-static functions. But __maybe_unused is not even needed for non-static, so... Never mind =)
Tomi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151207/70699abb/attachment.sig>