RTL8192CU: update to RTL8192CU-v4.0.2_9000.20130911

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2014-04-01 20:24:10 +02:00
parent 11048a6600
commit fa2d8e09ba
8 changed files with 56 additions and 1964 deletions

View File

@ -17,7 +17,7 @@
################################################################################
PKG_NAME="RTL8192CU"
PKG_VERSION="v3.4.4_4749.20121105"
PKG_VERSION="v4.0.2_9000.20130911"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -1,131 +0,0 @@
diff -ruN a/core/rtw_mp.c b/core/rtw_mp.c
--- a/core/rtw_mp.c 2012-07-30 12:51:05.000000000 +0000
+++ b/core/rtw_mp.c 2013-03-17 19:00:28.393782000 +0000
@@ -1140,8 +1140,7 @@
_rtw_memset(ptr, payload, pkt_end - ptr);
//3 6. start thread
- pmp_priv->tx.PktTxThread = kernel_thread(mp_xmit_packet_thread, pmp_priv, CLONE_FS|CLONE_FILES);
- if(pmp_priv->tx.PktTxThread < 0)
+ if(!start_kthread(&pmp_priv->tx.PktTxThread, mp_xmit_packet_thread, pmp_priv, "8192cu-mp-xmit"))
DBG_871X("Create PktTx Thread Fail !!!!!\n");
}
diff -ruN a/include/osdep_service.h b/include/osdep_service.h
--- a/include/osdep_service.h 2012-07-30 12:51:05.000000000 +0000
+++ b/include/osdep_service.h 2013-03-17 17:37:39.105483734 +0000
@@ -100,6 +100,9 @@
#include <linux/pci.h>
#endif
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0))
+ #include <linux/kthread.h>
+#endif
#ifdef CONFIG_USB_HCI
typedef struct urb * PURB;
@@ -133,8 +136,12 @@
//typedef u32 _irqL;
typedef unsigned long _irqL;
typedef struct net_device * _nic_hdl;
-
+
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0))
typedef pid_t _thread_hdl_;
+#else
+ typedef struct task_struct * _thread_hdl_;
+#endif
typedef int thread_return;
typedef void* thread_context;
@@ -572,7 +579,7 @@
#ifdef PLATFORM_LINUX
//struct net_device *pnetdev = (struct net_device *)context;
//daemonize("%s", pnetdev->name);
- daemonize("%s", "RTKTHREAD");
+ //daemonize("%s", "RTKTHREAD");
allow_signal(SIGTERM);
#endif
}
@@ -827,4 +834,8 @@
#endif
+#ifdef PLATFORM_LINUX
+extern int start_kthread(_thread_hdl_ *t_hdl, int (*threadfn)(void *data),
+ void *data, const char *name);
+#endif
diff -ruN a/include/rtw_recv.h b/include/rtw_recv.h
--- a/include/rtw_recv.h 2012-07-30 12:51:05.000000000 +0000
+++ b/include/rtw_recv.h 2013-03-17 17:35:36.136873966 +0000
@@ -623,8 +623,9 @@
//from any given member of recv_frame.
// rxmem indicates the any member/address in recv_frame
- return (union recv_frame*)(((uint)rxmem>>RXFRAME_ALIGN) <<RXFRAME_ALIGN) ;
-
+ //return (union recv_frame*)(((uint)rxmem>>RXFRAME_ALIGN) <<RXFRAME_ALIGN) ;
+ //return (union recv_frame*)(((SIZE_PTR)rxmem >> RXFRAME_ALIGN) << RXFRAME_ALIGN);
+ return (union recv_frame*)(((ulong)rxmem>>RXFRAME_ALIGN) <<RXFRAME_ALIGN) ;
}
__inline static union recv_frame *pkt_to_recvframe(_pkt *pkt)
diff -ruN a/os_dep/linux/os_intfs.c b/os_dep/linux/os_intfs.c
--- a/os_dep/linux/os_intfs.c 2012-11-05 07:42:45.000000000 +0000
+++ b/os_dep/linux/os_intfs.c 2013-03-17 19:00:28.393782000 +0000
@@ -797,27 +797,22 @@
RT_TRACE(_module_os_intfs_c_,_drv_info_,("+rtw_start_drv_threads\n"));
#ifdef CONFIG_SDIO_HCI
- padapter->xmitThread = kernel_thread(rtw_xmit_thread, padapter, CLONE_FS|CLONE_FILES);
- if(padapter->xmitThread < 0)
+ if(!start_kthread(&padapter->xmitThread, rtw_xmit_thread, padapter, "8192cu-xmit"))
_status = _FAIL;
#endif
#ifdef CONFIG_RECV_THREAD_MODE
- padapter->recvThread = kernel_thread(recv_thread, padapter, CLONE_FS|CLONE_FILES);
- if(padapter->recvThread < 0)
+ if(!start_kthread(&padapter->recvThread, recv_thread, padapter, "8192cu-recv"))
_status = _FAIL;
#endif
- padapter->cmdThread = kernel_thread(rtw_cmd_thread, padapter, CLONE_FS|CLONE_FILES);
- if(padapter->cmdThread < 0)
+ if(!start_kthread(&padapter->cmdThread, rtw_cmd_thread, padapter, "8192cu-cmd"))
_status = _FAIL;
else
_rtw_down_sema(&padapter->cmdpriv.terminate_cmdthread_sema); //wait for cmd_thread to run
-
#ifdef CONFIG_EVENT_THREAD_MODE
- padapter->evtThread = kernel_thread(event_thread, padapter, CLONE_FS|CLONE_FILES);
- if(padapter->evtThread < 0)
+ if(!start_kthread(&padapter->evtThread, event_thread, padapter, "8192cu-evt"))
_status = _FAIL;
#endif
diff -ruN a/os_dep/osdep_service.c b/os_dep/osdep_service.c
--- a/os_dep/osdep_service.c 2012-07-30 12:51:05.000000000 +0000
+++ b/os_dep/osdep_service.c 2013-03-17 19:00:28.393782000 +0000
@@ -1553,3 +1553,19 @@
#endif
}
+#ifdef PLATFORM_LINUX
+int start_kthread(_thread_hdl_ *t_hdl, int (*threadfn)(void *data),
+ void *data, const char *name)
+{
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0))
+ *t_hdl = kernel_thread(threadfn, data, CLONE_FS|CLONE_FILES);
+ if(*t_hdl < 0)
+#else
+ *t_hdl = kthread_run(threadfn, data, name);
+ if(IS_ERR(*t_hdl))
+#endif
+ return 0;
+ return -1;
+}
+#endif
+

View File

@ -1,285 +0,0 @@
From 0bb2e327dd12e44fbd67ff169217fa1f7f0c609b Mon Sep 17 00:00:00 2001
From: kolasa <kkolasa@winsoft.pl>
Date: Sun, 12 May 2013 21:21:46 +0200
Subject: [PATCH] switching to proc_create ( /proc for read/write is not yet
usable )
---
.../os_dep/linux/os_intfs.c | 105 ++++++++++++++++++++-
1 file changed, 100 insertions(+), 5 deletions(-)
diff --git a/os_dep/linux/os_intfs.c b/os_dep/linux/os_intfs.c
index 4d057a6..17f46f6 100644
--- a/os_dep/linux/os_intfs.c
+++ b/os_dep/linux/os_intfs.c
@@ -275,14 +275,22 @@ void rtw_proc_init_one(struct net_device *dev)
#if(LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
rtw_proc=create_proc_entry(rtw_proc_name, S_IFDIR, proc_net);
#else
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
rtw_proc=create_proc_entry(rtw_proc_name, S_IFDIR, init_net.proc_net);
+#else
+ rtw_proc=proc_mkdir(rtw_proc_name, init_net.proc_net);
+#endif
#endif
if (rtw_proc == NULL) {
DBG_8192C(KERN_ERR "Unable to create rtw_proc directory\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("ver_info", S_IFREG | S_IRUGO, rtw_proc, proc_get_drv_version, dev);
+#else
+ entry = proc_create_data("ver_info", S_IFREG | S_IRUGO, rtw_proc, proc_get_drv_version, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
@@ -293,10 +301,13 @@ void rtw_proc_init_one(struct net_device *dev)
if(padapter->dir_dev == NULL)
{
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
padapter->dir_dev = create_proc_entry(dev->name,
S_IFDIR | S_IRUGO | S_IXUGO,
rtw_proc);
-
+#else
+ padapter->dir_dev = proc_mkdir(dev->name,rtw_proc);
+#endif
dir_dev = padapter->dir_dev;
if(dir_dev==NULL)
@@ -324,84 +335,136 @@ void rtw_proc_init_one(struct net_device *dev)
rtw_proc_cnt++;
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("write_reg", S_IFREG | S_IRUGO,
dir_dev, proc_get_write_reg, dev);
+#else
+ entry = proc_create_data("write_reg", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_write_reg, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry->write_proc = proc_set_write_reg;
entry = create_proc_read_entry("read_reg", S_IFREG | S_IRUGO,
dir_dev, proc_get_read_reg, dev);
+#else
+ entry = proc_create_data("read_reg", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_read_reg, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry->write_proc = proc_set_read_reg;
-
entry = create_proc_read_entry("fwstate", S_IFREG | S_IRUGO,
dir_dev, proc_get_fwstate, dev);
+#else
+ entry = proc_create_data("fwstate", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_fwstate, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
-
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("sec_info", S_IFREG | S_IRUGO,
dir_dev, proc_get_sec_info, dev);
+#else
+ entry = proc_create_data("sec_info", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_sec_info, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("mlmext_state", S_IFREG | S_IRUGO,
dir_dev, proc_get_mlmext_state, dev);
+#else
+ entry = proc_create_data("mlmext_state", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_mlmext_state, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
-
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("qos_option", S_IFREG | S_IRUGO,
dir_dev, proc_get_qos_option, dev);
+#else
+ entry = proc_create_data("qos_option", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_qos_option, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("ht_option", S_IFREG | S_IRUGO,
dir_dev, proc_get_ht_option, dev);
+#else
+ entry = proc_create_data("ht_option", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_ht_option, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("rf_info", S_IFREG | S_IRUGO,
dir_dev, proc_get_rf_info, dev);
+#else
+ entry = proc_create_data("rf_info", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_rf_info, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("ap_info", S_IFREG | S_IRUGO,
dir_dev, proc_get_ap_info, dev);
+#else
+ entry = proc_create_data("ap_info", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_ap_info, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("adapter_state", S_IFREG | S_IRUGO,
dir_dev, proc_get_adapter_state, dev);
+#else
+ entry = proc_create_data("adapter_state", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_adapter_state, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("trx_info", S_IFREG | S_IRUGO,
dir_dev, proc_get_trx_info, dev);
+#else
+ entry = proc_create_data("trx_info", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_trx_info, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
@@ -409,8 +472,13 @@ void rtw_proc_init_one(struct net_device *dev)
#ifdef CONFIG_AP_MODE
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("all_sta_info", S_IFREG | S_IRUGO,
dir_dev, proc_get_all_sta_info, dev);
+#else
+ entry = proc_create_data("all_sta_info", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_all_sta_info, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
@@ -418,8 +486,13 @@ void rtw_proc_init_one(struct net_device *dev)
#endif
#ifdef DBG_MEMORY_LEAK
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("_malloc_cnt", S_IFREG | S_IRUGO,
dir_dev, proc_get_malloc_cnt, dev);
+#else
+ entry = proc_create_data("_malloc_cnt", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_malloc_cnt, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
@@ -427,38 +500,60 @@ void rtw_proc_init_one(struct net_device *dev)
#endif
#ifdef CONFIG_FIND_BEST_CHANNEL
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("best_channel", S_IFREG | S_IRUGO,
dir_dev, proc_get_best_channel, dev);
+#else
+ entry = proc_create_data("best_channel", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_best_channel, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
#endif
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("rx_signal", S_IFREG | S_IRUGO,
dir_dev, proc_get_rx_signal, dev);
+#else
+ entry = proc_create_data("rx_signal", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_rx_signal, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry->write_proc = proc_set_rx_signal;
entry = create_proc_read_entry("ampdu_enable", S_IFREG | S_IRUGO,
dir_dev, proc_get_ampdu_enable, dev);
+#else
+ entry = proc_create_data("ampdu_enable", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_ampdu_enable, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry->write_proc = proc_set_ampdu_enable;
entry = create_proc_read_entry("rssi_disp", S_IFREG | S_IRUGO,
dir_dev, proc_get_rssi_disp, dev);
+#else
+ entry = proc_create_data("rssi_disp", S_IFREG | S_IRUGO,
+ dir_dev, proc_get_rssi_disp, dev);
+#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
return;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry->write_proc = proc_set_rssi_disp;
-
+#endif
}
void rtw_proc_remove_one(struct net_device *dev)
--
1.8.1.6

View File

@ -1,92 +0,0 @@
From e30a6db935752679770b31668e899a7b77e1fec4 Mon Sep 17 00:00:00 2001
From: kolasa <kkolasa@winsoft.pl>
Date: Mon, 13 May 2013 11:43:03 +0200
Subject: [PATCH] Usable /proc/net/rtl819xC/ver_info
---
.../core/rtw_debug.c | 9 +++++++++
.../include/rtw_debug.h | 5 ++++-
.../os_dep/linux/os_intfs.c | 14 +++++++++++++-
3 files changed, 26 insertions(+), 2 deletions(-)
diff --git a/core/rtw_debug.c b/core/rtw_debug.c
index 04e472d..018fe48 100644
--- a/core/rtw_debug.c
+++ b/core/rtw_debug.c
@@ -62,6 +62,7 @@
#ifdef CONFIG_PROC_DEBUG
#include <rtw_version.h>
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
int proc_get_drv_version(char *page, char **start,
off_t offset, int count,
int *eof, void *data)
@@ -75,6 +76,14 @@ int proc_get_drv_version(char *page, char **start,
*eof = 1;
return len;
}
+#else
+int proc_get_drv_version(struct seq_file *m, void* data)
+{
+ struct net_device *dev = data;
+
+ return seq_printf(m, "%s\n", DRIVERVERSION);
+}
+#endif
int proc_get_write_reg(char *page, char **start,
off_t offset, int count,
diff --git a/include/rtw_debug.h b/include/rtw_debug.h
index eca6692..5b3e5cc 100644
--- a/include/rtw_debug.h
+++ b/include/rtw_debug.h
@@ -285,10 +285,13 @@
#ifdef CONFIG_PROC_DEBUG
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
int proc_get_drv_version(char *page, char **start,
off_t offset, int count,
int *eof, void *data);
-
+#else
+ int proc_get_drv_version(struct seq_file *m, void *data);
+#endif
int proc_get_write_reg(char *page, char **start,
off_t offset, int count,
int *eof, void *data);
diff --git a/os_dep/linux/os_intfs.c b/os_dep/linux/os_intfs.c
index 99a5a1c..0e61bf9 100644
--- a/os_dep/linux/os_intfs.c
+++ b/os_dep/linux/os_intfs.c
@@ -255,6 +255,18 @@
static struct proc_dir_entry *rtw_proc = NULL;
static int rtw_proc_cnt = 0;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
+static int drv_version_proc_open(struct inode *inode, struct file *file){
+ return single_open(file, proc_get_drv_version, NULL);
+}
+
+static const struct file_operations drv_version_fops = {
+ .open = drv_version_proc_open,
+ .read = seq_read,
+ .llseek = seq_lseek,
+};
+#endif
+
void rtw_proc_init_one(struct net_device *dev)
{
struct proc_dir_entry *dir_dev = NULL;
@@ -289,7 +301,7 @@ void rtw_proc_init_one(struct net_device *dev)
#if LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0)
entry = create_proc_read_entry("ver_info", S_IFREG | S_IRUGO, rtw_proc, proc_get_drv_version, dev);
#else
- entry = proc_create_data("ver_info", S_IFREG | S_IRUGO, rtw_proc, proc_get_drv_version, dev);
+ entry = proc_create_data("ver_info", S_IFREG | S_IRUGO, rtw_proc, &drv_version_fops, dev);
#endif
if (!entry) {
DBG_871X("Unable to create_proc_read_entry!\n");
--
1.8.1.6

View File

@ -1,7 +1,7 @@
diff -Naur RTL8192CU-v3.4.4_4749.20121105/hal/rtl8192c/usb/usb_halinit.c RTL8192CU-v3.4.4_4749.20121105.patch/hal/rtl8192c/usb/usb_halinit.c
--- RTL8192CU-v3.4.4_4749.20121105/hal/rtl8192c/usb/usb_halinit.c 2012-07-30 14:51:05.000000000 +0200
+++ RTL8192CU-v3.4.4_4749.20121105.patch/hal/rtl8192c/usb/usb_halinit.c 2013-03-19 16:51:48.251080509 +0100
@@ -3786,6 +3786,8 @@
diff -Naur RTL8192CU-v4.0.2_9000.20130911/hal/rtl8192c/usb/usb_halinit.c RTL8192CU-v4.0.2_9000.20130911.patch/hal/rtl8192c/usb/usb_halinit.c
--- RTL8192CU-v4.0.2_9000.20130911/hal/rtl8192c/usb/usb_halinit.c 2013-09-11 05:56:55.000000000 +0200
+++ RTL8192CU-v4.0.2_9000.20130911.patch/hal/rtl8192c/usb/usb_halinit.c 2014-04-01 20:17:59.270739417 +0200
@@ -3509,6 +3509,8 @@
pHalData->CustomerID = RT_CID_DLINK;
else if((pHalData->EEPROMVID == 0x2001) && (pHalData->EEPROMPID == 0x330a))
pHalData->CustomerID = RT_CID_DLINK;
@ -10,14 +10,14 @@ diff -Naur RTL8192CU-v3.4.4_4749.20121105/hal/rtl8192c/usb/usb_halinit.c RTL8192
break;
case EEPROM_CID_WHQL:
/*
diff -Naur RTL8192CU-v3.4.4_4749.20121105/os_dep/linux/usb_intf.c RTL8192CU-v3.4.4_4749.20121105.patch/os_dep/linux/usb_intf.c
--- RTL8192CU-v3.4.4_4749.20121105/os_dep/linux/usb_intf.c 2012-07-30 14:51:05.000000000 +0200
+++ RTL8192CU-v3.4.4_4749.20121105.patch/os_dep/linux/usb_intf.c 2013-03-19 16:52:54.174644642 +0100
@@ -137,6 +137,7 @@
{USB_DEVICE(0x2001, 0x3307)},//D-Link - Cameo
{USB_DEVICE(0x2001, 0x330A)},//D-Link - Alpha
{USB_DEVICE(0x2001, 0x3309)},//D-Link - Alpha
+ {USB_DEVICE(0x2001, 0x330D)},//D-Link - Alpha(?)
{USB_DEVICE(0x0586, 0x341F)},//Zyxel - Abocom
{USB_DEVICE(0x7392, 0x7822)},//Edimax - Edimax
{USB_DEVICE(0x2019, 0xAB2B)},//Planex - Abocom
diff -Naur RTL8192CU-v4.0.2_9000.20130911/os_dep/linux/usb_intf.c RTL8192CU-v4.0.2_9000.20130911.patch/os_dep/linux/usb_intf.c
--- RTL8192CU-v4.0.2_9000.20130911/os_dep/linux/usb_intf.c 2013-09-11 05:56:55.000000000 +0200
+++ RTL8192CU-v4.0.2_9000.20130911.patch/os_dep/linux/usb_intf.c 2014-04-01 20:19:23.936708369 +0200
@@ -138,6 +138,7 @@
{USB_DEVICE(0x2001, 0x3307)},/* D-Link - Cameo */ \
{USB_DEVICE(0x2001, 0x330A)},/* D-Link - Alpha */ \
{USB_DEVICE(0x2001, 0x3309)},/* D-Link - Alpha */ \
+ {USB_DEVICE(0x2001, 0x330D)},/* D-Link - Alpha(?)*/ \
{USB_DEVICE(0x0586, 0x341F)},/* Zyxel - Abocom */ \
{USB_DEVICE(0x7392, 0x7822)},/* Edimax - Edimax */ \
{USB_DEVICE(0x2019, 0xAB2B)},/* Planex - Abocom */ \

View File

@ -1,13 +1,11 @@
diff -Naur RTL8192CU-v3.4.3_4369.20120622/os_dep/linux/usb_intf.c RTL8192CU-v3.4.3_4369.20120622.patch/os_dep/linux/usb_intf.c
--- RTL8192CU-v3.4.3_4369.20120622/os_dep/linux/usb_intf.c 2012-06-22 16:59:51.000000000 +0200
+++ RTL8192CU-v3.4.3_4369.20120622.patch/os_dep/linux/usb_intf.c 2012-08-08 08:13:59.755932307 +0200
@@ -99,7 +99,9 @@
{USB_DEVICE(0x2019, 0xED17)},//PCI - Edimax
{USB_DEVICE(0x0DF6, 0x0052)},//Sitecom - Edimax
{USB_DEVICE(0x7392, 0x7811)},//Edimax - Edimax
+ {USB_DEVICE(0x07B8, 0x8188)},//Abocom - Abocom
{USB_DEVICE(0x07B8, 0x8189)},//Abocom - Abocom
+ {USB_DEVICE(0x0846, 0x9041)},//NetGear WNA1000M
{USB_DEVICE(0x0EB0, 0x9071)},//NO Brand - Etop
{USB_DEVICE(0x06F8, 0xE033)},//Hercules - Edimax
{USB_DEVICE(0x103C, 0x1629)},//HP - Lite-On ,8188CUS Slim Combo
diff -Naur RTL8192CU-v4.0.2_9000.20130911/os_dep/linux/usb_intf.c RTL8192CU-v4.0.2_9000.20130911.patch/os_dep/linux/usb_intf.c
--- RTL8192CU-v4.0.2_9000.20130911/os_dep/linux/usb_intf.c 2013-09-11 05:56:55.000000000 +0200
+++ RTL8192CU-v4.0.2_9000.20130911.patch/os_dep/linux/usb_intf.c 2014-04-01 20:21:56.601914791 +0200
@@ -96,6 +96,7 @@
{USB_DEVICE(0x2019, 0xED17)},/* PCI - Edimax */ \
{USB_DEVICE(0x0DF6, 0x0052)},/* Sitecom - Edimax */ \
{USB_DEVICE(0x7392, 0x7811)},/* Edimax - Edimax */ \
+ {USB_DEVICE(0x07B8, 0x8188)},/* Abocom - Abocom */ \
{USB_DEVICE(0x07B8, 0x8189)},/* Abocom - Abocom */ \
{USB_DEVICE(0x0EB0, 0x9071)},/* NO Brand - Etop */ \
{USB_DEVICE(0x06F8, 0xE033)},/* Hercules - Edimax */ \

View File

@ -0,0 +1,29 @@
--- a/os_dep/linux/os_intfs.c 2013-09-11 05:56:55.000000000 +0200
+++ b/os_dep/linux/os_intfs.c 2013-11-12 00:30:41.158248277 +0100
@@ -277,6 +277,18 @@
#define RTW_PROC_NAME DRV_NAME
+#ifndef create_proc_entry
+/* dummy routines */
+void rtw_proc_remove_one(struct net_device *dev)
+{
+}
+
+void rtw_proc_init_one(struct net_device *dev)
+{
+}
+
+#else /* create_proc_entry not defined */
+
void rtw_proc_init_one(struct net_device *dev)
{
struct proc_dir_entry *dir_dev = NULL;
@@ -751,6 +763,7 @@
}
}
}
+#endif /* create_proc_entry not defined */
#endif
uint loadparam( _adapter *padapter, _nic_hdl pnetdev);