2007-02-24 11:31:25

by Andreas Schwab

[permalink] [raw]
Subject: Nvidiafb broken in 2.6.21-rc1

With 2.6.21-rc1 I get no video signal from nvidiafb on PowerMac G5.
Bisection has identified this patch:

commit 599a52d12629394236d785615808845823875868
Author: Richard Purdie <[email protected]>
Date: Sat Feb 10 23:07:48 2007 +0000

backlight: Separate backlight properties from backlight ops pointers

Per device data such as brightness belongs to the indivdual device
and should therefore be separate from the the backlight operation
function pointers. This patch splits the two types of data and
allows simplifcation of some code.

Signed-off-by: Richard Purdie <[email protected]>

Andreas.

--
Andreas Schwab, SuSE Labs, [email protected]
SuSE Linux Products GmbH, Maxfeldstra?e 5, 90409 N?rnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."


2007-02-26 10:02:44

by Richard Purdie

[permalink] [raw]
Subject: Re: Nvidiafb broken in 2.6.21-rc1

On Sat, 2007-02-24 at 12:31 +0100, Andreas Schwab wrote:
> With 2.6.21-rc1 I get no video signal from nvidiafb on PowerMac G5.
> Bisection has identified this patch:
>
> commit 599a52d12629394236d785615808845823875868
> Author: Richard Purdie <[email protected]>
> Date: Sat Feb 10 23:07:48 2007 +0000
>
> backlight: Separate backlight properties from backlight ops pointers
>
> Per device data such as brightness belongs to the indivdual device
> and should therefore be separate from the the backlight operation
> function pointers. This patch splits the two types of data and
> allows simplifcation of some code.
>
> Signed-off-by: Richard Purdie <[email protected]>

Thanks, I think I know what the problem is. Could you try this change
please:

diff --git a/drivers/video/nvidia/nv_backlight.c b/drivers/video/nvidia/nv_backlight.c
index b7016e9..a50b303 100644
--- a/drivers/video/nvidia/nv_backlight.c
+++ b/drivers/video/nvidia/nv_backlight.c
@@ -23,8 +23,6 @@
#define MAX_LEVEL 0x534
#define LEVEL_STEP ((MAX_LEVEL - MIN_LEVEL) / FB_BACKLIGHT_MAX)

-static struct backlight_properties nvidia_bl_data;
-
static int nvidia_bl_get_level_brightness(struct nvidia_par *par,
int level)
{
@@ -119,7 +117,7 @@ void nvidia_bl_init(struct nvidia_par *par)
0x534 * FB_BACKLIGHT_MAX / MAX_LEVEL);

bd->props.max_brightness = FB_BACKLIGHT_LEVELS - 1;
- bd->props.brightness = nvidia_bl_data.max_brightness;
+ bd->props.brightness = bd->props.max_brightness;
bd->props.power = FB_BLANK_UNBLANK;
backlight_update_status(bd);



2007-02-26 21:54:22

by Andreas Schwab

[permalink] [raw]
Subject: Re: Nvidiafb broken in 2.6.21-rc1

Richard Purdie <[email protected]> writes:

> Thanks, I think I know what the problem is. Could you try this change
> please:

Thanks, that fixes the problem.

Andreas.

--
Andreas Schwab, SuSE Labs, [email protected]
SuSE Linux Products GmbH, Maxfeldstra?e 5, 90409 N?rnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."