Skip to content

Commit c9d7536

Browse files
committed
update rpi4-fydeos to 14.0
1 parent 8e1071c commit c9d7536

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+18759
-728
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
# Copyright 2018 The Chromium OS Authors. All rights reserved.
2+
# Use of this source code is governed by a BSD-style license that can be
3+
# found in the LICENSE file.
4+
5+
EAPI=6
6+
7+
CROS_WORKON_COMMIT="227fed4a34b9e1fcd4b3c77f9115044e6220e28e"
8+
CROS_WORKON_TREE="1b4b66aace92c123597a3a80ebabae09b3852ea5"
9+
CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
10+
CROS_WORKON_LOCALNAME="mesa-freedreno"
11+
CROS_WORKON_EGIT_BRANCH="chromeos-freedreno"
12+
13+
inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
14+
15+
DESCRIPTION="OpenGL-like graphic library for Linux"
16+
HOMEPAGE="http://mesa3d.sourceforge.net/"
17+
18+
KEYWORDS="~*"
19+
20+
# Most files are MIT/X11.
21+
# Some files in src/glx are SGI-B-2.0.
22+
LICENSE="MIT SGI-B-2.0"
23+
SLOT="0"
24+
25+
IUSE="
26+
cheets
27+
cheets_user
28+
cheets_user_64
29+
debug
30+
vulkan
31+
android_vulkan_compute_0
32+
"
33+
34+
REQUIRED_USE="
35+
cheets
36+
android_vulkan_compute_0? ( vulkan )
37+
"
38+
39+
DEPEND="
40+
>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
41+
dev-libs/arc-libelf[${MULTILIB_USEDEP}]
42+
"
43+
44+
RDEPEND="${DEPEND}"
45+
46+
src_configure() {
47+
arc-build-select-clang
48+
49+
multilib-minimal_src_configure
50+
}
51+
52+
multilib_src_configure() {
53+
tc-getPROG PKG_CONFIG pkg-config
54+
55+
arc-build-create-cross-file
56+
57+
emesonargs+=(
58+
--prefix="${ARC_PREFIX}/vendor"
59+
--sysconfdir="/system/vendor/etc"
60+
-Ddri-search-path="/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri"
61+
-Dllvm=disabled
62+
-Ddri3=disabled
63+
-Dshader-cache=disabled
64+
-Dglx=disabled
65+
-Degl=enabled
66+
-Dgbm=disabled
67+
-Dgles1=enabled
68+
-Dgles2=enabled
69+
-Dshared-glapi=enabled
70+
-Ddri-drivers=
71+
-Dgallium-drivers="v3d"
72+
-Dgallium-vdpau=disabled
73+
-Dgallium-xa=disabled
74+
-Dplatforms=android
75+
-Dplatform-sdk-version="${ARC_PLATFORM_SDK_VERSION}"
76+
-Degl-lib-suffix=_mesa
77+
-Dgles-lib-suffix=_mesa
78+
--buildtype $(usex debug debug release)
79+
-Dvulkan-drivers=$(usex vulkan broadcom '')
80+
--cross-file="${ARC_CROSS_FILE}"
81+
)
82+
83+
meson_src_configure
84+
}
85+
86+
# The meson eclass exports src_compile but not multilib_src_compile. src_compile
87+
# gets overridden by multilib-minimal
88+
multilib_src_compile() {
89+
meson_src_compile
90+
}
91+
92+
multilib_src_install() {
93+
exeinto "${ARC_PREFIX}/vendor/$(get_libdir)"
94+
newexe "${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0" libglapi.so.0
95+
96+
exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/egl"
97+
newexe "${BUILD_DIR}/src/egl/libEGL_mesa.so" libEGL_mesa.so
98+
newexe "${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so" libGLESv1_CM_mesa.so
99+
newexe "${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so" libGLESv2_mesa.so
100+
101+
exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
102+
newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" v3d_dri.so
103+
dosym v3d_dri.so "${ARC_PREFIX}/vendor/$(get_libdir)/dri/vc4_dri.so"
104+
105+
if use vulkan; then
106+
exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw"
107+
newexe "${BUILD_DIR}/src/broadcom/vulkan/libvulkan_broadcom.so" vulkan.cheets.so
108+
fi
109+
}
110+
111+
multilib_src_install_all() {
112+
# For documentation on the feature set represented by each XML file
113+
# installed into /vendor/etc/permissions, see
114+
# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
115+
# For example XML files for each feature, see
116+
# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
117+
118+
# Install init files to advertise supported API versions.
119+
insinto "${ARC_PREFIX}/vendor/etc/init"
120+
doins "${FILESDIR}/gles31.rc"
121+
122+
# Install vulkan files
123+
if use vulkan; then
124+
einfo "Using android vulkan."
125+
insinto "${ARC_PREFIX}/vendor/etc/init"
126+
doins "${FILESDIR}/vulkan.rc"
127+
128+
insinto "${ARC_PREFIX}/vendor/etc/permissions"
129+
doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
130+
doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
131+
132+
if use android_vulkan_compute_0; then
133+
einfo "Using android vulkan_compute_0."
134+
insinto "${ARC_PREFIX}/vendor/etc/permissions"
135+
doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
136+
fi
137+
fi
138+
139+
# Install the dri header for arc-cros-gralloc
140+
insinto "${ARC_PREFIX}/vendor/include/GL"
141+
doins -r "${S}/include/GL/internal"
142+
143+
# Install permission file to declare opengles aep support.
144+
insinto "${ARC_PREFIX}/vendor/etc/permissions"
145+
doins "${FILESDIR}/android.hardware.opengles.aep.xml"
146+
}
147+
148+
PATCHES=( "${FILESDIR}/gles31/0001-limit-gles-version.patch" )

Diff for: baseboard-rpi3/media-libs/arc-mesa/arc-mesa-9999.ebuild

+41-10
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
EAPI=6
66

77
CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
8-
CROS_WORKON_LOCALNAME="mesa-freedreno"
8+
CROS_WORKON_LOCALNAME="mesa"
9+
CROS_WORKON_EGIT_BRANCH="chromeos-freedreno"
910

1011
inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
1112

@@ -24,17 +25,19 @@ IUSE="
2425
cheets_user
2526
cheets_user_64
2627
debug
28+
vulkan
29+
android_vulkan_compute_0
2730
"
2831

2932
REQUIRED_USE="
3033
cheets
34+
android_vulkan_compute_0? ( vulkan )
3135
"
3236

3337
DEPEND="
3438
>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
3539
dev-libs/arc-libelf[${MULTILIB_USEDEP}]
3640
"
37-
ARC_PLATFORM_SDK_VERSION=28
3841

3942
RDEPEND="${DEPEND}"
4043

@@ -46,32 +49,33 @@ src_configure() {
4649

4750
multilib_src_configure() {
4851
tc-getPROG PKG_CONFIG pkg-config
49-
50-
CPPFLAGS+=" -DANDROID_API_LEVEL=${ARC_PLATFORM_SDK_VERSION}"
52+
53+
arc-build-create-cross-file
5154

5255
emesonargs+=(
5356
--prefix="${ARC_PREFIX}/vendor"
5457
--sysconfdir="/system/vendor/etc"
5558
-Ddri-search-path="/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri"
5659
-Dllvm=disabled
5760
-Ddri3=disabled
58-
-Dshader-cache=enabled
61+
-Dshader-cache=disabled
5962
-Dglx=disabled
6063
-Degl=enabled
6164
-Dgbm=disabled
6265
-Dgles1=enabled
6366
-Dgles2=enabled
6467
-Dshared-glapi=enabled
6568
-Ddri-drivers=
66-
-Dgallium-drivers=freedreno
69+
-Dgallium-drivers="v3d"
6770
-Dgallium-vdpau=disabled
6871
-Dgallium-xa=disabled
6972
-Dplatforms=android
7073
-Dplatform-sdk-version="${ARC_PLATFORM_SDK_VERSION}"
7174
-Degl-lib-suffix=_mesa
7275
-Dgles-lib-suffix=_mesa
7376
--buildtype $(usex debug debug release)
74-
-Dvulkan-drivers=
77+
-Dvulkan-drivers=$(usex vulkan broadcom '')
78+
--cross-file="${ARC_CROSS_FILE}"
7579
)
7680

7781
meson_src_configure
@@ -93,8 +97,13 @@ multilib_src_install() {
9397
newexe "${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so" libGLESv2_mesa.so
9498

9599
exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
96-
newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" vc4_dri.so
97-
newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" v3d_dri.so
100+
newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" v3d_dri.so
101+
dosym v3d_dri.so "${ARC_PREFIX}"/vendor/$(get_libdir)/dri/vc4_dri.so
102+
103+
if use vulkan; then
104+
exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw"
105+
newexe "${BUILD_DIR}/src/broadcom/vulkan/libvulkan_broadcom.so" vulkan.cheets.so
106+
fi
98107
}
99108

100109
multilib_src_install_all() {
@@ -106,9 +115,31 @@ multilib_src_install_all() {
106115

107116
# Install init files to advertise supported API versions.
108117
insinto "${ARC_PREFIX}/vendor/etc/init"
109-
doins "${FILESDIR}/gles31.rc"
118+
#doins "${FILESDIR}/gles31.rc"
119+
doins ${FILESDIR}/gles31/init.gpu.rc
120+
121+
# Install vulkan files
122+
if use vulkan; then
123+
einfo "Using android vulkan."
124+
insinto "${ARC_PREFIX}/vendor/etc/init"
125+
doins "${FILESDIR}/vulkan.rc"
126+
127+
insinto "${ARC_PREFIX}/vendor/etc/permissions"
128+
doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
129+
doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
130+
131+
if use android_vulkan_compute_0; then
132+
einfo "Using android vulkan_compute_0."
133+
insinto "${ARC_PREFIX}/vendor/etc/permissions"
134+
doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
135+
fi
136+
fi
110137

111138
# Install the dri header for arc-cros-gralloc
112139
insinto "${ARC_PREFIX}/vendor/include/GL"
113140
doins -r "${S}/include/GL/internal"
141+
142+
# Install permission file to declare opengles aep support.
143+
insinto "${ARC_PREFIX}/vendor/etc/permissions"
144+
doins "${FILESDIR}/android.hardware.opengles.aep.xml"
114145
}

Diff for: baseboard-rpi3/media-libs/arc-mesa/files/gles32.rc

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Copyright 2017 The Chromium OS Authors. All rights reserved.
2+
# Use of this source code is governed by a BSD-style license that can be
3+
# found in the LICENSE file.
4+
5+
on early-init
6+
# Advertise opengles version 3.2.
7+
setprop ro.opengles.version 196610
8+
setprop ro.hardware.egl mesa
9+
setprop drm.gpu.vendor_name msm

Diff for: baseboard-rpi3/media-libs/mesa/mesa-21.2.0_pre-r45.ebuild

+1-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ src_configure() {
5252
-Dgles2=enabled
5353
-Dshared-glapi=enabled
5454
-Ddri-drivers=
55-
-Dgallium-drivers=vc4,v3d
55+
-Dgallium-drivers=vc4,v3d,kmsro
5656
-Dgallium-vdpau=disabled
5757
-Dgallium-xa=disabled
5858
-Dplatforms=

Diff for: baseboard-rpi3/media-sound/adhd/adhd-0.0.6-r2366.ebuild

+2
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,8 @@ src_install() {
130130
--dict "${S}/cras/src/fuzz/cras_hfp_slc.dict" \
131131
--comp "${fuzzer_component_id}"
132132
fi
133+
insinto /etc/init
134+
doins $FILESDIR/cras_monitor.conf
133135
}
134136

135137
pkg_preinst() {
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
diff --git a/cras/src/server/cras_alsa_card.c b/cras/src/server/cras_alsa_card.c
2+
index b0f944ab..890ace83 100644
3+
--- a/cras/src/server/cras_alsa_card.c
4+
+++ b/cras/src/server/cras_alsa_card.c
5+
@@ -103,11 +103,20 @@ struct cras_iodev *create_iodev_for_device(
6+
new_dev = calloc(1, sizeof(*new_dev));
7+
if (new_dev == NULL)
8+
return NULL;
9+
-
10+
+ syslog(LOG_ERR, "create pcm device for card:%s %s:%s:%s [%u]",
11+
+ alsa_card->name, card_name, dev_name, dev_id, device_index);
12+
/* Append device index to card namem, ex: 'hw:0', for the PCM name of
13+
* target iodev. */
14+
- snprintf(pcm_name, MAX_ALSA_PCM_NAME_LENGTH, "%s,%u", alsa_card->name,
15+
- device_index);
16+
+ if (!strncmp(card_name, "vc4-hdmi-0",10)){
17+
+ snprintf(pcm_name, MAX_ALSA_PCM_NAME_LENGTH, "%s,%u", "iec958:0",
18+
+ device_index);
19+
+ } else if (!strncmp(card_name, "vc4-hdmi-1",10)) {
20+
+ snprintf(pcm_name, MAX_ALSA_PCM_NAME_LENGTH, "%s,%u", "iec958:1",
21+
+ device_index);
22+
+ } else {
23+
+ snprintf(pcm_name, MAX_ALSA_PCM_NAME_LENGTH, "%s,%u", alsa_card->name,
24+
+ device_index);
25+
+ }
26+
27+
new_dev->direction = direction;
28+
new_dev->iodev =

Diff for: baseboard-rpi3/profiles/base/package.mask

+1
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@ media-libs/minigbm::chromiumos
33
virtual/chromeos-config-bsp::chromiumos
44
media-libs/mesa::chromiumos
55
media-libs/arc-mesa::arc-plus
6+
=media-libs/arc-mesai-9999::arc-plus
67
media-libs/arc-cros-gralloc::chromiumos
78
media-libs/libcamera::chromiumos

Diff for: baseboard-rpi3/profiles/base/package.use

+1
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@ media-libs/piglit waffle
44
media-libs/waffle gbm
55
sys-apps/flashrom use_os_timer
66
media-sound/adhd -selinux
7+
#media-libs/arc-mesa android_vulkan_compute_0 vulkan

0 commit comments

Comments
 (0)