如何在linux(内核2.6.x)下驱动USBADSL
发表于:2007-07-04来源:作者:点击数:
标签:
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(要在此处下载我已
1.准备工作 现在确认你有一支Conexant USB ADSL的Modem和以下文件,(如果您没有备齐这些东西,下面的工作将无法进行)
引用:
cxacru.tar.bz2 rp-pppoe-3.5.tar.gz Kernel-2.6.x patch-2.6.X_date_a
clearcase/" target="_blank" >ccessrunner.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 (E
XPERIMENTAL)
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 = de
bug, 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 & PID
# Values for OPEN_MODE are:
# 0 = auto selection, G.Handshake
# 1 = auto selection, T1.413
# 2 = G.Handshake
# 3 = ANSI T1.413
# 4 = ITU-T G.992.1 (G.DMT)
# 5 = ITU-T G.992.2 (G.LITE)
OPEN_MODE=4
# ATM
VPI=0
VCI=33
# Specific for RFC1483/2684 routed/bridged
# if IP_ADDRESS is blank in bridged mode then it uses DHCP to get IP
IP_ADDRESS=
NETMASK=255.255.255.255
GATEWAY=
需要更改的是# Protocol # ADSL # ATM
如果你用的是RFC1483/2684协议还要设置# Specific for RFC1483/2684 routed/bridged
PPPOE和PPPOA的用户只要修改# Protocol # ADSL # ATM 这3项就可以了
3.拨号 在终端下输入cxstart.sh建立连接 cxstop.sh断掉连接
用ifconfig检查一下你是否已经连上了,像这个样子:
代码:
[root@Love root]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
nas0 Link encap:Ethernet HWaddr 00:00:01:00:00:00
inet6 addr: fe80::200:1ff:fe00:0/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:17650 errors:0 dropped:0 overruns:0 frame:0
TX packets:15790 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:15856545 (15.1 Mb) TX bytes:2128934 (2.0 Mb)
ppp0 Link encap:Point-to-Point Protocol
inet addr:221.214.196.80 P-t-P:221.0.64.38 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:16454 errors:0 dropped:0 overruns:0 frame:0
TX packets:14588 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:15674609 (14.9 Mb) TX bytes:1613794 (1.5 Mb)
[root@Love root]#
原文转自:http://www.ltesting.net