various patches to add support for ppp over evdo or character devices
authormbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 1 May 2007 21:53:32 +0000 (21:53 +0000)
committermbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 1 May 2007 21:53:32 +0000 (21:53 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7076 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/base-files/files/lib/network/config.sh
package/kernel/modules/usb.mk
package/ppp/files/ppp.sh

index eee72c0cdee9822ac7a0d3f179b0263d3396361d..7e90368e26fc1e99eb2de6b99fdd8661b910564b 100755 (executable)
@@ -75,6 +75,8 @@ prepare_interface() {
        # to create any interfaces here. The scripts have already done that, otherwise
        # the bridge interface wouldn't exist.
        [ "$iface" = "br-$config" ] && return 0;
+
+       [ -f "$iface" ] && return 0;
        
        ifconfig "$iface" 2>/dev/null >/dev/null && {
                # make sure the interface is removed from any existing bridge and brought down
index 99a497a92aae310ed27159b263132be1a107b807..d5af3d92b5664b81f4c731d767e9b708508b37e8 100644 (file)
@@ -170,6 +170,16 @@ define KernelPackage/usb-serial
 endef
 $(eval $(call KernelPackage,usb-serial))
 
+define KernelPackage/usb-serial-airprime
+  TITLE:=Support for Airprime (EVDO) 
+  DESCRIPTION:=Kernel support for Airprime (EVDO) 
+  DEPENDS:=kmod-usb-serial
+  SUBMENU:=$(USBMENU)
+  KCONFIG:=$(CONFIG_USB_SERIAL_AIRPRIME)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,65,airprime)
+endef
+$(eval $(call KernelPackage,usb-serial-airprime))
 
 define KernelPackage/usb-serial-belkin
   TITLE:=Support for Belkin devices
index 0bd75fc0a76e565307575c6ecaf8616b4f98fe8d..0d0941fda533dd7b3839d3a37968a6059a3442fd 100644 (file)
@@ -21,6 +21,10 @@ start_pppd() {
        config_get username "$cfg" username
        config_get password "$cfg" password
        config_get keepalive "$cfg" keepalive
+
+       config_get connect "$cfg" connect
+       config_get disconnect "$cfg" disconnect
+
        interval="${keepalive##*[, ]}"
        [ "$interval" != "$keepalive" ] || interval=5
        
@@ -34,7 +38,23 @@ start_pppd() {
                replacedefaultroute \
                ${username:+user "$username" password "$password"} \
                linkname "$cfg" \
-               ipparam "$cfg"
+               ipparam "$cfg" \
+               ${connect:+connect "$connect"} \
+               ${disconnect:+disconnect "$disconnect"}
 
        lock -u "/var/lock/ppp-${cfg}"
 }
+
+setup_interface_ppp() {
+       local iface="$1"
+       local config="$2"
+
+       config_get device "$config" device
+
+       config_get mtu "$cfg" mtu
+       mtu=${mtu:-1492}
+       start_pppd "$config" \
+               mtu $mtu mru $mtu \
+               "$device"
+}
+