diff --git a/CHANGELOG.md b/CHANGELOG.md index 8161493c..07260da1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,15 +4,30 @@ All notable changes to this project will be documented in this file. Dates are d Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). +#### [4.10.0](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/compare/4.9.1...4.10.0) + +- RDKMVE-1327:BLE remote pairing is not working in RPI [`#310`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/310) +- RDKEVL-7379: [RPI4][RDKECOMREL-440]DAC 2.0 GPU layer implementation. [`#309`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/309) +- RDKEVL-7365:[RPI] OSS and common metalayers update [`#300`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/300) +- REFPLTV-2659: add the required CEC dependencies and enable legacy CONFIG_CGROUP_V1 KCONFIG [`#308`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/308) +- RDKEVL-7392: Add support for CEC Source HAL v1.1.0 [`#305`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/305) +- RDKEVL-7377:[RPI4][RDKEVL-6821]Update Resolution Naming Convention to Explicitly Use 576i50 and 576p50 [`#303`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/303) +- RDKEVL-7193: enable DMVerity related KConfigs [`#301`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/301) +- Update vendor.inc [`988957e`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/commit/988957e2d316dc1b883e1b1de28255894504a0a2) +- REFPLTV-2659: add the required CEC dependencies [`b5d32f0`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/commit/b5d32f098b6e5c5343a4e204817700632ca09823) +- REFPLTV-2659: add the required CEC dependencies [`4f99bcd`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/commit/4f99bcd6e9dd63d2f7b122e550c898732a3675a6) + #### [4.9.1](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/compare/4.9.0...4.9.1) +> 18 December 2025 + - RDKEVL-7233: [RPI] Serial console got stuck after flashing vendor integrated build. [`#297`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/297) - Fixed Bluetooth invalid address [`#296`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/296) - RDKEVL-7246: [RPI4] Update HDD_APP_MOUNT_PATH in device properties. [`#294`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/294) - Implemented the EROFS support for RPI platform. [`#293`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/pull/293) +- RDKEVL-7036,RDKEVL-7246,RDKEVL-7256,RDKEVL-7233: Changelog updates and version updates for 4.9.1 [`28930fe`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/commit/28930feaa70585cfb5aeb5ece79ddb8ba0249101) - RDKEVL-7233: [RPI] Serial console got stuck after flashing vendor integrated build [`527a02a`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/commit/527a02a9ef8cb86e7d7e00c0956ba15519dd0cbe) - Implemented the EROFS support for RPI platform [`31ee6c7`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/commit/31ee6c72e22082bff3cca1a0fc17170d628f35fd) -- Implemented the EROFS support for RPI platform [`19e9a2c`](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/commit/19e9a2ce3f02c62023403deb1c434f2ee7154551) #### [4.9.0](https://github.com/rdkcentral/meta-vendor-raspberrypi-dev/compare/4.8.0...4.9.0) diff --git a/conf/include/vendor_pkg_versions.inc b/conf/include/vendor_pkg_versions.inc index 86d66ee2..73a479f4 100644 --- a/conf/include/vendor_pkg_versions.inc +++ b/conf/include/vendor_pkg_versions.inc @@ -185,13 +185,13 @@ PACKAGE_ARCH:pn-wayland-default-egl = "${VENDOR_LAYER_EXTENSION}" # RDKV HAL component versions # RDKV HAL component versions of raspberrypi4 -SRCREV:pn-devicesettings-hal-raspberrypi4 = "1.3.2" -PV:pn-devicesettings-hal-raspberrypi4 = "1.3.2" +SRCREV:pn-devicesettings-hal-raspberrypi4 = "1.3.3" +PV:pn-devicesettings-hal-raspberrypi4 = "1.3.3" PR:pn-devicesettings-hal-raspberrypi4 = "r0" PACKAGE_ARCH:pn-devicesettings-hal-raspberrypi4 = "${VENDOR_LAYER_EXTENSION}" -SRCREV:pn-hdmicec-hal-raspberrypi4 = "1.0.3" -PV:pn-hdmicec-hal-raspberrypi4 = "1.0.3" +SRCREV:pn-hdmicec-hal-raspberrypi4 = "1.1.0" +PV:pn-hdmicec-hal-raspberrypi4 = "1.1.0" PR:pn-hdmicec-hal-raspberrypi4 = "r0" PACKAGE_ARCH:pn-hdmicec-hal-raspberrypi4 = "${VENDOR_LAYER_EXTENSION}" @@ -215,8 +215,8 @@ PV:pn-mfrlibs-hal-raspberrypi4 = "1.1.0" PR:pn-mfrlibs-hal-raspberrypi4 = "r0" PACKAGE_ARCH:pn-mfrlibs-hal-raspberrypi4 = "${VENDOR_LAYER_EXTENSION}" -SRCREV:pn-sysint-soc = "1.1.8" -PV:pn-sysint-soc = "1.1.8" +SRCREV:pn-sysint-soc = "1.1.9" +PV:pn-sysint-soc = "1.1.9" PR:pn-sysint-soc = "r0" PACKAGE_ARCH:pn-sysint-soc = "${VENDOR_LAYER_EXTENSION}" @@ -265,3 +265,6 @@ PV:pn-miracast-hal-raspberrypi4 = "1.0.1" PR:pn-miracast-hal-raspberrypi4 = "r0" PACKAGE_ARCH:pn-miracast-hal-raspberrypi4 = "${VENDOR_LAYER_EXTENSION}" +PV:pn-gpu-layer = "1.0.0" +PR:pn-gpu-layer = "r0" +PACKAGE_ARCH:pn-gpu-layer = "${VENDOR_LAYER_EXTENSION}" diff --git a/conf/machine/include/vendor.inc b/conf/machine/include/vendor.inc index 87bbbec4..06285fb1 100644 --- a/conf/machine/include/vendor.inc +++ b/conf/machine/include/vendor.inc @@ -7,7 +7,9 @@ include conf/include/vendor_pkg_versions.inc DISTRO_FEATURES:append = " VENDOR" DISTRO_FEATURES:append = " enable_esdk" -VENDOR_LAYER_EXTENSION = "${MACHINE}-vendor" +LAYER_EXTENSION = "-vendor" + +VENDOR_LAYER_EXTENSION = "${MACHINE}${LAYER_EXTENSION}" PACKAGE_EXTRA_ARCHS:append = " ${VENDOR_LAYER_EXTENSION}" LICENSE_FLAGS_ACCEPTED += "commercial_gst-fluendo-mpegdemux \ diff --git a/conf/template/bblayers.conf.sample b/conf/template/bblayers.conf.sample index e6880858..371a0d43 100644 --- a/conf/template/bblayers.conf.sample +++ b/conf/template/bblayers.conf.sample @@ -24,7 +24,6 @@ BBLAYERS =+ "${@'${MANIFEST_PATH_RDK_HALIF_HEADERS}' if os.path.isfile('${MANIFE BBLAYERS =+ "${@'${MANIFEST_PATH_CONFIG_COMMON}' if os.path.isfile('${MANIFEST_PATH_CONFIG_COMMON}/conf/layer.conf') else ''}" BBLAYERS =+ "${@'${MANIFEST_PATH_PROFILE_CONFIG}' if os.path.isfile('${MANIFEST_PATH_PROFILE_CONFIG}/conf/layer.conf') else ''}" BBLAYERS =+ "${@'${MANIFEST_PATH_PRODUCT_LAYER}' if os.path.isfile('${MANIFEST_PATH_PRODUCT_LAYER}/conf/layer.conf') else ''}" -BBLAYERS =+ "${@'${MANIFEST_PATH_OSS_RELEASE}' if os.path.isfile('${MANIFEST_PATH_OSS_RELEASE}/conf/layer.conf') else ''}" BBLAYERS =+ "${@'${MANIFEST_PATH_COMMON_OSS_REFERENCE}' if os.path.isfile('${MANIFEST_PATH_COMMON_OSS_REFERENCE}/conf/layer.conf') else ''}" BBLAYERS =+ "${@'${MANIFEST_PATH_BSP}' if os.path.isfile('${MANIFEST_PATH_BSP}/conf/layer.conf') else ''}" BBLAYERS =+ "${@'${MANIFEST_PATH_PLATFORM}' if os.path.isfile('${MANIFEST_PATH_PLATFORM}/conf/layer.conf') else ''}" diff --git a/recipes-core/packagegroups/packagegroup-hal-raspberrypi4.bb b/recipes-core/packagegroups/packagegroup-hal-raspberrypi4.bb index b719f647..cfdedba1 100644 --- a/recipes-core/packagegroups/packagegroup-hal-raspberrypi4.bb +++ b/recipes-core/packagegroups/packagegroup-hal-raspberrypi4.bb @@ -6,7 +6,7 @@ PACKAGE_ARCH = "${VENDOR_LAYER_EXTENSION}" inherit packagegroup hal-version -PV = "1.0.1" +PV = "1.0.2" PR = "r0" RDEPENDS:${PN} = " \ diff --git a/recipes-core/packagegroups/packagegroup-vendor-layer.bb b/recipes-core/packagegroups/packagegroup-vendor-layer.bb index 487d5f84..5094705e 100644 --- a/recipes-core/packagegroups/packagegroup-vendor-layer.bb +++ b/recipes-core/packagegroups/packagegroup-vendor-layer.bb @@ -8,7 +8,7 @@ inherit packagegroup DEPENDS = " virtual/kernel make-mod-scripts" -PV = "4.9.1" +PV = "4.10.0" PR = "r0" RDEPENDS:${PN} = " \ @@ -54,6 +54,6 @@ RDEPENDS:${PN}:append:rdkv-oss = " \ westeros \ westeros-simplebuffer \ westeros-simpleshell \ - wayland-default-egl \ - ${@bb.utils.contains('DISTRO_FEATURES', 'vulkan', " vulkan-loader vulkan-tools ", "", d)} \ + gpu-layer \ + ${@bb.utils.contains('DISTRO_FEATURES', 'vulkan', " vulkan-loader vulkan-tools ", "", d)} \ " diff --git a/recipes-graphics/gpu-layer/files/config.json b/recipes-graphics/gpu-layer/files/config.json new file mode 100644 index 00000000..92fdf28d --- /dev/null +++ b/recipes-graphics/gpu-layer/files/config.json @@ -0,0 +1,13 @@ +{ + "vendorGpuSupport": { + "devNodes": [ + "/dev/dma_heap/system", + "/dev/dma_heap/system-uncached", + "/dev/dri/card1", + "/dev/dri/renderD128" + ], + "groupIds": [ + "video" + ] + } +} \ No newline at end of file diff --git a/recipes-graphics/gpu-layer/gpu-layer.bb b/recipes-graphics/gpu-layer/gpu-layer.bb new file mode 100644 index 00000000..5e439a40 --- /dev/null +++ b/recipes-graphics/gpu-layer/gpu-layer.bb @@ -0,0 +1,97 @@ +SUMMARY = "GPU layer libraries and configuration" +DESCRIPTION = "Install GPU shared libraries into gpu-layer rootfs and deploy JSON configuration" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +# GPU configuration file +SRC_URI += "file://config.json" + +# Build-time providers for GPU / graphics components +DEPENDS += "\ + mesa \ + libdrm \ + wayland-default-egl \ + westeros-soc-drm \ + expat \ + " + +# gpu-layer layout inside target rootfs +GPU_LAYER_LIBDIR = "${D}/usr/share/gpu-layer/rootfs/usr/lib" +GPU_LAYER_DRIDIR = "${GPU_LAYER_LIBDIR}/dri" +GPU_LAYER_CONFDIR = "${D}/usr/share/gpu-layer" + +# Shared libraries to bundle into gpu-layer (SONAME-based) +GPU_LAYER_LIBS = "\ + libdrm.so.2 \ + libEGL.so.1 \ + libGLESv2.so.2 \ + libGLESv1_CM.so.1 \ + libgbm.so.1 \ + libglapi.so.0 \ + libexpat.so.1 \ + libwayland-egl.so.1 \ + libwesteros_gl.so.0 \ + " + +# DRI drivers required by Mesa (software + VC4) +GPU_LAYER_DRI_LIBS = "\ + swrast_dri.so \ + vc4_dri.so \ + " + +do_install() { + # Create gpu-layer directory structure + install -d \ + ${GPU_LAYER_LIBDIR} \ + ${GPU_LAYER_DRIDIR} \ + ${GPU_LAYER_CONFDIR} + + # + # copy_and_symlink: + # - Copy a SONAME shared library from sysroot + # - Create an unversioned .so symlink + # + # Example: + # libEGL.so.1 → copied + # libEGL.so → symlink → libEGL.so.1 + # + copy_and_symlink() { + soname="$1" + src="${STAGING_LIBDIR}/${soname}" + + # Skip if library is not present in sysroot + [ -e "${src}" ] || return + + # Derive unversioned linker name (libXYZ.so) + linkname="$(echo "${soname}" | sed 's/\.so\..*/.so/')" + + # Install the SONAME library (read-only, runtime use) + install -m 0444 "${src}" "${GPU_LAYER_LIBDIR}/${soname}" + + # Create symlink for linker compatibility + ln -sf "${soname}" "${GPU_LAYER_LIBDIR}/${linkname}" + } + + # Install GPU shared libraries + for lib in ${GPU_LAYER_LIBS}; do + copy_and_symlink "$lib" + done + + # Install Mesa DRI drivers + for dri in ${GPU_LAYER_DRI_LIBS}; do + install -m 0444 "${STAGING_LIBDIR}/dri/${dri}" "${GPU_LAYER_DRIDIR}/${dri}" + done + + # Install GPU configuration + install -m 0444 ${WORKDIR}/config.json ${GPU_LAYER_CONFDIR}/config.json +} + +# Package contents +FILES:${PN} += "/usr/share/gpu-layer" + +# Libraries intentionally bundled inside gpu-layer +# (avoid shlibs auto-dependency generation) +PRIVATE_LIBS:${PN} = "${GPU_LAYER_LIBS}" + +# Skip dev-so QA check because we deliberately install unversioned .so symlinks +INSANE_SKIP:${PN} += "dev-so" diff --git a/recipes-halif/hdmicec/hdmicec-hal-raspberrypi4.bb b/recipes-halif/hdmicec/hdmicec-hal-raspberrypi4.bb index 986994e4..605f5ff2 100644 --- a/recipes-halif/hdmicec/hdmicec-hal-raspberrypi4.bb +++ b/recipes-halif/hdmicec/hdmicec-hal-raspberrypi4.bb @@ -18,7 +18,7 @@ RPROVIDES:${PN} = " \ virtual/vendor-hdmicec-hal \ " -DEPENDS = "hdmicecheader" +DEPENDS = "hdmicecheader userland" inherit cmake diff --git a/recipes-kernel/android/files/rdkv.cfg b/recipes-kernel/android/files/rdkv.cfg index 2cae5ba0..62c53e7d 100644 --- a/recipes-kernel/android/files/rdkv.cfg +++ b/recipes-kernel/android/files/rdkv.cfg @@ -8,3 +8,13 @@ CONFIG_EROFS_FS_XATTR=y CONFIG_EROFS_FS_POSIX_ACL=y CONFIG_EROFS_FS_SECURITY=y CONFIG_EROFS_FS_ZIP=y +CONFIG_BLK_DEV_DM=y +CONFIG_DM_BUFIO=y +CONFIG_DM_CRYPT=y +CONFIG_DM_VERITY=y +CONFIG_CRYPTO_AEAD=y +CONFIG_CRYPTO_NULL=y +CONFIG_CRYPTO_AUTHENC=y +CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_ESSIV=y +CONFIG_CGROUP_V1=y diff --git a/recipes-soc/sysint-soc/sysint-soc.bb b/recipes-soc/sysint-soc/sysint-soc.bb index 010f926b..3391e235 100644 --- a/recipes-soc/sysint-soc/sysint-soc.bb +++ b/recipes-soc/sysint-soc/sysint-soc.bb @@ -23,6 +23,8 @@ do_install() { install -D -m 0644 ${S}/systemd_units/oem-first-boot.service ${D}${systemd_unitdir}/system/oem-first-boot.service install -D -m 0755 ${S}/scripts/oem-first-boot.sh ${D}${bindir}/oem-first-boot.sh install -D -m 0644 ${S}/systemd_units/nvram.service ${D}${systemd_unitdir}/system/nvram.service + install -D -m 0755 ${S}/scripts/rpiBTReset.sh ${D}${bindir}/rpiBTReset.sh + install -D -m 0644 ${S}/systemd_units/rpiBTReset.service ${D}${systemd_unitdir}/system/rpiBTReset.service # RDKE-115: Dropbear drop-in conf for RPi install -D -m 0644 ${S}/systemd_units/00-dropbear-vendor.conf ${D}${systemd_unitdir}/system/dropbear.service.d/00-dropbear.conf @@ -43,3 +45,4 @@ FILES:${PN} += "${sysconfdir}/*" # RDKVREFPLT-4428: temporary fix SYSTEMD_SERVICE:${PN} += "oem-first-boot.service" SYSTEMD_SERVICE:${PN} += "nvram.service" +SYSTEMD_SERVICE:${PN} += "rpiBTReset.service"