a60ef9725d
On top of the firmware we already have, we also need device-specific modem firmware. Use script from firmware-motorola-potter(credit goes to Sireesh Kodali). Also imitate the logic in firmware-motorola-potter.
40 lines
1.1 KiB
Text
40 lines
1.1 KiB
Text
#!/sbin/openrc-run
|
|
|
|
description="Setup modem firmware for tqftpserv"
|
|
|
|
depend() {
|
|
before tqftpserv
|
|
}
|
|
|
|
start()
|
|
{
|
|
MODEM_FIRMWARE_DIR="/lib/firmware/postmarketos/persist"
|
|
# The firmware present here is unique to each device
|
|
# Using the firmware of one device on another can will simply fail
|
|
# This is needed because motorola devices derive IMEI and other unique
|
|
# IDs from these files
|
|
# See also: https://forum.xda-developers.com/g5-plus/how-to/fix-persist-resolve-imei0-explanation-t3825147
|
|
|
|
|
|
if [ ! -d $MODEM_FIRMWARE_DIR ]; then
|
|
# Make a copy of the firmware if its not already made
|
|
# Use the copy instead of the original, because if due to some error
|
|
# somehow the firmware gets corrupted, the original firmware will
|
|
# still be available on the 'persist' partition
|
|
|
|
PERSIST_PATH="/tmp/persist"
|
|
PERSIST_DEV="/dev/disk/by-partlabel/persist"
|
|
|
|
mkdir -p $PERSIST_PATH
|
|
mount $PERSIST_DEV -o ro,noatime $PERSIST_PATH
|
|
|
|
mkdir $MODEM_FIRMWARE_DIR
|
|
|
|
cp -R "$PERSIST_PATH"/rfs/msm/mpss/ "$MODEM_FIRMWARE_DIR"/readwrite
|
|
|
|
umount $PERSIST_DEV
|
|
rmdir $PERSIST_PATH
|
|
fi
|
|
|
|
ln -s "$MODEM_FIRMWARE_DIR"/readwrite/ /tmp/tqftpserv
|
|
}
|