diff options
Diffstat (limited to 'glew/auto/EGL-Registry/extensions/NV/EGL_NV_stream_dma.txt')
-rw-r--r-- | glew/auto/EGL-Registry/extensions/NV/EGL_NV_stream_dma.txt | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/glew/auto/EGL-Registry/extensions/NV/EGL_NV_stream_dma.txt b/glew/auto/EGL-Registry/extensions/NV/EGL_NV_stream_dma.txt new file mode 100644 index 0000000..16716b0 --- /dev/null +++ b/glew/auto/EGL-Registry/extensions/NV/EGL_NV_stream_dma.txt @@ -0,0 +1,137 @@ +Name + + NV_stream_dma + +Name Strings + + EGL_NV_stream_dma + +Contributors + + Santanu Thangaraj + Daniel Kartch + Arihant Jejani + +Contacts + + Santanu Thangaraj, NVIDIA (sthangaraj 'at' nvidia.com) + Arihant Jejani, NVIDIA (ajejani 'at' nvidia.com) + +Status + + Draft + +Version + + Version 1 - April 15, 2019 + +Number + + 135 + +Extension Type + + EGL display extension + +Dependencies + + Requires EGL_NV_stream_remote extension. + + Requires EGL_NV_stream_cross_system extension. + + Interacts with EGL_NV_stream_socket extensions. + +Overview: + + This extension provides the framework for performing DMA transfers + between opposite ends of a single stream, if there is no shared + memory available between them. + + In case of cross system streams the buffer contents of one end of + the stream is transferred to other end using sockets by + EGL_NV_stream_socket extension. Transferring buffer contents + through sockets is slower compared to DMA transfers. Since DMA + transfers have higher throughput compared to sockets, using + EGL_NV_stream_dma extension, applications can request EGL to + utilize DMA channels to perform buffer copies. + +New types + + None + +New Procedures and functions + + None + +New Tokens + + Accepted as attribute names in eglCreateStreamKHR, + eglCreateStreamAttribKHR, eglQueryStreamKHR, and + eglQueryStreamAttribKHR: + + EGL_STREAM_DMA_NV 0x3371 + EGL_STREAM_DMA_SERVER_NV 0x3372 + +Add to list of failures in section "3.10.1 Creating an EGLStream" in +EGL_KHR stream: + - EGL_BAD_MATCH is generated if the value of EGL_STREAM_DMA_NV is + neither EGL_TRUE nor EGL_FALSE. + - EGL_BAD_MATCH is generated if the value of + EGL_STREAM_DMA_SERVER_NV is not EGL_DONT_CARE or a valid + DMA server identifier as defined by the platform. + +Add to "Table 3.10.4.4 EGLStream Attributes" in EGL_KHR_stream: + + Attribute Read/Write Type Section + ------------------------ ----------- ------ ---------- + EGL_STREAM_DMA_NV io EGLint 3.10.4.x + EGL_STREAM_DMA_SERVER_NV io platform dependent 3.10.4.x+1 + +Add new subsections to the end of section "3.10.4 EGLStream Attributes" +in EGL_KHR_stream: + + 3.10.4.x EGL_STREAM_DMA_NV Attribute + + The EGL_STREAM_DMA_NV attribute may be set when the stream is + created, and indicates whether the DMA channels have to be used to + transfer the buffer contents from producer to consumer. Legal + values are EGL_TRUE or EGL_FALSE. The default value is EGL_FALSE. + + A value of EGL_TRUE indicates that EGL has to use DMA channels to + transfer buffers from producer to consumer. + + If EGL_FALSE is specified, DMA channels will not be utilized for + buffer transfers. + + 3.10.4.x+1 EGL_STREAM_DMA_SERVER_NV Attribute + + The EGL_STREAM_DMA_SERVER_NV attribute is a platform dependent + identifier which may be set when the stream is created and it + indicates the server, which must be contacted to handle DMA + transfers, if that server is not local. Legal values, aside from + EGL_DONT_CARE, are determined by the implementation. The default + value is EGL_DONT_CARE. + +Issues + + 1. What happens when application requests DMA copy using + EGL_STREAM_DMA_NV attribute in eglCreateStreamKHR or + eglCreateStreamAttribKHR API, but the system does not support + access to DMA channels? + + RESOLVED: The functions return EGL_NO_STREAM_KHR and + EGL_BAD_ATTRIBUTE error is set. + + 2. What happens when application requests DMA copy using + EGL_STREAM_DMA_NV attribute in eglCreateStreamKHR or + eglCreateStreamAttribKHR API, and the system supports DMA + channels, but currently none of the channels are available for + use? + + RESOLVED: The functions return EGL_NO_STREAM_KHR and + EGL_BAD_ATTRIBUTE error is set. + +Revision History + + #1 (April 15, 2019) Santanu Thangaraj + - Initial version |