Move enablemodem from ramips to new package adb-enablemodem and make it used also by TL-MR6400
Signed-off-by: Filip Moc <lede@moc6.cz>
This commit is contained in:
		
							
								
								
									
										26
									
								
								package/network/utils/adb-enablemodem/Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								package/network/utils/adb-enablemodem/Makefile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| include $(TOPDIR)/rules.mk | ||||
|  | ||||
| PKG_NAME:=adb-enablemodem | ||||
| PKG_VERSION:=2017-03-05 | ||||
| PKG_RELEASE:=1 | ||||
|  | ||||
| include $(INCLUDE_DIR)/package.mk | ||||
|  | ||||
| define Package/adb-enablemodem | ||||
|   SECTION:=net | ||||
|   CATEGORY:=Network | ||||
|   SUBMENU:=WWAN | ||||
|   TITLE:=Enable modem via adb | ||||
|   DEPENDS:=+adb | ||||
| endef | ||||
|  | ||||
| define Build/Compile | ||||
|         true | ||||
| endef | ||||
|  | ||||
| define Package/adb-enablemodem/install | ||||
| 	$(INSTALL_DIR)	$(1)/etc/init.d | ||||
| 	$(INSTALL_BIN)	./files/adb-enablemodem	$(1)/etc/init.d/adb-enablemodem | ||||
| endef | ||||
|  | ||||
| $(eval $(call BuildPackage,adb-enablemodem)) | ||||
							
								
								
									
										64
									
								
								package/network/utils/adb-enablemodem/files/adb-enablemodem
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								package/network/utils/adb-enablemodem/files/adb-enablemodem
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,64 @@ | ||||
| #!/bin/sh /etc/rc.common | ||||
|  | ||||
| START=99 | ||||
|  | ||||
| adb_exec() { | ||||
| 	adb -s "$serial" shell "( $1 ) >/dev/null 2>&1"'; printf "\nEXIT_CODE: %i\n" $?' | head -c 64 | grep -qx 'EXIT_CODE: 0\r\?' | ||||
| } | ||||
|  | ||||
| enablemodem_do() { | ||||
| 	logger -t adb-enablemodem 'INFO: waiting for device' | ||||
| 	adb wait-for-device | ||||
| 	serial="$(adb get-serialno)" | ||||
|  | ||||
| 	vendor_id="$(adb -s "$serial" shell 'uci get product.usb.vid' | head -c 16 | tr -d '\r\n')" | ||||
| 	product_id="$(adb -s "$serial" shell 'uci get product.usb.pid' | head -c 16 | tr -d '\r\n')" | ||||
|  | ||||
| 	case "$vendor_id:$product_id" in | ||||
| 	"0x2357:0x000D") # TP-LINK LTE MODULE | ||||
| 		case "$1" in | ||||
| 		start) | ||||
| 			if adb_exec ' | ||||
| 				chmod +x /WEBSERVER/www/cgi-bin/* | ||||
| 				fds="$(ls /proc/$$/fd | grep -v "^[012]$")" | ||||
| 				for fd in $fds; do | ||||
| 					eval "exec $fd>&-" | ||||
| 				done | ||||
| 				start-stop-daemon -x httpd -S -- -h /WEBSERVER/www/ | ||||
| 			'; then | ||||
| 				logger -t adb-enablemodem 'INFO: httpd on modem started' | ||||
| 			else | ||||
| 				logger -t adb-enablemodem 'ERROR: failed to start httpd on modem' | ||||
| 			fi | ||||
| 			option_newid='/sys/bus/usb-serial/drivers/option1/new_id' | ||||
| 			if [ -e "$option_newid" ]; then | ||||
| 				printf '%s %s' "$vendor_id" "$product_id" > "$option_newid" | ||||
| 			fi | ||||
| 			;; | ||||
| 		stop) | ||||
| 			if adb_exec 'start-stop-daemon -x httpd -K'; then | ||||
| 				logger -t adb-enablemodem 'INFO: httpd on modem stopped' | ||||
| 			else | ||||
| 				logger -t adb-enablemodem 'ERROR: failed to stop httpd on modem' | ||||
| 			fi | ||||
| 			;; | ||||
| 		esac | ||||
| 		;; | ||||
| 	*) | ||||
| 		logger -t adb-enablemodem "ERROR: unknown device $vendor_id:$product_id" | ||||
| 		;; | ||||
| 	esac | ||||
| } | ||||
|  | ||||
| start() { | ||||
| 	( enablemodem_do start ) & | ||||
| } | ||||
|  | ||||
| stop() { | ||||
| 	( enablemodem_do stop ) & | ||||
| } | ||||
|  | ||||
| restart() { | ||||
| 	( enablemodem_do stop; enablemodem_do start ) & | ||||
| } | ||||
|  | ||||
| @@ -455,7 +455,7 @@ TARGET_DEVICES += tl-mr3020-v1 tl-mr3040-v1 tl-mr3040-v2 tl-mr3220-v1 tl-mr3220- | ||||
| define Device/tl-mr6400-v1 | ||||
|   $(Device/tplink-8mlzma) | ||||
|   DEVICE_TITLE := TP-LINK TL-MR6400 v1 | ||||
|   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-net kmod-usb-net-rndis kmod-usb-serial kmod-usb-serial-option adb | ||||
|   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-net kmod-usb-net-rndis kmod-usb-serial kmod-usb-serial-option adb-enablemodem | ||||
|   BOARDNAME := TL-MR6400 | ||||
|   DEVICE_PROFILE := TLMR6400 | ||||
|   TPLINK_HWID := 0x64000001 | ||||
|   | ||||
| @@ -1,17 +0,0 @@ | ||||
| #!/bin/sh /etc/rc.common | ||||
|  | ||||
| START=99 | ||||
|  | ||||
| start() { | ||||
| 	. /lib/ramips.sh | ||||
|  | ||||
| 	local board=$(ramips_board_name) | ||||
| 	if [ $board = "mr200" ]; then | ||||
| 		adb wait-for-device | ||||
| 		adb shell chmod +x /WEBSERVER/www/cgi-bin/* | ||||
| 		adb shell httpd -h /WEBSERVER/www/ & | ||||
| 		echo "2357 000d" > /sys/bus/usb-serial/drivers/option1/new_id | ||||
| 		sleep 2 | ||||
| 		adb kill-server | ||||
| 	fi | ||||
| } | ||||
| @@ -58,7 +58,7 @@ define Device/ArcherMR200 | ||||
|   KERNEL := $(KERNEL_DTB) | ||||
|   KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-header ArcherMR200 -c | ||||
|   IMAGE/sysupgrade.bin := append-kernel | tplink-header ArcherMR200 -j -s | append-metadata | ||||
|   DEVICE_PACKAGES := kmod-usb2 kmod-usb-net kmod-usb-net-rndis kmod-usb-serial kmod-usb-serial-option adb | ||||
|   DEVICE_PACKAGES := kmod-usb2 kmod-usb-net kmod-usb-net-rndis kmod-usb-serial kmod-usb-serial-option adb-enablemodem | ||||
|   DEVICE_TITLE := TP-Link ArcherMR200 | ||||
| endef | ||||
| TARGET_DEVICES += ArcherMR200 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Filip Moc
					Filip Moc