Skip to content

Commit 95081ca

Browse files
authored
Merge pull request #305 from lool/monza-workaround-missing-firmware
fix(monza): Add Monaco initramfs firmware overlay
2 parents 91aa26a + b3920c8 commit 95081ca

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

.github/workflows/linux-daily-monza.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,7 @@ jobs:
2525
# updated hexagon-dsp-binaries with Monza support is integrated; see
2626
# https://github.com/qualcomm-linux/qcom-deb-images/issues/298 and
2727
# https://github.com/linux-msm/hexagon-dsp-binaries/pull/59
28-
debos_extra_args: '-t overlays:qsc-deb-releases,workaround-hexagon-dsp-binaries-monza'
28+
# workaround-initramfs-firmware-monaco adds firmware to initramfs; see
29+
# https://github.com/qualcomm-linux/qcom-deb-images/issues/258
30+
debos_extra_args: '-t overlays:qsc-deb-releases,workaround-hexagon-dsp-binaries-monza,workaround-initramfs-firmware-monaco'
2931
secrets: inherit
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
#!/bin/sh
2+
# SPDX-License-Identifier: MIT
3+
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4+
5+
# Workaround for https://github.com/qualcomm-linux/qcom-deb-images/issues/258
6+
# Add monaco-specific firmware files to initramfs so they are available before
7+
# the root filesystem is mounted. This is required for proper hardware
8+
# initialization during early boot.
9+
10+
PREREQ=""
11+
prereqs()
12+
{
13+
echo "$PREREQ"
14+
}
15+
16+
case $1 in
17+
prereqs)
18+
prereqs
19+
exit 0
20+
;;
21+
esac
22+
23+
# shellcheck source=/dev/null
24+
. /usr/share/initramfs-tools/hook-functions
25+
# Begin real processing below this line
26+
27+
# Add monaco-specific firmware files
28+
# These files are required for DSP and other hardware initialization
29+
for fw in \
30+
/lib/firmware/qcom/qcs8300/adsp.mbn \
31+
/lib/firmware/qcom/qcs8300/cdsp0.mbn \
32+
/lib/firmware/qcom/qcs8300/gpdsp0.mbn \
33+
/lib/firmware/qcom/qcs8300/qupv3fw.elf
34+
do
35+
if [ ! -f "$fw" ]; then
36+
echo "ERROR: Required firmware file not found: $fw" >&2
37+
exit 1
38+
fi
39+
copy_file firmware "$fw"
40+
done

0 commit comments

Comments
 (0)