diff --git a/device/community/device-shift-axolotl/APKBUILD b/device/community/device-shift-axolotl/APKBUILD
index 70d3d5b9711e3dafe9facaa38a35900b48350924..efeef7d61299e8ea32853134d15bf81446a8b574 100644
--- a/device/community/device-shift-axolotl/APKBUILD
+++ b/device/community/device-shift-axolotl/APKBUILD
@@ -43,7 +43,8 @@ package() {
 
 nonfree_firmware() {
 	pkgdesc="Modem, GPU and WiFi Firmware, also needed for osk-sdl"
-	depends="firmware-shift-sdm845>=0.4 firmware-shift-sdm845-initramfs soc-qcom-sdm845-nonfree-firmware"
+	depends="hexagonrpcd firmware-shift-sdm845>=0.4 firmware-shift-sdm845-initramfs soc-qcom-sdm845-nonfree-firmware"
+	install="$subpkgname.post-install $subpkgname.post-upgrade"
 	mkdir "$subpkgdir"
 
 	install -Dm644 q6voiced.conf "$subpkgdir"/etc/conf.d/q6voiced
diff --git a/device/community/device-shift-axolotl/device-shift-axolotl-nonfree-firmware.post-install b/device/community/device-shift-axolotl/device-shift-axolotl-nonfree-firmware.post-install
new file mode 100644
index 0000000000000000000000000000000000000000..5cf61f597e9878477c62e42242beb702e9b9279d
--- /dev/null
+++ b/device/community/device-shift-axolotl/device-shift-axolotl-nonfree-firmware.post-install
@@ -0,0 +1,2 @@
+#!/bin/sh
+rc-update add hexagonrpcd-sdsp
diff --git a/device/community/device-shift-axolotl/device-shift-axolotl-nonfree-firmware.post-upgrade b/device/community/device-shift-axolotl/device-shift-axolotl-nonfree-firmware.post-upgrade
new file mode 120000
index 0000000000000000000000000000000000000000..821dad4c2ca4f651345cf5b97774894d5bc34a7d
--- /dev/null
+++ b/device/community/device-shift-axolotl/device-shift-axolotl-nonfree-firmware.post-upgrade
@@ -0,0 +1 @@
+device-shift-axolotl-nonfree-firmware.post-install
\ No newline at end of file