diff options
author | Amit Pundir <amit.pundir@linaro.org> | 2024-04-04 01:31:11 +0530 |
---|---|---|
committer | Amit Pundir <amit.pundir@linaro.org> | 2024-04-05 16:41:54 +0000 |
commit | e4d2a6165f94cf2b061fe7455705dd4146bee740 (patch) | |
tree | 61269c16463c3f6d17037ae55d6d9de1f22e414b | |
parent | 6fd947effdab0a982342d702d7a58fa9f699a690 (diff) | |
download | dragonboard-e4d2a6165f94cf2b061fe7455705dd4146bee740.tar.gz |
sm8x50: Add Mesa (zink+turnip) support
Add Mesa support in sm8x50-userdebug device config but do
not enable it yet, until a740* Adreno binaries land in
linux-firmware project. TARGET_USES_SWR still defaults to
"true" i.e. we boot with s/w rendering by default.
SM8550-HDK uses Zink Gallium and Freedreno/Turnip Vulkan
driver to boot with h/w accelerated Mesa graphics.
Turnip Vulkan driver doesn't have Android Hardware Buffer
support implemented yet, so setting HWUI renderer to SkiaGL.
This pending Mesa MR fixes an AOSP breakage upstream
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28579
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
Change-Id: I1e2462b8f2dc848bc31a268aa1de405248cf16e5
-rw-r--r-- | shared/graphics/mesa/BoardConfig.mk | 2 | ||||
-rw-r--r-- | sm8x50/BoardConfig.mk | 4 | ||||
-rw-r--r-- | sm8x50/init.environ.rc | 3 | ||||
-rw-r--r-- | sm8x50/sm8x50.mk | 13 |
4 files changed, 18 insertions, 4 deletions
diff --git a/shared/graphics/mesa/BoardConfig.mk b/shared/graphics/mesa/BoardConfig.mk index 8836060..e05a372 100644 --- a/shared/graphics/mesa/BoardConfig.mk +++ b/shared/graphics/mesa/BoardConfig.mk @@ -17,7 +17,7 @@ BOARD_GPU_DRIVERS := freedreno ifeq ($(TARGET_BUILD_MESA),true) BOARD_MESA3D_USES_MESON_BUILD := true -BOARD_MESA3D_GALLIUM_DRIVERS := freedreno +BOARD_MESA3D_GALLIUM_DRIVERS := freedreno zink BOARD_MESA3D_VULKAN_DRIVERS := freedreno else BOARD_USE_CUSTOMIZED_MESA := true diff --git a/sm8x50/BoardConfig.mk b/sm8x50/BoardConfig.mk index 9015b1c..4995b75 100644 --- a/sm8x50/BoardConfig.mk +++ b/sm8x50/BoardConfig.mk @@ -48,5 +48,9 @@ BOARD_SEPOLICY_DIRS += device/linaro/dragonboard/shared/utils/dlkm_loader/sepoli # Graphics include device/linaro/dragonboard/shared/graphics/drm_hwcomposer/BoardConfig.mk +ifeq ($(TARGET_USES_SWR), true) BOARD_SEPOLICY_DIRS += device/linaro/dragonboard/shared/graphics/swangle/sepolicy +else +include device/linaro/dragonboard/shared/graphics/mesa/BoardConfig.mk +endif BOARD_SEPOLICY_DIRS += device/linaro/dragonboard/shared/graphics/minigbm_msm/sepolicy diff --git a/sm8x50/init.environ.rc b/sm8x50/init.environ.rc new file mode 100644 index 0000000..bd44494 --- /dev/null +++ b/sm8x50/init.environ.rc @@ -0,0 +1,3 @@ +# set up the global environment +on early-init + export MESA_LOADER_DRIVER_OVERRIDE zink diff --git a/sm8x50/sm8x50.mk b/sm8x50/sm8x50.mk index 79d5441..55f8476 100644 --- a/sm8x50/sm8x50.mk +++ b/sm8x50/sm8x50.mk @@ -2,10 +2,17 @@ $(call inherit-product, device/linaro/dragonboard/full.mk) $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit_only.mk) $(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk) -# Target boots with software rendering -TARGET_USES_SWR := true +# Target boots with software rendering by default +TARGET_USES_SWR ?= true $(call inherit-product, device/linaro/dragonboard/shared/graphics/drm_hwcomposer/device.mk) -$(call inherit-product, device/linaro/dragonboard/shared/graphics/swangle/device.mk) +ifeq ($(TARGET_USES_SWR), true) + $(call inherit-product, device/linaro/dragonboard/shared/graphics/swangle/device.mk) +else + $(call inherit-product, device/linaro/dragonboard/shared/graphics/mesa/device.mk) + TARGET_USES_VULKAN := true + PRODUCT_VENDOR_PROPERTIES += debug.hwui.renderer=skiagl + PRODUCT_COPY_FILES += $(LOCAL_PATH)/init.environ.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.environ.rc +endif $(call inherit-product, device/linaro/dragonboard/shared/graphics/minigbm_msm/device.mk) $(call inherit-product, device/linaro/dragonboard/sm8x50/device.mk) |