Wl1251/Development

 
(One intermediate revision not shown)
Line 68: Line 68:
{| class="wikitable"
{| class="wikitable"
! bssid !! beacon_int !! dtim_period !! bss_type !! ctrl !! Result
! bssid !! beacon_int !! dtim_period !! bss_type !! ctrl !! Result
 +
|-
 +
| 00:00:00:00:00:00 || 100 || 1 || BSS_TYPE_STA_BSS || JOIN_CMD_CTRL_TX_FLUSH || WORKS!
|-
|-
| 00:00:00:00:00:00 || 100 || 1 || BSS_TYPE_STA_BSS || 0 || WORKS!
| 00:00:00:00:00:00 || 100 || 1 || BSS_TYPE_STA_BSS || 0 || WORKS!
|-
|-
| 00:00:00:00:00:00 || 0 || 0 || BSS_TYPE_STA_BSS || 0 || WORKS!
| 00:00:00:00:00:00 || 0 || 0 || BSS_TYPE_STA_BSS || 0 || WORKS!
 +
|-
 +
|}
 +
 +
==== JOIN / TX_DISABLE ====
 +
 +
{| class="wikitable"
 +
! bssid !! beacon_int !! dtim_period !! bss_type !! ctrl !! Result
 +
|-
 +
| 00:00:00:00:00:00 || 100 || 1 || BSS_TYPE_STA_BSS || JOIN_CMD_CTRL_TX_FLUSH || TX/RX not working
|-
|-
|}
|}
Line 106: Line 117:
==== TX_DISABLE ====
==== TX_DISABLE ====
-
Work in progress.
+
{| class="wikitable"
 +
! Result
 +
|-
 +
| No channel change?/TX path disabled
 +
|-
 +
|}
==== RX_DISABLE ====
==== RX_DISABLE ====
-
Work in progress.
+
{| class="wikitable"
 +
! Result
 +
|-
 +
| Firmware lockup on TX
 +
|-
 +
|}
 +
 
 +
==== New proposal: ====
 +
 
 +
Start with DISABLE_TX.
 +
Let op_add_interface do ENABLE_TX and op_remove_interface do DISABLE_TX.
 +
Use JOIN for every channel change.

Latest revision as of 20:14, 18 February 2011

Contents

[edit] Firmware testing

Testing driver: Maemo Fremantle 2.6.28 / wireless-testing 2011-02-06

External monitor: Ubuntu 10.04 / Wireshark / Alfa AWUS036H (rtl8187) in monitor mode (single vif)

[edit] Monitor mode channel switching

[edit] JOIN

Parameters

bssid beacon_int dtim_period bss_type ctrl Result
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS JOIN_CMD_CTRL_TX_FLUSH CTS
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS 0 CTS
00:00:00:00:00:00 100 0 BSS_TYPE_STA_BSS JOIN_CMD_CTRL_TX_FLUSH CTS
00:00:00:00:00:00 0 1 BSS_TYPE_STA_BSS JOIN_CMD_CTRL_TX_FLUSH CTS
00:00:00:00:00:00 0 0 BSS_TYPE_STA_BSS 0 CTS

CTS: Emits some CTS frames

[edit] ACX_CTS_PROTECTION / JOIN

bssid beacon_int dtim_period bss_type ctrl ACX_CTS_PROTECTION Result
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS JOIN_CMD_CTRL_TX_FLUSH CTSPROTECT_DISABLE CTS
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS JOIN_CMD_CTRL_TX_FLUSH CTSPROTECT_ENABLE CTS
00:00:00:00:00:00 0 0 BSS_TYPE_STA_BSS 0 CTSPROTECT_DISABLE CTS
00:00:00:00:00:00 0 0 BSS_TYPE_STA_BSS 0 CTSPROTECT_ENABLE CTS
00:00:00:00:00:00 0 0 MAX_BSS_TYPE 0 CTSPROTECT_DISABLE No channel change
00:00:00:00:00:00 0 0 1 0 CTSPROTECT_DISABLE CTS
00:00:00:00:00:00 0 0 4 0 CTSPROTECT_DISABLE CTS
ff:ff:ff:ff:ff:ff 0 0 BSS_TYPE_STA_BSS 0 CTSPROTECT_DISABLE CTS

[edit] JOIN / ACX_CTS_PROTECTION

bssid beacon_int dtim_period bss_type ctrl ACX_CTS_PROTECTION Result
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS 0 CTSPROTECT_DISABLE CTS
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS 0 CTSPROTECT_ENABLE CTS
00:00:00:00:00:00 0 0 BSS_TYPE_STA_BSS 0 CTSPROTECT_DISABLE CTS
00:00:00:00:00:00 0 0 BSS_TYPE_STA_BSS 0 CTSPROTECT_ENABLE CTS

[edit] TX_DISABLE / JOIN

bssid beacon_int dtim_period bss_type ctrl Result
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS JOIN_CMD_CTRL_TX_FLUSH WORKS!
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS 0 WORKS!
00:00:00:00:00:00 0 0 BSS_TYPE_STA_BSS 0 WORKS!

[edit] JOIN / TX_DISABLE

bssid beacon_int dtim_period bss_type ctrl Result
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS JOIN_CMD_CTRL_TX_FLUSH TX/RX not working

[edit] JOIN / DISCONNECT

bssid beacon_int dtim_period bss_type ctrl Result
00:00:00:00:00:00 100 1 BSS_TYPE_STA_BSS 0 some CTS/TX path disabled
00:00:00:00:00:00 0 0 BSS_TYPE_STA_BSS 0 some CTS/TX path disabled

[edit] TX_ENABLE

Result
TX path disabled

[edit] RX_ENABLE

Result
TX path disabled

[edit] TX_DISABLE

Result
No channel change?/TX path disabled

[edit] RX_DISABLE

Result
Firmware lockup on TX

[edit] New proposal:

Start with DISABLE_TX. Let op_add_interface do ENABLE_TX and op_remove_interface do DISABLE_TX. Use JOIN for every channel change.