diff options
author | David Thornley <david.thornley@touchstargroup.com> | 2018-06-22 16:25:22 +1000 |
---|---|---|
committer | John Crispin <john@phrozen.org> | 2018-06-22 09:45:08 +0200 |
commit | c4a0c0718af301076809b700d243be6bcf4a958d (patch) | |
tree | 2e10540a9b3f6069860eb48c53250568079a6623 | |
parent | 2ac5800fd945e41f27954942afa6742c2b6c9781 (diff) | |
download | mtk-20170518-c4a0c0718af301076809b700d243be6bcf4a958d.zip mtk-20170518-c4a0c0718af301076809b700d243be6bcf4a958d.tar.gz mtk-20170518-c4a0c0718af301076809b700d243be6bcf4a958d.tar.bz2 |
wwan: Add support for Gemalto Cinterion cellular modules
Includes specific support for PH8(1e2d-0053) / ELS61(1e2d-005b) modules.
Note for ELS61, the serial driver changes from serial option(ttyUSB) to usb-cdc (ttyACM).
Two additional fixes in this commit resolve issues with ttyACM devices: -
* wwan.sh - sys-fs has a subdirectory indirection (*/tty/ttyACMx) which was not handled properly
* wwan.usb - dependent scripts were not included, so this never actually called proto_set_available for example (and relied on inadvertent call for ttyUSB case)
Signed-off-by: David Thornley <david.thornley@touchstargroup.com>
(cherry picked from commit cb262b09396edd171eb3903e50ce5ddeb593f963)
-rw-r--r-- | package/network/utils/wwan/files/data/1e2d-0053 | 6 | ||||
-rw-r--r-- | package/network/utils/wwan/files/data/1e2d-005b | 5 | ||||
-rwxr-xr-x | package/network/utils/wwan/files/wwan.sh | 2 | ||||
-rw-r--r-- | package/network/utils/wwan/files/wwan.usb | 5 |
4 files changed, 17 insertions, 1 deletions
diff --git a/package/network/utils/wwan/files/data/1e2d-0053 b/package/network/utils/wwan/files/data/1e2d-0053 new file mode 100644 index 0000000..e83f04c --- /dev/null +++ b/package/network/utils/wwan/files/data/1e2d-0053 @@ -0,0 +1,6 @@ +{ + "desc": "Cinterion PH8", + "control": 2, + "data": 3 +} + diff --git a/package/network/utils/wwan/files/data/1e2d-005b b/package/network/utils/wwan/files/data/1e2d-005b new file mode 100644 index 0000000..6678ff0 --- /dev/null +++ b/package/network/utils/wwan/files/data/1e2d-005b @@ -0,0 +1,5 @@ +{ + "desc": "Cinterion ELS61", + "control": 1, + "data": 0 +} diff --git a/package/network/utils/wwan/files/wwan.sh b/package/network/utils/wwan/files/wwan.sh index 2e9d73f..e0bd4c8 100755 --- a/package/network/utils/wwan/files/wwan.sh +++ b/package/network/utils/wwan/files/wwan.sh @@ -59,7 +59,7 @@ proto_wwan_setup() { json_set_namespace $old_cb [ -n "$control" -a -n "$data" ] && { - ttys=$(ls -d /sys/bus/usb/devices/$devicename/${devicename}*/tty* | sed "s/.*\///g" | tr "\n" " ") + ttys=$(ls -d /sys/bus/usb/devices/$devicename/${devicename}*/tty?* /sys/bus/usb/devices/$devicename/${devicename}*/tty/tty?* | sed "s/.*\///g" | tr "\n" " ") ctl_device=/dev/$(echo $ttys | cut -d" " -f $((control + 1))) dat_device=/dev/$(echo $ttys | cut -d" " -f $((data + 1))) driver=comgt diff --git a/package/network/utils/wwan/files/wwan.usb b/package/network/utils/wwan/files/wwan.usb index 507b002..b757c1c 100644 --- a/package/network/utils/wwan/files/wwan.usb +++ b/package/network/utils/wwan/files/wwan.usb @@ -1,5 +1,10 @@ +#!/bin/sh + [ "$ACTION" = add -a "$DEVTYPE" = usb_device ] || exit 0 +. /lib/functions.sh +. /lib/netifd/netifd-proto.sh + vid=$(cat /sys$DEVPATH/idVendor) pid=$(cat /sys$DEVPATH/idProduct) [ -f "/lib/network/wwan/$vid:$pid" ] || exit 0 |