mirror of
https://github.com/archr-linux/Arch-R.git
synced 2026-03-31 14:41:55 -07:00
rk3566: vulkan sorta'
This commit is contained in:
@@ -48,6 +48,12 @@
|
||||
# For maximum cross compatbility
|
||||
PREFER_GLES="yes"
|
||||
|
||||
# VULKAN_SUPPORT
|
||||
VULKAN_SUPPORT="yes"
|
||||
|
||||
# Vulkan implementation to use (vulkan-loader / no)
|
||||
VULKAN="vulkan-loader"
|
||||
|
||||
# Displayserver to use (wl / no)
|
||||
DISPLAYSERVER="wl"
|
||||
|
||||
@@ -69,7 +75,7 @@
|
||||
FIRMWARE=""
|
||||
|
||||
# Additional packages to install
|
||||
ADDITIONAL_PACKAGES="libmali"
|
||||
ADDITIONAL_PACKAGES="libmali libmali-vulkan"
|
||||
ADDITIONAL_PACKAGES_32BIT="libmali"
|
||||
|
||||
# Debug tty path
|
||||
|
||||
@@ -2,23 +2,46 @@
|
||||
# Copyright (C) 2024-present ROCKNIX (https://github.com/ROCKNIX)
|
||||
|
||||
PKG_NAME="libmali-vulkan"
|
||||
PKG_VERSION="11759f18e195e89300bcfeb5ada0d977a7851151"
|
||||
PKG_LICENSE="mali_driver"
|
||||
PKG_ARCH="arm aarch64"
|
||||
PKG_URL="https://github.com/r3claimer/packages/raw/${PKG_VERSION}/g610-vulkan-mali.tar.gz"
|
||||
PKG_SOURCE_NAME="g610-vulkan-mali.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain mesa vulkan-tools vulkan-headers libmali vulkan-wsi-layer"
|
||||
PKG_TOOLCHAIN="manual"
|
||||
PKG_LONGDESC="Vulkan Mali drivers for RK3588 soc"
|
||||
|
||||
case ${DEVICE} in
|
||||
RK3588)
|
||||
PKG_VERSION="11759f18e195e89300bcfeb5ada0d977a7851151"
|
||||
PKG_SOURCE_NAME="g610-vulkan-mali.tar.gz"
|
||||
FILENAME="libmali-valhall-g610-g6p0-wayland-gbm-vulkan.so"
|
||||
# This is some weird default? I didn't want to change behavior of rk3588
|
||||
APIVER="1.0.5"
|
||||
PKG_URL="https://github.com/r3claimer/packages/raw/${PKG_VERSION}/g610-vulkan-mali.tar.gz"
|
||||
;;
|
||||
RK3566)
|
||||
PKG_VERSION="rk3576"
|
||||
PKG_SOURCE_NAME="g52-vulkan-mali.tar.gz"
|
||||
FILENAME="libmali-vulkan-g52.so"
|
||||
APIVER="1.2.207"
|
||||
PKG_URL="https://github.com/sydarn/libmali/releases/download/${PKG_VERSION}/libmali.so.1.9.0.zip"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Need a custom unpack() as --strip-components=1 in extract script strips everything
|
||||
unpack() {
|
||||
mkdir -p ${PKG_BUILD}
|
||||
tar -xf ${SOURCES}/${PKG_NAME}/${PKG_SOURCE_NAME} -C ${PKG_BUILD}
|
||||
mkdir -p ${PKG_BUILD}
|
||||
case ${DEVICE} in
|
||||
RK3588)
|
||||
tar -xf ${SOURCES}/${PKG_NAME}/${PKG_SOURCE_NAME} -C ${PKG_BUILD}
|
||||
;;
|
||||
RK3566)
|
||||
unzip -j ${SOURCES}/${PKG_NAME}/${PKG_SOURCE_NAME} libmali.so.1.9.0 -d ${PKG_BUILD}
|
||||
mv ${PKG_BUILD}/libmali.so.1.9.0 ${PKG_BUILD}/${FILENAME}
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
make_target() {
|
||||
:
|
||||
sed -i "s~@APIVER@~${APIVER}~g" ${PKG_BUILD}/mali.json
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
@@ -26,9 +49,9 @@ makeinstall_target() {
|
||||
mkdir -p ${INSTALL}/usr/share/vulkan/implicit_layer.d
|
||||
mkdir -p ${INSTALL}/usr/share/vulkan/icd.d
|
||||
|
||||
cp -r ${PKG_BUILD}/libmali-valhall-g610-g6p0-wayland-gbm-vulkan.so ${INSTALL}/usr/lib/
|
||||
cp ${PKG_BUILD}/${FILENAME} ${INSTALL}/usr/lib/
|
||||
cp -r ${PKG_BUILD}/mali.json ${INSTALL}/usr/share/vulkan/icd.d
|
||||
|
||||
ln -sfv /usr/lib/libmali-valhall-g610-g6p0-wayland-gbm-vulkan.so ${INSTALL}/usr/lib/libMaliVulkan.so.1
|
||||
ln -sfv /usr/lib/${FILENAME} ${INSTALL}/usr/lib/libMaliVulkan.so.1
|
||||
ln -sfv /usr/lib/libMaliVulkan.so.1 ${INSTALL}/usr/lib/libMaliVulkan.so
|
||||
}
|
||||
|
||||
@@ -2,6 +2,6 @@
|
||||
"file_format_version" : "1.0.0",
|
||||
"ICD" : {
|
||||
"library_path" : "/usr/lib/libMaliVulkan.so.1",
|
||||
"api_version" : "1.0.5"
|
||||
"api_version" : "@APIVER@"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,5 +6,9 @@
|
||||
### Set the default device configuration
|
||||
cat <<EOF >/storage/.config/profile.d/090-ui_service
|
||||
UI_SERVICE="sway.service essway.service"
|
||||
if [ "$(gpudriver)" = "libmali" ]; then
|
||||
MALI_WAYLAND_AFBC=0
|
||||
# libmali has no working Xorg
|
||||
unset DISPLAY
|
||||
fi
|
||||
EOF
|
||||
|
||||
Reference in New Issue
Block a user