diff options
author | Frederic Weisbecker | 2009-10-18 01:09:09 +0200 |
---|---|---|
committer | Frederic Weisbecker | 2009-10-18 01:12:33 +0200 |
commit | 0f8f86c7bdd1c954fbe153af437a0d91a6c5721a (patch) | |
tree | 94a8d419a470a4f9852ca397bb9bbe48db92ff5c /drivers/staging/rt2870/common/2870_rtmp_init.c | |
parent | Merge branch 'linus' into tracing/hw-breakpoints (diff) | |
parent | perf tools: Move dereference after NULL test (diff) | |
download | kernel-qcow2-linux-0f8f86c7bdd1c954fbe153af437a0d91a6c5721a.tar.gz kernel-qcow2-linux-0f8f86c7bdd1c954fbe153af437a0d91a6c5721a.tar.xz kernel-qcow2-linux-0f8f86c7bdd1c954fbe153af437a0d91a6c5721a.zip |
Merge commit 'perf/core' into perf/hw-breakpoint
Conflicts:
kernel/Makefile
kernel/trace/Makefile
kernel/trace/trace.h
samples/Makefile
Merge reason: We need to be uptodate with the perf events development
branch because we plan to rewrite the breakpoints API on top of
perf events.
Diffstat (limited to 'drivers/staging/rt2870/common/2870_rtmp_init.c')
-rw-r--r-- | drivers/staging/rt2870/common/2870_rtmp_init.c | 63 |
1 files changed, 5 insertions, 58 deletions
diff --git a/drivers/staging/rt2870/common/2870_rtmp_init.c b/drivers/staging/rt2870/common/2870_rtmp_init.c index 80909e9ab5ae..f517d9e90271 100644 --- a/drivers/staging/rt2870/common/2870_rtmp_init.c +++ b/drivers/staging/rt2870/common/2870_rtmp_init.c @@ -699,14 +699,9 @@ NDIS_STATUS AdapterBlockAllocateMemory( usb_dev = pObj->pUsb_Dev; -#ifndef RT30xx - pObj->MLMEThr_pid = THREAD_PID_INIT_VALUE; - pObj->RTUSBCmdThr_pid = THREAD_PID_INIT_VALUE; -#endif -#ifdef RT30xx pObj->MLMEThr_pid = NULL; pObj->RTUSBCmdThr_pid = NULL; -#endif + *ppAd = (PVOID)vmalloc(sizeof(RTMP_ADAPTER)); if (*ppAd) @@ -742,12 +737,7 @@ NDIS_STATUS CreateThreads( { PRTMP_ADAPTER pAd = net_dev->ml_priv; POS_COOKIE pObj = (POS_COOKIE) pAd->OS_Cookie; -#ifndef RT30xx - pid_t pid_number = -1; -#endif -#ifdef RT30xx pid_t pid_number; -#endif //init_MUTEX(&(pAd->usbdev_semaphore)); @@ -761,75 +751,42 @@ NDIS_STATUS CreateThreads( init_completion (&pAd->TimerQComplete); // Creat MLME Thread -#ifndef RT30xx - pObj->MLMEThr_pid= THREAD_PID_INIT_VALUE; - pid_number = kernel_thread(MlmeThread, pAd, CLONE_VM); - if (pid_number < 0) - { -#endif -#ifdef RT30xx pObj->MLMEThr_pid = NULL; pid_number = kernel_thread(MlmeThread, pAd, CLONE_VM); if (pid_number < 0) { -#endif printk (KERN_WARNING "%s: unable to start Mlme thread\n",pAd->net_dev->name); return NDIS_STATUS_FAILURE; } -#ifndef RT30xx - pObj->MLMEThr_pid = GET_PID(pid_number); -#endif -#ifdef RT30xx pObj->MLMEThr_pid = find_get_pid(pid_number); -#endif + // Wait for the thread to start wait_for_completion(&(pAd->mlmeComplete)); // Creat Command Thread -#ifndef RT30xx - pObj->RTUSBCmdThr_pid= THREAD_PID_INIT_VALUE; - pid_number = kernel_thread(RTUSBCmdThread, pAd, CLONE_VM); - if (pid_number < 0) -#endif -#ifdef RT30xx pObj->RTUSBCmdThr_pid = NULL; pid_number = kernel_thread(RTUSBCmdThread, pAd, CLONE_VM); if (pid_number < 0) -#endif { printk (KERN_WARNING "%s: unable to start RTUSBCmd thread\n",pAd->net_dev->name); return NDIS_STATUS_FAILURE; } -#ifndef RT30xx - pObj->RTUSBCmdThr_pid = GET_PID(pid_number); -#endif -#ifdef RT30xx pObj->RTUSBCmdThr_pid = find_get_pid(pid_number); -#endif + wait_for_completion(&(pAd->CmdQComplete)); -#ifndef RT30xx - pObj->TimerQThr_pid= THREAD_PID_INIT_VALUE; - pid_number = kernel_thread(TimerQThread, pAd, CLONE_VM); - if (pid_number < 0) -#endif -#ifdef RT30xx pObj->TimerQThr_pid = NULL; pid_number = kernel_thread(TimerQThread, pAd, CLONE_VM); if (pid_number < 0) -#endif { printk (KERN_WARNING "%s: unable to start TimerQThread\n",pAd->net_dev->name); return NDIS_STATUS_FAILURE; } -#ifndef RT30xx - pObj->TimerQThr_pid = GET_PID(pid_number); -#endif -#ifdef RT30xx + pObj->TimerQThr_pid = find_get_pid(pid_number); -#endif + // Wait for the thread to start wait_for_completion(&(pAd->TimerQComplete)); @@ -1306,9 +1263,7 @@ static void rt2870_hcca_dma_done_tasklet(unsigned long data) UCHAR BulkOutPipeId = 4; purbb_t pUrb; -#ifndef RT30xx DBGPRINT_RAW(RT_DEBUG_ERROR, ("--->hcca_dma_done_tasklet\n")); -#endif pUrb = (purbb_t)data; pHTTXContext = (PHT_TX_CONTEXT)pUrb->context; @@ -1338,20 +1293,12 @@ static void rt2870_hcca_dma_done_tasklet(unsigned long data) RTMPDeQueuePacket(pAd, FALSE, BulkOutPipeId, MAX_TX_PROCESS); } -#ifndef RT30xx - RTUSB_SET_BULK_FLAG(pAd, fRTUSB_BULK_OUT_DATA_NORMAL); -#endif -#ifdef RT30xx RTUSB_SET_BULK_FLAG(pAd, fRTUSB_BULK_OUT_DATA_NORMAL<<4); -#endif RTUSBKickBulkOut(pAd); } } -#ifndef RT30xx DBGPRINT_RAW(RT_DEBUG_ERROR, ("<---hcca_dma_done_tasklet\n")); -#endif - return; } |