• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Name
2
3    EXT_device_drm_render_node
4
5Name Strings
6
7    EXT_device_drm_render_node
8
9Contributors
10
11    James Jones
12    Simon Ser
13    Daniel Stone
14
15Contacts
16
17    James Jones, NVIDIA (jajones 'at' nvidia.com)
18
19Status
20
21    Draft
22
23Version
24
25    Version 1 - June 4th, 2021
26
27Number
28
29    EGL Extension #144
30
31Extension Type
32
33    EGL device extension
34
35Dependencies
36
37    Written based on the wording of the EGL 1.5 specification.
38
39    EGL_EXT_device_query is required.
40
41    EGL_EXT_device_drm interacts with this extension.
42
43Overview
44
45    The EGL_EXT_device_drm extension provided a method for applications
46    to query the DRM device node file associated with a given
47    EGLDeviceEXT object. However, it was not clear whether it referred to
48    the primary or render device node. This extension adds an enum to
49    refer explicitly to the render device node and defines the existing
50    EGL_DRM_DEVICE_FILE_EXT as explicitly refering to the primary device
51    node.
52
53New Types
54
55    None
56
57New Procedures and Functions
58
59    None
60
61New Tokens
62
63    Accepted as the <name> parameter of eglQueryDeviceStringEXT
64
65        EGL_DRM_RENDER_NODE_FILE_EXT            0x3377
66
67Changes to section 3.2 (Devices)
68
69    Add the following paragraph to the description of
70    eglQueryDeviceStringEXT:
71
72    "To obtain a DRM device file for the render node associated with an
73    EGLDeviceEXT, call eglQueryDeviceStringEXT with <name> set to
74    EGL_DRM_RENDER_NODE_FILE_EXT. The function will return a pointer to
75    a string containing the name of the device file (e.g.
76    "/dev/dri/renderDN"), or NULL if the device has no associated DRM
77    render node."
78
79    If EGL_EXT_device_drm is present, append the following to the
80    paragraph in the same section describing EGL_DRM_DEVICE_FILE_EXT:
81
82    "If the EGL_EXT_device_drm_render_node extension is supported, the
83    value returned will refer to a primary device node, and will be NULL
84    if the device has no associated DRM primary node. If
85    EGL_EXT_device_drm_render_node is not supported, the value returned
86    will refer to a primary device node if there exists one associated
87    with the device. Otherwise, it will refer to a render device node if
88    there exists one associated with the device. If neither exists, NULL
89    is returned."
90
91Issues
92
93    1)  Should this extension clarify that EGL_DRM_DEVICE_FILE_EXT refers
94        only to primary device nodes?
95
96        RESOLVED: Yes, but only when this extension is supported. Existing
97        implementations return render node paths for that string when no
98        suitable primary node is available.
99
100Revision History:
101
102    #2  (June 8th, 2021) James Jones
103        - Added issue #1 and related spec changes.
104
105    #1  (June 4th, 2021) James Jones
106        - Initial draft.
107