openwrt固件支持3G和4G上网卡
http://wiki.openwrt.org/doc/howtobuild/wireless-router-with-a-3g-dongle
Building image with support for 3g/4g and usb tethering
Preparing build environment
First of all, you need a complete build environment, either physical or virtual system, as described on the OpenWrt buildroot exigence.
You need to clone OpenWrt git repository on your build system and synchronize all package feeds with your config file.
Be sure to understand the build procedure to prevent build failure.
Configuring packages
Selecting target architecture and profile
Run make menuconfig
to configure OpenWrt packages.
Select your architecture on which you would put your compiled OpenWrt image. Then select your target profile, according your hardware type.
If you have selected correct value for target system, target profile, and target images, go to next step.
Selecting kernel modules for usb networking support.
Go to Kernel Modules → USB Support
.
Select the following modules by pressing y
to include the modules within the compiled image.
Kernel Modules -> USB Support <*> kmod-usb2 <*> kmod-usb-ohci <*> kmod-usb-uhci <*> kmod-usb-acm # For ACM based modem, such as Nokia Phones <*> kmod-usb-net # For tethering and rndis supportkmod-usb-net –> to support usb networking interface.
Select all subsets if you want perfect support for usb network interfaces, including Android and iPhone tethering. Some newer 4g dongles use usb network interface (rndis) instead of legacy serial protocol.
<*> kmod-usb-net............... Kernel modules for USB-to-Ethernet convertors <*> kmod-usb-net-asix...... Kernel module for USB-to-Ethernet Asix convertors <*> kmod-usb-net-cdc-eem..................... Support for CDC EEM connections -*- kmod-usb-net-cdc-ether.............. Support for cdc ethernet connections <*> kmod-usb-net-cdc-mbim..................... Kernel module for MBIM Devices -*- kmod-usb-net-cdc-ncm..................... Support for CDC NCM connections <*> kmod-usb-net-cdc-subset...... Support for CDC Ethernet subset connections <*> kmod-usb-net-dm9601-ether........ Support for DM9601 ethernet connections <*> kmod-usb-net-hso.. Kernel module for Option USB High Speed Mobile Devices <*> kmod-usb-net-ipheth..................... Apple iPhone USB Ethernet driver <*> kmod-usb-net-kalmia................... Samsung Kalmia based LTE USB modem <*> kmod-usb-net-kaweth.. Kernel module for USB-to-Ethernet Kaweth convertors <*> kmod-usb-net-mcs7830 <*> kmod-usb-net-pegasus <*> kmod-usb-net-qmi-wwan.................................... QMI WWAN driver <*> kmod-usb-net-rndis......................... Support for RNDIS connections <*> kmod-usb-net-sierrawireless.......... Support for Sierra Wireless devices <*> kmod-usb-net-smsc95xx. SMSC LAN95XX based USB 2.0 10/100 ethernet deviceskmod-usb-serial → to support legacy 3g dongles.
Select all subsets to ensure that your dongle works. Most 3g dongles use the option driver or generic serial driver to work. Note that option driver has better capability of distinguishing between modem serial interfaces and storage interface than generic usb serial driver.
<*> kmod-usb-serial..................... Support for USB-to-Serial converters <*> kmod-usb-serial-ark3116........ Support for ArkMicroChips ARK3116 devices <*> kmod-usb-serial-belkin........................ Support for Belkin devices <*> kmod-usb-serial-ch341.......................... Support for CH341 devices <*> kmod-usb-serial-cp210x........... Support for Silicon Labs cp210x devices <*> kmod-usb-serial-cypress-m8.............. Support for CypressM8 USB-Serial <*> kmod-usb-serial-ftdi............................ Support for FTDI devices <*> kmod-usb-serial-ipw.................... Support for IPWireless 3G devices <*> kmod-usb-serial-keyspan........ Support for Keyspan USB-to-Serial devices <*> kmod-usb-serial-mct.............. Support for Magic Control Tech. devices <*> kmod-usb-serial-mos7720.............. Support for Moschip MOS7720 devices <*> kmod-usb-serial-motorola-phone............ Support for Motorola usb phone <*> kmod-usb-serial-option................... Support for Option HSDPA modems <*> kmod-usb-serial-oti6858...... Support for Ours Technology OTI6858 devices <*> kmod-usb-serial-pl2303............... Support for Prolific PL2303 devices <*> kmod-usb-serial-qualcomm................. Support for Qualcomm USB serial <*> kmod-usb-serial-sierrawireless....... Support for Sierra Wireless devices <*> kmod-usb-serial-ti-usb...................... Support for TI USB 3410/5052 <*> kmod-usb-serial-visor............... Support for Handspring Visor devices -*- kmod-usb-serial-wwan..................... Support for GSM and CDMA modems
Additional packages required for 3g functionality
Go to Network
section. Select `uqmi` to support qmi interface and `ppp` to support standard point-to-point protocol.
Network <*>ppp <*>uqmiGo to
Utilities
section. Select comgt
to provide control over 3g interface and usb-modeswitch
to provide mode switching between virtual cd-rom interface to serial interface.
Utilities <*>comgt <*>usb-modeswitch
Web Interface Support
If you want to control your 3g dongle with Luci web interface, go to Luci.
Luci 1. Collections <*> luci 3. Applications <*> luci-app-multiwan (optional to support multiple 3g dongles) 6. Protocols <*> luci-proto-3g -*- luci-proto-ppp
Build process
Continue selecting packages as needed. When you are done, run the build process
time make V=s download && time make V=s
If build process is successful, your firmware images will be located on bin/target-platform/
.
If your hardware-specific image name could not be found, it's possible that you added too many packages that don't fit your hardware flash memory. Try reducing packages and restart the build process if such case happens.