Index: package/base-files/files/lib/network/config.sh =================================================================== --- package/base-files/files/lib/network/config.sh (revision 7069) +++ package/base-files/files/lib/network/config.sh (working copy) @@ -75,6 +75,8 @@ # 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: package/kernel/modules/usb.mk =================================================================== --- package/kernel/modules/usb.mk (revision 7069) +++ package/kernel/modules/usb.mk (working copy) @@ -170,6 +170,16 @@ 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: package/ppp/files/ppp.sh =================================================================== --- package/ppp/files/ppp.sh (revision 7069) +++ package/ppp/files/ppp.sh (working copy) @@ -21,6 +21,10 @@ 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 @@ 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" +} +