From: Helge Deller <deller@gmx.de>
To: Paul Menzel <pmenzel@molgen.mpg.de>
Cc: "Z. Liu" <liuzx@knownsec.com>,
linux-fbdev@vger.kernel.org, it+linux-fbdev@molgen.mpg.de,
regressions@lists.linux.dev, stable@vger.kernel.org
Subject: Re: matroxfb: cannot determine memory size
Date: Mon, 19 Dec 2022 13:19:01 +0100 [thread overview]
Message-ID: <d4eb5a9d-c2d3-08bf-6a9a-014e2d625a2e@gmx.de> (raw)
In-Reply-To: <48e83fa7-00a6-ba11-0db3-a165ce3c0699@molgen.mpg.de>
On 12/19/22 12:58, Paul Menzel wrote:
>
> Dear Helge,
>
>
> Am 16.12.22 um 22:21 schrieb Helge Deller:
>> * Paul Menzel <pmenzel@molgen.mpg.de>:
>>> [Cc: +regressions@, +stable@]
>>>
>>> #regzbot ^introduced: 62d89a7d49afe46e6b9bbe9e23b004ad848dbde4
>
>>> Am 16.12.22 um 00:02 schrieb Helge Deller:
>>>> On 12/15/22 17:39, Paul Menzel wrote:
>>>
>>>>> Between Linux 5.10.103 and 5.10.110/5.15.77, matrixfb fails to load.
>
> […]
>
>>>>> ### 5.15.77
>>>>>
>>>>> [ 0.000000] Linux version 5.15.77.mx64.440 (root@theinternet.molgen.mpg.de) (gcc (GCC) 10.4.0, GNU ld (GNU Binutils) 2.37) #1 SMP Tue Nov 8 15:42:33 CET 2022
>>>>> [ 0.000000] Command line: root=LABEL=root ro crashkernel=64G-:256M console=ttyS0,115200n8 console=tty0 init=/bin/systemd audit=0 random.trust_cpu=on systemd.unified_cgroup_hierarchy
>>>>> […]
>>>>> [ 0.000000] DMI: Dell Inc. PowerEdge R715/0G2DP3, BIOS 1.5.2 04/19/2011
>>>>> […]
>>>>> [ 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
>>>>>
>>>>> We see it on several systems:
>>>>>
>>>>> $ lspci -nn -s 0a:03.0 # Dell PowerEdge R715
>>>>> 0a:03.0 VGA compatible controller [0300]: Matrox Electronics Systems Ltd. MGA G200eW WPCM450 [102b:0532] (rev 0a)
>>>>>
>>>>> $ lspci -nn -s 09:03.0 # Dell PowerEdge R910
>>>>> 09:03.0 VGA compatible controller [0300]: Matrox Electronics Systems Ltd. MGA G200eW WPCM450 [102b:0532] (rev 0a)
>
> Also Dell PowerEdge R815.
>
> […]
>
>>> I tested Linus’ master with commit 84e57d292203 (Merge tag
>>> 'exfat-for-6.2-rc1' of
>>> git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat) and the
>>> error is still there. Reverting commit fixes the issue.
>>>
>>> Tested on:
>>>
>>> DMI: Dell Inc. PowerEdge R910/0KYD3D, BIOS 2.10.0 08/29/2013
>>>
>>> Current master:
>>>
>>> [ 36.221595] matroxfb 0000:09:03.0: vgaarb: deactivate vga console
>>> [ 36.228355] Console: switching to colour dummy device 80x25
>>> [ 36.234069] matroxfb: Matrox MGA-G200eW (PCI) detected
>>> [ 36.239316] PInS memtype = 7
>>> [ 36.242198] matroxfb: cannot determine memory size
>>> [ 36.242209] matroxfb: probe of 0000:09:03.0 failed with error -1
>>>
>>> After reverting 62d89a7d49af (video: fbdev: matroxfb: set maxvram of
>>> vbG200eW to the same as vbG200 to avoid black screen):
>>>
>>> [ 38.140763] matroxfb 0000:09:03.0: vgaarb: deactivate vga console
>>> [ 38.148057] Console: switching to colour dummy device 80x25
>>> [ 38.153789] matroxfb: Matrox MGA-G200eW (PCI) detected
>>> [ 38.159042] PInS memtype = 7
>>> [ 38.161953] matroxfb: 640x480x8bpp (virtual: 640x13107)
>>> [ 38.167175] matroxfb: framebuffer at 0xC5000000, mapped to 0x000000006f41c38c, size 8388608
>>>
>>>>> The master commit 62d89a7d49a was added to v5.18-rc1, and was also
>>>>> backported to the Linux 5.15 series in 5.15.33.
>>
>> Good.
>>
>> Could you test if the patch below works for you as well (on top of
>> git master) ? I believe the commit f8bf19f7f311 (video: fbdev:
>> matroxfb: set maxvram of vbG200eW to the same as vbG200 to avoid
>> black screen) changed the wrong value...
>
>> diff --git a/drivers/video/fbdev/matrox/matroxfb_base.c b/drivers/video/fbdev/matrox/matroxfb_base.c
>> index 0d3cee7ae726..5192c7ac459a 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 = 0x800000,
>> + .maxdisplayable = 0x100000,
>> .accelID = FB_ACCEL_MATROX_MGAG200,
>> .lowlevel = &matrox_G100
>> };
>
> Thank you. That worked.
>
> $ dmesg | grep -e matroxfb -e "Linux version" -e "DMI:"
> [ 0.000000] Linux version 6.1.0.mx64.440-13147-gfa99506bedb1 (pmenzel@dontpanic.molgen.mpg.de) (gcc (GCC) 11.1.0, GNU ld (GNU Binutils) 2.37) #1 SMP PREEMPT_DYNAMIC Mon Dec 19 12:13:21 CET 2022
> [ 0.000000] DMI: Dell Inc. PowerEdge R815/04Y8PT, BIOS 3.4.0 03/23/2018
> [ 29.033666] matroxfb 0000:0a:03.0: vgaarb: deactivate vga console
> [ 29.046608] matroxfb: Matrox MGA-G200eW (PCI) detected
> [ 29.054769] matroxfb: 640x480x8bpp (virtual: 640x1638)
> [ 29.059901] matroxfb: framebuffer at 0xE4000000, mapped to 0x00000000d36c9776, size 8388608
> [ 34.917829] matroxfb: Pixel PLL not locked after 5 secs
> $ lspci -nn -s 0a:03.0
> 0a:03.0 VGA compatible controller [0300]: Matrox Electronics Systems Ltd. MGA G200eW WPCM450 [102b:0532] (rev 0a)
>
>> If it works, can you send a patch?
>
> Will do.
Great.
> If you have some explanation though, I could add to the commit message, that’d be great.
Look at the comment in the code, a few lines further down, for the vbG400 card:
/* from doc it looks like that accelerator can draw only to low 16MB :-( Direct accesses & displaying are OK for
whole 32MB */
static struct video_board vbG400 = {
.maxvram = 0x2000000,
.maxdisplayable = 0x1000000,
it makes sense to have maxdisplayable smaller than maxvram.
But Z Liu made maxvram lower than maxdisplayable.
Helge
prev parent reply other threads:[~2022-12-19 12:19 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <5da53ec5-3a9c-ec87-da20-69f140aaaa6b@molgen.mpg.de>
[not found] ` <6ef71be5-def9-4578-3f73-c43c35d7e4a9@gmx.de>
2022-12-16 11:58 ` matroxfb: cannot determine memory size Paul Menzel
2022-12-16 21:21 ` Helge Deller
2022-12-19 11:58 ` Paul Menzel
2022-12-19 12:19 ` Helge Deller [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d4eb5a9d-c2d3-08bf-6a9a-014e2d625a2e@gmx.de \
--to=deller@gmx.de \
--cc=it+linux-fbdev@molgen.mpg.de \
--cc=linux-fbdev@vger.kernel.org \
--cc=liuzx@knownsec.com \
--cc=pmenzel@molgen.mpg.de \
--cc=regressions@lists.linux.dev \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).