PWM backlight build warning
Tony Prisk
linux at prisktech.co.nz
Sat Apr 6 14:33:35 EDT 2013
Hi Thierry,
Sorry it's taken so long to report this but I've been tied up with other
patches recently. I noticed a build warning on the pwm_bl driver in
3.9-rcX but I'm not sure what the correct resolution would be. This patch:
commit e2c17bc6f717a8847df2a867caec6ba4fe85f3fc
backlight: convert pwm_bl to dev_pm_ops
Should be no functional changes, mainly a reorganisation to support
future work.
[akpm at linux-foundation.org: fix CONFIG_PM=n build]
Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>
Cc: Richard Purdie <rpurdie at rpsys.net>
Cc: Florian Tobias Schandinat <FlorianSchandinat at gmx.de>
Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
has introduced a two build warnings in my config:
drivers/video/backlight/pwm_bl.c:278:12: warning:
‘pwm_backlight_suspend’ defined but not used [-Wunused-function]
drivers/video/backlight/pwm_bl.c:292:12: warning: ‘pwm_backlight_resume’
defined but not used [-Wunused-function]
Although I noticed it doesn't have your acked-by ;)
Selecting "Run-time PM core functionality" without "Suspend to RAM and
standby" causes the unused function warning.
With CONFIG_PM=n, no warnings. With CONFIG_PM=y and CONFIG_PM_SLEEP=y,
no warnings.
The problem occurs because when CONFIG_PM=y but CONFIG_PM_SLEEP=n:
#define SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
const struct dev_pm_ops name = { \
SET_SYSTEM_SLEEP_PM_OPS(syspend_fn, resume_fn) \
}
#ifdef CONFIG_PM_SLEEP
#define SET_SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn) \
.suspend = suspend_fn, \
.resume = resume_fn, \
.freeze = suspend_fn, \
.thaw = resume_fn, \
.poweroff = suspend_fn, \
.restore = resume_fn,
#else
#define SET_SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn)
#endif
I guess this would be a problem on every driver that has been converted
to SIMPLE_DEV_PM_OPS.
I don't know enough about the PM code to offer a fix, or whethermy
chosen config is just 'invalid'.
Regards
Tony P
More information about the linux-arm-kernel
mailing list