如何在linux(内核2.6.x)下驱动USB ADSL
1.准备工作
现在确认你有一支Conexant USB ADSL的Modem和以下文件,(如果您没有备齐这些东西,下面的工作将无法进行)
引用:
cxacru.tar.bz2 rp-pppoe-3.5.tar.gz Kernel-2.6.x patch-2.6.X_date_accessrunner.gz
说明:
其中cxacru.tar.bz2(要在此处下载我已经打好补丁的文件)是USB ADSL的驱动程序文件源代码包
rp-pppoe-3.5.tar.gz(或更高版本)是pppoe的拨号程序源代码包
Kernel-2.6.x是Kernel的源代码包
patch-2.6.X_date_accessrunner.gz是内核的补丁文件
确定备齐以上文件后就可以进行下面的工作了
2.开始安装
首先将设备联结好
2.1给内核打补丁并编译内核
解压内核包把patch-2.6.X_date_accessrunner.gz拷贝到内核目录的上级目录
执行 代码:
gunzip -c patch-2.6.x_YYYYMMDD_accessrunner.gz | patch -p1
如果你的Kernel已经有如下支持(可以在Kernel的.config文件中查找到)就不必重新编译
代码:
Code maturity level options
Prompt for development and/or incomplete code/drivers
Loadable module support
Enable loadable module support
Set version information on all module symbols
Kernel module loader
Networking options
< *> Packet socket
< *> Unix domain sockets
TCP/IP networking
Asynchronous Transfer Mode (ATM)
USB support
< *> Support for USB
Preliminary USB device filesystem
UHCI
OHCI
Alcatel Speedtouch USB support (USB_SPEEDTOUCH)
Networking options
Asynchronous Transfer Mode (ATM)
Classical IP over ATM
Networking options
[M] RFC1483/2684 Bridged protocols
Network Device Support
PPP (point-to-point protocol) support
PPP Deflate compression
PPP over Ethernet (EXPERIMENTAL)
Network Device Support
PPP (point-to-point protocol) support
PPP Deflate compression
PPP over ATM
Processor type and features
[ ] Symmetric multi-processing support
Cryptographic API (CRYPTO)
CRC32c CRC algorithm (CRYPTO_CRC32C)
Library routines
CRC32c (Castagnoli, et al) Cyclic Redundancy-Check (LIBCRC32C)
设置好后 make 、make modules 、make modules_install、make install、reboot
2.2编译驱动和拨号程序
解压cxacru.tar.bz2,ln /内核源代码目录 /usr/linux -s
然后在源代码目录中make,
解压rp-pppoe-3.5.tar.gz,在其目录中执行./go 如果你用X 就可以用./go-gui
设置好你的拨号程序,要注意的是在填写设备的时候要填写nas0
nas0是驱动程序虚拟出来的USB Modem
2.3设置协议
编辑/etc/cxacru文件,像这个样子:
代码:
#
# Config file for Conexant AccessRunner
#
# Driver mode
DRIVER_MODE=1 # 1 = normal, 2 = debug, 3 = normal max speed (without ask adsl status), 4 = debug max speed (without ask adsl status)
# Protocol
PROTOCOL_MODE=4 # 1 = RFC1483/2684 routed, 2 = PPP over ATM (pppoa), 3 = RFC1483/2684 bridged, 4 = PPP over Ethernet (pppoe)
# Paths
BINARY_PATH="/usr/sbin"
ATM_PATH=""
# ADSL
# if OPEN_MODE is blank then cxload uses default mode acoording VID