On Wed, 16 Feb 2011 01:28:19 +0000 (GMT) Hin-Tak Leung 
<ht...@users.sourceforge.net> wrote:

> I use it mainly for the AP mode, on an old machine that has just been 
> resurrected after over a year, so the last it worked was on 2.6.31.x . There 
> are a couple of old and new quirks: a dozen of 'We are trapped in 
> zd_SigProcess, Going to release all,id=3,block=1' is new to 2.6.35.x, but the 
> driver has always needed if down/up and or iwlist scan before a client 
> station can connect, and that's still the case; and under extended use (a few 
> days, and/or a few GB traffic) it can still bring the AP machine down.
> 
> I see some great person has just had a whole bunch of patches committed to 
> wireless-testing in the last few months for enabling AP mode for the 
> in-kernel zd1211rw driver... so 2.6.39(?) or thereabout it would be generally 
> available...so the use of the vendor driver for AP mode would soon not be 
> needed any more. I'd probably give the compat-wireless a try soon enough.

There is a patch at http://ankalagon.ru/notes/patch-na-zd1211rw which adds AP 
mode in a very simple
way, and it actually works! I had to modify the first hunk slightly for kernel 
2.6.38, modified patch below:

--- a/drivers/net/wireless/zd1211rw/zd_mac.c    2009-08-17 01:19:38.000000000 
+0400
+++ b/drivers/net/wireless/zd1211rw/zd_mac.c    2009-08-22 21:05:06.268498867 
+0400
@@ -882,6 +882,7 @@
        case NL80211_IFTYPE_MESH_POINT:
        case NL80211_IFTYPE_STATION:
        case NL80211_IFTYPE_ADHOC:
+       case NL80211_IFTYPE_AP:
                mac->type = vif->type;
                break;
        default:
@@ -1046,6 +1047,7 @@
        dev_dbg_f(zd_mac_dev(mac), "changes: %x\n", changes);

        if (mac->type == NL80211_IFTYPE_MESH_POINT ||
+           mac->type == NL80211_IFTYPE_AP ||
            mac->type == NL80211_IFTYPE_ADHOC) {
                associated = true;
                if (changes & BSS_CHANGED_BEACON) {
@@ -1143,6 +1145,7 @@
        hw->wiphy->interface_modes =
                BIT(NL80211_IFTYPE_MESH_POINT) |
                BIT(NL80211_IFTYPE_STATION) |
+               BIT(NL80211_IFTYPE_AP) |
                BIT(NL80211_IFTYPE_ADHOC);

        hw->max_signal = 100;


Regards,
Nerijus

------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Zd1211-devs mailing list - http://zd1211.wiki.sourceforge.net/
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/zd1211-devs

Reply via email to