diff options
author | Sam Ravnborg <sam@ravnborg.org> | 2020-07-19 11:07:36 +0300 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2020-07-20 12:27:02 +0300 |
commit | 2144d00ed0db28c764513080f95e4c49ea9133b0 (patch) | |
tree | 5168f25f5c6013e7bf5941b612a9a815a1bcb92a /include/linux/backlight.h | |
parent | 5ab4246cfc6f62cd0eb4c95a029e6fa7f29b3984 (diff) | |
download | linux-2144d00ed0db28c764513080f95e4c49ea9133b0.tar.xz |
backlight: backlight: Introduce backlight_get_brightness()
Based on an idea from Emil Velikov, add a helper that checks
backlight_is_blank() and return 0 as brightness if display is blank or
the property value if not.
This allows us to simplify the update_status() implementation
in most of the backlight drivers.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'include/linux/backlight.h')
-rw-r--r-- | include/linux/backlight.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/include/linux/backlight.h b/include/linux/backlight.h index c1824426fc9e..26e89a8033f5 100644 --- a/include/linux/backlight.h +++ b/include/linux/backlight.h @@ -417,6 +417,25 @@ static inline bool backlight_is_blank(const struct backlight_device *bd) bd->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK); } +/** + * backlight_get_brightness - Returns the current brightness value + * @bd: the backlight device + * + * Returns the current brightness value, taking in consideration the current + * state. If backlight_is_blank() returns true then return 0 as brightness + * otherwise return the current brightness property value. + * + * Backlight drivers are expected to use this function in their update_status() + * operation to get the brightness value. + */ +static inline int backlight_get_brightness(const struct backlight_device *bd) +{ + if (backlight_is_blank(bd)) + return 0; + else + return bd->props.brightness; +} + struct backlight_device * backlight_device_register(const char *name, struct device *dev, void *devdata, const struct backlight_ops *ops, |