On 21/04/15 16:41, Alex Deucher wrote:
On Tue, Apr 21, 2015 at 11:56 AM, Emil Velikov emil.l.velikov@gmail.com wrote:
Hi Alex,
On 20 April 2015 at 23:33, Alex Deucher alexdeucher@gmail.com wrote:
I'm pleased to announce the initial release of the new amdgpu driver. This is a partial replacement for the radeon driver for newer AMD asics. A number of components are still shared. Here is a comparison of the radeon and amdgpu stacks:
- radeon stack
kernel driver: radeon.ko libdrm: libdrm_radeon mesa: radeon, r200, r300, r600, radeonsi ddx: xf86-video-ati
- amdgpu stack
kernel driver: amdgpu.ko libdrm: libdrm_amdgpu mesa: radeonsi ddx: xf86-video-amdgpu
Older asics will continue to be supported by the radeon stack; new asics will be supported by the amdgpu stack. CI (Sea Islands) asics have support in both driver stacks, but this is purely for testing purposes. CI parts are officially supported in the radeon stack. Support for CI on the amdgpu stack is determined by a config option in the kernel. CI support is not enabled by default for amdgpu.
Most of our focus has been on Carrizo support, so there are some gaps in the dGPU support for Tonga and Iceland, notably power management. Those gaps will be filled in eventually.
Also included in this code base are full register headers for just about every block on the asics.
Barring the gaps mentioned above, the driver stack is functionally on par with radeon including:
- OpenGL 3.3 support using the radeonsi mesa driver
- Video decode support using UVD
- Video encode support using VCE
The code can be found in the amdgpu branches of the following git trees. xf86-video-amdgpu: http://cgit.freedesktop.org/~agd5f/xf86-video-amdgpu/log/?h=amdgpu libdrm: http://cgit.freedesktop.org/~agd5f/drm/log/?h=amdgpu kernel: http://cgit.freedesktop.org/~agd5f/linux/log/?h=amdgpu mesa: http://cgit.freedesktop.org/~mareko/mesa/log/?h=amdgpu
To test the new driver stack you will need to specify a device section in your xorg.conf with the driver set to amdgpu rather than radeon.
Please review!
Do you plan to sending out the libdrm patches to the ML ? I have a few comments that you might be interested in :-)
Yeah, just sent them out now. Ran out of time last night. Some of the patches in the kernel and the ddx patch are really big so probably too big for the ML.
Fair enough, did not mean to come out as impatient - was the first thing that pope at my email client after a short break.
Just a random question on the ddx front - do you see many benefits of supporting old xservers ? If you target xserver 1.16 and later you can drop a fair bit of code/wrappers - Non DRI2 enabled xserver. - HAS_DEVPRIVATEKEYREC (new with 1.10, released 4+ years ago) - xorg-list (new with 1.12, released 3+ years ago) - DRI2_PRIME (new with 1.13, released 2+ years ago) - AMDGPU_PIXMAP_SHARING (XF86_CRTC_VERSION >= 5, new with 1.13) - Support for external the glamor library (new with 1.16)
While you're there you might want to drop support for xextproto pre 7.1. 7.1.0 was released 6+ years ago.
The README and .gitignore mention xf86-video-ati.
Hope you find any of the above useful :)
-Emil