diff options
| author | John Vogel <jvogel@stygian.me> | 2026-07-28 05:06:21 -0400 |
|---|---|---|
| committer | John Vogel <jvogel@stygian.me> | 2026-07-28 05:06:21 -0400 |
| commit | 280e3d5e48deda1ff3e908f954cd64ecaf487e27 (patch) | |
| tree | 95cbaacef0959f310122ffd98207008ebdfe5e42 | |
| parent | 2b0afe1960bc606395238eb191f28f67fe049e27 (diff) | |
| download | dragon-master.tar.gz | |
| -rw-r--r-- | dragon-mkinitfs/APKBUILD | 55 | ||||
| -rw-r--r-- | dragon-mkinitfs/dragon-mkinitfs.post-install | 22 |
2 files changed, 77 insertions, 0 deletions
diff --git a/dragon-mkinitfs/APKBUILD b/dragon-mkinitfs/APKBUILD new file mode 100644 index 0000000..d8f8016 --- /dev/null +++ b/dragon-mkinitfs/APKBUILD @@ -0,0 +1,55 @@ +# Maintainer: John Vogel <jvogel@stygian.me> +maintainer="John Vogel <jvogel@stygian.me>" +pkgname=dragon-mkinitfs +pkgver=0.0.1 +pkgrel=0 +pkgdesc="Radxa Dragon Q6A features modules for mkinitfs" +url="https://github.com/radxa/kernel" +arch="noarch !armv7 !armhf !loongarch64 !ppc64le !riscv64 !s390x !x86 !x86_64" +license="MIT" +depends="aic8800-dragon + aic8800-dragon-firmware + linux-dragon + linux-firmware-qcom + mkinitfs + " +install="$pkgname.post-install" +options="!check" +builddir="$srcdir/" + +package() { + install -dm755 "$pkgdir"/etc/mkinitfs/features.d + + cat > "$pkgdir"/etc/mkinitfs/features.d/dragon.files <<-EOF +/lib/firmware/qcom/a660_sqe.fw.zst +/lib/firmware/qcom/a660_gmu.bin.zst +/lib/firmware/qcom/qcs6490/a660_zap.mbn.zst +/lib/firmware/qcom/qcs6490/QCS6490-Radxa-Dragon-Q6A-tplg.bin.zst +/lib/firmware/qcom/qcs6490/radxa/dragon-q6a/adsp.mbn.zst +/lib/firmware/qcom/qcs6490/radxa/dragon-q6a/cdsp.mbn.zst +EOF + + cat > "$pkgdir"/etc/mkinitfs/features.d/aic8800.modules <<-EOF +updates/aic_btusb.ko* +updates/aic8800_fdrv/aic8800_fdrv.ko* +updates/aic_load_fw/aic_load_fw.ko* +EOF + + cat > "$pkgdir"/etc/mkinitfs/features.d/aic8800.files <<-EOF +/lib/firmware/aic8800_fw/USB/aic8800D80/fw_adid_8800d80_u02.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fmacfw_8800d80_h_u02.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/aic_powerlimit_8800d80.txt +/lib/firmware/aic8800_fw/USB/aic8800D80/lmacfw_rf_8800d80_u02.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fw_patch_8800d80_u02_ext0.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fw_patch_8800d80_u04.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fw_patch_table_8800d80_u04.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fmacfw_8800d80_u02.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fw_ble_scan_ad_filter.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fw_patch_8800d80_u02.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fw_patch_table_8800d80_u02.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/aic_userconfig_8800d80.txt +/lib/firmware/aic8800_fw/USB/aic8800D80/calibmode_8800d80.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fmacfw_8800d80_u02_ipc.bin +/lib/firmware/aic8800_fw/USB/aic8800D80/fmacfw_8800d80_h_u02_ipc.bin +EOF +} diff --git a/dragon-mkinitfs/dragon-mkinitfs.post-install b/dragon-mkinitfs/dragon-mkinitfs.post-install new file mode 100644 index 0000000..9df6e6f --- /dev/null +++ b/dragon-mkinitfs/dragon-mkinitfs.post-install @@ -0,0 +1,22 @@ +#!/bin/busybox sh + +# Add the default dtb for grub-mkconfig +if [ -f etc/default/grub ] && ! grep -qE -e '^GRUB_DEFAULT_DTB=.*' etc/default/grub; then + printf 'GRUB_DEFAULT_DTB="qcom/qcs6490-radxa-dragon-q6a.dtb"\n' >> /etc/default/grub +else + dtb="$(sed -n -e 's/^GRUB_DEFAULT_DTB=\(.*\)/\1/p' /etc/default/grub)" + case "$dtb" in + # Only change it if the value is empty + ''|'""') + sed -i -e 's/^\(GRUB_DEFAULT_DTB=\).*/\1"qcom/qcs6490-radxa-dragon-q6a.dtb"/' /etc/default/grub ;; + esac +fi + +if ! grep -qE -e '^custom_files="' /etc/mkinitfs/mkinitfs.conf; then + printf 'custom_files="\n' >> /etc/mkinitfs/mkinitfs.conf + cat /etc/mkinitfs/features.d/aic8800.files >> /etc/mkinitfs/mkinitfs.conf + cat /etc/mkinitfs/features.d/dragon.files >> /etc/mkinitfs/mkinitfs.conf + printf '"\n' >> /etc/mkinitfs/mkinitfs.conf +fi + +exit 0 |
