
我有一個 davicom dm9601 USB 乙太網路卡。
當我插入設備時,它會被檢測到並加載驅動程序,但我無法使用它連接到互聯網。
它可以在 XP 和其他筆記型電腦上完美運行,但不能在 Ubuntu 11.10 上運行
我該如何安裝這個驅動程式?我嘗試了很多事情但沒有任何效果。
如果我訪問此鏈接驅動程式但未編譯或者我可能做錯了什麼。
我找到了這個但不知道如何執行這些步驟。
這是我的lsusb
輸出:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002
Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device
001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID
1d6b:0001 Linux Foundation 1.1 root hub Bus 005 Device 001: ID
1d6b:0001 Linux Foundation 1.1 root hub Bus 006 Device 001: ID
1d6b:0001 Linux Foundation 1.1 root hub Bus 007 Device 001: ID
1d6b:0001 Linux Foundation 1.1 root hub Bus 008 Device 001: ID
1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 004: ID
064e:a103 Suyin Corp. Acer/HP Integrated Webcam [CN0314] Bus 003
Device 002: ID 08ff:1600 AuthenTec, Inc. AES1600 Bus 005 Device 002:
ID 0a46:9601 Davicom Semiconductor, Inc. DM9601 Fast Ethernet Adapter
Bus 006 Device 002: ID 046d:c045 Logitech, Inc. Optical Mouse Bus 003
Device 003: ID 0a5c:2101 Broadcom Corp. Bluetooth Controller Bus 004
Device 002: ID 04d9:1702 Holtek Semiconductor, Inc.
但是當我從不同的系統連接互聯網時它開始工作。
答案1
前要求
您將需要安裝build-essential
和軟體包。linux-headers-generic
如果您沒有這些軟體包,您可以在軟體包.ubuntu.com,下載*.deb
檔案並手動安裝。
linux-headers-generic
是一個虛擬包,可為您目前正在執行的核心安裝正確的標頭。您可以透過uname -r
在終端機中輸入來找到這一點。我的是3.0.0-17-generic
。這意味著我真正應該下載的是linux-headers-3.0.0-17-generic
軟體包。一旦你的乙太網路工作了,apt-get install linux-kernel-headers
你就總是有正確的標頭。
該build-essential
軟體包有很多依賴項,當您嘗試安裝該.deb
檔案時,它會告訴您缺少什麼。返回軟體包.ubuntu.com並下載它抱怨的所有*.debs
軟體包。
如果您執行的是 Ubuntu,*.deb
則可以透過雙擊檔案來安裝它們。在 Kubuntu 上,您需要右鍵單擊並選擇安裝選項。
構建模組 Goto達維康網站並將其下載LINUX Driver
到您的主資料夾。打開終端並鍵入tar -xzvf dm9601-Linux2.6_1_1
以提取它。鍵入cd dm9601
以進入新建立的資料夾。鍵入gedit dm9601.c
以編輯損壞的來源檔案。變更#include <linux/config.h>
為#include <linux/configfs.h>
儲存檔案並關閉 gedit。鍵入make
以建構模組。
好的,現在您已經建立了模組。此時我們可以測試一下。插入 Davicom USB 轉接器後,鍵入sudo insmod dm9601.ko
臨時插入模組。如果一切正常,我們需要讓這個模組在啟動時自動插入。
在啟動時插入模組在檔案末尾的單獨行中 鍵入 Addsudo cp dm9601.ko /lib/modules/$(uname -r)/kernel/ubuntu/net/
類型儲存並退出 gedit。sudo gedit /etc/modules
dm9601
您的模組現在應該可以在重新啟動時工作。恭喜!每當安裝核心更新時,您都需要重複建置階段的步驟 2,3 和 7 以及插入階段的步驟 1。
故障排除 如果 insmod 無法運作,您可能需要將 USB 裝置 ID 新增至頭檔。
輸入“lsmod”並尋找屬於您的 Davicom USB 轉接器的行。它應該類似於“Bus 001 Device 006: ID 0a46:9555 Davicom Semiconductor, Inc.”。如果您有疑問,請拔掉所有其他 USB 裝置並找到唯一沒有「0000:0000」的行。
對於上面的範例,鍵入gedit dm9601.h
並插入 2 行,如下所示:
DM9601_DEV( "Davicom Semiconductor, Inc", VENDOR_ACCTON, 0x0a46, 0x9555,
DEFAULT_GPIO_RESET )
您的模組原始碼現已配置為識別您的模組。從說明的建置階段的步驟 6 繼續。