From: Antonio Gomes Date: Fri, 4 Nov 2022 22:04:23 +0000 (-0300) Subject: drm/nouveau: Add support to control backlight using bl_power for nva3. X-Git-Tag: v6.6.7~1918^2~23^2~1337 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9df38728f78c544a8edab8acf2e4d3eee73dfaeb;p=platform%2Fkernel%2Flinux-starfive.git drm/nouveau: Add support to control backlight using bl_power for nva3. Summary: * Add support to turn on/off backlight when changing values in bl_power file. This is achieved by using function backlight_get_brightness() in nva3_set_intensity to get current brightness. Test plan: * Turn off: echo 1 > /sys/class/backlight/nv_backlight/bl_power * Turn on: echo 0 > /sys/class/backlight/nv_backlight/bl_power Signed-off-by: Antonio Gomes Signed-off-by: Karol Herbst Link: https://patchwork.freedesktop.org/patch/msgid/20221104220424.41164-1-antoniospg100@gmail.com --- diff --git a/drivers/gpu/drm/nouveau/nouveau_backlight.c b/drivers/gpu/drm/nouveau/nouveau_backlight.c index a614582..40409a2 100644 --- a/drivers/gpu/drm/nouveau/nouveau_backlight.c +++ b/drivers/gpu/drm/nouveau/nouveau_backlight.c @@ -264,7 +264,11 @@ nva3_set_intensity(struct backlight_device *bd) u32 div, val; div = nvif_rd32(device, NV50_PDISP_SOR_PWM_DIV(or)); - val = (bd->props.brightness * div) / 100; + + val = backlight_get_brightness(bd); + if (val) + val = (val * div) / 100; + if (div) { nvif_wr32(device, NV50_PDISP_SOR_PWM_CTL(or), val |