Hasty Briefsbeta

Bilingual

A love song for Linux gamers with old GPUs

4 months ago
  • #Linux
  • #AMD GPU
  • #Kernel Development
  • AMD GPUs are well-supported on Linux, but older GCN1 (Southern Islands) and GCN2 (Sea Islands) GPUs had issues.
  • The author worked on improving the amdgpu kernel driver for these older GPUs to enhance the default Linux user experience.
  • RADV (Vulkan driver) already supported GFX6-7 GPUs, but the kernel driver (amdgpu) was not enabled by default, leading to poor user experiences.
  • Key issues included display features (analog connectors, DP/HDMI audio), VCE1 video encoding, and power management.
  • The author fixed analog connector support in DC (Display Core), addressing issues like flickering, black screens, and incorrect display clocks.
  • DP/HDMI audio support was improved, with DP audio now working on Tahiti GPUs for the first time on Linux.
  • Power management fixes were implemented, including disabling ASPM on SI GPUs to prevent random hangs.
  • VCE1 video encoding support was added, enabling H264 encoding up to 2048 x 1152 on SI GPUs.
  • The author acquired multiple SI and CIK GPUs for testing, ensuring broad compatibility.
  • The work ensures that older GPUs remain supported, benefiting users who rely on older hardware.
  • Future work includes supporting DRM format modifiers, TRAVIS/NUTMEG display bridges, and retiring legacy code.
  • The author learned that kernel development is approachable and maintainers are supportive, despite development latency challenges.