Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions aosptree/vendor/devices-community/gd_rpi4/BoardConfig.mk
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,5 @@ BOARD_LIBCAMERA_EXTRA_TARGETS += \
BOARD_FFMPEG_ENABLE_REQUEST_API := true
BOARD_FFMPEG_KERNEL_HEADERS_DIR := $(BC_PATH)/codecs/request_api_headers_v4
BOARD_FFMPEG_EXTRA_CONFIGURE_OPTIONS := --enable-sand

UNSAFE_DISABLE_APEX_ALLOWED_DEPS_CHECK := true
2 changes: 1 addition & 1 deletion aosptree/vendor/devices-community/gd_rpi4/device.mk
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ PRODUCT_VENDOR_PROPERTIES += \
ro.hardware.vulkan=broadcom \

# Enable Vulkan backend for SKIA/HWUI
#TARGET_USES_VULKAN = true
TARGET_USES_VULKAN = true

# Bluetooth
PRODUCT_VENDOR_PROPERTIES += \
Expand Down
3 changes: 2 additions & 1 deletion build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ echo Building the Android
pushd aosptree
. build/envsetup.sh
lunch gd_rpi4-trunk_staging-userdebug
make images -k || make images -j1
make -k || make -j1
make images
make sdcard
popd
25 changes: 9 additions & 16 deletions manifests/glodroid.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,10 @@
<remote name="gnome" fetch="https://github.com/GNOME/" />
<remote name="mbroadband" fetch="https://gitlab.freedesktop.org/mobile-broadband" />
<remote name="dbus" fetch="https://gitlab.freedesktop.org/dbus" />
<remote name="libcamera" fetch="https://git.libcamera.org/libcamera" />
<remote name="ti" fetch="https://git.ti.com/git" />
<remote name="videolan" fetch="https://code.videolan.org/videolan" />

<remove-project name="platform/external/mesa3d" />
<remove-project name="platform/external/v4l2_codec2" />
<remove-project name="platform/external/wpa_supplicant_8" />
<remove-project name="platform/external/libyaml" />

<project path="glodroid" remote="glodroid" name="glodroid_configuration.git" groups="glodroid" revision="refs/tags/basedir-v0.9.0" />
<project path="glodroid/configuration" remote="glodroid" name="glodroid_configuration.git" groups="glodroid" revision="c82b898997a47b699869e9650920eacecc4fd14d" />
Expand All @@ -19,35 +17,30 @@

<!-- gpu+display components (vendor) -->
<project path="glodroid/vendor/minigbm" remote="aosp" name="platform/external/minigbm" groups="glodroid" revision="93e16b90294c4634d43c4987f194204ac3b80ac8" />
<project path="glodroid/vendor/drm_hwcomposer" remote="aosp" name="platform/external/drm_hwcomposer" groups="glodroid" revision="dd5e782d1f7b0b2b2ce2d7e539f7c3aceb0fe63d" />
<project path="glodroid/vendor/mesa3d" remote="aosp" name="platform/external/mesa3d" groups="glodroid" revision="a0918ca13d3ae5c0bf51e327291ca94c09ff3233" />
<project path="glodroid/vendor/mesa3d" remote="aosp" name="platform/external/mesa3d" groups="glodroid" revision="60fdab22a5f38f7ecef040961d1401d27d4d83b1" />

<!-- camera components (vendor) -->
<project path="glodroid/vendor/libcamera" remote="libcamera" name="libcamera.git" groups="glodroid" revision="refs/tags/v0.2.0" />
<project path="glodroid/vendor/libcamera/subprojects/libyuv" remote="glodroid" name="glodroid_forks.git" groups="glodroid" revision="refs/tags/libyuv-v0.8.2" />
<project path="glodroid/vendor/libcamera/subprojects/libyaml" remote="github" name="yaml/libyaml.git" groups="glodroid" revision="refs/tags/0.2.5" />
<project path="glodroid/vendor/libcamera" remote="ti" name="android/external-libcamera.git" groups="glodroid" revision="523ebfdd1dbfc70305490530f26d961d190914be" />
<project path="external/libyaml" remote="ti" name="android/external-libyaml.git" groups="glodroid" revision="82526f06060e20a441f102266096c0d9f34e420a" />
<project path="external/libyuv_chromium" remote="ti" name="android/external-libyuv_chromium.git" groups="glodroid" revision="0bb9615271551c974f95397d8250a1edffa4433e" />

<!-- video codecs components (vendor) -->
<project path="glodroid/vendor/ffmpeg" remote="github" name="FFmpeg/FFmpeg.git" groups="glodroid" revision="refs/tags/n7.1" clone-depth="1" />
<project path="glodroid/vendor/ffmpeg_codec2" remote="glodroid" name="glodroid_forks.git" groups="glodroid" revision="refs/tags/ffmpeg_codec2-2023w46" clone-depth="1" />
<project path="external/v4l2_codec2" remote="aosp" name="platform/external/v4l2_codec2" groups="glodroid" revision="6a3ebb9202e41f53c2826fb757b869ade5b1e77f" />
<project path="glodroid/vendor/ffmpeg_codec2" remote="glodroid" name="glodroid_forks.git" groups="glodroid" revision="refs/tags/ffmpeg_codec2-2026w17" clone-depth="1" />

<!-- other components (vendor) -->
<project path="glodroid/vendor/aospext" remote="glodroid" name="aospext.git" groups="glodroid" revision="067694ebf1c6f7fe9e690fa9d6dfba92b19403e0" />
<project path="glodroid/vendor/iio-sensors-hal" remote="glodroid" name="glodroid_forks.git" groups="glodroid" revision="refs/tags/iio-sensors-hal-v0.9.0" />
<project path="glodroid/vendor/tinyhal" remote="github" name="CirrusLogic/tinyhal.git" groups="glodroid" revision="9c5df120b33ca51f05d4f997da659111ab63498e" />
<project path="glodroid/vendor/audio" remote="github" name="BayLibre/android_hardware_baylibre_audio.git" groups="glodroid" revision="a3abeb7aefc1ac665705f96f3cdd3672a98ec3d5" />
<project path="glodroid/vendor/libudev-zero" remote="glodroid" name="glodroid_forks.git" groups="glodroid" revision="refs/tags/libudev_zero-v0.8.2" />

<!-- Downgrade wpa_supplicant to Android-13 commit point. TODO: Remove this when the RPI4 WIFI issue is found/fixed -->
<project path="external/wpa_supplicant_8" remote="aosp" name="platform/external/wpa_supplicant_8" revision="1d9ae9a55470b894973457e3a4892a8820ca1bd7" />

<!-- bootloader components (platform) -->
<project path="glodroid/bootloader/u-boot" remote="github" name="u-boot/u-boot.git" groups="glodroid" revision="45f05f681224d88d1b170063001b59edc8fc24cf" />
<project path="glodroid/bootloader/atf" name="platform/external/arm-trusted-firmware" groups="glodroid" revision="a127b99d5a063c798d1c6d2e1d4791a630f78355" />
<project path="glodroid/bootloader/raspberry-fw" remote="github" name="raspberrypi/firmware.git" groups="glodroid" revision="57b8dbdce68c8f5e2a425d86e4e7e149e911b9d3" clone-depth="1" />

<!-- kernel/firmware components (platform) -->
<project path="glodroid/kernel/broadcom" remote="glodroid" name="glodroid_forks.git" groups="glodroid" revision="refs/tags/kernel-broadcom-2024w50" />
<project path="glodroid/kernel/broadcom" remote="glodroid" name="glodroid_forks.git" groups="glodroid" revision="refs/tags/kernel-broadcom-2026w17" />

<!-- compilers for platform components -->
<project path="prebuilts/gcc/linux-x86/aarch64/gcc-linaro-aarch64-linux-gnu"
Expand Down
34 changes: 34 additions & 0 deletions patches-aosp/external/libyaml/0001-Fix-build-issues.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
From aad67ace8a3f2956d632ef4a83ef7a953817f31d Mon Sep 17 00:00:00 2001
From: Roman Stratiienko <r.stratiienko@gmail.com>
Date: Sun, 24 May 2026 21:31:46 +0300
Subject: [PATCH] Fix build issues

Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com>
---
Android.bp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/Android.bp b/Android.bp
index 3631635..be16062 100644
--- a/Android.bp
+++ b/Android.bp
@@ -12,7 +12,6 @@ cc_defaults {
cflags: [
"-g3",
"-Werror",
- "-D_FORTIFY_SOURCE=2",
"-DYAML_VERSION_MAJOR=" + YAML_MAJOR,
"-DYAML_VERSION_MINOR=" + YAML_MINOR,
"-DYAML_VERSION_PATCH=" + YAML_PATCH,
@@ -28,7 +27,7 @@ cc_library_headers {
],
}

-cc_library_shared {
+cc_library {
name: "libyaml",
vendor: true,
defaults: [
--
2.51.0

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 92c8351dfb247422ba84e8cc9012094bbd12f11a Mon Sep 17 00:00:00 2001
From 5f9f0acbe326f588ae2b51d377a16990bd425f49 Mon Sep 17 00:00:00 2001
From: Roman Stratiienko <r.stratiienko@gmail.com>
Date: Thu, 12 Oct 2023 03:19:20 +0300
Subject: [PATCH 01/11] v4l2_codec2: Remove multilib support
Subject: [PATCH 01/10] v4l2_codec2: Remove multilib support

For the bindarized HAL, multilib doesn't make any sense.
Also, it confuses the init sometimes if both 64 and 32
Expand All @@ -11,61 +11,61 @@ Change-Id: I33854241f2976ac54cdb7731cdcc93e94021d30c
Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com>
---
service/Android.bp | 13 ++-----------
...android.hardware.media.c2@1.0-service-v4l2-64.rc | 7 -------
...> android.hardware.media.c2@1.0-service-v4l2.rc} | 2 +-
...android.hardware.media.c2@1.2-service-v4l2-64.rc | 7 -------
...> android.hardware.media.c2@1.2-service-v4l2.rc} | 2 +-
3 files changed, 3 insertions(+), 19 deletions(-)
delete mode 100644 service/android.hardware.media.c2@1.0-service-v4l2-64.rc
rename service/{android.hardware.media.c2@1.0-service-v4l2-32.rc => android.hardware.media.c2@1.0-service-v4l2.rc} (82%)
delete mode 100644 service/android.hardware.media.c2@1.2-service-v4l2-64.rc
rename service/{android.hardware.media.c2@1.2-service-v4l2-32.rc => android.hardware.media.c2@1.2-service-v4l2.rc} (82%)

diff --git a/service/Android.bp b/service/Android.bp
index eaf5d3f..1cc3808 100644
index 7a0bc41..e1d14b6 100644
--- a/service/Android.bp
+++ b/service/Android.bp
@@ -33,16 +33,7 @@ cc_binary {

required: ["android.hardware.media.c2-default-seccomp_policy"],
@@ -50,16 +50,7 @@ cc_binary {
"-DV4L2_CODEC2_SERVICE_V4L2_STORE",
],

- compile_multilib: "both",
- multilib: {
- lib32: {
- suffix: "-32",
- init_rc: ["android.hardware.media.c2@1.0-service-v4l2-32.rc"],
- init_rc: ["android.hardware.media.c2@1.2-service-v4l2-32.rc"],
- },
- lib64: {
- suffix: "-64",
- init_rc: ["android.hardware.media.c2@1.0-service-v4l2-64.rc"],
- init_rc: ["android.hardware.media.c2@1.2-service-v4l2-64.rc"],
- },
- },
+ compile_multilib: "first",
+ init_rc: ["android.hardware.media.c2@1.0-service-v4l2.rc"],
+ init_rc: ["android.hardware.media.c2@1.2-service-v4l2.rc"],
vintf_fragments: ["android.hardware.media.c2@1.2-service-v4l2.xml"],
}
diff --git a/service/android.hardware.media.c2@1.0-service-v4l2-64.rc b/service/android.hardware.media.c2@1.0-service-v4l2-64.rc
diff --git a/service/android.hardware.media.c2@1.2-service-v4l2-64.rc b/service/android.hardware.media.c2@1.2-service-v4l2-64.rc
deleted file mode 100644
index 454953b..0000000
--- a/service/android.hardware.media.c2@1.0-service-v4l2-64.rc
index 9869c6b..0000000
--- a/service/android.hardware.media.c2@1.2-service-v4l2-64.rc
+++ /dev/null
@@ -1,7 +0,0 @@
-service android-hardware-media-c2-v4l2-hal-1-0 /vendor/bin/hw/android.hardware.media.c2@1.0-service-v4l2-64
-service android-hardware-media-c2-v4l2-hal-1-2 /vendor/bin/hw/android.hardware.media.c2@1.2-service-v4l2-64
- class hal
- user media
- group mediadrm drmrpc
- ioprio rt 4
- task_profiles ProcessCapacityHigh
- setenv MESA_GLSL_CACHE_DISABLE 1
diff --git a/service/android.hardware.media.c2@1.0-service-v4l2-32.rc b/service/android.hardware.media.c2@1.0-service-v4l2.rc
diff --git a/service/android.hardware.media.c2@1.2-service-v4l2-32.rc b/service/android.hardware.media.c2@1.2-service-v4l2.rc
similarity index 82%
rename from service/android.hardware.media.c2@1.0-service-v4l2-32.rc
rename to service/android.hardware.media.c2@1.0-service-v4l2.rc
index e4ddbc3..8d1a45b 100644
--- a/service/android.hardware.media.c2@1.0-service-v4l2-32.rc
+++ b/service/android.hardware.media.c2@1.0-service-v4l2.rc
rename from service/android.hardware.media.c2@1.2-service-v4l2-32.rc
rename to service/android.hardware.media.c2@1.2-service-v4l2.rc
index 4fe0ccb..3420fe8 100644
--- a/service/android.hardware.media.c2@1.2-service-v4l2-32.rc
+++ b/service/android.hardware.media.c2@1.2-service-v4l2.rc
@@ -1,4 +1,4 @@
-service android-hardware-media-c2-v4l2-hal-1-0 /vendor/bin/hw/android.hardware.media.c2@1.0-service-v4l2-32
+service android-hardware-media-c2-v4l2-hal-1-0 /vendor/bin/hw/android.hardware.media.c2@1.0-service-v4l2
-service android-hardware-media-c2-v4l2-hal-1-2 /vendor/bin/hw/android.hardware.media.c2@1.2-service-v4l2-32
+service android-hardware-media-c2-v4l2-hal-1-2 /vendor/bin/hw/android.hardware.media.c2@1.2-service-v4l2
class hal
user media
group mediadrm drmrpc
--
2.39.2
2.43.0

Original file line number Diff line number Diff line change
@@ -1,42 +1,40 @@
From f20359e78c894dd389337a74bcd4af36432823df Mon Sep 17 00:00:00 2001
From 79e4bbac5cae481edc8c2090f558296290fa4df7 Mon Sep 17 00:00:00 2001
From: Roman Stratiienko <r.stratiienko@gmail.com>
Date: Wed, 11 Oct 2023 11:32:05 +0300
Subject: [PATCH 02/11] v4l2_codec2: Make the project directory-independent
Subject: [PATCH 02/10] v4l2_codec2: Make the project directory-independent

Some users want to group all vendor code in a separate directory.
Replace hardcoded 'external/v4l2_codec2' paths with cc_library_headers.

Change-Id: I29b3c15df199a225ce0acccbafe4f935de250a2c
Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com>
---
common/Android.bp | 6 ++++++
components/Android.bp | 6 ++++++
common/Android.bp | 5 +++++
components/Android.bp | 5 +++++
tests/c2_comp_intf/Android.bp | 6 ++----
3 files changed, 14 insertions(+), 4 deletions(-)
3 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/common/Android.bp b/common/Android.bp
index e9c5fe3..a92bca5 100644
index 6b571c9..58a1f5e 100644
--- a/common/Android.bp
+++ b/common/Android.bp
@@ -50,3 +50,9 @@ cc_library {
@@ -50,3 +50,8 @@ cc_library {
"-Wall",
],
}
+
+cc_library_headers {
+ name: "v4l2_codec2_common_headers",
+ vendor: true,
+ export_include_dirs: ["include"],
+}
diff --git a/components/Android.bp b/components/Android.bp
index 5bee73b..742b9eb 100644
index 73efcf2..98a64b2 100644
--- a/components/Android.bp
+++ b/components/Android.bp
@@ -57,3 +57,9 @@ cc_library {
@@ -54,3 +54,8 @@ cc_library {
"-Wthread-safety",
],
}
+
+cc_library_headers {
+ name: "v4l2_codec2_components_headers",
+ vendor: true,
Expand All @@ -61,5 +59,5 @@ index 5c91ef4..35380f3 100644
"libcodec2_headers",
"libcodec2_vndk_headers",
--
2.39.2
2.43.0

Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From b8227baca2bb8df1a57e155cac7de3e6b4daecc9 Mon Sep 17 00:00:00 2001
From 72d9be62f1773f3940e43f4045a3bf8d37bd6797 Mon Sep 17 00:00:00 2001
From: Roman Stratiienko <r.stratiienko@gmail.com>
Date: Sun, 17 Sep 2023 12:14:08 +0300
Subject: [PATCH 04/11] GLODROID: Disable seccomp
Subject: [PATCH 03/10] GLODROID: Disable seccomp

From my understanding, the seccomp only makes sense when using
proprietary codec libraries to ensure they are not doing anything
Expand All @@ -10,30 +10,29 @@ unexpected.
Change-Id: I90caac273ea51666f2ec51eb4ecaa02f76743f52
Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com>
---
service/Android.bp | 2 --
service/Android.bp | 1 -
service/service.cpp | 13 -------------
2 files changed, 15 deletions(-)
2 files changed, 14 deletions(-)

diff --git a/service/Android.bp b/service/Android.bp
index 1cc3808..180dff3 100644
index e1d14b6..494032a 100644
--- a/service/Android.bp
+++ b/service/Android.bp
@@ -31,8 +31,6 @@ cc_binary {
@@ -32,7 +32,6 @@ cc_defaults {
"libutils",
],

- required: ["android.hardware.media.c2-default-seccomp_policy"],
-
compile_multilib: "first",
init_rc: ["android.hardware.media.c2@1.0-service-v4l2.rc"],
vintf_fragments: ["android.hardware.media.c2@1.2-service-v4l2.xml"],
}

cc_binary {
diff --git a/service/service.cpp b/service/service.cpp
index 1fa9aae..25a612a 100644
index 03865ef..97323fb 100644
--- a/service/service.cpp
+++ b/service/service.cpp
@@ -14,23 +14,10 @@

#include <v4l2_codec2/components/V4L2ComponentStore.h>
@@ -20,23 +20,10 @@
#include <v4l2_codec2/v4l2/V4L2ComponentStore.h>
#endif

-// This is the absolute on-device path of the prebuild_etc module
-// "android.hardware.media.c2-default-seccomp_policy" in Android.bp.
Expand All @@ -56,5 +55,5 @@ index 1fa9aae..25a612a 100644
// Extra threads may be needed to handle a stacked IPC sequence that
// contains alternating binder and hwbinder calls. (See b/35283480.)
--
2.39.2
2.43.0

Loading