Port tegra detiling code to minigbm |
||||
Issue descriptionautotest has code to detile tegra buffers: https://chromium-review.googlesource.com/397941 We should port this code to minigbm's map()/unmap() functions
,
Dec 13 2016
Why does gbm need to tile and detile buffers?
,
Dec 14 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/05928ac241af9b685d23d5026ccbc1006bd5cac0 commit 05928ac241af9b685d23d5026ccbc1006bd5cac0 Author: Sean Paul <seanpaul@chromium.org> Date: Fri Jan 30 18:57:01 2015 BACKPORT: drm/tegra: gem: Return 64-bit offset for mmap(2) On 64-bit targets, tegra_gem_mmap() only returns a partial offset to userspace. As such, subsequent calls to mmap(2) may fail. Change the arguments to use a 64-bit offset to fix this. Signed-off-by: Sean Paul <seanpaul@chromium.org> Acked-by: Erik Faye-Lund <kusmabite@gmail.com> [treding@nvidia.com: tweak commit message] Signed-off-by: Thierry Reding <treding@nvidia.com> (cherry picked from commit bdf765071a8b573f7b1ba14c02881fa3e623825e) Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org> BUG= chromium:673570 TEST=gbm_bo_map(..) doesn't fail due differences between kernel uapi's tegra_drm.h and libdrm's tegra_drm.h Change-Id: Ibcd32b6350f86e5697aad2fac844f6907e3df51b Reviewed-on: https://chromium-review.googlesource.com/419662 Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org> Tested-by: Gurchetan Singh <gurchetansingh@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/05928ac241af9b685d23d5026ccbc1006bd5cac0/include/uapi/drm/tegra_drm.h
,
Dec 17 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/minigbm/+/5972eec261ea3f01dda53471e69ae7f2017bedf5 commit 5972eec261ea3f01dda53471e69ae7f2017bedf5 Author: Gurchetan Singh <gurchetansingh@chromium.org> Date: Fri Dec 16 23:51:46 2016 minigbm: tegra: align linear buffers to 64-byte boundaries Tegra20 and Tegra30 both required the buffer line stride to be aligned on 8 byte boundaries. Tegra114 and Tegra124 increased the alignment to 64 bytes. The kernel automatically does this for us for dumb buffers, but since the tegra gem create API doesn't return the stride, we'll have to do it here. BUG= chromium:673570 TEST=tiled_bo_test succeeds Change-Id: I2222f033813a31d3eed1a6794fbf044fba33eec0 Reviewed-on: https://chromium-review.googlesource.com/421278 Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org> Tested-by: Gurchetan Singh <gurchetansingh@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> Reviewed-by: Haixia Shi <hshi@chromium.org> [modify] https://crrev.com/5972eec261ea3f01dda53471e69ae7f2017bedf5/tegra.c
,
Dec 21 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/minigbm/+/44d1fe4264d4968cb8525f5e53f1fcd068dacbc2 commit 44d1fe4264d4968cb8525f5e53f1fcd068dacbc2 Author: Gurchetan Singh <gurchetansingh@chromium.org> Date: Wed Dec 14 16:51:28 2016 minigbm: tegra: add blocklinear detiling logic With CL:397941, hshi@ figured out how to detile blocklinear buffers for tegra. Let's add that logic to our tegra map()/unmap() functions. This can be useful for various tests. BUG= chromium:673570 TEST=tiled_bo_test draws ellipse texture on Tegra (there are artifacts due another bug though) Change-Id: I7c2e7222ba67457ffd3641ba42a775ac4a667ec8 Reviewed-on: https://chromium-review.googlesource.com/421279 Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org> Tested-by: Gurchetan Singh <gurchetansingh@chromium.org> Reviewed-by: Haixia Shi <hshi@chromium.org> [modify] https://crrev.com/44d1fe4264d4968cb8525f5e53f1fcd068dacbc2/drv.c [modify] https://crrev.com/44d1fe4264d4968cb8525f5e53f1fcd068dacbc2/drv_priv.h [modify] https://crrev.com/44d1fe4264d4968cb8525f5e53f1fcd068dacbc2/tegra.c
,
Apr 25 2017
,
Apr 25 2017
|
||||
►
Sign in to add a comment |
||||
Comment 1 by marc...@chromium.org
, Dec 13 2016Summary: Port tegra detiling code to minigbm (was: Port detiling code to minigbm)