summaryrefslogtreecommitdiff
path: root/recipes-core/mlinux-scripts/mlinux-scripts-1.1/mlinux-switch-apn
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-core/mlinux-scripts/mlinux-scripts-1.1/mlinux-switch-apn')
-rwxr-xr-xrecipes-core/mlinux-scripts/mlinux-scripts-1.1/mlinux-switch-apn22
1 files changed, 16 insertions, 6 deletions
diff --git a/recipes-core/mlinux-scripts/mlinux-scripts-1.1/mlinux-switch-apn b/recipes-core/mlinux-scripts/mlinux-scripts-1.1/mlinux-switch-apn
index da87cd3..535ab17 100755
--- a/recipes-core/mlinux-scripts/mlinux-scripts-1.1/mlinux-switch-apn
+++ b/recipes-core/mlinux-scripts/mlinux-scripts-1.1/mlinux-switch-apn
@@ -31,10 +31,14 @@ function setchat {
>&2 echo "Invalid firmware SKU $fw"
return 1
else
- if ((silent == 0)) ; then
- echo "Setting chat script to ${lna3_chat_file[$fw]}"
+ canon_src=$(readlink -f "${lna3_chat_file[$fw]}")
+ canon_dest=$(readlink -f "${lna3_chat_link}")
+ if [[ ${canon_src} != ${canon_dest} ]] ; then
+ if ((silent == 0)) ; then
+ echo "Setting chat script to ${lna3_chat_file[$fw]}"
+ fi
+ ln -sf "${lna3_chat_file[$fw]}" "${lna3_chat_link}"
fi
- ln -sf "${lna3_chat_file[$fw]}" "${lna3_chat_link}"
fi
}
@@ -93,8 +97,14 @@ else
fi
if fwreply=$(/usr/sbin/mlinux-switch-cell-fw -1); then
- [[ $fwreply =~ Cellular[[:space:]]+radio[[:space:]]+firmware[[:space:]]+has[[:space:]]+been[[:space:]]+switched[[:space:]]+to[[:space:]]+([^[:space:]]*)[[:space:]]+image\. ]]
- fw=${BASH_REMATCH[1]}
- setchat $fw 0
+ if [[ $fwreply =~ Cellular[[:space:]]+radio[[:space:]]+firmware[[:space:]]+has[[:space:]]+(already[[:space:]]+)been[[:space:]]+switched[[:space:]]+to[[:space:]]+([^[:space:]]*)[[:space:]]+image\. ]] ; then
+ fw=${BASH_REMATCH[2]}
+ setchat $fw 0
+ else
+ fw=$(radio-query --active-firmware)
+ if (($? == 0)) ; then
+ setchat $fw 0
+ fi
+ fi
fi
fi \ No newline at end of file