summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-01-03Remove useless & unsafe unlock/lock codeaccepted/tizen/unified/x/20240226.135043accepted/tizen/unified/riscv/20240108.035927accepted/tizen/unified/20240226.134013accepted/tizen/unified/20240105.165031accepted/tizen_unified_riscvjinbong, Lee1-8/+0
- there is no blocking function in tizen_window_enqueue_buffer_with_damage - So there is no blocking to other EGL calls - In additionally, it can cause some broken situation in multi-threaded egl api call, - because of display's Mutex protection is not working during unlocked time. Change-Id: Ib683a8478b5ba1a8f855f675d70407e5b34bd26c
2024-01-03Fix typo.jinbong, Lee1-1/+1
- this function is needed call mutex_lock after calling tpl_surface_enqueue_buffer_with_damage_and_sync() - but a typo is occurred when code update (commit ID : c922b95f3be7dca862631337993a098976672167) Change-Id: I8e60cb4e7473753bb1fb16e9429466d3c9727028
2024-01-02Add default swap interval for initialize egl_dri2jinbong, Lee1-0/+3
- if there is no initial setup, then swap_interval function doesn't worked Change-Id: I3c47eb5e6b4ff79bd930fa119a70b714321995b4
2023-10-10remove gitlab stuffsaccepted/tizen/unified/20231010.162043SooChan Lim171-15227/+0
These are useless. Change-Id: I33405f08ccd0b3cccc5a737a099aa4adc2d011ce
2023-04-27Remove dependency on llvmaccepted/tizen/unified/riscv/20230720.024226accepted/tizen/unified/20230613.170807accepted/tizen/8.0/unified/20231005.095220Xuelian Bai1-12/+3
Disable llvmpipe, fallback to traditional swrast softpipe. Change-Id: I88346e043e27364d4981770bb88df12485070f65 Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-23Upgrade to mesa22.3.5accepted/tizen/unified/20230227.152721accepted/tizen/unified/20230227.042036Xuelian Bai8-28/+162
1. Add missing linux header files which is not included in glibc 2. Disable unsupported fence syn related features 3. Fixed crash in pipeline cases Change-Id: I64c9b3fcddf119ccc34ad393244f03ec96618942 Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Upgrade to mesa 22.1.7Xuelian Bai6-5/+20
1. Upgrade version number 2. Remove deprecated option 3. Fix some issues which caused by upgrade of mesa22.1.7 Change-Id: I86a928c9f5e272e209825e6a1b7a8bab30425ddf Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Fix to support EGL_SYNC_NATIVE_FENCE_ANDROID on TIZENJoonbum Ko5-62/+5
- EGL_SYNC_NATIVE_FENCE_TIZEN is not an official extension. So we need to support official extensions about egl sync. EGL_SYNC_NATIVE_FENCE_TIZEN will be deprecated. Change-Id: I53c4ea248d4ffaf0190619b861633eda450b44c4 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21fix the fd leakSooChan Lim1-3/+4
Change-Id: I67de75fc242ccba1dd41a08784241ced6b898de8
2023-02-21check the master_fdSooChan Lim1-13/+6
Display Server(Enlightenment) always use the master_fd, so if the process can get the master_fd from tbm_drm_helper_get_master_fd(), there is no need to get the authentication information. If the process does not have the master_fd, it needs to get the authentication from the master process which is the Display Server(Enlightenment). Change-Id: Ib18113468b133c5335f1f280760383e40977062a
2023-02-21Fix build issue of x86,i586 platformTianhao Ni1-4/+3
Change-Id: I15595c08ad24ed3d074705b426e5061aaa68ca03 Signed-off-by: Tianhao Ni <tianhao.ni@samsung.com>
2023-02-21Update spec fileTianhao Ni1-2/+6
Change-Id: I636231eeb420d8b191e58d0196b52171ed8a080b Signed-off-by: Tianhao Ni <tianhao.ni@samsung.com>
2023-02-211.Update spec fileTianhao Ni2-34/+52
2.Fix GLES31 eglSwapBuffers issue: - GLES31 CTS, TC will call eglSwapBuffers without any draw call, in this case tbm_surface will be NULL, but this should not be an error. Change-Id: I2eeda60f9581c40158ebec328024cb8f107dc646 Signed-off-by: Tianhao Ni <tianhao.ni@samsung.com>
2023-02-21Fix memory leak issueTianhao Ni0-0/+0
- close gem handle in mesa Change-Id: Ia6ce921fe54e32ff39335d12593e53f24382220d Signed-off-by: Tianhao Ni <tianhao.ni@samsung.com>
2023-02-21Upgrade to 21.2.3Xuelian Bai1-0/+4
Add llvm support, since SWR in new version needs llvm Change-Id: I196cb2a89e1080c952172590421bac3f61680a74 Signed-Off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Modify rpath option to support both armv7l and aarch64Joonbum Ko1-1/+3
Change-Id: Ib250916f0d8ca096107eb988626fa20e221bda3a Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Fix build issue.Joonbum Ko1-2/+1
Change-Id: I54df67efa3f14779bc278fd90d8403d096ef3a82 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Add rpath option with /hal/lib/Joonbum Ko1-1/+1
Change-Id: I8b31bd3a6db6bad405c9ddd272697a9cd12ad698 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Change the build prefix to /hal/Joonbum Ko1-22/+17
Change-Id: I9fbcdf30f04cc643ab9b4d674529d485aedff00e Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Disable build gbmChangyeon Lee1-1/+10
display server of tizen doesn't use gbm of mesa Change-Id: I039a08a2443ff6975245c9a896fc8cc5e6d3cf0c
2023-02-21Add a symbolic link of libvulkan_broadcom.so to /usr/libJoonbum Ko1-6/+8
Change-Id: I7728385f6f00dad1e0f262e057a022175672968c Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Change install path to /hal/libJoonbum Ko1-6/+18
Change-Id: I7b8a8c35cf8826476c7d7401d9948b37284b3128 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Support vkSetPrivateDataEXT/vkGetPrivateDataEXTXuelian Bai2-3/+3
mesa assume that all object is created inside mesa, but for VK_OBJECT_TYPE_SWAPCHAIN_KHR type, when we use vulkan_wsi_layer, the object structure is different from mesa object, so don't use mesa original object logic. Change-Id: Iaea7f18e094b1bd1d2c7a4f4e7ecea0b81d9866a Signed-Off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Enable vulkan support for mesa:Tianhao Ni1-0/+9
1. Set "USE_VULKAN" to 1 in spec file to enable vulkan support. Change-Id: I15e9c8a70f88ffc595d8f4a4ffb37d99e9bf214d Signed-off-by: Tianhao Ni <tianhao.ni@samsung.com>
2023-02-21Fix coredump for swrastxuelian.bai1-1/+32
When LIBGL_ALWAYS_SOFTWARE is enabled, coredump will happen because tizen_swap_buffers is called. Change-Id: Ifd048d4f2904064fddf9975aa9d86f6104ee8997 Signed-Off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Fix fence fd leak issue:nith19891-0/+7
- close fence fd when destroy context Change-Id: I4ec1fe1c2f7de3221802ea53c3e563471cd1a332 Signed-off-by: Tianhao Ni <tianhao.ni@samsung.com>
2023-02-21Use _udevrulesdir macroINSUN PYO1-3/+4
Location of udev rules file is changed from /etc/udev/rules.d to /usr/lib/udev/rules.d. So, use macro instead of real path. Change-Id: I5f7aada411f75206fabf86751ee8b6c2702c8b93
2023-02-21Add malloc_trim after builtin_builder release.Sungguk Na1-0/+2
Memory usage pattern of Built-in builder causes large size chunk pools by glibc pool management scheme. It is not useful ,but just unnecessary expense. so malloc_trim will help to reduce memory usage in this case. Change-Id: Ia63fb2050b468e55cd6b740b6a26585ed8e824a5 Signed-off-by: Sungguk Na <sungguk.na@samsung.com>
2023-02-21Fixed build error in aarch64.Joonbum Ko1-1/+1
Change-Id: I9a3e9b05fb07e03b3b3aaf39f4038bee39072189 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Reduced the calling tpl_surface_validate.Joonbum Ko1-4/+13
Change-Id: I92d33fba7cc073dc43cf6babc56778a600148b1a Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Added ttrace pointsJoonbum Ko1-0/+6
Change-Id: Idc9d301b560373d05bc427f171f5f48777deb78c Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Enabled the extension EGL_TIZEN_native_fence_sync.Joonbum Ko1-0/+1
Change-Id: Ic5be6f92a9ae5fd9db54c0491d5af9aa1838fd66 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21 Fixed missing server_wait_sync to be called.Joonbum Ko1-0/+3
- 'server_wait_sync' should be called from 'tizen_internal_wait_sync_for_release_fence' with release_fence fd received from dequeue, but the part was missing and fixed. Change-Id: Ic505b2937ef472528a7dae2db486f66cf0cb3626 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21fixed fd leak problem.Joonbum Ko1-7/+7
Change-Id: I59e0b8c42f280582b0c0c25b2963786a3a5404d1 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Implemented internal_wait_sync with release_fence_fd from tpl_surface.Joonbum Ko1-1/+66
Change-Id: Ieb1ddcee8f196e4e7138fc04bbb1fce2547bb92a Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21v3d: Implemented some functions to support eglWaitsync.Joonbum Ko4-1/+69
This is a test phase and can be fixed later. Change-Id: I9670fc27b331b7ac4ccbcb9f659d82f4ab78f058 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Implemented frontbuffer rendering mode.Joonbum Ko2-0/+17
Change-Id: I9b562a2b70eae9c1334fea0248906f84ba932e9f Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Add support for ttraceXuelian2-0/+14
1. Add ttrace link in spec file 2. Add header file for ttrace Change-Id: Ibfbc44f14f5e4b4e34d954249b2b399335134c4b Signed-Off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Add exception handle for multithread case.Xuelian2-0/+15
In some cases, main thread got some problem and exit with calling _eglAtExit, while another thread may still be running, that will cause assert in mesa. Change-Id: I6ee87abcb8c818e8a6808cd6098f4061bf7779b2 Signed-Off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Implement extension EGL_TIZEN_native_fence_syncJoonbum Ko13-14/+187
Merged old commit: Changed the initial setting of dri2_surface to use out_fence_fd. Change-Id: Ic51d7e2441927010b5889a2328199428c06d6351 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com> Fixed to use out_fence_fd to wait render done in twe_thread. Change-Id: I2bee255bcd5eb2697e49a5e8973c03ea65fe0e30 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com> v3d_screen: Fixed to support capability for NATIVE_FENCE_FD. Change-Id: I3335ee417d88e51a904114869fb5ac287622c526 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com> v3d_fence: Added function to get fence_fd from dri2. Change-Id: Ibd86254f2352a01cd993c61b0ab036c721005be0 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com> Added new extension EGL_TIZEN_native_fence_sync. EGL_TIZEN_native_fence_sync - Added EGL_SYNC_NATIVE_FENCE_TIZEN to distinguish EGLSyncKHR. - Added EGL_SYNC_NATIVE_FENCE_FD_TIZEN to get tizen's native fence fd in the sync attribute. - Added EGL_NO_NATIVE_FENCE_FD_TIZEN to indicate no native fence fd. - The eglDupNativeFenceFDTIZEN function has been added to get an fd to indicate when rendering is complete from the egl core. Change-Id: I6876572ec04b3d1616f6b7e5018dc6647685b536 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com> Implemented extension EGL_TIZEN_native_fence_sync. - this patch is only for the 'tizen' branch - Added new API to get native fence fd from driver. eglDupNativeFenceFDTIZEN() Change-Id: I21d46faedbfc46abd4dde03d36560bf941061d38 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com> Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Fix to use TPL_BACKEND_WAYLAND_THREAD.Joonbum Ko1-2/+9
- It is a valid backend only for wayland clients. Change-Id: Ifea5a5b5bd03074f267c4be02d325ed544840753 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2023-02-21Fix "close object **" error in vc4_bo_free on RPI3Xuelian1-12/+35
When running case dEQP-GLES2.functional.prerequisite.read_pixels for deqp-gles2, there will be an error "close object **". This error is caused by invalid fd, so we call tbm_drm_helper_get_auth_info in dri2_initialize_tizen. Change-Id: I959b404daa33c629ea72c38bfe7838e643eb603d Signed-Off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Fix resize issueXuelian Bai10-7/+172
Handle 1x1 issue for driimage When evas resize window after dequeue, then draw and swapbuffers, window is shown with old size until next makecurrent. Add validate_drawable function to check if resize happen each time makecurrent is called. For RPI4, render node is used, so buffer is allocated on another device, when 1x1 issue happen, we need to make sure if driimage size is changed, then created new if yes. Merged Commit: commit 2dc471b0e167693b81c24c9a3f89b985cb98249f Author: Zhaowei Yuan <zhaowei.yuan@samsung.com> - Check if stdraw is NULL before access Variable "stdraw" could be NULL in some case, check it before access. commit cc2dc99365906ea52b645be3bb10f50708d67e84 Author: Xuelian Bai <xuelian.bai@samsung.com> - Fix 1x1 issue of task-mgr Makecurrent is called just before resize callback is called, so we have to check if size is changed when drawcall. commit 670d77331c986a92bcf2459567ccd6dfc181bc66 Author: Xuelian Bai <xuelian.bai@samsung.com> - Fix resize issue Change-Id: Ieaebe72661a081d496ab6214c1c1526f7d16f19b Signed-Off-by: Xuelian Bai <xuelian.bai@samsung.com> - Handle 1x1 issue for driimage Change-Id: Id5a463a8db290ca5b80c130ebcdcb13c7786d70c Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Fix display issue on RPI4Xuelian Bai2-57/+51
RPI4 has seperated devices for display and render, so when init Tizen, we open /dev/dri/renderD128 and init v3d screen as renderonly. Merged commit: commit 50839c47736cbab7db6a9fb25ea0d983434c56cc Author: Zhaowei Yuan <zhaowei.yuan@samsung.com> - platform_tizen: free driver_name if initialization goes wrong Mallocated driver_name needs to be freed if following steps for initialization goes wrong, whether hw_accel if set or not Change-Id: Iffac62ac9717f7a4da589fd51f008968615a6321 Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21Add Pbuffer support on Tizen platformXuelian1-28/+68
Merged old commit: commit f409ef598976a4fd4f74ab4695478b1fc1651c06 Author: Zhaowei Yuan <zhaowei.yuan@samsung.com> 1. Add EGL_PBUFFER_BIT to surface_type if maskes match 2. Alloc local buffer when render buffer type is "FRONT_LEFT" which will be used by Pbuffer commit b0dec10d0d0fbc7f77623016f3d986122f718f8b Author: Xuelian Bai <xuelian.bai@samsung.com> Fix crash when query a pbuffer surface Pbuffer is not created via TPL, so when query a pbuffer surface, we can only call _eglQuerySurface instead of TPL APIs. Change-Id: Ib9990973f228374a95f60157a3b79069529a62b2 Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
2023-02-21EGL: Add support for westonZhaowei Yuan7-11/+181
Add support for wayland & drm platforms which are used by weston. Select EGL platform for weston by setting environment variable: export EGL_PLATFORM=wayland Modifications to mesa.spec: Add platforms wayland and drm which is needed by weston Enable gbm and pack it into RPM package Modifications to egl_dri2.h Since tizen, drm and wayland are all supported now, remove the duplicate definition of "color_buffers" and "back" for tizen to avoid from building error. Merged commit: commit 7c8922c1ead5875fda90106793c2fcfab2feb9f3 Author: Xiaowei Guan <xiaowei.guan@samsung.com> - fix weston build error and app launch error commit 6e7ce80fc524b78980d702549cf5bbc3a641e6ae Author: Xiaowei Guan <xiaowei.guan@samsung.com> - add wayland-egl code for platform_wayland commit 5cd0256faa43e376dcd5b5f2c2edd2515aff9c04 Author: Zhaowei Yuan <zhaowei.yuan@samsung.com> - EGL: Add support for weston Change-Id: I58272083b7d110d55800d8b9ad7e7c4f0a6f6077 Signed-off-by: Zhaowei Yuan <zhaowei.yuan@samsung.com>
2023-02-21docs: add Readme for Tizen and Readme RPI3 Setup for TizenMun, Gwan-gyeong3-0/+264
docs: Add Tizen Binary Download Instructions for RPI3 Readme_for_Tizen explains howto seting up build environment for tizen and geting build dependancy packages. Readme_RPI3_Setup_for_Tizen explains How to building RPI3 kernel for tizen and downloading to tizen platform binaries to rpi3. Add Tizen Binary Download Instructions for RPI3. it includes which packages should be installed with Mesa for tizen. Merged old commit a8f81f8f9382445f072c616e77ce0da72c028480 Change-Id: I44f8cdca5be8c8860d7f6a162889d534068168c1 Signed-off-by: Mun, Gwan-gyeong <kk.moon@samsung.com>
2023-02-21egl_dri2: Add support for TizenXuelian16-9/+2220
Re-implement _eglLog based on dlog Add build support for Tizen platform. Added missed dri2_fini_surface() at tizen_destroy_surface(). Add platform_tizen.c that supports _EGL_PLATFORM_TIZEN. It works with libtpl-egl (Tizen Porting Layer for egl), libtbm(Tizen Buffer Manager) where back buffers of windows are backed by GEM objects. In Tizen a native window has a queue (tbm_surface_queue) of back buffers allocated by the WL_TBM(wayland client case, WL_TBM is abbreviation of wayland-tbm protocol) or gbm ( tizen has implements gbm with tbm) or tbm through tbm_backend. For each frame, EGL needs to dequeue the next back buffer render to the buffer enqueue the buffer After enqueuing, the buffer is no longer valid to EGL. It supports DRI image loader extension, DRI dri2 loader extension and DRI swrast loader extension. It supports EGL_NATIVE_SURFACE_TIZEN target type for eglCreateImageKHR. (https://www.khronos.org/registry/EGL/extensions/TIZEN/EGL_TIZEN_image_native_surface.txt) BindWaylandDisplayWL / UnbindWaylandDisplayWL / QueryWaylandBufferWL are overloaded because tizen platform has its own instead of WL_DRM. Referenced documents: https://www.x.org/wiki/Events/XDC2016/Program/XDC2016_Tizen_Window_System_EGL_Vulkan.pdf https://wiki.tizen.org/wiki/3.0_Porting_Guide/Graphics_and_UI/libtpl-egl https://wiki.tizen.org/wiki/TBM egllog: add unlock call preventing the deadlock Implement dlog for mesa main _eglLog is a basic log function for mesa, re-implement it based on dlog here for debug purpose. Log level can be changed by setting environment variable EGL_LOG_LEVEL. Log API for mesa main module are all implemented in file src/mesa/main/error.c, re-implement them based on dlog for debug convenience add configuration of building and packaging for rpi3 ( vc4 gpu driver ) add udev rule files for rpi3 (vc4 drm device) Mered old commit: commit f5205524bf20b63c2efe20e99429c9d55543b711 Author: Zhaowei Yuan <zhaowei.yuan@samsung.com> Date: Mon May 6 13:52:32 2019 +0800 commit 704bb72470589ede7246af8c6b0a9210df42f1c7 Author: Xuelian <xuelian.bai@samsung.com> Date: Wed Nov 20 19:08:41 2019 +0800 commit 247adc92138ad456f5db39acfe5be69748973df3 Author: Joonbum Ko <joonbum.ko@samsung.com> Date: Wed Apr 29 20:01:56 2020 +0900 Change-Id: I83348c1cff5f0f59f79bc3c016623adf6fbba32b Signed-off-by: Xuelian <xuelian.bai@samsung.com>
2023-02-08VERSION: bump for 22.3.5upstream/22.3.5Eric Engestrom1-1/+1
2023-02-08docs: add release notes for 22.3.5Eric Engestrom2-0/+195