From 64142553fbf36cc7ca253086c2f29bc5feb63685 Mon Sep 17 00:00:00 2001 From: viktorxda <35473052+viktorxda@users.noreply.github.com> Date: Thu, 4 May 2023 18:56:56 +0200 Subject: [PATCH] small updates for sysupgrade/wireless-configuration (#753) Co-authored-by: viktorxda --- general/overlay/usr/sbin/sysupgrade | 17 ++++++++--------- general/package/busybox/busybox.config | 4 ++-- .../wireless-configuration/files/script/adapter | 2 ++ .../files/script/wireless | 15 +++++++++++---- 4 files changed, 23 insertions(+), 15 deletions(-) diff --git a/general/overlay/usr/sbin/sysupgrade b/general/overlay/usr/sbin/sysupgrade index 7d33cd8e..1b59a074 100755 --- a/general/overlay/usr/sbin/sysupgrade +++ b/general/overlay/usr/sbin/sysupgrade @@ -1,9 +1,9 @@ #!/bin/sh # -# OpenIPC.org | v.20221118 +# OpenIPC.org | v.20230503 # -scr_version=1.0.16 +scr_version=1.0.17 args=" $@" @@ -65,7 +65,7 @@ do_update_rootfs() { check_soc "$(head -1 ${y}/etc/hostname | cut -d- -f2)" compare_versions "$system_version" "$(get_system_version "$y")" && exit_update=1 umount "$y" && rm -rf "$y" && losetup -d "$loop" - [ "$exit_update" ] && return 0 + [ "1" = "$exit_update" ] && return 0 else die "Unable to mount $y!" fi @@ -77,15 +77,14 @@ do_update_rootfs() { do_wipe_overlay() { echo_c 33 "\nOverlayFS" echo "Erase overlay partition" - [ $(ipcinfo -F) = "nand" ] || jffs2="-j" + [ $(get_flash_type mtd) = "nand" ] || jffs2="-j" flash_eraseall $jffs2 "$(get_device "rootfs_data")" } download_firmware() { echo_c 33 "\nFirmware" osr=$(get_system_build) - ftype=$(ipcinfo -F 2>/dev/null) - [ ${#ftype} -ge 4 ] && ftype=$(get_flash_type) + ftype=$(get_flash_type) build="${soc}-${ftype}-${osr}" [ -z "$url" ] && url="https://github.com/OpenIPC/firmware/releases/download/latest/openipc.${build}.tgz" echo "Download from $url" @@ -206,10 +205,10 @@ get_system_build() { grep "BUILD_OPTION" "/etc/os-release" | head -1 | cut -d= -f2 } -# This flash type detection is deprecated and will be removed in the next updates... get_flash_type() { - has_nand=$(fw_printenv bootcmd | grep nand | wc -l) - [ "1" = "$has_nand" ] && echo "nand" || echo "nor" + local x=$(ipcinfo -F) + [ -z "$1" ] && [ "$x" = "nand" ] && $(fw_printenv bootcmd | grep -qv nand) && x=nor + echo "$x" } print_sysinfo() { diff --git a/general/package/busybox/busybox.config b/general/package/busybox/busybox.config index 7a0dbeca..4f4f2da0 100644 --- a/general/package/busybox/busybox.config +++ b/general/package/busybox/busybox.config @@ -313,7 +313,7 @@ CONFIG_TEST=y CONFIG_TEST1=y CONFIG_TEST2=y CONFIG_FEATURE_TEST_64=y -# CONFIG_TIMEOUT is not set +CONFIG_TIMEOUT=y CONFIG_TOUCH=y # CONFIG_FEATURE_TOUCH_NODEREF is not set CONFIG_FEATURE_TOUCH_SUSV3=y @@ -785,7 +785,7 @@ CONFIG_I2CSET=y CONFIG_I2CDUMP=y CONFIG_I2CDETECT=y CONFIG_I2CTRANSFER=y -CONFIG_INOTIFYD=y +# CONFIG_INOTIFYD is not set CONFIG_LESS=y CONFIG_FEATURE_LESS_MAXLINES=9999999 CONFIG_FEATURE_LESS_BRACKETS=y diff --git a/general/package/wireless-configuration/files/script/adapter b/general/package/wireless-configuration/files/script/adapter index b8c1d276..2093cab7 100755 --- a/general/package/wireless-configuration/files/script/adapter +++ b/general/package/wireless-configuration/files/script/adapter @@ -12,6 +12,7 @@ if [ "$SOC" == "hi3516ev300" ]; then echo 7 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio7/direction echo 0 > /sys/class/gpio/gpio7/value + echo 7 > /sys/class/gpio/unexport modprobe mt7601usta fi @@ -20,5 +21,6 @@ if [ "$SOC" == "t21" ]; then echo 50 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio50/direction echo 0 > /sys/class/gpio/gpio50/value + echo 50 > /sys/class/gpio/unexport modprobe 8188fu fi diff --git a/general/package/wireless-configuration/files/script/wireless b/general/package/wireless-configuration/files/script/wireless index b09e5d6e..ba5ec52d 100755 --- a/general/package/wireless-configuration/files/script/wireless +++ b/general/package/wireless-configuration/files/script/wireless @@ -19,14 +19,21 @@ case "$PHASE" in pre-up) /etc/network/adapter wpa_passphrase "$WPA_SSID" "$WPA_PASS" > $WPA_TEMP - [ "$WPA_MODE" = "client" ] && sed -i '2i \\tscan_ssid=1' $WPA_TEMP - [ "$WPA_MODE" = "server" ] && sed -i '2i \\tmode=2' $WPA_TEMP + if [ "$WPA_MODE" = "server" ]; then + sed -i '2i \\tmode=2' $WPA_TEMP + else + sed -i '2i \\tscan_ssid=1' $WPA_TEMP + fi exit 0 ;; post-up) - wpa_supplicant -B -i wlan0 -c $WPA_TEMP - [ "$WPA_MODE" = "server" ] && udhcpd + if [ "$WPA_MODE" = "server" ]; then + timeout 3m udhcpd -f &> /dev/null & + timeout 3m wpa_supplicant -i wlan0 -c $WPA_TEMP &> /dev/null & + else + wpa_supplicant -B -i wlan0 -c $WPA_TEMP + fi exit 0 ;;