nexmon – Rev 1

Subversion Repositories:
Rev:
diff -ur ../rt2570-cvs-2005112305/Module/rtusb_data.c ./Module/rtusb_data.c
--- ../rt2570-cvs-2005112305/Module/rtusb_data.c        2005-11-04 23:53:18.000000000 +0100
+++ ./Module/rtusb_data.c       2005-11-23 14:44:16.000000000 +0100
@@ -1711,6 +1711,9 @@
                                struct sk_buff  *skb;
                                if ((skb = __dev_alloc_skb(2048, GFP_DMA|GFP_ATOMIC)) != NULL)
                                {
+                                       if (pAdapter->PortCfg.MallowRFMONTx == TRUE)
+                                               goto rfmontx_80211_receive;
+
                                        // setup the wlan-ng prismheader
 
                                        if (skb_headroom(skb) < sizeof(wlan_ng_prism2_header))
@@ -1762,6 +1765,8 @@
 
                                        // end prismheader setup
 
+                               rfmontx_80211_receive:
+
                                        skb->dev = pAdapter->net;
                                        memcpy(skb_put(skb, pRxD->DataByteCnt-4), pData, pRxD->DataByteCnt-4);
                                        skb->mac.raw = skb->data;
diff -ur ../rt2570-cvs-2005112305/Module/rtusb_info.c ./Module/rtusb_info.c
--- ../rt2570-cvs-2005112305/Module/rtusb_info.c        2005-11-20 22:54:28.000000000 +0100
+++ ./Module/rtusb_info.c       2005-11-23 14:51:47.000000000 +0100
@@ -277,7 +277,10 @@
                        pAdapter->PortCfg.BssType=BSS_MONITOR;
                        RTUSBEnqueueInternalCmd(pAdapter, RT_OID_LINK_DOWN);
                        pAdapter->bConfigChanged = TRUE;
-                       pAdapter->net->type = 802; // ARPHRD_IEEE80211_PRISM
+                       if (pAdapter->PortCfg.MallowRFMONTx == TRUE)
+                               pAdapter->net->type = 801; // ARPHRD_IEEE80211
+                       else
+                               pAdapter->net->type = 802; // ARPHRD_IEEE80211_PRISM
                        RTUSBWriteMACRegister(pAdapter, TXRX_CSR2, 0x4e);
                        break;  
                default:
@@ -1132,9 +1135,11 @@
            {
              case 1:
                 pAdapter->PortCfg.MallowRFMONTx = TRUE;
+                pAdapter->net->type = 801; // ARPHRD_IEEE80211
                 break;
              case 0:
                 pAdapter->PortCfg.MallowRFMONTx = FALSE;
+                pAdapter->net->type = 802; // ARPHRD_IEEE80211_PRISM
                 break;
              default:
                 return -EOPNOTSUPP;