mirror of https://github.com/torvalds/linux.git
When building for a platform without CONFIG_PM_SLEEP, such as s390,
there are two unused function warnings:
drivers/video/backlight/aw99706.c:436:12: error: 'aw99706_resume' defined but not used [-Werror=unused-function]
436 | static int aw99706_resume(struct device *dev)
| ^~~~~~~~~~~~~~
drivers/video/backlight/aw99706.c:429:12: error: 'aw99706_suspend' defined but not used [-Werror=unused-function]
429 | static int aw99706_suspend(struct device *dev)
| ^~~~~~~~~~~~~~~
SET_SYSTEM_SLEEP_PM_OPS, used within SIMPLE_DEV_PM_OPS, expands to
nothing when CONFIG_PM_SLEEP is not set, so these functions are
completely unused in this configuration.
SIMPLE_DEV_PM_OPS is deprecated in favor of DEFINE_SIMPLE_DEV_PM_OPS,
which avoids this issue by using pm_sleep_ptr to make these callbacks
NULL when CONFIG_PM_SLEEP is unset while making the callback functions
always appear used to the compiler regardless of configuration. Switch
to DEFINE_SIMPLE_DEV_PM_OPS for aw99706_pm_ops to clear up the warning.
Additionally, wrap the pointer to aw99706_pm_ops in pm_ptr() in
aw99706_i2c_driver to ensure that the structure is completely eliminated
in configurations without CONFIG_PM.
Fixes: 88a8e9b49ee8 ("backlight: aw99706: Add support for Awinic AW99706 backlight")
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Link: https://patch.msgid.link/20251120-backlight-aw99706-fix-unused-pm-functions-v1-1-8b9c17c4e783@kernel.org
Signed-off-by: Lee Jones <lee@kernel.org>
|
||
|---|---|---|
| .. | ||
| 88pm860x_bl.c | ||
| Kconfig | ||
| Makefile | ||
| aat2870_bl.c | ||
| adp5520_bl.c | ||
| adp8860_bl.c | ||
| adp8870_bl.c | ||
| ams369fg06.c | ||
| apple_bl.c | ||
| apple_dwi_bl.c | ||
| arcxcnn_bl.c | ||
| as3711_bl.c | ||
| aw99706.c | ||
| backlight.c | ||
| bd6107.c | ||
| corgi_lcd.c | ||
| da903x_bl.c | ||
| da9052_bl.c | ||
| ep93xx_bl.c | ||
| gpio_backlight.c | ||
| hp680_bl.c | ||
| hx8357.c | ||
| ili922x.c | ||
| ili9320.c | ||
| ili9320.h | ||
| ipaq_micro_bl.c | ||
| jornada720_bl.c | ||
| jornada720_lcd.c | ||
| kb3886_bl.c | ||
| ktd253-backlight.c | ||
| ktd2801-backlight.c | ||
| ktz8866.c | ||
| l4f00242t03.c | ||
| lcd.c | ||
| led_bl.c | ||
| lm3509_bl.c | ||
| lm3533_bl.c | ||
| lm3630a_bl.c | ||
| lm3639_bl.c | ||
| lms283gf05.c | ||
| lms501kf03.c | ||
| locomolcd.c | ||
| lp855x_bl.c | ||
| lp8788_bl.c | ||
| ltv350qv.c | ||
| ltv350qv.h | ||
| lv5207lp.c | ||
| max8925_bl.c | ||
| mp3309c.c | ||
| mt6370-backlight.c | ||
| omap1_bl.c | ||
| otm3225a.c | ||
| pandora_bl.c | ||
| platform_lcd.c | ||
| pwm_bl.c | ||
| qcom-wled.c | ||
| rave-sp-backlight.c | ||
| rt4831-backlight.c | ||
| sky81452-backlight.c | ||
| tdo24m.c | ||
| tps65217_bl.c | ||
| vgg2432a4.c | ||
| wm831x_bl.c | ||