顯示具有 EDIMAX 標籤的文章。 顯示所有文章
顯示具有 EDIMAX 標籤的文章。 顯示所有文章

2015年8月4日 星期二

在 Fedora 22 安裝「EDIMAX EW-7811Un」驅動程式

將舊筆電由 Fedora 20 升級到 Fedora 22,在編譯 EDIMAX EW-7811Un 的「驅動程式核心模組」時,果不其然地又遇到問題了。原因又是 Linux 中的 C 函式庫有些調整,花了些時間把問題全部解決了。既然,Fedora 改版了,乾脆前文也重新改寫一次,用一個有完整的安裝步驟的發文,開啟另一個階段的序幕。
  以下的操作步驟是基於這些條件,如果讀者有情況不同,要斟酌修改:
  • 下載的「驅動程式」原始檔案,先存在一般使用者目錄下。
  • 解壓縮、修改、編譯等步驟,也都在一般使用者的權限下進行。
  • 進行安裝前,切換成 root 身份

一、下載「驅動程式」、解壓縮

從 Realtek 的官網下載 RTL8192CU 最新版的驅動程式 (目前是 4.0.2_9000.20130911),因為要修改「核心模組原始碼」的一個 C 程式檔,所以原有驅動程式的安裝不可以讓它自動作業,要分段執行。
    第一步先解壓縮,

2015年2月18日 星期三

解決「成功編譯的『驅動模組 (driver module)』卻掛載失敗」的問題

最近一個多月來 Linux 的核心的版本更新頻繁,從 3.17.x ~ 3.18.x 每個的更新都要編譯一次『驅動模組』。根據前文所述的步驟:
製作『驅動程式模組』時,偶而會出現掛載失敗的情況。『驅動模組』掛載失敗時,錯誤訊息不一定會看得到或容易被忽略,較明顯、可察覺的現像就是:原先可以使用的週邊設備(上例中為:無線網路及 RAID 硬碟組)變成不可用。

2014年7月6日 星期日

在 Fedora 20 (3.14.9 +) 安裝「EDIMAX EW-7811Un」驅動程式

Fedora 20 的系統核心升級到 3.14.9-200 後,依前文『在 Fedora 20 (3.13.3~3.14.8) 安裝「EDIMAX EW-7811Un」驅動程式』步驟編譯新的驅動程式,會出現
.....
  CC [M]  /home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.o
/home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.c:1006:2: 警告:永遠不相容的指標類型初始化 [enabled by default]
  .ndo_select_queue = rtw_select_queue,
  ^
/home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.c:1006:2: 警告:(在 「rtw_netdev_ops.ndo_select_queue」的初始化附近) [enabled by default]
.....
的錯誤訊息,又得修改『驅動程式原始碼』了。修改後的新步驟如下:

2014年2月24日 星期一

在 Fedora 20 (3.13.3~3.14.8) 安裝「EDIMAX EW-7811Un」驅動程式

Fedora 20 的系統核心升級到 3.13.2-201 後,依前文『在 Fedora 20 安裝「EDIMAX EW-7811Un」驅動』步驟編譯新的驅動程式,會出現
.....
  CC [M]  /home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.o
/home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.c:1006:2: 警告:永遠不相容的指標類型初始化 [enabled by default]
  .ndo_select_queue = rtw_select_queue,
  ^
/home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.c:1006:2: 警告:(在 「rtw_netdev_ops.ndo_select_queue」的初始化附近) [enabled by default]
.....
的錯誤訊息。
  看樣子,又得修改『驅動程式原始碼』了,順便將需要 root 權限的部分減少些。修改後的新步驟如下:

2014年1月3日 星期五

「在 Fedora 20 適用的 Fedora 安裝、設定程序」測試

安裝 Fedora 20 後,照例得重頭再設定一次使用環境,另外也要補安裝一些軟體。每次的重新安裝也都發現一些設定或安裝程序有些微的改變,當然也要花些時間找一下新的適用程序。
  這次也不例外,同時也記錄下測試的結果,有不適用的程序再另外記錄。一方面提醒自己,還有哪些未試過。一方面分享同好方便參考。

可沿用或適用的設定、安裝程序:

2014年1月1日 星期三

在 Fedora 20 安裝「EDIMAX EW-7811Un」驅動程式

自從 Fedora 18 的核心更新到 3.8 版後,EDIMAX EW-7811Un 無線網路又不能用了。Google 的結果也是無解,只好等 Realtek 修改驅動程式。在 2013-10-29 終於釋出新版的驅動程式 4.0.2_9000。不過,如官網所稱只支援到 kernel 3.9,那一陣子 Fedora 核心的更新特別快,當再更新到 3.10 版後,就不再能用了;只好暫時停止更新 Linux 的核心了。
  據找到的訊息所述,是因為 Linus Benedict Torvalds 在整理核心程式所用的函式時,將幾個 Realtek 官網的驅動程式中所用的函式移除了,造成編譯時錯誤百出,根本不能成功編譯。
  基於對 Linux 的瞭解,猜測被移除的函式,應該有替代的函式,或有相容處理。但是,終究要針對 Realtek 的驅動程式原始碼做些修改。由於前一陣子有些忙,就只試試看 Linux 官網的驅動是否修改到可用的程度。
  跨完年,就是新的一年的開始,有些時間就上網找一下解法。有些 Raspberry Pi 的玩家好像在 kernel 3.10 版成功編譯了,似乎可以參考這個結果,嘗試一下。今天又將舊筆電安裝 Fedora 20,乾脆就再試一次吧!想不到就成功編譯了,就將過程記錄如下:

2013年7月14日 星期日

「在 Fedora 19 適用的 Fedora 安裝、設定程序」測試

安裝 Fedora 19 後,照例得重頭再設定一次使用環境,另外也要補安裝一些軟體。每次的重新安裝也都發現一些設定或安裝程序有些微的改變,當然也要花些時間找一下新的適用程序。
  這次也不例外,就將 Fedora 18 以後的安裝、設定程序也驗證一次。同時也記錄下來測試的結果,有不適用的程序再另外記錄。一方面提醒自己,還有哪些未試過。一方面分享同好方便參考。

可以沿用的安裝、設定程序:

2013年4月14日 星期日

改進「安裝『EDIMAX EW-7811Un』驅動」的步驟

能夠在 Fedora 18 成功安裝「EDIMAX EW-7811Un」的驅動程式後,還有什麼步驟可以改進呢?若讀者已經參考過之前的發文,
會發現到,這些步驟要先以新版的 Linux 核心開機後,才可編譯、安裝。萬一在以新系統開機前忘了安裝 Fedora 「編譯『核心模組』」所需套件時,又得重新開機,以舊版核心啟動。
    因此,如何在舊版核心(網路可正常使用時)執行系統更新後,可以立即編譯、安裝適用新版的驅動程式,就是本文所做的改進。

2013年3月4日 星期一

編譯 Kernel 3.8, 3.9 的「EDIMAX EW-7811Un」驅動

Fedora 的核心又更新了,這次的幅度比較大到 3.8.1-201 了,原來的 “成功在 Fedora 18 安裝「EDIMAX EW-7811Un」驅動” 又不能編譯了,查一下錯誤訊息。發現只有檔案『驅動原始碼目錄/include/osdep_service.h』的第 575 列要再修改一下,編譯就可以通過。目前已經成功編譯、安裝、且使用中。
    因為這次增加的修改只有一處,所以就不再重寫一篇,以增補前文的方式紀錄之。請需要的讀者前去參考

已測試版本:

  • Fedora 18: kernel 3.9.11-200 (2013-8-4)
  • Fedora 18: kernel 3.8.1-201

2013年2月21日 星期四

成功在 Fedora 18 安裝「EDIMAX EW-7811Un」驅動

自上次在 Fedora 更新核心到 3.7 版後,造成無線網路不能使用,導致只能用變通辦法(請參考 “在 Fedora 18 用「EDIMAX EW-7811Un」的變通辦法”)後,對於這件事筆者一直想儘快找出解答。最近,解決了 NVIDIA FX5200 在 Fedora 18 安裝驅動程式的問題後,讓我又對 EDIMAX EW-7811Un 的問題解決,燃起信心。
    當然,Google 的結果也是找到一些不確定是直接或間接的解答,只好彙整、研究、分析,再加上許多嘗試,終於,還是找到成功安裝的步驟。

2013年2月1日 星期五

在 Fedora 18 用「EDIMAX EW-7811Un」的變通辦法

不斷的更新是 Linux 日益強大的主要力量!但是,最近的更新卻讓筆者陷入夢魘,原本依前文 “在 Fedora 安裝「EDIMAX EW-7811Un」的驅動程式” 的步驟安裝,正享受「無線網路」的高度移動性。沒想到,最近這個享受沒多久的「無線網路」卻不能再連線了。
    想說等 Fedora 18 釋出後,這個問題說不定就解決了。安裝完 Fedora 18 後,不例外地立即有一堆更新,在更新後就依前文安裝「EDIMAX EW-7811Un」的驅動程式,滿心歡喜地等待……等待…………,就是連不上網路。
這下問題大了! 不但 Fedora 17 不能用,連最新的 Fedora 18 也不能用。 WiFi ! WiFi ! 你一定要回來。
這問題是一定要解決,可是也不能一日沒有「無線網路」。因此,第一優先要務是
Fedora 18

無線網路(WiFi)連線

2013年1月22日 星期二

「在 Fedora 18 仍然適用的 Fedora 操作程序」測試

安裝 Fedora 18 後,在修改系統的預設設定時,發現有些在 Fedora 以前版本的設定程序不再適用。趁著最近陸續的安裝、設定,把之前的設定程序,順便驗證一下。一方面也是提醒自己,還有哪些未試過。

可以直接適用的程序:

2012年12月7日 星期五

在 Fedora 17 安裝「EDIMAX EW-7811Un」的驅動程式

使用電腦經驗較久的人,身邊總有會有幾台『堪用』但不『夠用』的舊電腦、舊筆電。尤其是舊筆電,不是沒有無線網路,就是較慢的舊版(註:802.11b 理論頻寬才 11 Mbps),相較於最新的無線網路標準 IEEE 802.11n 的 150 ~ 450 Mbps 實在是少得可憐。加裝新的無線網卡當然可以解決問題,但是,考量舊筆電有限的剩餘壽命,這個投資可要三思(註:PCMCIA 或 ExpressCard 的無線網卡應該不容易買到,將來也不太用得到)。
    USB 介面的無線網卡應該是最佳選擇了,當然是上網去找比較快,目標是給舊筆電用的,因此列了幾個條件:
USB 介面:舊筆電多有這個介面,將來也可以用在別個地方。
尺寸要小:給筆電用,要考慮收到保護袋時,不需拔開;以及使用時,不需再插回。貪圖個方便嘛!
802.11n 標準:至少有 150 Mbps 的傳輸率,就算加上訊號干擾因素打個折,也比較舊版的無線網路快許多。
支援 Linux:舊筆用 Windows XP 應該還沒問題,想用最新版的作業系統,可就要考慮 Linux 了,否則效能上會令使用者受不了。
經過一番搜尋,找到符合這些條件的好物,EDIMAX EW-7811Un:USB 2.0、尺寸(寬×高×深: 14.8×7.1×17.4 mm)、IEEE 802.11b/g/n 標準、支援 Windows / Linux 作業系統。也有類似的產品,但是尺寸都略大於它。(:時間有限,以可迅速購得為優先,故恐有遺珠之憾。)