Changeset 4751


Ignore:
Timestamp:
11/03/08 23:36:57 (8 years ago)
Author:
werner
Message:

Updated status of sync/async mode.

  • drivers/ar6000/hif/hif2.c: remove obsolete CONFIG_AR6000_GTA02_DIRECT_IRQ
  • drivers/ar6000/hif/hif2.c: we can do sync/async, but it doesn't always help
File:
1 edited

Legend:

Unmodified
Added
Removed
  • developers/werner/wlan-spi/patches-tracking/hif-can-do-async.patch

    r4716 r4751  
    1 After going to direct interrupts, our HIF can also handle asynchronous 
    2 requests. Not entirely sure what kept them from working before. Most 
    3 likely, there is some synchronization problem that we're now avoiding 
    4 by also going through the system's main workqueue and thus implicitly 
    5 synchronize with SPI. 
     1Lo and behold, this doesn't even need direct interrupts to work. 
     2 
     3The results are mixed: throughput is down by 5% for inbound 
     4traffic but up by 14% for outbound. Latency increases by about 
     58ms for outbound pings. 
    66 
    77Index: ktrack/drivers/ar6000/hif/hif2.c 
    88=================================================================== 
    9 --- ktrack.orig/drivers/ar6000/hif/hif2.c       2008-10-16 01:01:08.000000000 -0200 
    10 +++ ktrack/drivers/ar6000/hif/hif2.c    2008-10-16 01:01:28.000000000 -0200 
    11 @@ -279,8 +279,11 @@ 
     9--- ktrack.orig/drivers/ar6000/hif/hif2.c       2008-11-03 21:12:06.000000000 -0200 
     10+++ ktrack/drivers/ar6000/hif/hif2.c    2008-11-03 21:18:00.000000000 -0200 
     11@@ -425,8 +425,8 @@ 
    1212                        mbs_cfg[i] = HIF_MBOX_START_ADDR(i); 
    1313                break; 
    1414        case HIF_DEVICE_GET_IRQ_PROC_MODE: 
    15 +#ifdef CONFIG_AR6000_GTA02_DIRECT_IRQ 
     15-               *ipm_cfg = HIF_DEVICE_IRQ_SYNC_ONLY; 
     16-//             *ipm_cfg = HIF_DEVICE_IRQ_ASYNC_SYNC; 
    1617+               *ipm_cfg = HIF_DEVICE_IRQ_ASYNC_SYNC; 
    17 +#else 
    18                 *ipm_cfg = HIF_DEVICE_IRQ_SYNC_ONLY; 
    19 -//             *ipm_cfg = HIF_DEVICE_IRQ_ASYNC_SYNC; 
    20 +#endif 
     18+//             *ipm_cfg = HIF_DEVICE_IRQ_SYNC_ONLY; 
    2119                break; 
    2220        default: 
Note: See TracChangeset for help on using the changeset viewer.