CentOS6.4 编译安装RTL8192CU芯片驱动,使用TP_LINK wn823n无线网卡

       ------------------------------------------------------------------------------------------------------
       此文章仅作为学习交流所用

       转载或引用请务必注明原文地址:

      http://blog.csdn.net/luzhenrong45/article/details/16381125

       或联系作者:luzhenrong45@gmail.com

       谢谢!                      

      ------------------------------------------------------------------------------------------------------

     前几天给自己的台式电脑安装了Window 7+CentOS 6.4 Linux双系统,发现在Windows 7下面可以正常使用TP_LINK wn823n无线网卡来连接无线网络,但是在Linux下面,检测不到无线网络,而那个usb无线网卡的指示灯也一直没亮。上网查了一下,说是在Linux下面需要安装无线网卡的驱动也能使用。我的usb无线网卡型号是TP_LINK wn823n,上TP_LINK的官网根据型号下载驱动的时候,发现该无线网卡只有Windows的驱动,没有Linux的,相当不爽。于是继续搜索资料,发现TP_LINK wn823n采用的是RTL的芯片,也就是说,如果有RTL对应芯片的源码驱动,经过编译安装,同样可以使无线网卡在我的Linux下面工作起来。

    第一步:确定该无线网卡所采用RTL芯片的具体型号,如果不确定,可以进入LINUX终端,输入 lsusb ,确定芯片型号,如我的是下面的 RTL8192CU.

      第二步:到RTL官方网站 (可点击进入)下载对应芯片的源码驱动,注意对应型号和使用的系统环境。我下载的是RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.zip


    第三步:将刚才下载下来的zip文件解压出来,进入解压出来的文件夹,把driver 目录下的 rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911.tar.gz这个压缩包也解压了。然后,按照这个路径 RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911 / driver / rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911 / os_dep / linux / usb_intf.c,将usb_intf.c这个文件打开,找到下面这个地方,自己再在最后面加入下面这一行   {USB_DEVICE(0x0BDA, 0x8178)}, 如下面所示  


其中OXOBDA,OX8178这两个数字是USB无线网卡的ID,通过刚才最开始的 lsusb 就可以知道。



    第四步:进入解压目录,编译安装。

    进入最开始的解压目录,可以看到里面有一个install.sh文件。因此进入终端,切换到install.sh所在目录,执行 ./ install.sh,本来以为大功告成,结果竟然出现错误,提示 “bash: ./ :是一个目录“的错误。切换到root用户,还是不能执行在这里周旋了很多时间。


    后来,ls -al install.sh查看了一个install.sh这个文件的权限,我靠,发现install.sh居然是一个只读文件。想了一下原因,可能刚才我没用解压命令解压,而是贪图方便直接在解压文件上右键解压,结果影响了文件的权限,教训呀,害我在这里拖了那么久。

  


   好吧,马上给install.sh可执行权限,这里,为了防止下面因为权限问题出现不能安装的现象,所以我给了它最高权限 (当然,可以直接给可执行权限)

chmod 777 install.sh


     然后,执行sudo ./ install.sh就刷刷地开始自动安装了,安装完之后,看了一下,我的usb无线网卡的指示灯终于给点亮了,它终于亮了!!!

   查看一下网络,好吧,无线网络终于出现了,它终于出现了!!(真想发个大哭的表情)

   好吧,成功!






8192CU LINUX驱动/****************************************************************************** * * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. * * This program is free software; you can redistribute it and/or modify it * under the terms of version 2 of the GNU General Public License as * published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along with * this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA * * ******************************************************************************/ /* * Public General Config */ #define AUTOCONF_INCLUDED #define RTL871X_MODULE_NAME "92CU" #define DRV_NAME "rtl8192cu" #define CONFIG_USB_HCI 1 #define CONFIG_RTL8192C 1 #define PLATFORM_LINUX 1 //#define CONFIG_IOCTL_CFG80211 1 #ifdef CONFIG_IOCTL_CFG80211 #define CONFIG_CFG80211_FORCE_COMPATIBLE_2_6_37_UNDER //#define CONFIG_DEBUG_CFG80211 1 #endif /* * Internal General Config */ //#define CONFIG_PWRCTRL //#define CONFIG_H2CLBK #define CONFIG_EMBEDDED_FWIMG 1 //#define CONFIG_FILE_FWIMG #ifdef CONFIG_WAKE_ON_WLAN #define CONFIG_WOWLAN 1 #endif //CONFIG_WAKE_ON_WLAN #define CONFIG_R871X_TEST 1 #define CONFIG_80211N_HT 1 #define CONFIG_RECV_REORDERING_CTRL 1 //#define CONFIG_TCP_CSUM_OFFLOAD_RX 1 //#define CONFIG_DRVEXT_MODULE 1 #ifndef CONFIG_MP_INCLUDED #define CONFIG_IPS 1 #ifdef CONFIG_IPS //#define CONFIG_IPS_LEVEL_2 1 //enable this to set default IPS mode to IPS_LEVEL_2 #endif #define SUPPORT_HW_RFOFF_DETECTED 1 #define CONFIG_LPS 1 #define CONFIG_BT_COEXIST 1 //befor link #define CONFIG_ANTENNA_DIVERSITY //after link #ifdef CONFIG_ANTENNA_DIVERSITY #define CONFIG_SW_ANTENNA_DIVERSITY //#define CONFIG_HW_ANTENNA_DIVERSITY #endif #define CONFIG_IOL #else //#ifndef CONFIG_MP_INCLUDED #define CONFIG_MP_IWPRIV_SUPPORT 1 #endif //#ifndef CONFIG_MP_INCLUDED #define CONFIG_AP_MODE 1 #define CONFIG_NATIVEAP_MLME 1 // Added by Albert 20110314 #define CONFIG_P2P 1 #ifdef CONFIG_P2P // Added by Albert 20110812 // The CONFIG_WFD is for supporting the Wi-Fi display //#define CONFIG_WFD 1 // Unmarked if there is low p2p scanned ratio; Kurt //#define CONFIG_P2P_AGAINST_NOISE 1 #define CONFIG_P2P_REMOVE_GROUP_INFO //#define CONFIG_DBG_P2P #endif // Added by Kurt 20110511 //#define CONFIG_TDLS 1 #ifdef CONFIG_TDLS #define CONFIG_TDLS_AUTOSETUP 1 #define CONFIG_TDLS_AUTOCHECKALIVE 1 #endif #ifdef CONFIG_AP_MODE #ifndef CONFIG_NATIVEAP_MLME #define CONFIG_HOSTAPD_MLME 1 #endif #define CONFIG_FIND_BEST_CHANNEL 1 #endif #define CONFIG_SKB_COPY 1//for amsdu #define CONFIG_LED #ifdef CONFIG_LED #define CONFIG_SW_LED #ifdef CONFIG_SW_LED //#define CONFIG_LED_HANDLED_BY_CMD_THREAD #endif #endif // CONFIG_LED #define USB_INTERFERENCE_ISSUE // this should be checked in all usb interface #define CONFIG_GLOBAL_UI_PID #define CONFIG_LAYER2_ROAMING #define CONFIG_LAYER2_ROAMING_RESUME //#define CONFIG_ADAPTOR_INFO_CACHING_FILE // now just applied on 8192cu only, should make it general... //#define CONFIG_RESUME_IN_WORKQUEUE //#define CONFIG_SET_SCAN_DENY_TIMER #define CONFIG_LONG_DELAY_ISSUE #define CONFIG_NEW_SIGNAL_STAT_PROCESS //#define CONFIG_SIGNAL_DISPLAY_DBM //display RX signal with dbm #ifdef CONFIG_IOL #define CONFIG_IOL_LLT #define CONFIG_IOL_MAC #define CONFIG_IOL_BB_PHY_REG #define CONFIG_IOL_BB_AGC_TAB #define CONFIG_IOL_RF_RF90_PATH_A #define CONFIG_IOL_RF_RF90_PATH_B #endif #define CONFIG_BR_EXT 1 // Enable NAT2.5 support for STA mode interface with a L2 Bridge #ifdef CONFIG_BR_EXT #define CONFIG_BR_EXT_BRNAME "br0" #endif // CONFIG_BR_EXT #define CONFIG_TX_MCAST2UNI 1 // Support IP multicast->unicast //#define CONFIG_CHECK_AC_LIFETIME 1 // Check packet lifetime of 4 ACs. /* * Interface Related Config */ //#define CONFIG_USB_INTERRUPT_IN_PIPE 1 #ifndef CONFIG_MINIMAL_MEMORY_USAGE #define CONFIG_USB_TX_AGGREGATION 1 #define CONFIG_USB_RX_AGGREGATION 1 #endif #define CONFIG_PREALLOC_RECV_SKB 1 //#define CONFIG_REDUCE_USB_TX_INT 1 // Trade-off: Improve performance, but may cause TX URBs blocked by USB Host/Bus driver on few platforms. //#define CONFIG_EASY_REPLACEMENT 1 /* * CONFIG_USE_USB_BUFFER_ALLOC_XX uses Linux USB Buffer alloc API and is for Linux platform only now! */ #define CONFIG_USE_USB_BUFFER_ALLOC_TX 1 // Trade-off: For TX path, improve stability on some platforms, but may cause performance degrade on other platforms. //#define CONFIG_USE_USB_BUFFER_ALLOC_RX 1 // For RX path /* * USB VENDOR REQ BUFFER ALLOCATION METHOD * if not set we'll use function local variable (stack memory) */ //#define CONFIG_USB_VENDOR_REQ_BUFFER_DYNAMIC_ALLOCATE #define CONFIG_USB_VENDOR_REQ_BUFFER_PREALLOC #define CONFIG_USB_VENDOR_REQ_MUTEX #define CONFIG_VENDOR_REQ_RETRY //#define CONFIG_USB_SUPPORT_ASYNC_VDN_REQ 1 /* * HAL Related Config */ #define RTL8192C_RX_PACKET_NO_INCLUDE_CRC 1 #define SUPPORTED_BLOCK_IO #define RTL8192CU_FW_DOWNLOAD_ENABLE 1 #define CONFIG_ONLY_ONE_OUT_EP_TO_LOW 0 #define CONFIG_OUT_EP_WIFI_MODE 0 #define ENABLE_USB_DROP_INCORRECT_OUT 0 #define RTL8192CU_ASIC_VERIFICATION 0 // For ASIC verification. #define RTL8192CU_ADHOC_WORKAROUND_SETTING 1 #define DISABLE_BB_RF 0 #define RTL8191C_FPGA_NETWORKTYPE_ADHOC 0 #ifdef CONFIG_MP_INCLUDED #define MP_DRIVER 1 #undef CONFIG_USB_TX_AGGREGATION #undef CONFIG_USB_RX_AGGREGATION #else #define MP_DRIVER 0 #endif /* * Platform Related Config */ #ifdef CONFIG_PLATFORM_MN10300 #define CONFIG_SPECIAL_SETTING_FOR_FUNAI_TV #if defined (CONFIG_SW_ANTENNA_DIVERSITY) #undef CONFIG_SW_ANTENNA_DIVERSITY #define CONFIG_HW_ANTENNA_DIVERSITY #endif #endif #ifdef CONFIG_WISTRON_PLATFORM #endif #ifdef CONFIG_PLATFORM_TI_DM365 #define CONFIG_USE_USB_BUFFER_ALLOC_RX 1 #endif /* * Debug Related Config */ //#define CONFIG_DEBUG_RTL871X #define DBG 0 #define CONFIG_DEBUG_RTL819X #define CONFIG_PROC_DEBUG 1 //#define DBG_IO //#define DBG_DELAY_OS //#define DBG_MEM_ALLOC //#define DBG_IOCTL //#define DBG_TX //#define DBG_XMIT_BUF //#define DBG_TX_DROP_FRAME //#define DBG_RX_DROP_FRAME //#define DBG_RX_SEQ //#define DBG_RX_SIGNAL_DISPLAY_PROCESSING //#define DBG_RX_SIGNAL_DISPLAY_SSID_MONITORED "jeff-ap" //#define DBG_EXPIRATION_CHK //#define DBG_SHOW_MCUFWDL_BEFORE_51_ENABLE //#define DBG_ROAMING_TEST //#define DBG_HAL_INIT_PROFILING #define DBG_MEMORY_LEAK 1 #define DBG_CONFIG_ERROR_DETECT //#define DBG_CONFIG_ERROR_RESET
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值