Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Questions re: Radeon DRI3 [ANSWERED] [enabled - works!]
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
dufeu
l33t
l33t


Joined: 30 Aug 2002
Posts: 924
Location: US-FL-EST

PostPosted: Wed Mar 25, 2015 3:50 pm    Post subject: Questions re: Radeon DRI3 [ANSWERED] [enabled - works!] Reply with quote

I have an r600 based (RS780) GPU. I've been updating my USE flags, kernel and configuration and am pretty happy with what I have.

Recently, DRI3 capability has been released for the ati/amd series GPUs. However, it is not enabled by default. I'd like to enable DRI3 (for testing) which I inderstand I need to set in xorg.conf. However, I can't find anywhere examples of what this xorg.conf section is supposed to look like.

And of course, given the recent timing of the release, mention of enabling DRI3 isn't included in any 'How-To's either.

Currently, I don't use an xorg.conf file so I assume I just need to create one which only has the DRI3 section enabled to do this.

2nd question. If I want mesa to build a mesa driver for only r600 GPUs, do I do the same type of thing as I would do for an Intel i915 series GPU? i.e VIDEO_CARDS="radeon r600"? I don't expect any functional differences. I'm just like to not include things I won't use.

For what it's worth, this is my pertinent installed packages/configuration/capabilities:
Code:
Portage 2.2.18 (python 2.7.9-final-0, default/linux/amd64/13.0/desktop/kde, gcc-4.9.2, glibc-2.20-r2, 3.19.2-gentoo x86_64)
=================================================================
System uname: Linux-3.19.2-gentoo-x86_64-AMD_Phenom-tm-_9600_Quad-Core_Processor-with-gentoo-2.2

x11-base/xorg-server-1.17.1-r1 glamor ipv6 nptl suid udev xorg
x11-drivers/xf86-video-ati-9999 udev -glamor

# equery uses mesa
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for media-libs/mesa-10.5.1:
 U I
 + + abi_x86_32           : 32-bit (x86) libraries
 - - bindist              : Disable patent-encumbered ARB_texture_float, EXT_texture_shared_exponent, and EXT_packed_float extensions.
 + + classic              : Build drivers based on the classic architecture.
 - - d3d9                 : Enable Direct 3D9 API through Nine state tracker. Can be used together with patched wine.
 - - debug                : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see
                            http://www.gentoo.org/proj/en/qa/backtraces.xml
 + + dri3                 : Enable DRI3 support.
 + + egl                  : Enable EGL support.
 + + gallium              : Build drivers based on Gallium3D, the new architecture for 3D graphics drivers.
 + + gbm                  : Enable the Graphics Buffer Manager for EGL on KMS.
 - - gles1                : Enable GLESv1 support.
 + + gles2                : Enable GLESv2 support.
 + + llvm                 : Enable LLVM backend for Gallium3D.
 + + nptl                 : Enable support for Native POSIX Threads Library, the new threading module (requires linux-2.6 or better usually)
 - - opencl               : Enable the Clover Gallium OpenCL state tracker.
 - - openmax              : Enable OpenMAX video decode/encode acceleration for Gallium3D.
 - - osmesa               : Build the Mesa library for off-screen rendering.
 - - pax_kernel           : Enable if the user plans to run the package under a pax enabled hardened kernel
 - - pic                  : disable optimized assembly code that is not PIC friendly
 + + udev                 : Enable virtual/udev integration (device discovery, power and storage device support, etc)
 + + vaapi                : Enable Video Acceleration API for hardware decoding
 + + vdpau                : Enable the VDPAU acceleration interface for the Gallium3D Video Layer.
 - - video_cards_i915     : VIDEO_CARDS setting to build driver for Intel i915 video cards
 - - video_cards_i965     : VIDEO_CARDS setting to build driver for Intel i965 video cards
 - - video_cards_ilo      : VIDEO_CARDS setting to build unofficial gallium driver for Intel gen6/7 video cards
 - - video_cards_intel    : VIDEO_CARDS setting to build driver for Intel video cards
 - - video_cards_nouveau  : VIDEO_CARDS setting to build reverse-engineered driver for nvidia cards
 - - video_cards_r100     : VIDEO_CARDS setting to build only r100 based chips code for radeon
 - - video_cards_r200     : VIDEO_CARDS setting to build only r200 based chips code for radeon
 - - video_cards_r300     : VIDEO_CARDS setting to build only r300, r400 and r500 based chips code for radeon
 - - video_cards_r600     : VIDEO_CARDS setting to build only r600, r700, Evergreen and Northern Islands based chips code for radeon
 + + video_cards_radeon   : VIDEO_CARDS setting to build driver for ATI radeon video cards
 - - video_cards_radeonsi : VIDEO_CARDS setting to build only Southern Islands based chips code for radeon
 - - video_cards_vmware   : VIDEO_CARDS setting to build driver for vmware video cards
 - - wayland              : Enable support for dev-libs/wayland
 - - xa                   : Enable the XA (X Acceleration) API for Gallium3D.
 + + xvmc                 : Enable the XvMC acceleration interface for the Gallium3D Video Layer.

# vdpauinfo
display: :0   screen: 0
API version: 1
Information string: G3DVL VDPAU Driver Shared Library version 1.0

Video surface:

name   width height types
-------------------------------------------
420     8192  8192  NV12 YV12
422     8192  8192  UYVY YUYV
444     8192  8192  Y8U8V8A8 V8U8Y8A8

Decoder capabilities:

name                        level macbs width height
----------------------------------------------------
MPEG1                           0  9216  2048  1152
MPEG2_SIMPLE                    3  9216  2048  1152
MPEG2_MAIN                      3  9216  2048  1152
H264_BASELINE                  41  9216  2048  1152
H264_MAIN                      41  9216  2048  1152
H264_HIGH                      41  9216  2048  1152
VC1_SIMPLE                     --- not supported ---
VC1_MAIN                       --- not supported ---
VC1_ADVANCED                    4  9216  2048  1152
MPEG4_PART2_SP                 --- not supported ---
MPEG4_PART2_ASP                --- not supported ---
DIVX4_QMOBILE                  --- not supported ---
DIVX4_MOBILE                   --- not supported ---
DIVX4_HOME_THEATER             --- not supported ---
DIVX4_HD_1080P                 --- not supported ---
DIVX5_QMOBILE                  --- not supported ---
DIVX5_MOBILE                   --- not supported ---
DIVX5_HOME_THEATER             --- not supported ---
DIVX5_HD_1080P                 --- not supported ---
H264_CONSTRAINED_BASELINE      --- not supported ---
H264_EXTENDED                  --- not supported ---
H264_PROGRESSIVE_HIGH          --- not supported ---
H264_CONSTRAINED_HIGH          --- not supported ---
H264_HIGH_444_PREDICTIVE       --- not supported ---

Output surface:

name              width height nat types
----------------------------------------------------
B8G8R8A8          8192  8192    y  NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 A4I4 I4A4 A8I8 I8A8
R8G8B8A8          8192  8192    y  NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 A4I4 I4A4 A8I8 I8A8
R10G10B10A2       8192  8192    y  NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 A4I4 I4A4 A8I8 I8A8
B10G10R10A2       8192  8192    y  NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 A4I4 I4A4 A8I8 I8A8

Bitmap surface:

name              width height
------------------------------
B8G8R8A8          8192  8192
R8G8B8A8          8192  8192
R10G10B10A2       8192  8192
B10G10R10A2       8192  8192
A8                8192  8192

Video mixer:

feature name                    sup
------------------------------------
DEINTERLACE_TEMPORAL             y
DEINTERLACE_TEMPORAL_SPATIAL     -
INVERSE_TELECINE                 -
NOISE_REDUCTION                  y
SHARPNESS                        y
LUMA_KEY                         -
HIGH QUALITY SCALING - L1        -
HIGH QUALITY SCALING - L2        -
HIGH QUALITY SCALING - L3        -
HIGH QUALITY SCALING - L4        -
HIGH QUALITY SCALING - L5        -
HIGH QUALITY SCALING - L6        -
HIGH QUALITY SCALING - L7        -
HIGH QUALITY SCALING - L8        -
HIGH QUALITY SCALING - L9        -

parameter name                  sup      min      max
-----------------------------------------------------
VIDEO_SURFACE_WIDTH              y        48     2048
VIDEO_SURFACE_HEIGHT             y        48     1152
CHROMA_TYPE                      y 
LAYERS                           y         0        4

attribute name                  sup      min      max
-----------------------------------------------------
BACKGROUND_COLOR                 y 
CSC_MATRIX                       y 
NOISE_REDUCTION_LEVEL            y      0.00     1.00
SHARPNESS_LEVEL                  y     -1.00     1.00
LUMA_KEY_MIN_LUMA                y 
LUMA_KEY_MAX_LUMA                y

_________________
People whom think M$ is mediocre, don't know the half of it.


Last edited by dufeu on Fri Mar 27, 2015 10:09 pm; edited 1 time in total
Back to top
View user's profile Send private message
Perfect Gentleman
Veteran
Veteran


Joined: 18 May 2014
Posts: 1245

PostPosted: Thu Mar 26, 2015 8:11 am    Post subject: Reply with quote

/etc/X11/xorg.conf.d/20-radeon.conf
Code:
Section "Device"
   Identifier  "Radeon"
   Driver      "radeon"
   Option      "DRI3"   "on"
EndSection


Code:
$ sudo cat /var/log/Xorg.0.log | grep -i dri3
[    16.823] (**) RADEON(0): Option "DRI3" "on"
[    16.929] (**) RADEON(0): DRI3 enabled
Back to top
View user's profile Send private message
dufeu
l33t
l33t


Joined: 30 Aug 2002
Posts: 924
Location: US-FL-EST

PostPosted: Thu Mar 26, 2015 11:19 pm    Post subject: Reply with quote

Perfect Gentleman wrote:
/etc/X11/xorg.conf.d/20-radeon.conf
Code:
Section "Device"
   Identifier  "Radeon"
   Driver      "radeon"
   Option      "DRI3"   "on"
EndSection


Code:
$ sudo cat /var/log/Xorg.0.log | grep -i dri3
[    16.823] (**) RADEON(0): Option "DRI3" "on"
[    16.929] (**) RADEON(0): DRI3 enabled

Perfect! Thank you.
_________________
People whom think M$ is mediocre, don't know the half of it.
Back to top
View user's profile Send private message
Perfect Gentleman
Veteran
Veteran


Joined: 18 May 2014
Posts: 1245

PostPosted: Fri Mar 27, 2015 2:04 am    Post subject: Reply with quote

You are welcome!
Back to top
View user's profile Send private message
dufeu
l33t
l33t


Joined: 30 Aug 2002
Posts: 924
Location: US-FL-EST

PostPosted: Fri Mar 27, 2015 10:08 pm    Post subject: It works for me! Reply with quote

So far, DRI3 is enabled, working and everything seems noticably faster. I don't know if that last is real or wishful thinking on my part, but everything really seems to display noticably faster.

Note: I use xf86-video-ati-9999 from the Gentoo X11 overlay and I updated to the 3.19.3 gentoo-sources kernel just prior to activating DRI3. The rest of my configuration remains as I posted above.

I've been using my system as normally would which includes assorted new anime playback, some experimental Hi444p video playback and so forth. No 'gatchas' yet.

Thank you again Perfect Gentleman.
_________________
People whom think M$ is mediocre, don't know the half of it.
Back to top
View user's profile Send private message
Ant P.
Watchman
Watchman


Joined: 18 Apr 2009
Posts: 6920

PostPosted: Sat Mar 28, 2015 11:25 pm    Post subject: Reply with quote

DRI3 seems to be on by default on my i915, I wonder why we have to jump through hoops for it on radeon (and why "Option DRI3" isn't documented anywhere...)
Back to top
View user's profile Send private message
dufeu
l33t
l33t


Joined: 30 Aug 2002
Posts: 924
Location: US-FL-EST

PostPosted: Sun Mar 29, 2015 2:23 am    Post subject: Reply with quote

Ant P. wrote:
I wonder why we have to jump through hoops for it on radeon (and why "Option DRI3" isn't documented anywhere...)

DRI3 v2 was included in the radeon driver only 2 weeks ago.
Code:
12 days   Add xorg_list_for_each_entry_safe fallback in radeon_list.h   Michel Dänzer   1   -0/+1
12 days   Simplify includes in radeon_{dri3,present}.c   Michel Dänzer   2   -16/+2
12 days   Add DRI3 support v2   Michel Dänzer   6   -3/+236
12 days   Handle tiling in radeon_set_shared_pixmap_backing   David Heidelberger   3   -4/+41
12 days   Add support for the Present extension v2   Michel Dänzer   5   -3/+431
12 days   Add support for SYNC extension fences v2   Michel Dänzer   5   -2/+165
12 days   Fold radeon_glamor_flush into radeon_cs_flush_indirect   Michel Dänzer   3   -20/+11
12 days   Move #include "radeon_glamor.h" from radeon.h to where it's needed   Michel Dänzer   8   -35/+43
12 days   DRI2: Split out helper for getting UST and MSC of a specific CRTC   Michel Dänzer   3   -20/+40
12 days   DRI2: Use helper functions for DRM event queue management v3   Michel Dänzer   4   -236/+166
12 days   DRI2: Move radeon_dri2_flip_event_handler   Michel Dänzer   1   -58/+58
12 days   DRI2: Remove superfluous assignments to *_info->frame   Michel Dänzer   1   -6/+0
12 days   DRI2: Simplify blit fallback handling for scheduled swaps   Michel Dänzer   1   -27/+20
12 days   Add DRM event queue helpers v2   Michel Dänzer   4   -2/+244
12 days   Move xorg_list backwards compatibility to new radeon_list.h header   Michel Dänzer   3   -9/+40
2015-03-05   Require at least xserver 1.8   Michel Dänzer   2   -30/+6

I did see either a 'one time' emerge notice or a gentoo mail notice specifying that while DRI3 for radeon was now included, it was by default not enabled. I believe the idea was to not break unsuspecting users if there were any unnoticed bugs.

Since the lag in the radeon driver for DRI3 support applies only to radeon and that some time in the future it will be enabled by default, the notice I saw flash by was probably considered all that was needed.

The xorg.conf section segment Perfect Gentleman provided is pretty standard syntax for the xorg.conf file. It's just that I've run for years without an xorg.conf file and couldn't cudgel my memopry hard enough nor find examples to give me the correct naming I needed.

And, BTW - while the driver provides the DRI3 capability, I think it's either xorg-server or mesa which enables DRI3 from the user's perspective. So yes, intel users have had DRI3 enabled earlier.
_________________
People whom think M$ is mediocre, don't know the half of it.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum