[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CACO55tv1yFYeboJsdV9sg1KWqWhs3WfJVmHuBKjAV6FUi6BLSA@mail.gmail.com>
Date: Tue, 8 Feb 2022 13:21:57 +0100
From: Karol Herbst <kherbst@...hat.com>
To: Lyude Paul <lyude@...hat.com>
Cc: nouveau <nouveau@...ts.freedesktop.org>,
dri-devel <dri-devel@...ts.freedesktop.org>,
stable@...r.kernel.org, Ben Skeggs <bskeggs@...hat.com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] drm/nouveau/backlight: Just set all backlight types as RAW
Reviewed-by: Karol Herbst <kherbst@...hat.com>
On Fri, Feb 4, 2022 at 8:33 PM Lyude Paul <lyude@...hat.com> wrote:
>
> Currently we can get a warning on systems with eDP backlights like so:
>
> nv_backlight: invalid backlight type
> WARNING: CPU: 4 PID: 454 at drivers/video/backlight/backlight.c:420
> backlight_device_register+0x226/0x250
>
> This happens as a result of us not filling out props.type for the eDP
> backlight, even though we do it for all other backlight types.
>
> Since nothing in our driver uses anything but BACKLIGHT_RAW, let's take the
> props\.type assignments out of the codepaths for individual backlight types
> and just set it unconditionally to prevent this from happening again.
>
> Signed-off-by: Lyude Paul <lyude@...hat.com>
> Fixes: 6eca310e8924 ("drm/nouveau/kms/nv50-: Add basic DPCD backlight support for nouveau")
> Cc: <stable@...r.kernel.org> # v5.15+
> ---
> drivers/gpu/drm/nouveau/nouveau_backlight.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/nouveau/nouveau_backlight.c b/drivers/gpu/drm/nouveau/nouveau_backlight.c
> index 6af12dc99d7f..daf9f87477ba 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_backlight.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_backlight.c
> @@ -101,7 +101,6 @@ nv40_backlight_init(struct nouveau_encoder *encoder,
> if (!(nvif_rd32(device, NV40_PMC_BACKLIGHT) & NV40_PMC_BACKLIGHT_MASK))
> return -ENODEV;
>
> - props->type = BACKLIGHT_RAW;
> props->max_brightness = 31;
> *ops = &nv40_bl_ops;
> return 0;
> @@ -343,7 +342,6 @@ nv50_backlight_init(struct nouveau_backlight *bl,
> else
> *ops = &nva3_bl_ops;
>
> - props->type = BACKLIGHT_RAW;
> props->max_brightness = 100;
>
> return 0;
> @@ -411,6 +409,7 @@ nouveau_backlight_init(struct drm_connector *connector)
> goto fail_alloc;
> }
>
> + props.type = BACKLIGHT_RAW;
> bl->dev = backlight_device_register(backlight_name, connector->kdev,
> nv_encoder, ops, &props);
> if (IS_ERR(bl->dev)) {
> --
> 2.34.1
>
Powered by blists - more mailing lists