diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.15/950-0516-regulator-rpi-panel-Remove-get_brightness-hook.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.15/950-0516-regulator-rpi-panel-Remove-get_brightness-hook.patch | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.15/950-0516-regulator-rpi-panel-Remove-get_brightness-hook.patch b/target/linux/bcm27xx/patches-5.15/950-0516-regulator-rpi-panel-Remove-get_brightness-hook.patch new file mode 100644 index 0000000000..81ce244665 --- /dev/null +++ b/target/linux/bcm27xx/patches-5.15/950-0516-regulator-rpi-panel-Remove-get_brightness-hook.patch @@ -0,0 +1,54 @@ +From 7019ea2a7587700e366729872bdec56d54842c8c Mon Sep 17 00:00:00 2001 +From: Dave Stevenson <dave.stevenson@raspberrypi.com> +Date: Tue, 21 Sep 2021 15:32:50 +0100 +Subject: [PATCH] regulator: rpi-panel: Remove get_brightness hook + +The driver was implementing a get_brightness function that +tried to read back the PWM setting of the display to report +as the current brightness. +The controller on the display does not support that, therefore +we end up reporting a brightness of 0, and that confuses +systemd's backlight service. + +Remove the hook so that the framework returns the current +brightness automatically. + +Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> +--- + .../regulator/rpi-panel-attiny-regulator.c | 23 ------------------- + 1 file changed, 23 deletions(-) + +--- a/drivers/regulator/rpi-panel-attiny-regulator.c ++++ b/drivers/regulator/rpi-panel-attiny-regulator.c +@@ -207,31 +207,8 @@ static int attiny_update_status(struct b + return ret; + } + +-static int attiny_get_brightness(struct backlight_device *bl) +-{ +- struct attiny_lcd *state = bl_get_data(bl); +- struct regmap *regmap = state->regmap; +- int ret, brightness, i; +- +- mutex_lock(&state->lock); +- +- for (i = 0; i < 10; i++) { +- ret = regmap_read(regmap, REG_PWM, &brightness); +- if (!ret) +- break; +- } +- +- mutex_unlock(&state->lock); +- +- if (ret) +- return ret; +- +- return brightness; +-} +- + static const struct backlight_ops attiny_bl = { + .update_status = attiny_update_status, +- .get_brightness = attiny_get_brightness, + }; + + static int attiny_gpio_get_direction(struct gpio_chip *gc, unsigned int off) |