Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 55c7d5fc authored by George Kadianakis's avatar George Kadianakis Committed by Greg Kroah-Hartman
Browse files

staging: fix rtl8192su compilation errors with mac80211



This patch series fixes compilation problems that were caused by
function naming conflicts between the rtl8192su driver and the
mac80211 stack.

Signed-off-by: George Kadianakis <desnacked at gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent fb5fe277
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -1721,13 +1721,13 @@ extern int ieee80211_encrypt_fragment(
	struct sk_buff *frag,
	int hdr_len);

extern int rtl8192_ieee80211_xmit(struct sk_buff *skb,
extern int rtl8192_ieee80211_rtl_xmit(struct sk_buff *skb,
			  struct net_device *dev);
extern void ieee80211_txb_free(struct ieee80211_txb *);


/* ieee80211_rx.c */
extern int ieee80211_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
extern int ieee80211_rtl_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
			struct ieee80211_rx_stats *rx_stats);
extern void ieee80211_rx_mgt(struct ieee80211_device *ieee,
			     struct ieee80211_hdr_4addr *header,
@@ -1783,8 +1783,8 @@ extern void ieee80211_stop_protocol(struct ieee80211_device *ieee);
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 ieee80211_rtl_wake_queue(struct ieee80211_device *ieee);
extern void ieee80211_rtl_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);
+3 −3
Original line number Diff line number Diff line
@@ -208,7 +208,7 @@ static int ieee80211_frag_cache_invalidate(struct ieee80211_device *ieee,
 *
 * Responsible for handling management control frames
 *
 * Called by ieee80211_rx */
 * Called by ieee80211_rtl_rx */
static inline int
ieee80211_rx_frame_mgmt(struct ieee80211_device *ieee, struct sk_buff *skb,
			struct ieee80211_rx_stats *rx_stats, u16 type,
@@ -289,7 +289,7 @@ static int ieee80211_is_eapol_frame(struct ieee80211_device *ieee,
	return 0;
}

/* Called only as a tasklet (software IRQ), by ieee80211_rx */
/* Called only as a tasklet (software IRQ), by ieee80211_rtl_rx */
static inline int
ieee80211_rx_frame_decrypt(struct ieee80211_device* ieee, struct sk_buff *skb,
			   struct ieee80211_crypt_data *crypt)
@@ -858,7 +858,7 @@ u8 parse_subframe(struct sk_buff *skb,
/* 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,
int ieee80211_rtl_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
		 struct ieee80211_rx_stats *rx_stats)
{
	struct net_device *dev = ieee->dev;
+8 −8
Original line number Diff line number Diff line
@@ -610,7 +610,7 @@ void ieee80211_stop_scan(struct ieee80211_device *ieee)
}

/* called with ieee->lock held */
void ieee80211_start_scan(struct ieee80211_device *ieee)
void ieee80211_rtl_start_scan(struct ieee80211_device *ieee)
{
	if(IS_DOT11D_ENABLE(ieee) )
	{
@@ -1281,7 +1281,7 @@ void ieee80211_associate_step1(struct ieee80211_device *ieee)
	}
}

void ieee80211_auth_challenge(struct ieee80211_device *ieee, u8 *challenge, int chlen)
void ieee80211_rtl_auth_challenge(struct ieee80211_device *ieee, u8 *challenge, int chlen)
{
	u8 *c;
	struct sk_buff *skb;
@@ -2054,7 +2054,7 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,

								ieee80211_associate_step2(ieee);
							}else{
								ieee80211_auth_challenge(ieee, challenge, chlen);
								ieee80211_rtl_auth_challenge(ieee, challenge, chlen);
							}
						}else{
							ieee->softmac_stats.rx_auth_rs_err++;
@@ -2162,7 +2162,7 @@ void ieee80211_softmac_xmit(struct ieee80211_txb *txb, struct ieee80211_device *
			 * to check it any more.
			 * */
			//printk("error:no descriptor left@queue_index %d, %d, %d\n", queue_index, skb_queue_len(&ieee->skb_waitQ[queue_index]), ieee->check_nic_enough_desc(ieee->dev,queue_index));
			//ieee80211_stop_queue(ieee);
			//ieee80211_rtl_stop_queue(ieee);
			skb_queue_tail(&ieee->skb_waitQ[queue_index], txb->fragments[i]);
		}else{
			ieee->softmac_data_hard_start_xmit(
@@ -2222,7 +2222,7 @@ void ieee80211_reset_queue(struct ieee80211_device *ieee)

}

void ieee80211_wake_queue(struct ieee80211_device *ieee)
void ieee80211_rtl_wake_queue(struct ieee80211_device *ieee)
{

	unsigned long flags;
@@ -2263,7 +2263,7 @@ exit :
}


void ieee80211_stop_queue(struct ieee80211_device *ieee)
void ieee80211_rtl_stop_queue(struct ieee80211_device *ieee)
{
	//unsigned long flags;
	//spin_lock_irqsave(&ieee->lock,flags);
@@ -2479,7 +2479,7 @@ void ieee80211_start_bss(struct ieee80211_device *ieee)

	if (ieee->state == IEEE80211_NOLINK){
		ieee->actscanning = true;
		ieee80211_start_scan(ieee);
		ieee80211_rtl_start_scan(ieee);
	}
	spin_unlock_irqrestore(&ieee->lock, flags);
}
@@ -2552,7 +2552,7 @@ void ieee80211_associate_retry_wq(struct work_struct *work)
	if(ieee->state == IEEE80211_NOLINK)
	{
		ieee->actscanning = true;
		ieee80211_start_scan(ieee);
		ieee80211_rtl_start_scan(ieee);
	}
	spin_unlock_irqrestore(&ieee->lock, flags);

+1 −1
Original line number Diff line number Diff line
@@ -604,7 +604,7 @@ void ieee80211_query_seqnum(struct ieee80211_device*ieee, struct sk_buff* skb, u
	}
}

int rtl8192_ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
int rtl8192_ieee80211_rtl_xmit(struct sk_buff *skb, struct net_device *dev)
{
	struct ieee80211_device *ieee = netdev_priv(dev);
	struct ieee80211_txb *txb = NULL;
+3 −3
Original line number Diff line number Diff line
@@ -7155,7 +7155,7 @@ void rtl8192SU_rx_nomal(struct sk_buff* skb)
			unicast_packet = true;
		}

		if(!ieee80211_rx(priv->ieee80211,skb, &stats)) {
		if(!ieee80211_rtl_rx(priv->ieee80211,skb, &stats)) {
			dev_kfree_skb_any(skb);
		} else {
		//	priv->stats.rxoktotal++;  //YJ,test,090108
@@ -7426,7 +7426,7 @@ static const struct net_device_ops rtl8192_netdev_ops = {
	.ndo_set_mac_address	= r8192_set_mac_adr,
	.ndo_validate_addr	= eth_validate_addr,
	.ndo_change_mtu		= eth_change_mtu,
	.ndo_start_xmit		= rtl8192_ieee80211_xmit,
	.ndo_start_xmit		= rtl8192_ieee80211_rtl_xmit,
};

static int __devinit rtl8192_usb_probe(struct usb_interface *intf,
@@ -7619,7 +7619,7 @@ void rtl8192_try_wake_queue(struct net_device *dev, int pri)
        spin_unlock_irqrestore(&priv->tx_lock,flags);

	if(enough_desc)
		ieee80211_wake_queue(priv->ieee80211);
		ieee80211_rtl_wake_queue(priv->ieee80211);
}

void EnableHWSecurityConfig8192(struct net_device *dev)