# Supported extensions

Qualcomm Linux devices support the following extensions:

- OpenGL ES
- OpenCL

## EGL extensions

| EGL client extensions | GL extensions | GL extensions |
| --- | --- | --- |
| <ul class="simple"><br><li><p>EGL_EXT_client_extensions</p></li><br><li><p>EGL_KHR_client_get_all_proc_addresses</p></li><br><li><p>EGL_EXT_platform_base</p></li><br><li><p>EGL_KHR_platform_android</p></li><br><li><p>EGL_KHR_platform_wayland</p></li><br><li><p>EGL_KHR_platform_gbm</p></li><br><li><p>EGL_KHR_platform_x11</p></li><br><li><p>EGL_KHR_image</p></li><br><li><p>EGL_KHR_image_base</p></li><br><li><p>EGL_QCOM_create_image</p></li><br><li><p>EGL_KHR_lock_surface</p></li><br><li><p>EGL_KHR_lock_surface2</p></li><br><li><p>EGL_KHR_lock_surface3</p></li><br><li><p>EGL_KHR_gl_texture_2D_image</p></li><br><li><p>EGL_KHR_gl_texture_cubemap_image</p></li><br><li><p>EGL_KHR_gl_texture_3D_image</p></li><br><li><p>EGL_KHR_gl_renderbuffer_image</p></li><br></ul> | <ul class="simple"><br><li><p>GL_OES_EGL_image</p></li><br><li><p>GL_OES_EGL_image_external</p></li><br><li><p>GL_OES_EGL_sync GL_OES_vertex_half_float</p></li><br><li><p>GL_OES_framebuffer_object GL_OES_rgb8_rgba8</p></li><br><li><p>GL_OES_compressed_ETC1_RGB8_texture</p></li><br><li><p>GL_AMD_compressed_ATC_texture</p></li><br><li><p>GL_KHR_texture_compression_astc_ldr</p></li><br><li><p>GL_KHR_texture_compression_astc_hdr</p></li><br><li><p>GL_OES_texture_compression_astc</p></li><br><li><p>GL_EXT_texture_compression_s3tc</p></li><br><li><p>GL_EXT_texture_compression_s3tc_srgb</p></li><br><li><p>GL_EXT_texture_compression_rgtc</p></li><br><li><p>GL_EXT_texture_compression_bptc</p></li><br><li><p>GL_OES_texture_npot</p></li><br><li><p>GL_EXT_texture_filter_anisotropic</p></li><br><li><p>GL_EXT_texture_format_BGRA8888</p></li><br><li><p>GL_EXT_read_format_bgra</p></li><br></ul> | <ul class="simple"><br><li><p>GL_EXT_copy_image</p></li><br><li><p>GL_EXT_geometry_shader</p></li><br><li><p>GL_EXT_tessellation_shader</p></li><br><li><p>GL_OES_texture_stencil8</p></li><br><li><p>GL_EXT_shader_io_blocks</p></li><br><li><p>GL_OES_shader_image_atomic</p></li><br><li><p>GL_OES_sample_variables</p></li><br><li><p>GL_EXT_texture_border_clamp</p></li><br><li><p>GL_EXT_EGL_image_external_wrap_modes</p></li><br><li><p>GL_EXT_multisampled_render_to_texture</p></li><br><li><p>GL_EXT_multisampled_render_to_texture2</p></li><br><li><p>GL_OES_shader_multisample_interpolation</p></li><br><li><p>GL_EXT_texture_cube_map_array</p></li><br><li><p>GL_EXT_draw_buffers_indexed</p></li><br><li><p>GL_EXT_gpu_shader5</p></li><br><li><p>GL_EXT_robustness</p></li><br><li><p>GL_EXT_texture_buffer</p></li><br></ul> |
| <ul class="simple"><br><li><p>EGL_ANDROID_blob_cache</p></li><br><li><p>EGL_KHR_create_context</p></li><br><li><p>EGL_KHR_surfaceless_context</p></li><br><li><p>EGL_KHR_create_context_no_error</p></li><br><li><p>EGL_KHR_get_all_proc_addresses</p></li><br><li><p>EGL_QCOM_lock_image2</p></li><br><li><p>EGL_KHR_no_config_context</p></li><br><li><p>EGL_EXT_surface_SMPTE2086_metadata</p></li><br><li><p>EGL_EXT_image_dma_buf_import</p></li><br><li><p>EGL_EXT_image_dma_buf_import_modifiers</p></li><br><li><p>EGL_EXT_yuv_surface</p></li><br><li><p>EGL_IMG_context_priority</p></li><br><li><p>EGL_WL_bind_wayland_display</p></li><br><li><p>EGL_WL_create_wayland_buffer_from_image</p></li><br><li><p>EGL_ANDROID_native_fence_sync</p></li><br><li><p>EGL_EXT_create_context_robustness</p></li><br><li><p>EGL_KHR_fence_sync</p></li><br><li><p>EGL_KHR_wait_sync</p></li><br><li><p>EGL_KHR_mutable_render_buffer</p></li><br><li><p>EGL_KHR_partial_update</p></li><br><li><p>EGL_KHR_surfaceless_context</p></li><br></ul> | <ul class="simple"><br><li><p>GL_OES_texture_3D</p></li><br><li><p>GL_EXT_color_buffer_float</p></li><br><li><p>GL_EXT_color_buffer_half_float</p></li><br><li><p>GL_EXT_float_blend</p></li><br><li><p>GL_QCOM_alpha_test</p></li><br><li><p>GL_OES_depth24</p></li><br><li><p>GL_OES_packed_depth_stencil</p></li><br><li><p>GL_OES_depth_texture</p></li><br><li><p>GL_OES_depth_texture_cube_map</p></li><br><li><p>GL_EXT_sRGB</p></li><br><li><p>GL_OES_texture_float</p></li><br><li><p>GL_OES_texture_float_linear</p></li><br><li><p>GL_OES_texture_half_float</p></li><br><li><p>GL_OES_texture_half_float_linear</p></li><br><li><p>GL_EXT_texture_type_2_10_10_10_REV</p></li><br><li><p>GL_EXT_texture_sRGB_decode</p></li><br><li><p>GL_EXT_texture_compression_astc_decode_mode</p></li><br><li><p>GL_EXT_texture_mirror_clamp_to_edge</p></li><br><li><p>GL_EXT_texture_format_sRGB_override</p></li><br><li><p>GL_OES_element_index_uint</p></li><br></ul> | <ul class="simple"><br><li><p>GL_OES_sample_shading</p></li><br><li><p>GL_OES_get_program_binary</p></li><br><li><p>GL_EXT_debug_label</p></li><br><li><p>GL_KHR_blend_equation_advanced</p></li><br><li><p>GL_KHR_blend_equation_advanced_coherent</p></li><br><li><p>GL_QCOM_tiled_rendering</p></li><br><li><p>GL_ANDROID_extension_pack_es31a</p></li><br><li><p>GL_EXT_primitive_bounding_box</p></li><br><li><p>GL_OES_standard_derivatives</p></li><br><li><p>GL_OES_vertex_array_object</p></li><br><li><p>GL_EXT_disjoint_timer_query</p></li><br><li><p>GL_KHR_debug</p></li><br><li><p>GL_EXT_YUV_target</p></li><br><li><p>GL_EXT_sRGB_write_control</p></li><br><li><p>GL_EXT_texture_norm16</p></li><br><li><p>GL_EXT_discard_framebuffer</p></li><br><li><p>GL_OES_surfaceless_context</p></li><br><li><p>GL_OVR_multiview</p></li><br><li><p>GL_EXT_shader_framebuffer_fetch</p></li><br><li><p>GL_ARM_shader_framebuffer_fetch_depth_stencil</p></li><br><li><p>GL_OES_texture_storage_multisample_2d_array</p></li><br></ul> |

## OpenCL extensions

| <ul class="simple"><br><li><p>cl_khr_icd, cl_img_egl_image</p></li><br><li><p>cl_khr_3d_image_writes</p></li><br><li><p>cl_khr_byte_addressable_store</p></li><br><li><p>cl_khr_depth_images</p></li><br><li><p>cl_khr_egl_event</p></li><br><li><p>cl_khr_egl_image</p></li><br><li><p>cl_khr_fp16</p></li><br><li><p>cl_khr_gl_sharing</p></li><br><li><p>cl_khr_global_int32_base_atomics</p></li><br><li><p>cl_khr_global_int32_extended_atomics</p></li><br><li><p>cl_khr_image2d_from_buffer</p></li><br><li><p>cl_khr_local_int32_base_atomics</p></li><br></ul> | <ul class="simple"><br><li><p>cl_khr_local_int32_extended_atomics</p></li><br><li><p>cl_khr_mipmap_image</p></li><br><li><p>cl_khr_srgb_image_writes</p></li><br><li><p>cl_khr_subgroups</p></li><br><li><p>cl_qcom_accelerated_image_ops</p></li><br><li><p>cl_qcom_compressed_image</p></li><br><li><p>cl_qcom_compressed_yuv_image_read</p></li><br><li><p>cl_qcom_create_buffer_from_image</p></li><br><li><p>cl_qcom_dot_product8</p></li><br><li><p>cl_qcom_ext_host_ptr</p></li><br><li><p>cl_qcom_ext_host_ptr_iocoherent</p></li><br></ul> | <ul class="simple"><br><li><p>cl_qcom_extended_query_image_info</p></li><br><li><p>cl_qcom_extract_image_plane</p></li><br><li><p>cl_qcom_dmabuf_host_ptr</p></li><br><li><p>cl_qcom_other_image</p></li><br><li><p>cl_qcom_perf_hint</p></li><br><li><p>cl_qcom_priority_hint</p></li><br><li><p>cl_qcom_protected_context</p></li><br><li><p>cl_qcom_recordable_queues</p></li><br><li><p>cl_qcom_reqd_sub_group_size</p></li><br><li><p>cl_qcom_subgroup_shuffle</p></li><br><li><p>cl_qcom_vector_image_op</p></li><br></ul> |
| --- | --- | --- |

Last Published: Jul 27, 2025

Previous Topic
 
Debug graphics issues Next Topic

References