git » linux-armlfs.git » commit 4c0d489

linux-armlfs 6.15.7

author Urja (ARMLFS builder)
2025-07-18 13:16:28 UTC
committer Urja (ARMLFS builder)
2025-07-18 13:16:28 UTC
parent 290980080aff110b20316ad5d53995f3ed70963c

linux-armlfs 6.15.7

.SRCINFO +71 -7
PKGBUILD +174 -4
PKGBUILD.old +177 -0
armlfs.patch +34 -34
cpupower.default +29 -0
cpupower.service +12 -0
cpupower.systemd +32 -0
usbipd.service +9 -0

diff --git a/.SRCINFO b/.SRCINFO
index 93cbf02..e6e3089 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
 pkgbase = linux-armlfs
-	pkgver = 6.15.6
-	pkgrel = 1
+	pkgver = 6.15.7
+	pkgrel = 2
 	url = http://www.kernel.org/
 	arch = armv7h
 	license = GPL2
@@ -13,24 +13,88 @@ pkgbase = linux-armlfs
 	makedepends = dtc
 	makedepends = vboot-utils
 	makedepends = uboot-tools
+	makedepends = perl
+	makedepends = python
+	makedepends = python-setuptools
+	makedepends = slang
+	makedepends = elfutils
+	makedepends = libunwind
+	makedepends = zstd
+	makedepends = libcap
+	makedepends = libtraceevent
+	makedepends = openssl
+	makedepends = libpfm
+	makedepends = glib2
+	makedepends = sysfsutils
+	makedepends = ncurses
 	options = !strip
 	source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.15.tar.xz
-	source = https://www.kernel.org/pub/linux/kernel/v6.x/patch-6.15.6.xz
+	source = https://www.kernel.org/pub/linux/kernel/v6.x/patch-6.15.7.xz
 	source = armlfs.patch
 	source = kernel.its
 	source = kernel.keyblock
 	source = kernel_data_key.vbprivk
 	source = 60-linux.hook
+	source = cpupower.default
+	source = cpupower.systemd
+	source = cpupower.service
+	source = usbipd.service
 	source = config
 	sha256sums = 7586962547803be7ecc4056efc927fb25214548722bd28171172f3599abb9764
-	sha256sums = dbea7028dd7775e53b1d5ce891daf7f7b9e561428628bcc172a0384be9f087b1
-	sha256sums = 8de3ae1d510c40dbba142ece37faf09db15f00ce94f6b312880cb1a9e3fc471c
+	sha256sums = c9e59c4de94817c04b87ab54b956721c1c27d1dde9a92dea531a65d3da2931e3
+	sha256sums = 771c34de0a623f3f8da63c87dd7c41f093ce05481813ce07fd32730f292d49ea
 	sha256sums = 994aee74b13313bdc7c47df4d621c890f5ee52bc18f6c7b658de215c17423b2a
 	sha256sums = 4e708c9ec43ac4a5d718474c9431ba6b6da3e64a9dda6afd2853a9e9e3079ffb
 	sha256sums = bc9e707a86e55a93f423e7bcdae4a25fd470b868e53829b91bbe2ccfbc6da27b
 	sha256sums = ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21
+	sha256sums = 4fa509949d6863d001075fa3e8671eff2599c046d20c98bb4a70778595cd1c3f
+	sha256sums = b692f4859ed3fd9831a058a450a84d8c409bf7e3e45aac1c2896a14bb83f3d7a
+	sha256sums = 42d2ec9f1d9cc255ee7945a27301478364ef482f5a6ddfc960189f03725ccec2
+	sha256sums = 8053a6bcd0776a7fefccc5012f93a1710653529e0eab59afcc39f24361c64869
 	sha256sums = 91b60d81760bf349abc4fcc8e7660269ed5fc996a636a1b88b5328256b5c6772
 
-pkgname = linux-armlfs
+pkgname = cpupower
+	pkgdesc = Linux kernel tool to examine and tune power saving related features of your processor
+	groups = linux-tools
+	depends = glibc
+	depends = bash
+	conflicts = cpufrequtils
+	replaces = cpufrequtils
+	backup = etc/default/cpupower
 
-pkgname = linux-armlfs-chromebook
+pkgname = perf
+	pkgdesc = Linux kernel performance auditing tool
+	groups = linux-tools
+	depends = glibc
+	depends = perl
+	depends = python
+	depends = slang
+	depends = elfutils
+	depends = libunwind
+	depends = binutils
+	depends = coreutils
+	depends = glib2
+	depends = xz
+	depends = zlib
+	depends = libelf
+	depends = bash
+	depends = zstd
+	depends = libcap
+	depends = libtraceevent
+	depends = openssl
+	depends = libsframe.so
+	depends = libpfm
+
+pkgname = tmon
+	pkgdesc = Monitoring and Testing Tool for Linux kernel thermal subsystem
+	groups = linux-tools
+	depends = glibc
+	depends = ncurses
+
+pkgname = usbip
+	pkgdesc = An USB device sharing system over IP network
+	groups = linux-tools
+	depends = glibc
+	depends = glib2
+	depends = sysfsutils
+	depends = systemd
diff --git a/PKGBUILD b/PKGBUILD
index 58aab61..dcdc275 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,4 +1,8 @@
 # ARMv7 ex-multi-platform -> C201 -> ARMLFS
+# This also builds a (subset of) the kernel tools (perf, cpupower, tmon, usbip),
+# to avoid archiving yet another copy of the kernel
+# sources under the name of an another package.
+
 # Original by:
 # Maintainer: Kevin Mihelich <kevin@archlinuxarm.org>
 # Modified by:
@@ -14,13 +18,15 @@ pkgbase=linux-armlfs${_xname}
 _srcname=linux-6.15
 _kernelname=${pkgbase#linux}
 _desc="Veyron Speedy"
-pkgver=6.15.6
-pkgrel=1
+pkgver=6.15.7
+pkgrel=2
 arch=('armv7h')
 url="http://www.kernel.org/"
 license=('GPL2')
 makedepends=('xmlto' 'docbook-xsl' 'kmod' 'inetutils' 'bc' 'git' 'dtc' 'vboot-utils' 'uboot-tools')
 options=('!strip')
+_buildtools=1
+_onlybuildtools=0
 source=(
 	"https://www.kernel.org/pub/linux/kernel/v${pkgver::1}.x/${_srcname}.tar.xz"
         "https://www.kernel.org/pub/linux/kernel/v${pkgver::1}.x/patch-${pkgver}.xz"
@@ -30,6 +36,10 @@ source=(
         'kernel.keyblock'
         'kernel_data_key.vbprivk'
         '60-linux.hook'
+        'cpupower.default'
+        'cpupower.systemd'
+        'cpupower.service'
+        'usbipd.service'
         'config')
 
 prepare() {
@@ -54,11 +64,17 @@ prepare() {
   # don't run depmod on 'make install'. We'll do this ourselves in packaging
   sed -i '2iexit 0' scripts/depmod.sh
 
+  # force our perf version
+  cat > tools/perf/util/PERF-VERSION-GEN << EOF
+#!/bin/sh
+echo '#define PERF_VERSION "$pkgver-$pkgrel"' > "\${1:-.}"/PERF-VERSION-FILE
+EOF
 }
 
 build() {
   cd "${srcdir}/${_srcname}"
 
+  if [ $_onlybuildtools -ne 1 ]; then
   # get kernel version
   make prepare
 
@@ -87,6 +103,51 @@ build() {
 
   # build!
   make -j2 ${MAKEFLAGS} zImage modules dtbs
+  # if $_onlybuildtools 
+  fi 
+
+  # skip tools build:
+  if [ $_buildtools -ne 1 ]; then
+    return 0
+  fi
+
+  echo ':: perf'
+  pushd tools/perf
+  make -f Makefile.perf \
+    prefix=/usr \
+    lib=lib/perf \
+    perfexecdir=lib/perf \
+    WERROR=0 \
+    NO_SDT=1 \
+    BUILD_BPF_SKEL=0 \
+    PYTHON=python \
+    NO_LIBLLVM=1 \
+    NO_LIBNUMA=1 \
+    NO_LIBBPF=1 \
+    PYTHON_CONFIG=python3-config \
+    LIBPFM4=1 \
+    DESTDIR="$pkgdir"
+  popd
+
+  echo ':: cpupower'
+  pushd tools/power/cpupower
+  sed -i 's/-lpci//g' Makefile
+  make VERSION=$pkgver-$pkgrel
+  popd
+
+  echo ':: usbip'
+  pushd tools/usb/usbip
+  # Fix gcc compilation
+  sed -i 's,-Wall -Werror -Wextra,-fcommon,' configure.ac
+  ./autogen.sh
+  ./configure --prefix=/usr
+  make
+  popd
+
+  echo ':: tmon'
+  pushd tools/thermal/tmon
+  make
+  popd
 }
 
 _package() {
@@ -160,18 +221,127 @@ _package-chromebook() {
   cp vmlinux.kpart "${pkgdir}/boot"
 }
 
+if [ $_onlybuildtools -ne 1 ]; then
 pkgname=("${pkgbase}" "${pkgbase}-chromebook")
 for _p in ${pkgname[@]}; do
   eval "package_${_p}() {
     _package${_p#${pkgbase}}
   }"
 done
+fi
+
+if [ $_buildtools -eq 1 ]; then
+pkgname+=(
+  'cpupower'
+  'perf'
+  'tmon'
+  'usbip'
+)
+
+# perf deps
+makedepends+=('perl' 'python' 'python-setuptools' 'slang' 'elfutils' 'libunwind'
+     'zstd' 'libcap' 'libtraceevent' 'openssl' 'libpfm')
+#   'audit' 'zstd' 'libcap' 'libtraceevent' 'openssl' 'clang' 'llvm-libs' 'libpfm')
+# cpupower deps (none for arm)
+# usbip deps
+makedepends+=('glib2' 'sysfsutils')
+# tmon deps
+makedepends+=('ncurses')
+
+# if _buildtools
+fi
+
+package_perf() {
+  pkgdesc='Linux kernel performance auditing tool'
+  depends=('glibc' 'perl' 'python' 'slang' 'elfutils' 'libunwind' 'binutils'
+            'coreutils' 'glib2' 'xz' 'zlib' 'libelf' 'bash'
+           'zstd' 'libcap' 'libtraceevent' 'openssl' 'libsframe.so' 'libpfm')
+  groups=('linux-tools')
+
+  cd ${_srcname}/tools/perf
+  make -f Makefile.perf \
+    prefix=/usr \
+    lib=lib/perf \
+    perfexecdir=lib/perf \
+    EXTRA_CFLAGS=' -Wno-error=bad-function-cast -Wno-error=declaration-after-statement -Wno-error=switch-enum' \
+    NO_SDT=1 \
+    BUILD_BPF_SKEL=0 \
+    PYTHON=python \
+    NO_LIBLLVM=1 \
+    NO_LIBNUMA=1 \
+    NO_LIBBPF=1 \
+    PYTHON_CONFIG=python3-config \
+    DESTDIR="$pkgdir" \
+    LIBPFM4=1 \
+    install install-python_ext
+  cd "$pkgdir"
+  # add linker search path
+  mkdir "$pkgdir/etc/ld.so.conf.d"
+  echo '/usr/lib/perf' > "$pkgdir/etc/ld.so.conf.d/$pkgname.conf"
+  # move completion in new directory
+  install -Dm644 etc/bash_completion.d/perf usr/share/bash-completion/completions/perf
+  rm -r etc/bash_completion.d
+  # no exec on usr/share
+  find usr/share -type f -exec chmod a-x {} \;
+}
+
+package_cpupower() {
+  pkgdesc='Linux kernel tool to examine and tune power saving related features of your processor'
+  backup=('etc/default/cpupower')
+  depends=('glibc' 'bash')
+  conflicts=('cpufrequtils')
+  replaces=('cpufrequtils')
+  groups=('linux-tools')
+
+  pushd ${_srcname}/tools/power/cpupower
+  make \
+    DESTDIR="$pkgdir" \
+    sbindir='/usr/bin' \
+    libdir='/usr/lib' \
+    mandir='/usr/share/man' \
+    docdir='/usr/share/doc/cpupower' \
+    install install-man
+  popd
+  # install startup scripts
+  install -Dm 644 $pkgname.default "$pkgdir/etc/default/$pkgname"
+  install -Dm 644 $pkgname.service "$pkgdir/usr/lib/systemd/system/$pkgname.service"
+  install -Dm 755 $pkgname.systemd "$pkgdir/usr/lib/systemd/scripts/$pkgname"
+}
+
+package_usbip() {
+  pkgdesc='An USB device sharing system over IP network'
+  depends=('glibc' 'glib2' 'sysfsutils' 'systemd')
+  groups=('linux-tools')
+
+  pushd ${_srcname}/tools/usb/usbip
+  make install DESTDIR="$pkgdir"
+  popd
+  # module loading
+  install -Dm 644 /dev/null "$pkgdir/usr/lib/modules-load.d/$pkgname.conf"
+  printf 'usbip-core\nusbip-host\n' > "$pkgdir/usr/lib/modules-load.d/$pkgname.conf"
+  # systemd
+  install -Dm 644 usbipd.service "$pkgdir/usr/lib/systemd/system/usbipd.service"
+}
+
+package_tmon() {
+  pkgdesc='Monitoring and Testing Tool for Linux kernel thermal subsystem'
+  depends=('glibc' 'ncurses')
+  groups=('linux-tools')
+
+  cd ${_srcname}/tools/thermal/tmon
+  make install INSTALL_ROOT="$pkgdir"
+}
+
 
 sha256sums=('7586962547803be7ecc4056efc927fb25214548722bd28171172f3599abb9764'
-            'dbea7028dd7775e53b1d5ce891daf7f7b9e561428628bcc172a0384be9f087b1'
-            '8de3ae1d510c40dbba142ece37faf09db15f00ce94f6b312880cb1a9e3fc471c'
+            'c9e59c4de94817c04b87ab54b956721c1c27d1dde9a92dea531a65d3da2931e3'
+            '771c34de0a623f3f8da63c87dd7c41f093ce05481813ce07fd32730f292d49ea'
             '994aee74b13313bdc7c47df4d621c890f5ee52bc18f6c7b658de215c17423b2a'
             '4e708c9ec43ac4a5d718474c9431ba6b6da3e64a9dda6afd2853a9e9e3079ffb'
             'bc9e707a86e55a93f423e7bcdae4a25fd470b868e53829b91bbe2ccfbc6da27b'
             'ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21'
+            '4fa509949d6863d001075fa3e8671eff2599c046d20c98bb4a70778595cd1c3f'
+            'b692f4859ed3fd9831a058a450a84d8c409bf7e3e45aac1c2896a14bb83f3d7a'
+            '42d2ec9f1d9cc255ee7945a27301478364ef482f5a6ddfc960189f03725ccec2'
+            '8053a6bcd0776a7fefccc5012f93a1710653529e0eab59afcc39f24361c64869'
             '91b60d81760bf349abc4fcc8e7660269ed5fc996a636a1b88b5328256b5c6772')
diff --git a/PKGBUILD.old b/PKGBUILD.old
new file mode 100644
index 0000000..dba6498
--- /dev/null
+++ b/PKGBUILD.old
@@ -0,0 +1,177 @@
+# ARMv7 ex-multi-platform -> C201 -> ARMLFS
+# Original by:
+# Maintainer: Kevin Mihelich <kevin@archlinuxarm.org>
+# Modified by:
+# Maintainer: Urja Rannikko <urjaman@gmail.com>
+
+buildarch=4
+
+# This is the "extension" to the base linux-c201 name -- used in zImage 
+# dtb paths too
+_xname=
+
+pkgbase=linux-armlfs${_xname}
+_srcname=linux-6.15
+_kernelname=${pkgbase#linux}
+_desc="Veyron Speedy"
+pkgver=6.15.7
+pkgrel=1
+arch=('armv7h')
+url="http://www.kernel.org/"
+license=('GPL2')
+makedepends=('xmlto' 'docbook-xsl' 'kmod' 'inetutils' 'bc' 'git' 'dtc' 'vboot-utils' 'uboot-tools')
+options=('!strip')
+source=(
+	"https://www.kernel.org/pub/linux/kernel/v${pkgver::1}.x/${_srcname}.tar.xz"
+        "https://www.kernel.org/pub/linux/kernel/v${pkgver::1}.x/patch-${pkgver}.xz"
+	# Those are good until 9.x (10.x will fail), fix this then :P
+	'armlfs.patch'
+        'kernel.its'
+        'kernel.keyblock'
+        'kernel_data_key.vbprivk'
+        '60-linux.hook'
+        'config')
+
+prepare() {
+  cd "${srcdir}/${_srcname}"
+
+  # hack to allow git apply to work on non-git files while in a git directory
+  export GIT_DIR=/var/empty
+
+  # add upstream patch
+  git apply --whitespace=nowarn ../patch-${pkgver}
+
+  # ARMLFS patchset
+  git apply ../armlfs.patch
+
+  unset GIT_DIR
+  
+  cat "${srcdir}/config" > ./.config
+
+  # Append (if -rc*) or set ${_xname}-${pkgrel} as extraversion
+  sed -ri "s/^(EXTRAVERSION =) ?(-rc[^-]*|).*/\1 \2${_xname}-${pkgrel}/" Makefile
+
+  # don't run depmod on 'make install'. We'll do this ourselves in packaging
+  sed -i '2iexit 0' scripts/depmod.sh
+
+}
+
+build() {
+  cd "${srcdir}/${_srcname}"
+
+  # get kernel version
+  make prepare
+
+  # load configuration
+  # Configure the kernel. Replace the line below with one of your choice.
+  #make menuconfig # CLI menu for configuration
+  #make nconfig # new CLI menu for configuration
+  #make xconfig # X-based configuration
+  if [ -n "$_menuconfig" ]; then
+    make menuconfig # CLI menu for configuration
+    cp ./.config ../../config
+  else
+    make olddefconfig
+  fi
+
+  # ... or manually edit .config
+
+  ####################
+  # stop here
+  # this is useful to configure the kernel
+  #msg "Stopping build"
+  #return 1
+  ####################
+
+  #yes "" | make config
+
+  # build!
+  make -j2 ${MAKEFLAGS} zImage modules dtbs
+}
+
+_package() {
+  pkgdesc="The Linux Kernel and modules - ${_desc}"
+  depends=('coreutils' 'linux-firmware' 'kmod' 'mkinitcpio>=0.7')
+  optdepends=('crda: to set the correct wireless channels of your country')
+  provides=('kernel26' "linux=${pkgver}")
+
+  cd "${srcdir}/${_srcname}"
+
+  KARCH=arm
+
+  # get kernel version
+  _kernver="$(make kernelrelease)"
+  _basekernel=${_kernver%%-*}
+  _basekernel=${_basekernel%.*}
+
+  mkdir -p "${pkgdir}"/{boot,usr/lib/modules}
+  make INSTALL_MOD_PATH="${pkgdir}/usr" modules_install
+  make INSTALL_DTBS_PATH="${pkgdir}/boot/dtbs${_xname}" dtbs_install
+  cp arch/$KARCH/boot/zImage "${pkgdir}/boot/zImage${_xname}"
+
+  # make room for external modules
+  local _extramodules="extramodules-${_basekernel}${_kernelname}"
+  ln -s "../${_extramodules}" "${pkgdir}/usr/lib/modules/${_kernver}/extramodules"
+
+  # add real version for building modules and running depmod from hook
+  echo "${_kernver}" |
+    install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modules/${_extramodules}/version"
+
+  # remove build link
+  rm "${pkgdir}"/usr/lib/modules/${_kernver}/build
+
+  # now we call depmod...
+  depmod -b "${pkgdir}/usr" -F System.map "${_kernver}"
+
+  # sed expression for following substitutions
+  local _subst="
+    s|%PKGBASE%|${pkgbase}|g
+    s|%KERNVER%|${_kernver}|g
+    s|%EXTRAMODULES%|${_extramodules}|g
+  "
+
+  # install pacman hooks
+  sed "${_subst}" ../60-linux.hook |
+    install -Dm644 /dev/stdin "${pkgdir}/usr/share/libalpm/hooks/60-${pkgbase}.hook"
+}
+
+_package-chromebook() {
+  pkgdesc="The Linux Kernel - ${_desc} - Chromebooks"
+  depends=("linux-armlfs${_xname}")
+  install=chromebook.install
+
+  cd "${srcdir}/${_srcname}"
+
+  cp ../kernel.its .
+  mkimage -D "-I dts -O dtb -p 2048" -f kernel.its vmlinux.uimg || true
+  dd if=/dev/zero of=bootloader.bin bs=512 count=1
+  echo 'console=ttyS2,115200n8 console=tty0 init=/sbin/init root=PARTUUID=%U/PARTNROFF=1 rootwait rw noinitrd' > cmdline
+  vbutil_kernel \
+    --pack vmlinux.kpart \
+    --version 1 \
+    --vmlinuz vmlinux.uimg \
+    --arch arm \
+    --keyblock ../kernel.keyblock \
+    --signprivate ../kernel_data_key.vbprivk \
+    --config cmdline \
+    --bootloader bootloader.bin
+
+  mkdir -p "${pkgdir}/boot"
+  cp vmlinux.kpart "${pkgdir}/boot"
+}
+
+pkgname=("${pkgbase}" "${pkgbase}-chromebook")
+for _p in ${pkgname[@]}; do
+  eval "package_${_p}() {
+    _package${_p#${pkgbase}}
+  }"
+done
+
+sha256sums=('7586962547803be7ecc4056efc927fb25214548722bd28171172f3599abb9764'
+            'c9e59c4de94817c04b87ab54b956721c1c27d1dde9a92dea531a65d3da2931e3'
+            '771c34de0a623f3f8da63c87dd7c41f093ce05481813ce07fd32730f292d49ea'
+            '994aee74b13313bdc7c47df4d621c890f5ee52bc18f6c7b658de215c17423b2a'
+            '4e708c9ec43ac4a5d718474c9431ba6b6da3e64a9dda6afd2853a9e9e3079ffb'
+            'bc9e707a86e55a93f423e7bcdae4a25fd470b868e53829b91bbe2ccfbc6da27b'
+            'ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21'
+            '91b60d81760bf349abc4fcc8e7660269ed5fc996a636a1b88b5328256b5c6772')
diff --git a/armlfs.patch b/armlfs.patch
index a843f97..fe91988 100644
--- a/armlfs.patch
+++ b/armlfs.patch
@@ -1,4 +1,4 @@
-From 84d74496610ea20b1d66c82fab0032ec4468412f Mon Sep 17 00:00:00 2001
+From dd62ce31275f1766be6400a118a0f496e076cdd2 Mon Sep 17 00:00:00 2001
 From: Urja Rannikko <urjaman@gmail.com>
 Date: Mon, 27 Aug 2018 10:30:55 +0000
 Subject: [PATCH 01/34] drivers: clk-rk3288: support for dedicating NPLL to a
@@ -170,7 +170,7 @@ index df2b2d706450f..df85bd94647a8 100644
 2.44.0
 
 
-From a512713aca7b9cbb30e168c96bee9a826c1097bd Mon Sep 17 00:00:00 2001
+From e159f5f7f349bcc4410224b5c4c131270f40662f Mon Sep 17 00:00:00 2001
 From: Urja Rannikko <urjaman@gmail.com>
 Date: Wed, 22 Aug 2018 18:36:40 +0000
 Subject: [PATCH 02/34] drm: dw_hdmi-rockchip: better clock selection logic and
@@ -466,7 +466,7 @@ index f737e7d46e667..0bd62f21d6e57 100644
 2.44.0
 
 
-From 562d4bac8a93ffcefdc2b2e6bc8dec66c4a7c657 Mon Sep 17 00:00:00 2001
+From 6ee44a87817d32be0207ce1583f3ce81ffb68608 Mon Sep 17 00:00:00 2001
 From: Urja Rannikko <urjaman@gmail.com>
 Date: Mon, 27 Aug 2018 19:00:50 +0000
 Subject: [PATCH 03/34] dts: rk3288: support for dedicating npll to a vop
@@ -505,7 +505,7 @@ index 3f1d640afafae..2992c323d5554 100644
 2.44.0
 
 
-From 862cd20651d574fd271da84737a4b987cfa335ab Mon Sep 17 00:00:00 2001
+From e253242062b4732d53fe2c176520cdf0c6415d9b Mon Sep 17 00:00:00 2001
 From: Urja Rannikko <urjaman@gmail.com>
 Date: Mon, 27 Aug 2018 19:03:49 +0000
 Subject: [PATCH 04/34] dts: rk3288-veyron-chromebook: dedicate npll to
@@ -598,7 +598,7 @@ index 3677571b4d827..b61a4b0d7015b 100644
 2.44.0
 
 
-From f1b23cc2f3c64b8c278d14b3368433e84ce957f1 Mon Sep 17 00:00:00 2001
+From 49cb9e40c6000858dcbdb08a9df03c91f032ba2a Mon Sep 17 00:00:00 2001
 From: SolidHal <hal@halemmerich.com>
 Date: Sun, 21 Oct 2018 16:40:15 -0500
 Subject: [PATCH 05/34] Added a second reset when having an issue reading the
@@ -651,7 +651,7 @@ index 4830628510e6e..7658effcb6efe 100644
 2.44.0
 
 
-From d2e0f420701e3b3735e353a65e341bcaf12fdfe9 Mon Sep 17 00:00:00 2001
+From dd661291f5d3c6f0b7570d35c71d2373b0c3049f Mon Sep 17 00:00:00 2001
 From: "Miouyouyou (Myy)" <myy@miouyouyou.fr>
 Date: Tue, 9 Oct 2018 22:01:07 +0200
 Subject: [PATCH 06/34] block: partitions: efi: Ignore bizarre Chromebook GPT
@@ -804,7 +804,7 @@ index 84b9f36b9e479..09726227e8913 100644
 2.44.0
 
 
-From 7076a82f9d0cb7d52582d993823f4b4dcb8cd06b Mon Sep 17 00:00:00 2001
+From 768e34931802fe87e75c79d3eb6c65381c2760fb Mon Sep 17 00:00:00 2001
 From: "Miouyouyou (Myy)" <myy@miouyouyou.fr>
 Date: Tue, 30 Oct 2018 22:44:54 +0100
 Subject: [PATCH 07/34] mmc: Added a flag to disable cache flush during reset
@@ -892,7 +892,7 @@ index 68f09a955a902..eb7dbf0f9b101 100644
 2.44.0
 
 
-From bd76b821dc670e1c77eb1825f8be48f1e44dfec5 Mon Sep 17 00:00:00 2001
+From eeea2103586d5cd29bd94f863c7be3c2d5cf945c Mon Sep 17 00:00:00 2001
 From: "Miouyouyou (Myy)" <myy@miouyouyou.fr>
 Date: Thu, 1 Nov 2018 21:31:26 +0100
 Subject: [PATCH 08/34] arm: dts: veyron: Added a flag to disable cache flush
@@ -925,7 +925,7 @@ index 260d6c92cfd11..08ce8bfb70b21 100644
 2.44.0
 
 
-From 3cd613d78e5e16e344ea0e9543286cf40437c83a Mon Sep 17 00:00:00 2001
+From ef81b07b65f1112cddb99d9c5a6e9e549f892001 Mon Sep 17 00:00:00 2001
 From: Hal Emmerich <hal@halemmerich.com>
 Date: Wed, 21 Aug 2019 16:52:41 -0500
 Subject: [PATCH 09/34] Fix ath9k dwc2 init frame overruns
@@ -968,7 +968,7 @@ index b0098792dd225..73d7c7754bc57 100644
 2.44.0
 
 
-From 78b0ef4b4bc20db06b7abebe6cdee037c5c179b9 Mon Sep 17 00:00:00 2001
+From d95ec6da73b14c9fa4d822983eb5eba184d5be86 Mon Sep 17 00:00:00 2001
 From: barzur <boris@konbu.org>
 Date: Fri, 12 Jul 2019 11:33:32 +0900
 Subject: [PATCH 10/34] usb/dwc2/hcd: channel halt may not be an error
@@ -1039,7 +1039,7 @@ index 5c7538d498dd1..96dc5d8115d2c 100644
 2.44.0
 
 
-From af04d7fb2f5383735c24845c04c0af7fa51c9e57 Mon Sep 17 00:00:00 2001
+From e683db973eb4444218817faaeeb9692a0090c1b5 Mon Sep 17 00:00:00 2001
 From: Urja Rannikko <urjaman@gmail.com>
 Date: Tue, 8 Oct 2019 11:03:37 +0000
 Subject: [PATCH 11/34] drm/panel: edp: Extend Innolux N116BGE mode info for
@@ -1086,7 +1086,7 @@ index 52028c8f8988d..cc29548273c2d 100644
 2.44.0
 
 
-From 42af1b3e71d774a7071e0a4dc769331d50545e37 Mon Sep 17 00:00:00 2001
+From b16317c0cdfbfca126d8ff33052b105d12efeb41 Mon Sep 17 00:00:00 2001
 From: Urja Rannikko <urjaman@gmail.com>
 Date: Tue, 8 Oct 2019 11:12:33 +0000
 Subject: [PATCH 12/34] ARM: dts: rockchip: Adjust rk3288-veyron n116bge mode
@@ -1125,7 +1125,7 @@ index fb031964fa2bb..128176b7c3721 100644
 2.44.0
 
 
-From 2e457916ed44af8dafbcf20d3177bba08e389f82 Mon Sep 17 00:00:00 2001
+From 26580545bf83cd538649fe24a981a3e51e88a916 Mon Sep 17 00:00:00 2001
 From: Urja Rannikko <urjaman@gmail.com>
 Date: Mon, 25 Dec 2023 18:06:10 +0200
 Subject: [PATCH 13/34] dts: veyron: bluetooth: disable dma on uart0
@@ -1153,7 +1153,7 @@ index 2992c323d5554..949bc1829c8fa 100644
 2.44.0
 
 
-From d382df6048a34a080cfd62e7d6b7f79aa49034e3 Mon Sep 17 00:00:00 2001
+From 0b4946cbbe37c7410c74fc33852dd01b187cdc1a Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:00 +0000
 Subject: [PATCH 14/34] media: v4l2-common: Add helpers to calculate
@@ -1283,7 +1283,7 @@ index e4b2de3833ee3..d9b0766f3073f 100644
 2.44.0
 
 
-From b5192930fb10f4748f4fed7b6477bec64639e499 Mon Sep 17 00:00:00 2001
+From 3528d19ca2a6c6ac9e4bc04015e7550594666c81 Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:01 +0000
 Subject: [PATCH 15/34] media: v4l2: Add NV15 and NV20 pixel formats
@@ -1519,7 +1519,7 @@ index af86ece741e94..ca7b3e8863ca3 100644
 2.44.0
 
 
-From e3253f0121242cc1e8bdc83d8b74a390c11bb0b9 Mon Sep 17 00:00:00 2001
+From ea1996ad11c92d9d64f8554108a17cb21851e21f Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:02 +0000
 Subject: [PATCH 16/34] media: rkvdec: h264: Use bytesperline and buffer height
@@ -1578,7 +1578,7 @@ index 4fc167b42cf0c..7a1e76d423df5 100644
 2.44.0
 
 
-From 119e8985ee51e448cb2110dc70953ff09466892e Mon Sep 17 00:00:00 2001
+From 02060be800d62fb3b47e080d456ab36797f73445 Mon Sep 17 00:00:00 2001
 From: Alex Bee <knaerzche@gmail.com>
 Date: Sun, 5 Nov 2023 16:55:03 +0000
 Subject: [PATCH 17/34] media: rkvdec: h264: Don't hardcode SPS/PPS parameters
@@ -1633,7 +1633,7 @@ index 7a1e76d423df5..8bce8902b8dda 100644
 2.44.0
 
 
-From 069b66621b8aeedb8d06a56e37b70a8b6d8bd45f Mon Sep 17 00:00:00 2001
+From 19071eeb798b317e024487b98479b2f9f795bb17 Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:04 +0000
 Subject: [PATCH 18/34] media: rkvdec: h264: Remove SPS validation at streaming
@@ -1698,7 +1698,7 @@ index 8bce8902b8dda..815d5359ddd5c 100644
 2.44.0
 
 
-From 75694ba4b541636d0a3f68bf5b49ffe799fabcbc Mon Sep 17 00:00:00 2001
+From fb5850f653c012164fc1d5db8db42b047ea86c51 Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:05 +0000
 Subject: [PATCH 19/34] media: rkvdec: Extract rkvdec_fill_decoded_pixfmt into
@@ -1768,7 +1768,7 @@ index 65befffc35696..4857410a20d0c 100644
 2.44.0
 
 
-From a6cd305c9c21538e16f5da65314008519fb88864 Mon Sep 17 00:00:00 2001
+From 585bc8cf3fac4a59749d1f564245d5eb9981ebaf Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:06 +0000
 Subject: [PATCH 20/34] media: rkvdec: Move rkvdec_reset_decoded_fmt helper
@@ -1856,7 +1856,7 @@ index 4857410a20d0c..fd5a8a78070ef 100644
 2.44.0
 
 
-From fd6fbdb99da0d924257b185d936932b0475502aa Mon Sep 17 00:00:00 2001
+From ba07254d5b1c699a9c4f695bff20a602a3fa0d46 Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:07 +0000
 Subject: [PATCH 21/34] media: rkvdec: Extract decoded format enumeration into
@@ -1970,7 +1970,7 @@ index fd5a8a78070ef..938a8e3e5c768 100644
 2.44.0
 
 
-From eb0f8af3fca2ce0edd12a63360232797c7ecb169 Mon Sep 17 00:00:00 2001
+From f4d489159d0da96d74b38ef905e86a74e128dae9 Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:08 +0000
 Subject: [PATCH 22/34] media: rkvdec: Add image format concept
@@ -2133,7 +2133,7 @@ index 633335ebb9c49..6f8cf50c5d99a 100644
 2.44.0
 
 
-From cd1b96bbc97101a7ed0372ab6b22e9226147f3d4 Mon Sep 17 00:00:00 2001
+From f71dbbd99679405a832878705464e10198993ece Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:09 +0000
 Subject: [PATCH 23/34] media: rkvdec: Add get_image_fmt ops
@@ -2234,7 +2234,7 @@ index 6f8cf50c5d99a..e466a2753ccfc 100644
 2.44.0
 
 
-From 673decbb110008a152e05a7a436b1a8c98ee21d6 Mon Sep 17 00:00:00 2001
+From 38bde1b170d3362f845f3a985bc4c2ed88f510fe Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 16:55:10 +0000
 Subject: [PATCH 24/34] media: rkvdec: h264: Support High 10 and 4:2:2 profiles
@@ -2426,7 +2426,7 @@ index e466a2753ccfc..9a9f4fced7a18 100644
 2.44.0
 
 
-From 650ad0059a265fa05d1c2bcc0dcc1b726e6e70a9 Mon Sep 17 00:00:00 2001
+From 87acb059d8a1eca6d2612aea773522abe5033332 Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 23:36:08 +0000
 Subject: [PATCH 25/34] media: rkvdec: Add HEVC backend
@@ -5272,7 +5272,7 @@ index 9a9f4fced7a18..2f3bda1df5f07 100644
 2.44.0
 
 
-From 2e0ac0fa2dbc0e1596d10dd4658928e329481e70 Mon Sep 17 00:00:00 2001
+From 173dfc847d97b92efb58ce9fcff6b943166a399a Mon Sep 17 00:00:00 2001
 From: Alex Bee <knaerzche@gmail.com>
 Date: Sun, 5 Nov 2023 23:36:09 +0000
 Subject: [PATCH 26/34] media: rkvdec: Add variants support
@@ -5414,7 +5414,7 @@ index 2f3bda1df5f07..14ce26a6c6186 100644
 2.44.0
 
 
-From 74d34b080098b8b4a1e38bb3a27290a09b72bc36 Mon Sep 17 00:00:00 2001
+From 298313bae9141cc68f34f393a6cc98bbc3e9179c Mon Sep 17 00:00:00 2001
 From: Alex Bee <knaerzche@gmail.com>
 Date: Sun, 5 Nov 2023 23:36:11 +0000
 Subject: [PATCH 27/34] media: rkvdec: Add RK3288 variant
@@ -5458,7 +5458,7 @@ index d9762471a9cde..ea53625e33344 100644
 2.44.0
 
 
-From 8353903ee6812bdffdd802414406afbd5225a186 Mon Sep 17 00:00:00 2001
+From 78ddad78bbb1816fae06acea0db30bba8637186a Mon Sep 17 00:00:00 2001
 From: Alex Bee <knaerzche@gmail.com>
 Date: Sun, 5 Nov 2023 23:36:12 +0000
 Subject: [PATCH 28/34] media: rkvdec: Disable QoS for HEVC and VP9 on RK3328
@@ -5603,7 +5603,7 @@ index 14ce26a6c6186..1d5d405da56cb 100644
 2.44.0
 
 
-From 6966847e90ec237adfda661a486761ef90bfeb85 Mon Sep 17 00:00:00 2001
+From 0aa109a3a9b1c670bfea26e2c3072e1195024fc9 Mon Sep 17 00:00:00 2001
 From: Jonas Karlman <jonas@kwiboo.se>
 Date: Sun, 5 Nov 2023 23:36:13 +0000
 Subject: [PATCH 29/34] media: dt-bindings: rockchip,vdec: Add RK3288
@@ -5636,7 +5636,7 @@ index 08b02ec167557..0f00e9c86737a 100644
 2.44.0
 
 
-From 1ce595a33e1402eaf040f0d43236a53dbbaa3eb8 Mon Sep 17 00:00:00 2001
+From 5b643a8cde73d6063da350cf297889eecc5a88b7 Mon Sep 17 00:00:00 2001
 From: Alex Bee <knaerzche@gmail.com>
 Date: Sun, 5 Nov 2023 23:36:14 +0000
 Subject: [PATCH 30/34] ARM: dts: rockchip: Add vdec node for RK3288
@@ -5689,7 +5689,7 @@ index 949bc1829c8fa..dbf2d3b8f13e1 100644
 2.44.0
 
 
-From 6b2be155653f590acd6826456bcfef0519bc7abb Mon Sep 17 00:00:00 2001
+From c03d773d6ac1db294a7a26fc1bc0ad5ae5b46fb3 Mon Sep 17 00:00:00 2001
 From: Urja Rannikko <urjaman@gmail.com>
 Date: Tue, 28 Sep 2021 20:23:13 +0300
 Subject: [PATCH 31/34] Revert "clk: divider: Implement and wire up
@@ -5755,7 +5755,7 @@ index c1f426b8a5043..3941b4d984f7d 100644
 2.44.0
 
 
-From 5ddd77b18e17fb206c4b3dc85cf67a5d5e1dab45 Mon Sep 17 00:00:00 2001
+From c44d82c3bb0f0c035f3d633f23aef2b561ee7f76 Mon Sep 17 00:00:00 2001
 From: Sebastian Reichel <sebastian.reichel@collabora.com>
 Date: Tue, 30 Jul 2024 20:05:05 +0200
 Subject: [PATCH 32/34] mfd: rk8xx: Fix shutdown handler
@@ -5939,7 +5939,7 @@ index 69cbea78b430b..be15b84cff9e9 100644
 2.44.0
 
 
-From 112f63f64a19b937cd1efd61172f3f20dff92a8c Mon Sep 17 00:00:00 2001
+From 8721344fc56149fe49c5d233804edd2c380e87ff Mon Sep 17 00:00:00 2001
 From: Robin Murphy <robin.murphy@arm.com>
 Date: Tue, 20 May 2025 18:10:16 +0100
 Subject: [PATCH 33/34] firmware: smccc: Stub out get_conduit()
@@ -5977,7 +5977,7 @@ index a3863da1510ee..97dc4d47c6642 100644
 2.44.0
 
 
-From 450c31f2ca03c7528e8752aefa57a0391a9e46dc Mon Sep 17 00:00:00 2001
+From ed883f53a9ca7be70904bb965972f52a51fb1930 Mon Sep 17 00:00:00 2001
 From: Robin Murphy <robin.murphy@arm.com>
 Date: Tue, 20 May 2025 18:10:17 +0100
 Subject: [PATCH 34/34] pmdomain: rockchip: Relax SMCCC dependency
diff --git a/cpupower.default b/cpupower.default
new file mode 100644
index 0000000..b5c522e
--- /dev/null
+++ b/cpupower.default
@@ -0,0 +1,29 @@
+# Define CPUs governor
+# valid governors: ondemand, performance, powersave, conservative, userspace.
+#governor='ondemand'
+
+# Limit frequency range
+# Valid suffixes: Hz, kHz (default), MHz, GHz, THz
+#min_freq="2.25GHz"
+#max_freq="3GHz"
+
+# Specific frequency to be set.
+# Requires userspace governor to be available.
+# Do not set governor field if you use this one.
+#freq=
+
+# Utilizes cores in one processor package/socket first before processes are 
+# scheduled to other processor packages/sockets.
+# See man (1) CPUPOWER-SET for additional details.
+#mc_scheduler=
+
+# Utilizes thread siblings of one processor core first before processes are
+# scheduled to other cores. See man (1) CPUPOWER-SET for additional details.
+#smp_scheduler=
+
+#  Sets a register on supported Intel processore which allows software to convey
+# its policy for the relative importance of performance versus energy savings to
+# the  processor. See man (1) CPUPOWER-SET for additional details.
+#perf_bias=
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/cpupower.service b/cpupower.service
new file mode 100644
index 0000000..dd432da
--- /dev/null
+++ b/cpupower.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Apply cpupower configuration
+ConditionVirtualization=!container
+
+[Service]
+Type=oneshot
+EnvironmentFile=/etc/default/cpupower
+ExecStart=/usr/lib/systemd/scripts/cpupower
+RemainAfterExit=yes
+
+[Install]
+WantedBy=multi-user.target
diff --git a/cpupower.systemd b/cpupower.systemd
new file mode 100644
index 0000000..c7266f0
--- /dev/null
+++ b/cpupower.systemd
@@ -0,0 +1,32 @@
+#!/bin/bash
+# Copyright © 2012, Sébastien Luttringer
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+declare -i fail=0
+
+# parse frequency options
+declare -a params=()
+params+=(${governor:+-g $governor})
+params+=(${min_freq:+-d $min_freq})
+params+=(${max_freq:+-u $max_freq})
+params+=(${freq:+-f $freq})
+
+# apply frequency options
+if ((${#params[@]} > 0)); then
+  cpupower frequency-set "${params[@]}" >/dev/null || fail=1
+fi
+
+# parse cpu options
+declare -a params=()
+params+=(${mc_scheduler:+-m $mc_scheduler})
+params+=(${smp_scheduler:+-s $smp_scheduler})
+params+=(${perf_bias:+-b $perf_bias})
+
+# apply cpu options
+if ((${#params[@]} > 0)); then
+  cpupower set "${params[@]}" >/dev/null || fail=1
+fi
+
+exit $fail
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/usbipd.service b/usbipd.service
new file mode 100644
index 0000000..1f3da08
--- /dev/null
+++ b/usbipd.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=USB/IP server
+After=network.target
+
+[Service]
+ExecStart=/usr/sbin/usbipd
+
+[Install]
+WantedBy=multi-user.target