aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-01-19 15:31:13 -0600
committerCraig Jennings <c@cjennings.net>2026-01-19 15:31:13 -0600
commit6c4e7509377f366336474e7fcb7cb88df9d39171 (patch)
tree92eefeb048238197a551c58bc98844cac2f59f3c
parent837f4ccdb6166ac47aff036d4af9287675c1db9a (diff)
downloadarchangel-6c4e7509377f366336474e7fcb7cb88df9d39171.tar.gz
archangel-6c4e7509377f366336474e7fcb7cb88df9d39171.zip
Add AMD ISP firmware to initramfs for APUs with cameras
-rwxr-xr-xcustom/install-archzfs17
1 files changed, 17 insertions, 0 deletions
diff --git a/custom/install-archzfs b/custom/install-archzfs
index 64e6dda..58e499a 100755
--- a/custom/install-archzfs
+++ b/custom/install-archzfs
@@ -1019,6 +1019,23 @@ configure_initramfs() {
cp /mnt/etc/mkinitcpio.conf /mnt/etc/mkinitcpio.conf.bak
+ # Check for AMD ISP (Image Signal Processor) firmware needs
+ # ISP is used for camera processing on AMD APUs (Strix, Strix Halo, etc.)
+ # The firmware must be in initramfs since amdgpu loads before root is mounted
+ if lspci | grep -qi "amd.*display\|amd.*vga\|radeon"; then
+ local isp_firmware
+ isp_firmware=$(ls /mnt/usr/lib/firmware/amdgpu/isp_*.bin.zst 2>/dev/null | head -1)
+ if [[ -n "$isp_firmware" ]]; then
+ info "AMD APU detected with ISP firmware - adding to initramfs"
+ mkdir -p /mnt/etc/mkinitcpio.conf.d
+ cat > /mnt/etc/mkinitcpio.conf.d/amd-isp.conf << EOF
+# AMD ISP (Image Signal Processor) firmware for camera support
+# Loaded early so amdgpu can initialize ISP before root is mounted
+FILES+=($isp_firmware)
+EOF
+ fi
+ fi
+
# Configure hooks for ZFS
# - Remove autodetect: it filters modules based on live ISO hardware, not target
# This ensures NVMe, AHCI, and other storage drivers are always included