acx-mac80211: 2.6.32, testable version avail

2010-01-03
2013-02-17
<< < 1 2 3 (Page 3 of 3)
  • Oliver Winker
    Oliver Winker
    2010-06-04

    Hi hubbitus,

    Happy to hear it works, great :)!

    However I didn't yet got an connection with ADHOC WPA. Need to do some more detailed testing. But before there are still some other items in the pipe.

    I don't know yet, where the tx frame errors come from. I think I observed also some doing my small adhoc tests, but I don't remember to have had them continuously.

    Btw, is the connection stable ? Because the pci irq code also changed a bit, and I'm curious if it holds.

    Cheers, Oliver  

     
  • Hubbitus
    Hubbitus
    2010-06-05

    Btw, is the connection stable ? Because the pci irq code also changed a bit, and I'm curious if it holds.

    Unfortunately no. Sometimes it is brakes and mostly it reestablished automatically after several seconds…

     
  • KENDRICK CURRY
    KENDRICK CURRY
    2010-06-12

    Hey I was trying to build the driver into my kernel with mem support for the hx4700 and i got these errors:

    CC      drivers/net/wireless/acx/mem.o
    drivers/net/wireless/acx/mem.c: In function 'acxmem_create_desc_queues':
    drivers/net/wireless/acx/mem.c:1071: error: 'acx_device_t' has no member named 'acx_queue_indicator'
    drivers/net/wireless/acx/mem.c: In function 'acxmem_s_proc_diag_output':
    drivers/net/wireless/acx/mem.c:2696: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:2701: error: 'acx_device_t' has no member named 'acx_txbuf_numblocks'
    drivers/net/wireless/acx/mem.c:2701: error: 'acx_device_t' has no member named 'acx_txbuf_blocks_free'
    drivers/net/wireless/acx/mem.c:2702: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:2775: error: 'acx_device_t' has no member named 'acx_txbuf_start'
    drivers/net/wireless/acx/mem.c:2776: error: 'acx_device_t' has no member named 'acx_txbuf_numblocks'
    drivers/net/wireless/acx/mem.c: In function 'acxmem_l_alloc_tx':
    drivers/net/wireless/acx/mem.c:2994: error: 'acx_device_t' has no member named 'acx_txbuf_blocks_free'
    drivers/net/wireless/acx/mem.c:2996: error: 'acx_device_t' has no member named 'acx_txbuf_blocks_free'
    drivers/net/wireless/acx/mem.c: In function 'allocate_acx_txbuf_space':
    drivers/net/wireless/acx/mem.c:3114: error: 'acx_device_t' has no member named 'txbuf_lock'
    drivers/net/wireless/acx/mem.c:3122: error: 'acx_device_t' has no member named 'acx_txbuf_blocks_free'
    drivers/net/wireless/acx/mem.c:3126: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3137: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3142: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3143: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3148: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3149: error: 'acx_device_t' has no member named 'acx_txbuf_blocks_free'
    drivers/net/wireless/acx/mem.c:3162: error: 'acx_device_t' has no member named 'acx_txbuf_blocks_free'
    drivers/net/wireless/acx/mem.c:3163: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3168: error: 'acx_device_t' has no member named 'txbuf_lock'
    drivers/net/wireless/acx/mem.c: In function 'acxmem_reclaim_acx_txbuf_space':
    drivers/net/wireless/acx/mem.c:3184: error: 'acx_device_t' has no member named 'txbuf_lock'
    drivers/net/wireless/acx/mem.c:3186: error: 'acx_device_t' has no member named 'acx_txbuf_start'
    drivers/net/wireless/acx/mem.c:3187: error: 'acx_device_t' has no member named 'acx_txbuf_start'
    drivers/net/wireless/acx/mem.c:3188: error: 'acx_device_t' has no member named 'acx_txbuf_numblocks'
    drivers/net/wireless/acx/mem.c:3202: error: 'acx_device_t' has no member named 'acx_txbuf_blocks_free'
    drivers/net/wireless/acx/mem.c:3211: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3212: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3216: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3219: error: 'acx_device_t' has no member named 'txbuf_lock'
    drivers/net/wireless/acx/mem.c: In function 'init_acx_txbuf':
    drivers/net/wireless/acx/mem.c:3236: error: 'acx_device_t' has no member named 'acx_txbuf_free'
    drivers/net/wireless/acx/mem.c:3236: error: 'acx_device_t' has no member named 'acx_txbuf_start'
    drivers/net/wireless/acx/mem.c:3237: error: 'acx_device_t' has no member named 'acx_txbuf_blocks_free'
    drivers/net/wireless/acx/mem.c:3237: error: 'acx_device_t' has no member named 'acx_txbuf_numblocks'
    drivers/net/wireless/acx/mem.c: In function 'acx100mem_s_set_tx_level':
    drivers/net/wireless/acx/mem.c:3885: error: 'RADIO_0D_MAXIM_MAX2820' undeclared (first use in this function)
    drivers/net/wireless/acx/mem.c:3885: error: (Each undeclared identifier is reported only once
    drivers/net/wireless/acx/mem.c:3885: error: for each function it appears in.)
    drivers/net/wireless/acx/mem.c:3888: error: 'RADIO_11_RFMD' undeclared (first use in this function)
    drivers/net/wireless/acx/mem.c:3889: error: 'RADIO_15_RALINK' undeclared (first use in this function)
    drivers/net/wireless/acx/mem.c:4657:5: warning: "CONFIG_ACX_MAC80211_VERSION" is not defined
    drivers/net/wireless/acx/mem.c: In function 'acxmem_e_probe':
    drivers/net/wireless/acx/mem.c:5220: error: 'acx_device_t' has no member named 'txbuf_lock'
    make: ***  Error 1
    make: ***  Error 2
    make: ***  Error 2
    make: ***  Error 2
    make: ***  Error 2

    Everything else builds fine except this, has this not been updated or am i doing something wrong?

     
  • Oliver Winker
    Oliver Winker
    2010-06-13

    Hi notime2d8,

    Is CONFIG_ACX_MAC80211_MEM set in the Makefile ? Normally these members are included in the struct, with this defined.

    Currently there is quite some infra-structure work (reworking the locking) going on, and I'm just in the mem.c part to port changes from pci. So normally I'll test this part today or the coming days.

    Otherwise for the hx, you might also try 160e4afb, which was a stable commit for the hx.

    Cheers, Oliver

     
  • Oliver Winker
    Oliver Winker
    2010-06-14

    Hi notime2d8,

    I just pushed out the locking rework changes, commit 744a44e0. This commit is tested with pci, usb and also the hx4700 as mem device.

    Cheers, Ol

     
  • lostdistance
    lostdistance
    2010-06-17

    Hello Oliver,

    Thank you for your ongoing work on this driver. I have it (mostly) working on my hx4700 running linux-2.6.32.

    I have some problems with transmissions failing after a while (say 5 or 10 or 20 minutes) as reported by "acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left" warnings. After this I have to reboot the unit to clear the problem. However it may be related to the connman connection manager I am using, because I have not yet seen any transmission warnings with only wpa_supplicant and udhcpc running. I'm looking into this.

    In the meantime here are a few patches which might be helpful.

    diff -ru a/common.c b/common.c
    -- a/common.c  2010-06-15 02:29:51.397554191 +0100
    +++ b/common.c  2010-06-17 01:37:59.279991566 +0100
    @@ -5529,14 +5529,8 @@
    //             acx_s_select_opmode(adev);

            if (changed & BSS_CHANGED_BSSID) {

    -               if (info->bssid && (strlen(info->bssid) > 0)) {
                            MAC_COPY(adev->bssid, info->bssid);
    -                       adev->essid_len = strlen(info->bssid);
    -                       memcpy(adev->essid, info->bssid, strlen(info->bssid));
    -
                            SET_BIT(adev->set_mask, SET_TEMPLATES);
    -               }
            }

            // BOM BSS_CHANGED_BEACON
    diff -ru a/mem.c b/mem.c
    -- a/mem.c     2010-06-15 02:29:51.401554913 +0100
    +++ b/mem.c     2010-06-17 16:04:19.400432752 +0100
    @@ -474,7 +474,7 @@
                    return readb(((u8 *)adev->iobase) + addr);

            acx_writel( addr, &adev->iobase );
    -       lo = acx_readw( (u8 *)&adev->iobase );
    +       lo = readb( (u8 *)&adev->iobase );

            return (u8) lo;
    }

    Patch comments:
    1. Checking info->bssid != NULL is apparently unnecessary because ieee80211_bss_info_change_notify() always sets it to some (presumably non-NULL) value before calling the bss_info_changed() function. Almost all other drivers do not check it either.
    2. Calling strlen(info->bssid) is spurious; bssid is a MAC address!
    3. Calling memcpy(adev->essid, info->bssid, strlen(info->bssid)) corrupts a text string (essid) by overwriting it with a MAC address (bssid). This corruption was easily visible in /proc/driver/acx0/acx_diag.
    4. read_reg8() was calling acx_readw() instead of readb(). Probably not important, but it looked inconsistent.

     
  • Oliver Winker
    Oliver Winker
    2010-06-17

    Hi lostdistance ,

    Thanks a lot for the patches. I'll have a look at them and let you know. Currently I'm still in some other items with driver (fixing the rates and further cleanups and some reorga), and then I'll check them. Indeed, in the config logic there are several things to align.  

    Which commit of the branch are you using ? The last one currently is '83d614b'.

    For the "BUG: no free txdesc left":

    Hmm, didn't observe this with the recent versions, once connection is up. But I also didn't do real long duration tests. I'll also try that one time during the WE with my hx4700.

    Question: Is the 'connman' program doing if often down/up's ?

    Because if up/down is still a bit problematic with mem (pci is more robust there). I planned to solve this by a better reset of the device at ifup. Actually I have planned this as next after the coming cleanup.

    As a tip: You should be able to reset this also by just unloading the module and reload, which basically does a complete reset.

    Cheers, Oliver

     
  • lostdistance
    lostdistance
    2010-06-17

    I'm using commit 744a44e0 from a few days ago. I tried to checkout 83d614b without success. I don't understand git well enough to know why: "updating paths is incompatible with switching branches" anyone?

    Yes, connman does a down/up every few minutes!

     
  • lostdistance
    lostdistance
    2010-06-18

    Actually, looking more closely, connman is not doing up/down (i.e. "acx: updating initial settings on iface activation" to "acxpci: closed device" inclusive) every few minutes, but is rescanning all the channels every few minutes. Otherwise the driver is reporting the same messages whether connman is running or not.

    So it seems that connman's regular rescanning makes the wireless unreliable (e.g. running for 20 minutes until "no free txdesc left"), whereas the absence of connman makes the wireless wholly reliable (e.g. running for 8 hours until I stopped it).

     
  • Oliver Winker
    Oliver Winker
    2010-06-18

    Hi lostdistance,

    Aha, that is interesting! Just a quick answer now during the morning.

    For the commit: my fault, 83d614b is actually not yet pushed. But the status of a few days is ok.

    Scans are currently done in sw by mac80211. The basic operation is 1) switch channel, 2) send a probe frame, 3) listen probe responses.

    That is basically a simple tx/rx operation , but there is the channel switching, and that might confuse the acx transmission machinery, while it's in the active connection. Probably frames getting spoiled during scan/channel switch and then they block. wpa_supplicant is also scanning initially, and also to re-establish a lost connection, but maybe there the situation is clearer for the device. The acx-mem device is alo generally more sensible to frame processing, than the pci devices e.g..

    Could you try, if this can be reproduced without connman ?

    - Start connection (wpa_supplicant, udhcp, …)
    - Do scans inbetween: iwlist wlan scan

    That would be great for debugging, if it can be reproduced with this.

    If it's that, then we need to see to e.g. better handle channel switching (e.g. calm down pending tx_queue and tx descr ring) or maybe better recover from it (which, as it seems to me currently, is basically a full reset and report that to mac80211).

    There are also some changes stashed in my local git repo, which display more details via acx_diag for mem tx descr, etc. … was usefull for better debugging up/down. I'll see to push these out.

    I'll also have a look at the this evening and/or the WE. I'm only having still some other things in the acx pipeline, which I would like to finish.

    Cheers, Ol

     
  • lostdistance
    lostdistance
    2010-06-18

    Yes, you're right, iwlist killed the connection after just 3 attempts.

    Here's the full driver output from the point that wpa_supplicant started:

    acx: updating initial settings on iface activation
    acx: an important setting has been changed. The packet templates must also be updated
    acx: updating packet templates
    acx: updating Tx fallback to 1 retries
    acx: updating the transmit power: 18 dBm
    acx: phy0: changing radio power level to 18 dBm (23)
    acx: updating antenna value: 0x8D
    acx: pdating the Energy Detect (ED) threshold: 112
    acx: updating the Channel Clear Assessment (CCA) value: 0x0D
    acx: updating channel to: 1
    acx: updating the short retry limit: 7, long retry limit: 4
    acx: updating the tx MSDU lifetime: 4096
    acx: updating the regulatory domain: 0x30
    acx: updating WEP key settings
    acx: acx_e_op_add_interface: vif_type=0002
    acx: acx_s_select_opmode: NL80211_IFTYPE_STATION
    acx: Virtual interface added (type: 0x00000002, MAC: 00:11:85:C4:5A:EA)
    acx: updating channel to: 2
    acx: updating channel to: 3
    acx: updating channel to: 4
    acx: updating channel to: 5
    acx: updating channel to: 6
    acx: updating channel to: 7
    acx: updating channel to: 8
    acx: updating channel to: 9
    acx: updating channel to: 10
    acx: updating channel to: 11
    acx: updating channel to: 12
    acx: updating channel to: 13
    acx: updating channel to: 14
    0000: 0e
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Channel invalid in current regulatory domain: FAILED
    acx: updating channel to: 1
    acx: updating channel to: 2
    wlan0: direct probe to AP c0:3f:0e:20:2d:ae (try 1)
    wlan0: direct probe responded
    wlan0: authenticate with AP c0:3f:0e:20:2d:ae (try 1)
    wlan0: authenticated
    wlan0: associate with AP c0:3f:0e:20:2d:ae (try 1)
    wlan0: RX AssocResp from c0:3f:0e:20:2d:ae (capab=0x431 status=0 aid=6)
    wlan0: associated
    acx: updating packet templates
    acx: acx_e_op_set_key: algorithm=3: ACX_SEC_ALGO_AES
    acx: acx_e_op_set_key: algorithm=3: ACX_SEC_ALGO_AES
    acx: updating channel to: 1
    acx: updating channel to: 2
    acx: updating channel to: 3
    acx: updating channel to: 2
    acx: updating channel to: 4
    acx: updating channel to: 2
    acx: updating channel to: 5
    acx: updating channel to: 2
    acx: updating channel to: 6
    acx: updating channel to: 2
    acx: updating channel to: 7
    acx: updating channel to: 2
    acx: updating channel to: 8
    acx: updating channel to: 2
    acx: updating channel to: 9
    acx: updating channel to: 2
    acx: updating channel to: 10
    acx: updating channel to: 2
    acx: updating channel to: 11
    acx: updating channel to: 2
    acx: updating channel to: 12
    acx: updating channel to: 2
    acx: updating channel to: 13
    acx: updating channel to: 2
    acx: updating channel to: 14
    0000: 0e
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Channel invalid in current regulatory domain: FAILED
    acx: updating channel to: 2
    acx: updating channel to: 1
    acx: updating channel to: 2
    acx: updating channel to: 3
    acx: updating channel to: 2
    acx: updating channel to: 4
    acx: updating channel to: 2
    acx: updating channel to: 5
    acx: updating channel to: 2
    acx: updating channel to: 6
    acx: updating channel to: 2
    acx: updating channel to: 7
    acx: updating channel to: 2
    acx: updating channel to: 8
    acx: updating channel to: 2
    acx: updating channel to: 9
    acx: updating channel to: 2
    acx: updating channel to: 10
    acx: updating channel to: 2
    acx: updating channel to: 11
    acx: updating channel to: 2
    acx: updating channel to: 12
    acx: updating channel to: 2
    acx: updating channel to: 13
    acx: updating channel to: 2
    acx: updating channel to: 14
    0000: 0e
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Channel invalid in current regulatory domain: FAILED
    acx: updating channel to: 2
    acx: updating channel to: 1
    acx: updating channel to: 2
    acx: updating channel to: 3
    acx: updating channel to: 2
    acx: updating channel to: 4
    acx: updating channel to: 2
    acx: updating channel to: 5
    acx: updating channel to: 2
    acx: updating channel to: 6
    acx: updating channel to: 2
    acx: updating channel to: 7
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 07
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 00
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_RX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acx: updating channel to: 2
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 02
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 00
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_RX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acx: updating channel to: 8
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 08
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 00
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_RX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acx: updating channel to: 2
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 02
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 00
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_RX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acx: updating channel to: 9
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 09
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 00
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_RX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acx: updating channel to: 2
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 02
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acxmem: acxmem_s_issue_cmd_timeo_debug: phy0: Timed out waiting for CMD_COMPLETE. irq bits:0x0000 irq_status:0x2000 timeout:49ms cmd_status:0 (Idle)
    acxmem: acxmem_s_issue_cmd_timeo_debug: timeout: counter:-1 cmd_timeout:49 cmd_timeout-counter:50
    0000: 00
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_RX, buflen=1, timeout=49ms, type=0x3000, status=Idle: FAILED
    acx: updating channel to: 10
    acx: updating channel to: 2
    acx: updating channel to: 11
    acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    acx: updating channel to: 2
    acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    acx: updating channel to: 12
    acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    acx: updating channel to: 2
    acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    acx: updating channel to: 13
    acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    acx: updating channel to: 2
    acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    acx: updating channel to: 14
    0000: 0e
    acx: acxmem_s_issue_cmd_timeo_debug: phy0: cmd=ACX1xx_CMD_ENABLE_TX, buflen=1, timeout=49ms, type=0x3000, status=Channel invalid in current regulatory domain: FAILED
    acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    acx: updating channel to: 2
    acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    No probe response from AP c0:3f:0e:20:2d:ae after 500ms, disconnecting.
    acx: updating packet templates
    wlan0: direct probe to AP c0:3f:0e:20:2d:ae (try 1)
    wlan0: direct probe to AP c0:3f:0e:20:2d:ae (try 2)
    wlan0: direct probe to AP c0:3f:0e:20:2d:ae (try 3)
    wlan0: direct probe to AP c0:3f:0e:20:2d:ae timed out

     
  • Oliver Winker
    Oliver Winker
    2010-06-19

    Yepp - have it now here as well … with a bit of delay after the scans. The first scans went through wo problems.

    Ok, that's good, it can be reproduced. Now we just need to fix it ;).

    I'll try to have a look at it the coming week or days (depends always bit on time and on other things in the pipeline). It's already good, that it can be reproduced.

    Cheers, Ol

    <4> acx: updating channel to: 2
    <4> acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    <4> acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    <4> acx: updating channel to: 3
    <4> acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    <4> acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    <4> acx: updating channel to: 4
    <4> acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    <4> acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    <4> acx: updating channel to: 5
    <4> acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    <4> acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    <4> acx: updating channel to: 6
    <4> acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    <4> acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    <4> acx: updating channel to: 7
    <4> acxmem: acxmem_l_alloc_tx: BUG: no free txdesc left
    <4> acxmem: acxmem_l_alloc_tx: trying to wake up ACX
    <4> acx: updating channel to: 8
    --

     
  • Oliver Winker
    Oliver Winker
    2010-06-29

    Hello lostdistance,

    Small update:

    1) I added your patch for the bssid/essid setting. There was another user reporting a problem related to this, so I took it in the middle and put it in. Thanks a lot again. I added an Reported-by tag to the commit message. I hope that's Ok.

    2) For the scan problem: I'm on it … it's an interesting one ;). There is already some improvement, but I'm still verifying some theories. It has maybe something to do with locking in the mem part, which would be then also a general positive side-effect. Maybe I'll also put in the hw-scan, which may be still more efficient, but first I would like to verify the current track.

    Cheers, Oliver 

     
  • Oliver Winker
    Oliver Winker
    2010-07-01

    Hello lostdistance,

    The sw-scan should be much more stable now, commit c5d2772c.

    I run two large transfers of 27MB up and down link in parallel and with scans every 3 secs. 

    Most of the times it survived this, however it's not yet 100% water-proof. For this I think we need the hw-scan, which is probably less heavy for the interface. I'll see to take a look at this some time soon.

    Cheers, Oliver 

     
<< < 1 2 3 (Page 3 of 3)