On 1/2/23 14:57, Paul Menzel wrote:
> Commit 62d89a7d49af ("video: fbdev: matroxfb: set maxvram of vbG200eW to
> the same as vbG200 to avoid black screen") accidently decreases the
> maximum memory size for the Matrox G200eW (102b:0532) from 8 MB to 1 MB
> by missing one zero. This caused the driver initialization to fail with
> the messages below, as the minimum required VRAM size is 2 MB:
>
> [ 9.436420] matroxfb: Matrox MGA-G200eW (PCI) detected
> [ 9.444502] matroxfb: cannot determine memory size
> [ 9.449316] matroxfb: probe of 0000:0a:03.0 failed with error -1
>
> So, add the missing 0 to make it the intended 16 MB. Successfully tested on
> the Dell PowerEdge R910/0KYD3D, BIOS 2.10.0 08/29/2013, that the warning is
> gone.
>
> While at it, add a leading 0 to the maxdisplayable entry, so it’s aligned
> properly. The value could probably also be increased from 8 MB to 16 MB, as
> the G200 uses the same values, but I have not checked any datasheet.
>
> Note, matroxfb is obsolete and superseded by the maintained DRM driver
> mga200, which is used by default on most systems where both drivers are
> available. Therefore, on most systems it was only a cosmetic issue.
>
> Fixes: 62d89a7d49af ("video: fbdev: matroxfb: set maxvram of vbG200eW to the same as vbG200 to avoid black screen")
> Link: https://lore.kernel.org/linux-fbdev/[email protected]/T/#mb6953a9995ebd18acc8552f99d6db39787aec775
> Cc: [email protected]
> Cc: Z. Liu <[email protected]>
> Cc: Rich Felker <[email protected]>
> Cc: [email protected]
> Signed-off-by: Paul Menzel <[email protected]>
applied this v1 version to the fbdev git tree.
Thanks!
Helge
> ---
> drivers/video/fbdev/matrox/matroxfb_base.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/video/fbdev/matrox/matroxfb_base.c b/drivers/video/fbdev/matrox/matroxfb_base.c
> index 0d3cee7ae7268..a043a737ea9f7 100644
> --- a/drivers/video/fbdev/matrox/matroxfb_base.c
> +++ b/drivers/video/fbdev/matrox/matroxfb_base.c
> @@ -1378,8 +1378,8 @@ static struct video_board vbG200 = {
> .lowlevel = &matrox_G100
> };
> static struct video_board vbG200eW = {
> - .maxvram = 0x100000,
> - .maxdisplayable = 0x800000,
> + .maxvram = 0x1000000,
> + .maxdisplayable = 0x0800000,
> .accelID = FB_ACCEL_MATROX_MGAG200,
> .lowlevel = &matrox_G100
> };