歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> 如何在linux(內核2.6.x)下驅動USBADSL

如何在linux(內核2.6.x)下驅動USBADSL

日期:2017/3/6 15:50:45   编辑:關於Unix
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_aclearcase/" 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 (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 & 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]#

Copyright © Linux教程網 All Rights Reserved