From: classabbyamp <classabbyamp@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] rpi-*: update and support rpi5
Date: Sat, 18 Nov 2023 05:02:20 +0100 [thread overview]
Message-ID: <20231118040220.v_Dfw4p72K9d3tMqGbXEP1AH3qsIcS3I6V2uL9_-9es@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-47288@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 642 bytes --]
There is an updated pull request by classabbyamp against master on the void-packages repository
https://github.com/classabbyamp/void-packages rpi5
https://github.com/void-linux/void-packages/pull/47288
rpi-*: update and support rpi5
- rpi-kernel: update to 6.1.62.
- rpi-firmware: update to 20231102.
- New package: rpi-utils-20231105
- rpi-eeprom: update to 2023.11.09.
#### Testing the changes
- I tested the changes in this PR: **YES** (RPi5 glibc so far)
prebuilt packages and RPi5-compatible install images coming soon
[ci skip]
A patch file from https://github.com/void-linux/void-packages/pull/47288.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-rpi5-47288.patch --]
[-- Type: text/x-diff, Size: 21806 bytes --]
From cdaa7b93256d481a0678a7c2de9baa3336133a33 Mon Sep 17 00:00:00 2001
From: classabbyamp <void@placeviolette.net>
Date: Fri, 17 Nov 2023 13:48:03 -0500
Subject: [PATCH 1/4] rpi-kernel: update to 6.1.62.
- add rpi5 support and optimised kernel
- add support for BTRFS root
- add /proc/config.gz by default
---
srcpkgs/rpi-kernel/template | 221 +++++++++++++++++++++++-------------
srcpkgs/rpi5-kernel | 1 +
| 1 +
3 files changed, 143 insertions(+), 80 deletions(-)
create mode 120000 srcpkgs/rpi5-kernel
create mode 120000 srcpkgs/rpi5-kernel-headers
diff --git a/srcpkgs/rpi-kernel/template b/srcpkgs/rpi-kernel/template
index 2fa1bb54b683e..d90257a9a044b 100644
--- a/srcpkgs/rpi-kernel/template
+++ b/srcpkgs/rpi-kernel/template
@@ -12,9 +12,9 @@
#
# Upstream documentation: https://www.raspberrypi.com/documentation/computers/linux_kernel.html
pkgname=rpi-kernel
-version=6.1.54
+version=6.1.62
revision=1
-_githash=fad58933544bb2a7b7db92847c25c79a83171fa6
+_githash=3fdb0eb8be5803a16fc308b8441cdcdeafbb944e
archs="armv6l* armv7l* aarch64*"
hostmakedepends="perl kmod uboot-mkimage openssl-devel bc bison flex xz"
makedepends="ncurses-devel"
@@ -23,8 +23,10 @@ maintainer="Piraty <mail@piraty.dev>"
license="GPL-2.0-only"
homepage="http://www.kernel.org"
distfiles="https://github.com/raspberrypi/linux/archive/${_githash}.tar.gz"
-checksum=1bd02902fae49351fb16ac0d5ccc3bf4d67aa0640006dbbf8846963519b01ab8
+checksum=a44b7d642fc2d80a8cfd05d0b461ecbff019680932754b3f9190bb22be9b8fe2
python_version=3
+provides="rpi-kernel-${version}_${revision}"
+replaces="rpi5-kernel>=0"
_kernver="${version}_${revision}"
@@ -51,28 +53,20 @@ case "$XBPS_TARGET_MACHINE" in
*) broken="No Raspberry Pi exists for this arch" ;;
esac
+make_build_args=("-j$XBPS_MAKEJOBS" "ARCH=$_arch")
+make_install_args=("-j$XBPS_MAKEJOBS" "ARCH=$_arch")
+
if [ "$CROSS_BUILD" ]; then
- _cross="CROSS_COMPILE=${XBPS_CROSS_TRIPLET}-"
-else
- _cross=
+ make_build_args+=("CROSS_COMPILE=${XBPS_CROSS_TRIPLET}-")
fi
-do_configure() {
- local target defconfig
-
- case "$XBPS_TARGET_MACHINE" in
- # for zero, 1
- armv6l*) target=bcmrpi_defconfig ;;
- # for 2
- armv7l*) target=bcm2709_defconfig ;;
- # for 3, 4, zero 2
- aarch64*) target=bcm2711_defconfig ;;
- esac
+_configure() {
+ local target="$1" defconfig
defconfig="arch/${_arch}/configs/${target}"
cp "$defconfig" .config
- cat <<-! > "foo"
+ cat <<-! > void.config
CONFIG_CONNECTOR=y
CONFIG_HID_STEAM=y
CONFIG_PROC_EVENTS=y
@@ -113,15 +107,19 @@ do_configure() {
CONFIG_LZ4_COMPRESS=y
CONFIG_CRYPTO_RNG=y
CONFIG_CRYPTO_RNG_DEFAULT=y
+ CONFIG_BTRFS_FS=y
+ CONFIG_BTRFS_POSIX_ACL=y
+ CONFIG_IKCONFIG_PROC=y
!
while read -r line; do
+ local option="" str="" cmd=""
# skip comments
case "$line" in
"#"*) continue;;
esac
- local option=${line%%=*} str=
- local cmd="$(echo "$line" | cut -d= -f2)"
+ option="${line%%=*}"
+ cmd="$(echo "$line" | cut -d= -f2)"
case "$cmd" in
y) cmd="enable";;
n) cmd="disable";;
@@ -135,31 +133,27 @@ do_configure() {
./scripts/config \
--file .config \
"--$cmd" "$option" "${str//\"/}"
- done < foo
+ done < void.config
- make "${makejobs}" "${_cross}" ARCH="${_arch}" olddefconfig
+ make "${make_build_args[@]}" olddefconfig
}
-do_build() {
- make "${makejobs}" "${_cross}" ARCH="${_arch}" prepare
- make "${makejobs}" "${_cross}" ARCH="${_arch}" "${_image_target}" modules dtbs
-}
-
-do_install() {
- local hdrdest="${DESTDIR}/usr/src/${sourcepkg}-headers-${_kernver}"
+_install() {
+ local _pkg="$1" _destdir="$2"
+ local hdrdest="usr/src/${_pkg}-headers-${_kernver}"
# Run depmod after compressing modules.
vsed -i -e '2iexit 0' scripts/depmod.sh
# Install kernel, firmware and modules
- make "${makejobs}" ARCH="${_arch}" INSTALL_MOD_PATH="${DESTDIR}" modules_install
+ make "${make_install_args[@]}" INSTALL_MOD_PATH="${_destdir}" modules_install
# Install device tree blobs
- make "${makejobs}" "ARCH=${_arch}" INSTALL_DTBS_PATH="${DESTDIR}/boot" dtbs_install
+ make "${make_install_args[@]}" INSTALL_DTBS_PATH="${_destdir}/boot" dtbs_install
# move dtbs that ended up in /boot/broadcom
- if [ -d "${DESTDIR}/boot/broadcom" ]; then
- mv "${DESTDIR}"/boot/broadcom/*dtb "${DESTDIR}/boot"
+ if [ -d "${_destdir}/boot/broadcom" ]; then
+ mv "${_destdir}"/boot/broadcom/*dtb "${_destdir}/boot"
fi
# Install kernel image
@@ -167,96 +161,118 @@ do_install() {
# Switch to /usr.
vmkdir usr
- mv "${DESTDIR}/lib" "${DESTDIR}/usr"
+ mv "${_destdir}/lib" "${_destdir}/usr"
- pushd "${DESTDIR}/usr/lib/modules/${_kernver}"
+ pushd "${_destdir}/usr/lib/modules/${_kernver}"
rm -f source build
- ln -sf "../../../src/${sourcepkg}-headers-${_kernver}" build
+ ln -sf "../../../src/${_pkg}-headers-${_kernver}" build
popd
# Install required headers to build external modules
- install -Dm644 Makefile "${hdrdest}/Makefile"
- install -Dm644 Kbuild "${hdrdest}/Kbuild"
- install -Dm644 kernel/Makefile "${hdrdest}/kernel/Makefile"
- install -Dm644 .config "${hdrdest}/.config"
- while read -r file; do
- mkdir -p "${hdrdest}/$(dirname "$file")"
- install -Dm644 "$file" "${hdrdest}/${file}"
- done < <(find . -name 'Kconfig*')
- while read -r file; do
- mkdir -p "${hdrdest}/$(dirname $file)"
- install -Dm644 "$file" "${hdrdest}/${file}"
- done < <(find "arch/${_arch}" scripts -name module.lds -o -name Kbuild.platforms -o -name Platform)
- mkdir -p "${hdrdest}/include"
+ vinstall Makefile 644 "${hdrdest}"
+ vinstall Kbuild 644 "${hdrdest}"
+ vinstall kernel/Makefile 644 "${hdrdest}/kernel"
+ vinstall .config 644 "${hdrdest}"
+ find . -name 'Kconfig*' | \
+ while read -r file; do
+ vinstall "$file" 644 "${hdrdest}/$(dirname "$file")"
+ done
+ find "arch/${_arch}" scripts -name module.lds -o -name Kbuild.platforms -o -name Platform | \
+ while read -r file; do
+ vinstall "$file" 644 "${hdrdest}/$(dirname "$file")"
+ done
+ vmkdir "${hdrdest}/include"
# Remove firmware stuff provided by the "linux-firmware" pkg.
- rm -rf "${DESTDIR}/usr/lib/firmware"
+ rm -rf "${_destdir}/usr/lib/firmware"
- for i in acpi asm-generic clocksource config crypto drm dt-bindings generated linux \
+ for d in acpi asm-generic clocksource config crypto drm dt-bindings generated linux \
math-emu media net pcmcia scsi sound trace uapi vdso video xen; do
- [ -d include/$i ] && cp -a "include/$i" "${hdrdest}/include"
+ [ -d include/$d ] && vcopy "include/$d" "${hdrdest}/include"
done
# Remove helper binaries built for host,
# if generated files from the scripts/ directory need to be included,
# they need to be copied to ${hdrdest} before this step
if [ "$CROSS_BUILD" ]; then
- make "${makejobs}" ARCH="${_arch}" _mrproper_scripts
+ make "${make_install_args[@]}" _mrproper_scripts
# remove host specific objects as well
find scripts -name '*.o' -delete
fi
# Copy files necessary for later builds.
- cp Module.symvers "${hdrdest}"
- cp -a scripts "${hdrdest}"
- mkdir -p "${hdrdest}/security/selinux"
- cp -a security/selinux/include "${hdrdest}/security/selinux"
- mkdir -p "${hdrdest}/tools/include"
- cp -a tools/include/tools "${hdrdest}/tools/include"
+ vinstall Module.symvers 644 "${hdrdest}"
+ vcopy scripts "${hdrdest}"
+ vmkdir "${hdrdest}/security/selinux"
+ vcopy security/selinux/include "${hdrdest}/security/selinux"
+ vmkdir "${hdrdest}/tools/include"
+ vcopy tools/include/tools "${hdrdest}/tools/include"
if [ -d "arch/${_arch}/tools" ]; then
- cp -a "arch/${_arch}/tools" "${hdrdest}/arch/${_arch}"
+ vcopy "arch/${_arch}/tools" "${hdrdest}/arch/${_arch}"
fi
- cp -a kernel/time/timeconst.bc "${hdrdest}/kernel/time"
- cp -a kernel/bounds.c "${hdrdest}/kernel"
- mkdir -p "${hdrdest}/arch/x86/entry/syscalls"
- cp -a arch/x86/entry/syscalls/syscall_32.tbl "${hdrdest}/arch/x86/entry/syscalls"
+ vinstall kernel/time/timeconst.bc 644 "${hdrdest}/kernel/time"
+ vinstall kernel/bounds.c 644 "${hdrdest}/kernel"
+ vinstall arch/x86/entry/syscalls/syscall_32.tbl 644 "${hdrdest}/arch/x86/entry/syscalls"
# copy arch includes for external modules
- mkdir -p "${hdrdest}/arch/${_arch}"
- cp -a "arch/${_arch}/include" "${hdrdest}/arch/${_arch}"
+ vmkdir "${hdrdest}/arch/${_arch}"
+ vcopy "arch/${_arch}/include" "${hdrdest}/arch/${_arch}"
mkdir -p "${hdrdest}/arch/${_arch}/kernel"
- cp "arch/${_arch}/Makefile" "${hdrdest}/arch/${_arch}"
- cp "arch/${_arch}/kernel/asm-offsets.s" "${hdrdest}/arch/${_arch}/kernel"
+ vinstall "arch/${_arch}/Makefile" 644 "${hdrdest}/arch/${_arch}"
+ vinstall "arch/${_arch}/kernel/asm-offsets.s" 644 "${hdrdest}/arch/${_arch}/kernel"
if [ "$_arch" = "arm64" ] ; then
- cp -a "arch/${_arch}/kernel/vdso" "${hdrdest}/arch/${_arch}/kernel/"
+ vcopy "arch/${_arch}/kernel/vdso" "${hdrdest}/arch/${_arch}/kernel/"
fi
# Add md headers
- mkdir -p "${hdrdest}/drivers/md"
- cp drivers/md/*.h "${hdrdest}/drivers/md"
+ vmkdir "${hdrdest}/drivers/md"
+ vcopy drivers/md/*.h "${hdrdest}/drivers/md"
# Add inotify.h
- mkdir -p "${hdrdest}/include/linux"
- cp include/linux/inotify.h "${hdrdest}/include/linux"
+ vinstall include/linux/inotify.h 644 "${hdrdest}/include/linux"
# Add wireless headers
- mkdir -p "${hdrdest}/net/mac80211/"
- cp net/mac80211/*.h "${hdrdest}/net/mac80211"
+ vmkdir "${hdrdest}/net/mac80211/"
+ vcopy net/mac80211/*.h "${hdrdest}/net/mac80211"
# Compress all modules with xz to save a few MBs.
- msg_normal "$pkgver: compressing kernel modules with gzip, please wait...\n"
- find "${DESTDIR}" -name '*.ko' | xargs -n1 -P0 gzip -9
+ msg_normal "$_pkg-$version: compressing kernel modules with gzip, please wait...\n"
+ find "${_destdir}" -name '*.ko' | xargs -n1 -P0 gzip -9
# ... and run depmod again.
- depmod -b "${DESTDIR}/usr" -F System.map "${_kernver}"
+ depmod -b "${_destdir}/usr" -F System.map "${_kernver}"
+}
+
+do_configure() {
+ local target
+
+ case "$XBPS_TARGET_MACHINE" in
+ # for zero, 1
+ armv6l*) target=bcmrpi_defconfig ;;
+ # for 2
+ armv7l*) target=bcm2709_defconfig ;;
+ # for 3, 4, zero 2, 5
+ aarch64*) target=bcm2711_defconfig ;;
+ esac
+
+ _configure "$target"
+}
+
+do_build() {
+ make "${make_build_args[@]}" prepare
+ make "${make_build_args[@]}" "${_image_target}" modules dtbs
+}
+
+do_install() {
+ _install "$pkgname" "$DESTDIR"
}
subpackages="rpi-kernel-headers"
case "$XBPS_TARGET_MACHINE" in
armv7l*) subpackages+=" rpi2-kernel rpi2-kernel-headers" ;;
- aarch64*) subpackages+=" rpi3-kernel rpi3-kernel-headers rpi4-kernel rpi4-kernel-headers" ;;
+ aarch64*) subpackages+=" rpi3-kernel rpi3-kernel-headers rpi4-kernel rpi4-kernel-headers rpi5-kernel rpi5-kernel-headers" ;;
esac
rpi-kernel-headers_package() {
@@ -264,9 +280,54 @@ rpi-kernel-headers_package() {
noverifyrdeps=yes
noshlibprovides=yes
short_desc="${short_desc/kernel/kernel headers}"
+ provides="rpi-kernel-headers-${version}_${revision}"
+ replaces="rpi5-kernel-headers>=0"
pkg_install() {
vmove usr/src
- vmove usr/lib/modules/${_kernver}/build
+ vmove "usr/lib/modules/${_kernver}/build"
+ }
+}
+
+_rpi5_short_desc="Linux kernel for Raspberry Pi 5 (${version%.*} series)"
+
+rpi5-kernel_package() {
+ nodebug=yes
+ nostrip=yes
+ noverifyrdeps=yes
+ noshlibprovides=yes
+ python_version=3
+ triggers="kernel-hooks"
+ # These files could be modified when an external module is built.
+ mutable_files="
+ /usr/lib/modules/${_kernver}/modules.dep
+ /usr/lib/modules/${_kernver}/modules.dep.bin
+ /usr/lib/modules/${_kernver}/modules.symbols
+ /usr/lib/modules/${_kernver}/modules.symbols.bin
+ /usr/lib/modules/${_kernver}/modules.alias
+ /usr/lib/modules/${_kernver}/modules.alias.bin
+ /usr/lib/modules/${_kernver}/modules.devname"
+ short_desc="$_rpi5_short_desc"
+ provides="rpi-kernel-${version}_${revision}"
+ replaces="rpi-kernel>=0"
+ pkg_install() {
+ _configure "bcm2712_defconfig"
+ make "${make_build_args[@]}" prepare
+ make "${make_build_args[@]}" "${_image_target}" modules dtbs
+ _install "rpi5-kernel" "$PKGDESTDIR"
+ }
+}
+
+rpi5-kernel-headers_package() {
+ nostrip=yes
+ noverifyrdeps=yes
+ noshlibprovides=yes
+ short_desc="${_rpi5_short_desc/kernel/kernel headers}"
+ provides="rpi-kernel-headers-${version}_${revision}"
+ replaces="rpi-kernel-headers>=0"
+ pkg_install() {
+ mv "${PKGDESTDIR}/../rpi5-kernel-${version}/usr/src" "${PKGDESTDIR}"/usr/src
+ vmkdir "usr/lib/modules/${_kernver}"
+ mv "${PKGDESTDIR}/../rpi5-kernel-${version}/usr/lib/modules/${_kernver}/build" "${PKGDESTDIR}/usr/lib/modules/${_kernver}/build"
}
}
diff --git a/srcpkgs/rpi5-kernel b/srcpkgs/rpi5-kernel
new file mode 120000
index 0000000000000..3b4ec073331b8
--- /dev/null
+++ b/srcpkgs/rpi5-kernel
@@ -0,0 +1 @@
+rpi-kernel
\ No newline at end of file
--git a/srcpkgs/rpi5-kernel-headers b/srcpkgs/rpi5-kernel-headers
new file mode 120000
index 0000000000000..3b4ec073331b8
--- /dev/null
+++ b/srcpkgs/rpi5-kernel-headers
@@ -0,0 +1 @@
+rpi-kernel
\ No newline at end of file
From 49bc94a773081ae1a79fd11e1d2d027759834f12 Mon Sep 17 00:00:00 2001
From: classabbyamp <void@placeviolette.net>
Date: Fri, 17 Nov 2023 13:50:05 -0500
Subject: [PATCH 2/4] rpi-firmware: update to 20231102.
add rpi5-specific firmware
---
srcpkgs/rpi-firmware/template | 40 +++++++++++++----------------------
1 file changed, 15 insertions(+), 25 deletions(-)
diff --git a/srcpkgs/rpi-firmware/template b/srcpkgs/rpi-firmware/template
index 0a2efa3b80db0..d251448948f95 100644
--- a/srcpkgs/rpi-firmware/template
+++ b/srcpkgs/rpi-firmware/template
@@ -1,12 +1,12 @@
# Template file for 'rpi-firmware'
pkgname=rpi-firmware
-version=20230925
+version=20231102
revision=1
-_rpi_fw=6b37a457122714aa14b2c7df0926455173fd04f1
-_rpi_bt=9556b08ace2a1735127894642cc8ea6529c04c90
-_rpi_brcm=2c3a8701193ba23d0ef85cdf0d0c9e47baf03dfc
+_rpi_fw=83dafbc92c0e63f76ca2ecdd42462d56489d1c77
+_rpi_bt=d9d4741caba7314d6500f588b1eaa5ab387a4ff5
+_rpi_brcm=88aa085bfa1a4650e1ccd88896f8343c22a24055
create_wrksrc=yes
-archs="armv6l* armv7l* aarch64*"
+archs="aarch64* armv6l* armv7l*"
short_desc="Firmware files for the Raspberry Pi"
maintainer="Piraty <mail@piraty.dev>"
license="BSD-3-Clause, custom:Cypress"
@@ -14,26 +14,14 @@ homepage="https://github.com/raspberrypi/firmware"
distfiles="
https://github.com/raspberrypi/firmware/archive/${_rpi_fw}.tar.gz
https://github.com/RPi-Distro/firmware-nonfree/archive/${_rpi_brcm}.tar.gz
- https://github.com/RPi-Distro/bluez-firmware/raw/${_rpi_bt}/broadcom/BCM43430A1.hcd
- https://github.com/RPi-Distro/bluez-firmware/raw/${_rpi_bt}/broadcom/BCM4345C0.hcd
- https://github.com/RPi-Distro/bluez-firmware/raw/${_rpi_bt}/broadcom/BCM43430B0.hcd
- https://github.com/RPi-Distro/bluez-firmware/raw/${_rpi_bt}/broadcom/BCM4345C5.hcd
- https://github.com/RPi-Distro/bluez-firmware/raw/${_rpi_bt}/synaptics/SYN43430A1.hcd>BCM43430A1.raspberrypi,model-zero-2-w.hcd
- https://github.com/RPi-Distro/bluez-firmware/raw/${_rpi_bt}/synaptics/SYN43430B0.hcd>BCM43430B0.raspberrypi,model-zero-2-w.hcd
+ https://github.com/RPi-Distro/bluez-firmware/archive/${_rpi_bt}.tar.gz
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/LICENCE.cypress>LICENCE.cypress"
-checksum="913986b1be22b8dc30a3e6a9b5a28316b1bbee7bec90040ddefff0d7512560f4
- 9156d90116b921d2e7938b52fad84fbe1d96df622a66c5db09569c735832387a
- c096ad4a5c3f06ed7d69eba246bf89ada9acba64a5b6f51b1e9c12f99bb1e1a7
- 51c45e77ddad91a19e96dc8fb75295b2087c279940df2634b23baf71b6dea42c
- 338c2c6631131f516bfc7e64ef0872bd0402e1f98ef9d0c900eef0c814d90a25
- fb9f4ec2df5301bd35f416384e103c012c5983024c49aa72fbbaf90177512caa
- 55071227c94d86369d04f9aff3bbfd4197a78a53dc350295123e1a8b048bba8f
- 338c2c6631131f516bfc7e64ef0872bd0402e1f98ef9d0c900eef0c814d90a25
+checksum="dd43e77ca1a8969cdb7f05dd72a57f90862071d5a93bdd6aea8246aba85689cf
+ bb3d8fed40546e03e29d9e635745433f8083391e62d6ff151c895b892776964a
+ ae076a08ece89624b0449ea2495b0dfe2ea1223f683f5b57f2b89966e6a093d6
ae0db6cc4db33941148df0f67de53e76a77b1b5a46b3165edb7040aa2750015f"
-skip_extraction="BCM43430A1.hcd BCM4345C0.hcd BCM43430B0.hcd BCM4345C5.hcd
- BCM43430A1.raspberrypi,model-zero-2-w.hcd BCM43430B0.raspberrypi,model-zero-2-w.hcd
- LICENCE.cypress"
+skip_extraction="LICENCE.cypress"
provides="linux-firmware-broadcom-${version}_${revision}"
replaces="linux-firmware-broadcom>=0"
@@ -72,7 +60,9 @@ do_install() {
vcopy "firmware-nonfree-${_rpi_brcm}/debian/config/brcm80211/brcm/brcmfmac43456"* usr/lib/firmware/brcm
vcopy "firmware-nonfree-${_rpi_brcm}/debian/config/brcm80211/brcm/brcmfmac43436"* usr/lib/firmware/brcm
- for file in "${XBPS_SRCDISTDIR}/${pkgname}-${version}/"*.hcd; do
- vinstall "$file" 0644 usr/lib/firmware/brcm
- done
+ vcopy "bluez-firmware-${_rpi_bt}/debian/firmware/broadcom/"*.hcd usr/lib/firmware/brcm
+
+ vmkdir usr/lib/firmware/synaptics
+ vcopy "bluez-firmware-${_rpi_bt}/debian/firmware/synaptics/"*.hcd usr/lib/firmware/synaptics
+ vlicense "bluez-firmware-${_rpi_bt}/debian/firmware/synaptics/LICENSE.synaptics"
}
From 3b03ab3c8efb48089103f78893bc729086bf9410 Mon Sep 17 00:00:00 2001
From: classabbyamp <void@placeviolette.net>
Date: Fri, 17 Nov 2023 13:50:48 -0500
Subject: [PATCH 3/4] New package: rpi-utils-20231105
replaces rpi-userland:
https://github.com/raspberrypi/userland/blob/master/README.md
---
.../rpi-utils/patches/no-overlaycheck.patch | 14 +++++++++++++
srcpkgs/rpi-utils/template | 20 +++++++++++++++++++
2 files changed, 34 insertions(+)
create mode 100644 srcpkgs/rpi-utils/patches/no-overlaycheck.patch
create mode 100644 srcpkgs/rpi-utils/template
diff --git a/srcpkgs/rpi-utils/patches/no-overlaycheck.patch b/srcpkgs/rpi-utils/patches/no-overlaycheck.patch
new file mode 100644
index 0000000000000..3e64958e238d2
--- /dev/null
+++ b/srcpkgs/rpi-utils/patches/no-overlaycheck.patch
@@ -0,0 +1,14 @@
+This program is not very useful as a downstream, it seems to be only intended
+for internal QA. It also has a lot of weird things like hardcoding the prefixed
+cpp to use and putting a text file in /usr/bin.
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,7 +5,6 @@
+ # List of subsidiary CMakeLists
+ add_subdirectory(dtmerge)
+ add_subdirectory(otpset)
+-add_subdirectory(overlaycheck)
+ add_subdirectory(ovmerge)
+ add_subdirectory(pinctrl)
+ add_subdirectory(raspinfo)
diff --git a/srcpkgs/rpi-utils/template b/srcpkgs/rpi-utils/template
new file mode 100644
index 0000000000000..bbb7472b72a33
--- /dev/null
+++ b/srcpkgs/rpi-utils/template
@@ -0,0 +1,20 @@
+# Template file for 'rpi-utils'
+pkgname=rpi-utils
+version=20231105
+revision=1
+_commit=84b1831fe16b784fb3e5bfbacf76b42a821ae720
+archs="armv6l* armv7l* aarch64*"
+build_style=cmake
+makedepends="dtc-devel"
+depends="python3 perl bash"
+short_desc="Collection of utilities for Raspberry Pi"
+maintainer="classabbyamp <void@placeviolette.net>"
+license="BSD-3-Clause"
+homepage="https://github.com/raspberrypi/utils"
+distfiles="https://github.com/raspberrypi/utils/archive/${_commit}.tar.gz"
+checksum=c97ad394e1694f41c2c6748b6e78621c74a51f20bf006c9579267f68d3157563
+python_version=3
+
+post_install() {
+ vlicense LICENCE
+}
From b1ad884add2dcffb65da247526fb56d568c4330e Mon Sep 17 00:00:00 2001
From: classabbyamp <void@placeviolette.net>
Date: Fri, 17 Nov 2023 13:51:52 -0500
Subject: [PATCH 4/4] rpi-eeprom: update to 2023.11.09.
- install manpages (like is done in the debian rules)
- adds rpi5 firmware
---
srcpkgs/rpi-eeprom/template | 30 +++++++++++++++++++++---------
1 file changed, 21 insertions(+), 9 deletions(-)
diff --git a/srcpkgs/rpi-eeprom/template b/srcpkgs/rpi-eeprom/template
index fb017a50966cd..55b7d396efeb5 100644
--- a/srcpkgs/rpi-eeprom/template
+++ b/srcpkgs/rpi-eeprom/template
@@ -1,17 +1,18 @@
# Template file for 'rpi-eeprom'
pkgname=rpi-eeprom
-version=2023.09.29
+version=2023.11.09
revision=1
-_githash="4f2d676b4e2a9c2d9ee1ab42015ce711fde97afa"
-archs="armv7* aarch64*"
+_githash="6b14e84a2fb2e1f7220a404f65e7e0985f07c9e5"
+archs="armv7l* aarch64*"
conf_files="/etc/default/rpi-eeprom-update"
-depends="binutils pciutils python3 rpi-firmware rpi-userland"
-short_desc="Bootloader and VL805 USB controller EEPROM update tool for RPi4"
+hostmakedepends="help2man python3"
+depends="binutils pciutils python3 rpi-firmware rpi-utils"
+short_desc="Bootloader and VL805 USB controller EEPROM update tool for RPi4/5"
maintainer="Leah Neukirchen <leah@vuxu.org>"
license="BSD-3-Clause, custom:Proprietary"
homepage="https://github.com/raspberrypi/rpi-eeprom/"
distfiles="https://github.com/raspberrypi/rpi-eeprom/archive/${_githash}.tar.gz"
-checksum="189c5d37f3102247cec72619e3cb357d027ec526fa3c7373d3107bd6c9e30e29"
+checksum=3907711bb2ff78a0e9120709b72b04d6d010f93f79d525af0454d3d27a772aca
python_version=3
repository=nonfree
@@ -21,9 +22,20 @@ do_install() {
vbin rpi-eeprom-digest
vinstall rpi-eeprom-update-default 644 etc/default rpi-eeprom-update
- vmkdir usr/lib/firmware/raspberrypi/bootloader
- # need to figure out how to package both pi4 (2711) and pi5 (2712) fw
- vcopy firmware-2711/* usr/lib/firmware/raspberrypi/bootloader/
+ help2man -N --version-string="${version}" --help-option="-h" \
+ --name="Checks whether the Raspberry Pi bootloader EEPROM is up-to-date and updates the EEPROM" \
+ --output=rpi-eeprom-update.1 ./rpi-eeprom-update
+ vman rpi-eeprom-update.1
+
+ help2man -N --version-string="${version}" --help-option="-h" \
+ --name="Bootloader EEPROM configuration tool for the Raspberry Pi 4/5" \
+ --output=rpi-eeprom-config.1 ./rpi-eeprom-config
+ vman rpi-eeprom-config.1
+
+ for soc in 2711 2712; do
+ vmkdir usr/lib/firmware/raspberrypi/bootloader-"$soc"
+ vcopy firmware-"$soc"/* usr/lib/firmware/raspberrypi/bootloader-"$soc"/
+ done
vlicense LICENSE
}
next prev parent reply other threads:[~2023-11-18 4:02 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-18 4:01 [PR PATCH] " classabbyamp
2023-11-18 4:02 ` classabbyamp [this message]
2023-11-18 19:54 ` [PR PATCH] [Updated] " classabbyamp
2023-11-19 19:19 ` classabbyamp
2023-11-20 3:17 ` classabbyamp
2023-11-21 11:57 ` 0x5c
2023-11-22 22:39 ` moabeat-berlin
2023-12-23 18:09 ` [PR PATCH] [Updated] " classabbyamp
2023-12-23 18:10 ` classabbyamp
2023-12-23 18:13 ` classabbyamp
2023-12-23 22:24 ` [PR PATCH] [Updated] " classabbyamp
2023-12-23 22:26 ` classabbyamp
2024-01-05 19:46 ` [PR PATCH] [Updated] " classabbyamp
2024-01-05 21:26 ` classabbyamp
2024-01-05 21:28 ` classabbyamp
2024-01-05 21:28 ` classabbyamp
2024-01-17 19:23 ` [PR PATCH] [Merged]: " classabbyamp
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231118040220.v_Dfw4p72K9d3tMqGbXEP1AH3qsIcS3I6V2uL9_-9es@z \
--to=classabbyamp@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).