Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 213056 Details for
Bug 296920
sys-kernel/gentoo-sources-2.6.32: compile error with CONFIG_RTL8187SE and CONFIG_MAC80211
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
dirty patch
fix.patch (text/plain), 13.71 KB, created by
George Kadianakis (RETIRED)
on 2009-12-15 01:42:14 UTC
(
hide
)
Description:
dirty patch
Filename:
MIME Type:
Creator:
George Kadianakis (RETIRED)
Created:
2009-12-15 01:42:14 UTC
Size:
13.71 KB
patch
obsolete
>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)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 296920
:
213056
|
213090