No description
Find a file
Lina Versace 513713fa35 i915: Choose TILE_4 vs TILE_Y at runtime
For all current ChromeOS boards, MTL and older, this patch should change
no behavior. It's just a refactor.

Do not choose at buildtime based on macro definitions. Decisions about
scanout-capable modifiers should be decided at runtime based on chipset
info.

We can safely delete the #ifdef blocks for I915_SCANOUT_4_TILED and
I915_SCANOUT_Y_TILED without changing any behavior. They were controlled
by the ebuild snippet below, and the USE flag is set if and only if
chipset >= MTL.

        if use intel_drm_tile4 ; then
                append-cppflags -DI915_SCANOUT_4_TILED
        else
                append-cppflags -DI915_SCANOUT_Y_TILED
        fi

I tested the patch on rex (MTL) and brya (ADL), which pre-patch took
different #ifdef paths.  Before and after the patch, On MTL, I confirmed
that fullscreen video from https://crosvideo.appspot.com/?codec=h264 was
promoted to a scanout plane with the expected pixel format and modifier:
I915_FORMAT_MOD_4_TILED + DRM_FORMAT_NV12. On ADL, I confirmed the same
for I915_FORMAT_MOD_Y_TILED + DRM_FORMAT_NV12. I confirmed by inspecting
/sys/kernel/debug/dri/0/state during video playback.

BUG=b:349135555
TEST=brya, rex. Confirm fullscreen h264 video gets promoted to scanout
  plane with correct pixel format and modifier. See commit message.

Upstream-Change-Id: I1c5155548287869279fec3aa0b02e057acc788fa
Upstream-Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/minigbm/+/6082999
Merged-In: I8643bba907f1f6f7610e6c9cddcbad597a74f270
Change-Id: I0e9f6d1758ea6a1bf189808d50bd633f52dc4e62
2024-12-19 10:49:06 -08:00
cros_gralloc Revert "Revert "UPSTREAM: cros_gralloc: Avoid using masks in han..." 2024-10-16 19:19:47 +00:00
external Add format filtering for virgl gfxstream 2024-08-01 15:42:33 +00:00
rust minigbm: add bindgen-generated Rust bindings 2024-03-18 18:48:46 +00:00
.clang-format minigbm: add clang-format and presubmit hooks 2017-03-31 10:40:27 -07:00
amdgpu.c Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00
Android.bp Add minigbm helper to libgbm 2024-09-05 17:12:52 +00:00
backend_mock.c Revert^2 "Merge upstream-main into main" 2024-07-03 18:21:13 +00:00
common.mk Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00
DIR_METADATA DIR_METADATA: Add V2 Test Plans. 2022-11-30 01:25:57 +00:00
dri.c Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00
dri.h Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00
drv.c Revert^2 "Merge upstream-main into main" 2024-07-03 18:21:13 +00:00
drv.h Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00
drv_array_helpers.c minigbm: refactor driver helpers 2021-10-01 18:35:11 +00:00
drv_array_helpers.h minigbm: refactor driver helpers 2021-10-01 18:35:11 +00:00
drv_helpers.c Revert^2 "Merge upstream-main into main" 2024-07-03 18:21:13 +00:00
drv_helpers.h Error when attempting to lock buffer alloc'd without CPU_ usage 2024-08-02 08:18:36 -07:00
drv_priv.h minigbm: Add an API to return cache attributes 2024-02-01 17:40:19 +00:00
dumb_driver.c minigbm: Add more dumb drivers 2022-12-07 14:36:24 +00:00
gbm.c minigbm: add gbm_{bo,surface}_create_with_modifiers2 2024-03-12 11:19:37 +00:00
gbm.h Revert^2 "Merge upstream-main into main" 2024-07-03 18:21:13 +00:00
gbm_helpers.c minigbm: passthrough SENSOR_DIRECT_DATA via gbm frontend 2022-07-26 23:41:35 +00:00
gbm_helpers.h minigbm: standardize naming of buffer creation flags 2017-10-02 17:27:17 -07:00
gbm_priv.h minigbm: add clang-format and presubmit hooks 2017-03-31 10:40:27 -07:00
gbm_unittest.cc Revert^2 "Merge upstream-main into main" 2024-07-03 18:21:13 +00:00
i915.c i915: Choose TILE_4 vs TILE_Y at runtime 2024-12-19 10:49:06 -08:00
LICENSE minigbm: Add a LICENSE file 2017-04-21 21:57:32 -07:00
Makefile Revert^2 "Merge upstream-main into main" 2024-07-03 18:21:13 +00:00
mediatek.c Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00
METADATA Edit METADATA file 2024-03-12 17:54:01 +00:00
minigbm_helpers.c minigbm: clean up legacy gbm_get_default_device_fd usage 2023-03-09 05:06:53 +00:00
minigbm_helpers.h minigbm: clean up legacy gbm_get_default_device_fd usage 2023-03-09 05:06:53 +00:00
MODULE_LICENSE_BSD Add OWNERS and METADATA. 2018-06-25 14:40:05 -07:00
msm.c Revert^2 "Merge upstream-main into main" 2024-07-03 18:21:13 +00:00
OWNERS Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00
OWNERS.android Merge 'aosp/upstream-master' into 'aosp/master' 2020-05-18 12:11:50 -07:00
PRESUBMIT.cfg minigbm: fix typo in PRESUBMIT.cfg 2017-05-20 03:55:21 -07:00
presubmit.sh minigbm: i915: use local i915 drm header 2020-11-25 22:35:14 +00:00
rockchip.c minigbm: clean up bo.handles 2023-04-09 18:57:40 +00:00
testrunner.cc minigbm: add unit test for minigbm public apis 2024-01-30 20:59:57 +00:00
util.h Revert^2 "Merge upstream-main into main" 2024-07-03 18:21:13 +00:00
vc4.c minigbm: clean up bo.handles 2023-04-09 18:57:40 +00:00
virtgpu.c drv/virtgpu: add log level for logging 2022-07-14 08:48:27 +00:00
virtgpu.h Add format filtering for virgl gfxstream 2024-08-01 15:42:33 +00:00
virtgpu_cross_domain.c Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00
virtgpu_virgl.c Revert^2 "Merge remote-tracking branch 'aosp/upstream-main'" 2024-10-16 19:19:47 +00:00