Index: linux-2.6.32-gentoo/drivers/staging/rtl8187se/ieee80211/ieee80211.h =================================================================== --- linux-2.6.32-gentoo.orig/drivers/staging/rtl8187se/ieee80211/ieee80211.h +++ linux-2.6.32-gentoo/drivers/staging/rtl8187se/ieee80211/ieee80211.h @@ -349,7 +349,7 @@ struct ieee_ibss_seq { /* NOTE: This data is for statistical purposes; not all hardware provides this * information for frames received. Not setting these will not cause * any adverse affects. */ -struct ieee80211_rx_stats { +struct rtl8187se_rx_stats { u32 mac_time[2]; u8 signalstrength; s8 rssi; @@ -792,7 +792,7 @@ struct ieee80211_network { u8 ssid_len; /* These are network statistics */ - struct ieee80211_rx_stats stats; + struct rtl8187se_rx_stats stats; u16 capability; u8 rates[MAX_RATES_LENGTH]; u8 rates_len; @@ -1323,12 +1323,12 @@ extern int ieee80211_xmit(struct sk_buff extern void ieee80211_txb_free(struct ieee80211_txb *); -/* ieee80211_rx.c */ -extern int ieee80211_rx(struct ieee80211_device *ieee, struct sk_buff *skb, - struct ieee80211_rx_stats *rx_stats); -extern void ieee80211_rx_mgt(struct ieee80211_device *ieee, +/* rtl8187se_rx.c */ +extern int rtl8187se_rx(struct ieee80211_device *ieee, struct sk_buff *skb, + struct rtl8187se_rx_stats *rx_stats); +extern void rtl8187se_rx_mgt(struct ieee80211_device *ieee, struct ieee80211_hdr_4addr *header, - struct ieee80211_rx_stats *stats); + struct rtl8187se_rx_stats *stats); /* ieee80211_wx.c */ extern int ieee80211_wx_get_scan(struct ieee80211_device *ieee, @@ -1354,8 +1354,8 @@ int ieee80211_wx_set_gen_ie(struct ieee8 /* ieee80211_softmac.c */ extern short ieee80211_is_54g(struct ieee80211_network net); extern short ieee80211_is_shortslot(struct ieee80211_network net); -extern int ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb, - struct ieee80211_rx_stats *rx_stats, u16 type, +extern int rtl8187se_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb, + struct rtl8187se_rx_stats *rx_stats, u16 type, u16 stype); extern void ieee80211_softmac_new_net(struct ieee80211_device *ieee, struct ieee80211_network *net); @@ -1376,8 +1376,8 @@ extern void ieee80211_stop_protocol(stru extern void ieee80211_softmac_start_protocol(struct ieee80211_device *ieee); extern void ieee80211_softmac_stop_protocol(struct ieee80211_device *ieee); extern void ieee80211_reset_queue(struct ieee80211_device *ieee); -extern void ieee80211_wake_queue(struct ieee80211_device *ieee); -extern void ieee80211_stop_queue(struct ieee80211_device *ieee); +extern void rtl8187se_wake_queue(struct ieee80211_device *ieee); +extern void rtl8187se_stop_queue(struct ieee80211_device *ieee); extern struct sk_buff *ieee80211_get_beacon(struct ieee80211_device *ieee); extern void ieee80211_start_send_beacons(struct ieee80211_device *ieee); extern void ieee80211_stop_send_beacons(struct ieee80211_device *ieee); Index: linux-2.6.32-gentoo/drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c =================================================================== --- linux-2.6.32-gentoo.orig/drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c +++ linux-2.6.32-gentoo/drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c @@ -47,7 +47,7 @@ #include "dot11d.h" static inline void ieee80211_monitor_rx(struct ieee80211_device *ieee, struct sk_buff *skb, - struct ieee80211_rx_stats *rx_stats) + struct rtl8187se_rx_stats *rx_stats) { struct ieee80211_hdr_4addr *hdr = (struct ieee80211_hdr_4addr *)skb->data; @@ -205,14 +205,14 @@ static int ieee80211_frag_cache_invalida -/* ieee80211_rx_frame_mgtmt +/* rtl8187se_rx_frame_mgtmt * * Responsible for handling management control frames * - * Called by ieee80211_rx */ + * Called by rtl8187se_rx */ static inline int -ieee80211_rx_frame_mgmt(struct ieee80211_device *ieee, struct sk_buff *skb, - struct ieee80211_rx_stats *rx_stats, u16 type, +rtl8187se_rx_frame_mgmt(struct ieee80211_device *ieee, struct sk_buff *skb, + struct rtl8187se_rx_stats *rx_stats, u16 type, u16 stype) { struct ieee80211_hdr_4addr *hdr; @@ -225,7 +225,7 @@ ieee80211_rx_frame_mgmt(struct ieee80211 * response parser uses it */ rx_stats->len = skb->len; - ieee80211_rx_mgt(ieee, (struct ieee80211_hdr_4addr *)skb->data, + rtl8187se_rx_mgt(ieee, (struct ieee80211_hdr_4addr *)skb->data, rx_stats); if((ieee->state == IEEE80211_LINKED)&&(memcmp(hdr->addr3,ieee->current_network.bssid,ETH_ALEN))) { @@ -233,7 +233,7 @@ ieee80211_rx_frame_mgmt(struct ieee80211 return 0; } - ieee80211_rx_frame_softmac(ieee, skb, rx_stats, type, stype); + rtl8187se_rx_frame_softmac(ieee, skb, rx_stats, type, stype); dev_kfree_skb_any(skb); @@ -252,7 +252,7 @@ static unsigned char bridge_tunnel_heade { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0xf8 }; /* No encapsulation header if EtherType < 0x600 (=length) */ -/* Called by ieee80211_rx_frame_decrypt */ +/* Called by rtl8187se_rx_frame_decrypt */ static int ieee80211_is_eapol_frame(struct ieee80211_device *ieee, struct sk_buff *skb, size_t hdrlen) { @@ -293,9 +293,9 @@ static int ieee80211_is_eapol_frame(stru return 0; } -/* Called only as a tasklet (software IRQ), by ieee80211_rx */ +/* Called only as a tasklet (software IRQ), by rtl8187se_rx */ static inline int -ieee80211_rx_frame_decrypt(struct ieee80211_device* ieee, struct sk_buff *skb, +rtl8187se_rx_frame_decrypt(struct ieee80211_device* ieee, struct sk_buff *skb, struct ieee80211_crypt_data *crypt) { struct ieee80211_hdr_4addr *hdr; @@ -338,9 +338,9 @@ ieee80211_rx_frame_decrypt(struct ieee80 } -/* Called only as a tasklet (software IRQ), by ieee80211_rx */ +/* Called only as a tasklet (software IRQ), by rtl8187se_rx */ static inline int -ieee80211_rx_frame_decrypt_msdu(struct ieee80211_device* ieee, struct sk_buff *skb, +rtl8187se_rx_frame_decrypt_msdu(struct ieee80211_device* ieee, struct sk_buff *skb, int keyidx, struct ieee80211_crypt_data *crypt) { struct ieee80211_hdr_4addr *hdr; @@ -470,8 +470,8 @@ drop: /* All received frames are sent to this function. @skb contains the frame in * IEEE 802.11 format, i.e., in the format it was sent over air. * This function is called only as a tasklet (software IRQ). */ -int ieee80211_rx(struct ieee80211_device *ieee, struct sk_buff *skb, - struct ieee80211_rx_stats *rx_stats) +int rtl8187se_rx(struct ieee80211_device *ieee, struct sk_buff *skb, + struct rtl8187se_rx_stats *rx_stats) { struct net_device *dev = ieee->dev; //struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); @@ -567,7 +567,7 @@ int ieee80211_rx(struct ieee80211_device if (type == IEEE80211_FTYPE_MGMT) { - if (ieee80211_rx_frame_mgmt(ieee, skb, rx_stats, type, stype)) + if (rtl8187se_rx_frame_mgmt(ieee, skb, rx_stats, type, stype)) goto rx_dropped; else goto rx_exit; @@ -628,7 +628,7 @@ int ieee80211_rx(struct ieee80211_device /* skb: hdr + (possibly fragmented, possibly encrypted) payload */ if (ieee->host_decrypt && (fc & IEEE80211_FCTL_WEP) && - (keyidx = ieee80211_rx_frame_decrypt(ieee, skb, crypt)) < 0) + (keyidx = rtl8187se_rx_frame_decrypt(ieee, skb, crypt)) < 0) goto rx_dropped; hdr = (struct ieee80211_hdr_4addr *)skb->data; @@ -691,7 +691,7 @@ int ieee80211_rx(struct ieee80211_device /* skb: hdr + (possible reassembled) full MSDU payload; possibly still * encrypted/authenticated */ if (ieee->host_decrypt && (fc & IEEE80211_FCTL_WEP) && - ieee80211_rx_frame_decrypt_msdu(ieee, skb, keyidx, crypt)) + rtl8187se_rx_frame_decrypt_msdu(ieee, skb, keyidx, crypt)) goto rx_dropped; hdr = (struct ieee80211_hdr_4addr *)skb->data; @@ -914,7 +914,7 @@ inline int ieee80211_network_init( struct ieee80211_device *ieee, struct ieee80211_probe_response *beacon, struct ieee80211_network *network, - struct ieee80211_rx_stats *stats) + struct rtl8187se_rx_stats *stats) { #ifdef CONFIG_IEEE80211_DEBUG char rates_str[64]; @@ -1251,7 +1251,7 @@ inline void update_network(struct ieee80 noise = (dst->stats.noise * 5 + src->stats.noise)/6; //if(strcmp(dst->ssid, "linksys_lzm000") == 0) // printk("ssid:%s, quality:%d, signal:%d\n", dst->ssid, quality, signal); - memcpy(&dst->stats, &src->stats, sizeof(struct ieee80211_rx_stats)); + memcpy(&dst->stats, &src->stats, sizeof(struct rtl8187se_rx_stats)); dst->stats.signalstrength = quality; dst->stats.signal = signal; // printk("==================>stats.signal is %d\n",dst->stats.signal); @@ -1326,7 +1326,7 @@ inline void update_network(struct ieee80 inline void ieee80211_process_probe_response( struct ieee80211_device *ieee, struct ieee80211_probe_response *beacon, - struct ieee80211_rx_stats *stats) + struct rtl8187se_rx_stats *stats) { struct ieee80211_network network; struct ieee80211_network *target; @@ -1524,9 +1524,9 @@ inline void ieee80211_process_probe_resp spin_unlock_irqrestore(&ieee->lock, flags); } -void ieee80211_rx_mgt(struct ieee80211_device *ieee, +void rtl8187se_rx_mgt(struct ieee80211_device *ieee, struct ieee80211_hdr_4addr *header, - struct ieee80211_rx_stats *stats) + struct rtl8187se_rx_stats *stats) { switch (WLAN_FC_GET_STYPE(header->frame_ctl)) { Index: linux-2.6.32-gentoo/drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c =================================================================== --- linux-2.6.32-gentoo.orig/drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c +++ linux-2.6.32-gentoo/drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c @@ -1532,7 +1532,7 @@ static inline u16 assoc_parse(struct sk_ } static inline void -ieee80211_rx_probe_rq(struct ieee80211_device *ieee, struct sk_buff *skb) +rtl8187se_rx_probe_rq(struct ieee80211_device *ieee, struct sk_buff *skb) { u8 dest[ETH_ALEN]; @@ -1547,7 +1547,7 @@ ieee80211_rx_probe_rq(struct ieee80211_d } inline void -ieee80211_rx_auth_rq(struct ieee80211_device *ieee, struct sk_buff *skb) +rtl8187se_rx_auth_rq(struct ieee80211_device *ieee, struct sk_buff *skb) { u8 dest[ETH_ALEN]; int status; @@ -1562,7 +1562,7 @@ ieee80211_rx_auth_rq(struct ieee80211_de } inline void -ieee80211_rx_assoc_rq(struct ieee80211_device *ieee, struct sk_buff *skb) +rtl8187se_rx_assoc_rq(struct ieee80211_device *ieee, struct sk_buff *skb) { u8 dest[ETH_ALEN]; @@ -1765,8 +1765,8 @@ void ieee80211_ps_tx_ack(struct ieee8021 } inline int -ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb, - struct ieee80211_rx_stats *rx_stats, u16 type, +rtl8187se_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb, + struct rtl8187se_rx_stats *rx_stats, u16 type, u16 stype) { struct ieee80211_hdr_3addr *header = (struct ieee80211_hdr_3addr *) skb->data; @@ -1880,7 +1880,7 @@ associate_complete: if ((ieee->softmac_features & IEEE_SOFTMAC_ASSOCIATE) && ieee->iw_mode == IW_MODE_MASTER) - ieee80211_rx_assoc_rq(ieee, skb); + rtl8187se_rx_assoc_rq(ieee, skb); break; case IEEE80211_STYPE_AUTH: @@ -1907,7 +1907,7 @@ associate_complete: } }else if (ieee->iw_mode == IW_MODE_MASTER){ - ieee80211_rx_auth_rq(ieee, skb); + rtl8187se_rx_auth_rq(ieee, skb); } } break; @@ -1919,7 +1919,7 @@ associate_complete: ieee->iw_mode == IW_MODE_MASTER) && ieee->state == IEEE80211_LINKED)) - ieee80211_rx_probe_rq(ieee, skb); + rtl8187se_rx_probe_rq(ieee, skb); break; case IEEE80211_STYPE_DISASSOC: @@ -2047,7 +2047,7 @@ void ieee80211_reset_queue(struct ieee80 } -void ieee80211_wake_queue(struct ieee80211_device *ieee) +void rtl8187se_wake_queue(struct ieee80211_device *ieee) { unsigned long flags; @@ -2071,7 +2071,7 @@ void ieee80211_wake_queue(struct ieee802 else ieee->seq_ctrl[0]++; - //printk(KERN_ALERT "ieee80211_wake_queue \n"); + //printk(KERN_ALERT "rtl8187se_wake_queue \n"); ieee->softmac_data_hard_start_xmit(skb,ieee->dev,ieee->basic_rate); dev_kfree_skb_any(skb);//edit by thomas } @@ -2089,7 +2089,7 @@ exit : } -void ieee80211_stop_queue(struct ieee80211_device *ieee) +void rtl8187se_stop_queue(struct ieee80211_device *ieee) { //unsigned long flags; //spin_lock_irqsave(&ieee->lock,flags); Index: linux-2.6.32-gentoo/drivers/staging/rtl8187se/r8180_core.c =================================================================== --- linux-2.6.32-gentoo.orig/drivers/staging/rtl8187se/r8180_core.c +++ linux-2.6.32-gentoo/drivers/staging/rtl8187se/r8180_core.c @@ -1546,7 +1546,7 @@ void rtl8180_rx(struct net_device *dev) bool bCckRate = false; u8 RSSI = 0; long SignalStrengthIndex = 0; - struct ieee80211_rx_stats stats = { + struct rtl8187se_rx_stats stats = { .signal = 0, .noise = -98, .rate = 0, @@ -1830,7 +1830,7 @@ void rtl8180_rx(struct net_device *dev) if(priv->rx_skb->len > 4) skb_trim(priv->rx_skb,priv->rx_skb->len-4); #ifndef RX_DONT_PASS_UL - if(!ieee80211_rx(priv->ieee80211, + if(!rtl8187se_rx(priv->ieee80211, priv->rx_skb, &stats)){ #endif // RX_DONT_PASS_UL @@ -1936,11 +1936,11 @@ rate) if (!check_nic_enought_desc(dev, priority)){ DMESGW("Error: no descriptor left by previous TX (avail %d) ", get_curr_tx_free_desc(dev, priority)); - ieee80211_stop_queue(priv->ieee80211); + rtl8187se_stop_queue(priv->ieee80211); } rtl8180_tx(dev, skb->data, skb->len, priority, morefrag,0,rate); if (!check_nic_enought_desc(dev, priority)) - ieee80211_stop_queue(priv->ieee80211); + rtl8187se_stop_queue(priv->ieee80211); spin_unlock_irqrestore(&priv->tx_lock,flags); } @@ -4066,7 +4066,7 @@ void rtl8180_try_wake_queue(struct net_d spin_unlock_irqrestore(&priv->tx_lock,flags); if(enough_desc) - ieee80211_wake_queue(priv->ieee80211); + rtl8187se_wake_queue(priv->ieee80211); } void rtl8180_tx_isr(struct net_device *dev, int pri,short error)