ast: resolutions that require single-buffering (due to VRAM limitations) are unavailable

Jeremy Rand jeremyrand at danwin1210.de
Tue Nov 22 00:33:46 UTC 2022


Thomas Zimmermann:
> Hi
> 
> Am 25.10.22 um 09:12 schrieb Jeremy Rand:
>> Hi dri-devel,
>>
>> I have two machines with ASPEED GPU's (ast Linux driver).  One machine 
>> is x86_64, running an ASRock Rack Tommy 90-SC02P1-00UBNZ GPU (AST2510 
>> chipset) with KDE Plasma Wayland; the other is ppc64le, running an 
>> integrated AST2500 GPU with KDE Plasma X11.  Both the AST2510 and 
>> AST2500 have 16 MiB VRAM according to lspci.  Both ASPEED GPU's are 
>> advertised as supporting up to 1920x1200 resolution, but KDE only 
>> detects a maximum resolution of 1920x1080.
>>
>> Some additional information about this bug can be found at 
>> https://forums.raptorcs.com/index.php/topic,31.0.html .
>>
>> I believe this is a Linux bug, because it is solely dependent on the 
>> Linux version.  The following Linux versions are confirmed to have the 
>> bug:
>>
>> Debian:
>> 5.6.0-1 (ppc64el)
>> Fedora:
>> 5.6.0-1.fc33.x86_64
>> 5.6.0-1.fc33.ppc64le
>> 5.17.5-300.fc36.x86_64
>> 5.18.6-200.fc36.ppc64le
>> 6.1.0-0.rc0.20221007git4c86114194e6.5.fc38.ppc64le
>>
>> Whereas the following Linux versions are confirmed to work fine (max 
>> resolution detected by KDE is 1920x1200 as it should be, and that 
>> resolution works fine when selected):
>>
>> Debian:
>> 5.5.0-2 (ppc64el)
>> Fedora:
>> 5.5.17-200.fc31.x86_64
>> 5.5.17-200.fc31.ppc64le
>>
>> I believe the bug was introduced by Linux commit 
>> 9253f830c9166bfa6cc07d5ed59e174e9d5ec6ca, which adds a VRAM size check 
>> that assumes double-buffering.  1920x1080 resolution at 4 bytes per 
>> pixel with 2 buffers is 16.6 MB, while bumping that to 1920x1200 
>> results in 18.4 MB.  Since the VRAM size is 16 MiB == 16.8 MB, that 
>> explains the issue.
> 
> Thanks for reporting. It's been a known issue for a while.
> 
> But in the most recent devel tree, we have replaced ast memory 
> management, so that it can now use the full vram size for scanout 
> buffers. See
> 
> 
> https://cgit.freedesktop.org/drm/drm-tip/commit/drivers/gpu/drm/ast/ast_mode.c?id=f2fa5a99ca81ce1056539e83c705f3d6bec62e31 
> 
> 
> To test, get the latest drm-tip from
> 
>    git://anongit.freedesktop.org/drm/drm-tip
> 
> and try on your machine.
> 
> The updated driver should become available in Linux v6.3.
> 
> Best regards
> Thomas

Hi Thomas!

Thanks for pointing me to that branch.  It took me some weeks to get it 
to build due to my lack of experience building kernels from source 
(hence the delayed reply), but I can confirm that the issue is fixed in 
drm-tip (1920x1200 works as it should on my ppc64le system; I didn't 
test on my x86_64 system).  Additionally, drm-tip fixes a different AST 
bug that was causing certain Wayland ppc64le systems (mainly GNOME, KDE, 
and GDM) to hang on a black screen (for which I was halfway through 
preparing a bug report), so that is a pleasant surprise.

Looking forward to Linux v6.3.

Cheers,
-- 
-Jeremy Rand
Lead Application Engineer at Namecoin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20221122/81ae9855/attachment.sig>


More information about the dri-devel mailing list