mesa: Enable open-source ARM GPU drivers.

This commit enables the following GPU drivers for these ARM SoCs:
 Etnaviv: Freescale/NXP i.MX (Librem 5)
 Freedreno: Qualcomm Snapdragon (Windows 10 ARM Laptops)
 Lima: Samsung Exynos, Allwinner (Pinephone)
 Panfrost: Rockchip (Pinebook Pro, ARM Chromebooks)
 V3D: Broadcom (Raspberry Pi 4)
This commit is contained in:
travankor 2019-12-22 18:54:02 -07:00 committed by Juan RP
parent 2266f8b7ed
commit 1d88a846b1
7 changed files with 76 additions and 5 deletions

1
srcpkgs/mesa-etnaviv-dri Symbolic link
View file

@ -0,0 +1 @@
mesa

1
srcpkgs/mesa-freedreno-dri Symbolic link
View file

@ -0,0 +1 @@
mesa

1
srcpkgs/mesa-kmsro-dri Symbolic link
View file

@ -0,0 +1 @@
mesa

1
srcpkgs/mesa-lima-dri Symbolic link
View file

@ -0,0 +1 @@
mesa

1
srcpkgs/mesa-panfrost-dri Symbolic link
View file

@ -0,0 +1 @@
mesa

1
srcpkgs/mesa-v3d-dri Symbolic link
View file

@ -0,0 +1 @@
mesa

View file

@ -67,17 +67,18 @@ ppc*)
subpackages+=" mesa-opencl mesa-vulkan-overlay-layer" subpackages+=" mesa-opencl mesa-vulkan-overlay-layer"
;; ;;
aarch64*) aarch64*)
configure_args+=" -Dgallium-drivers=nouveau,tegra,swrast,vc4" # Enable all ARM drivers
configure_args+=" -Dgallium-drivers=etnaviv,freedreno,kmsro,lima,panfrost,nouveau,swrast,tegra,v3d,vc4"
configure_args+=" -Dvulkan-drivers= -Ddri-drivers=" configure_args+=" -Dvulkan-drivers= -Ddri-drivers="
configure_args+=" -Dgallium-xa=false -Ddri3=true" configure_args+=" -Dgallium-xa=false -Ddri3=true"
subpackages+=" mesa-tegra-dri mesa-nouveau-dri mesa-vc4-dri" subpackages+=" mesa-kmsro-dri mesa-tegra-dri mesa-nouveau-dri mesa-v3d-dri mesa-vc4-dri"
subpackages+=" mesa-etnaviv-dri mesa-freedreno-dri mesa-lima-dri mesa-panfrost-dri"
;; ;;
armv7l*) armv7l*)
# Enable Videocore IV and swrast for RaspberryPi configure_args+=" -Dgallium-drivers=etnaviv,freedreno,kmsro,lima,panfrost,swrast,vc4"
configure_args+=" -Dgallium-drivers=swrast,vc4"
configure_args+=" -Dvulkan-drivers= -Ddri-drivers= -Dgallium-xvmc=false" configure_args+=" -Dvulkan-drivers= -Ddri-drivers= -Dgallium-xvmc=false"
configure_args+=" -Dgallium-xa=false -Dgallium-vdpau=false -Dgallium-va=false" configure_args+=" -Dgallium-xa=false -Dgallium-vdpau=false -Dgallium-va=false"
subpackages+=" mesa-vc4-dri" subpackages+=" mesa-etnaviv-dri mesa-freedreno-dri mesa-kmsro-dri mesa-lima-dri mesa-panfrost-dri mesa-vc4-dri"
;; ;;
*) *)
# Enable swrast driver. # Enable swrast driver.
@ -196,6 +197,23 @@ mesa-ati-dri_package() {
} }
} }
mesa-etnaviv-dri_package() {
short_desc="Mesa DRI drivers for Vivante GPUs"
depends="mesa-${verison}_${revision}"
pkg_install() {
vmove "usr/lib/xorg/modules/drivers/etnaviv*"
}
}
mesa-freedreno-dri_package() {
short_desc="Mesa DRI drivers for Adreno GPUs"
depends="mesa-${verison}_${revision}"
pkg_install() {
vmove "usr/lib/xorg/modules/drivers/msm*"
vmove "usr/lib/xorg/modules/drivers/kgsl*"
}
}
mesa-intel-dri_package() { mesa-intel-dri_package() {
short_desc="Mesa DRI drivers for Intel GPUs" short_desc="Mesa DRI drivers for Intel GPUs"
depends="mesa-${version}_${revision}" depends="mesa-${version}_${revision}"
@ -207,6 +225,37 @@ mesa-intel-dri_package() {
} }
} }
mesa-kmsro-dri_package() {
short_desc="KMS Render-only Mesa DRI drivers"
depends="mesa-${version}_${revision}"
pkg_install() {
vmove "usr/lib/xorg/modules/drivers/armada*"
vmove "usr/lib/xorg/modules/drivers/exynos*"
vmove "usr/lib/xorg/modules/drivers/hx8357d*"
vmove "usr/lib/xorg/modules/drivers/ili9225*"
vmove "usr/lib/xorg/modules/drivers/ili9341*"
vmove "usr/lib/xorg/modules/drivers/imx*"
vmove "usr/lib/xorg/modules/drivers/meson*"
vmove "usr/lib/xorg/modules/drivers/mi0283qt*"
vmove "usr/lib/xorg/modules/drivers/mxsfb*"
vmove "usr/lib/xorg/modules/drivers/pl111*"
vmove "usr/lib/xorg/modules/drivers/repaper*"
vmove "usr/lib/xorg/modules/drivers/rockchip*"
vmove "usr/lib/xorg/modules/drivers/st7586*"
vmove "usr/lib/xorg/modules/drivers/st7735r*"
vmove "usr/lib/xorg/modules/drivers/stm*"
vmove "usr/lib/xorg/modules/drivers/sun4i*"
}
}
mesa-lima-dri_package() {
short_desc="Mesa DRI drivers for ARM Mali GPUs (Utgard)"
depends="mesa-${verison}_${revision}"
pkg_install() {
vmove "usr/lib/xorg/modules/drivers/lima*"
}
}
mesa-nouveau-dri_package() { mesa-nouveau-dri_package() {
short_desc="Mesa DRI drivers for NVIDIA GPUs (nouveau dri)" short_desc="Mesa DRI drivers for NVIDIA GPUs (nouveau dri)"
depends="mesa-${version}_${revision}" depends="mesa-${version}_${revision}"
@ -222,6 +271,14 @@ mesa-nouveau-dri_package() {
} }
} }
mesa-panfrost-dri_package() {
short_desc="Mesa DRI drivers for ARM Mali GPUs (Midgard/Bifrost)"
depends="mesa-${verison}_${revision}"
pkg_install() {
vmove "usr/lib/xorg/modules/drivers/panfrost*"
}
}
mesa-vmwgfx-dri_package() { mesa-vmwgfx-dri_package() {
short_desc="Mesa DRI drivers for VMware" short_desc="Mesa DRI drivers for VMware"
depends="mesa-${version}_${revision}" depends="mesa-${version}_${revision}"
@ -231,6 +288,14 @@ mesa-vmwgfx-dri_package() {
} }
} }
mesa-v3d-dri_package() {
short_desc="Mesa DRI drivers for Videocore VI GPU"
depends="mesa-${verison}_${revision}"
pkg_install() {
vmove "usr/lib/xorg/modules/drivers/v3d*"
}
}
mesa-vc4-dri_package() { mesa-vc4-dri_package() {
short_desc="Mesa DRI drivers for Videocore IV GPU" short_desc="Mesa DRI drivers for Videocore IV GPU"
depends="mesa-${version}_${revision}" depends="mesa-${version}_${revision}"