diff options
Diffstat (limited to 'drivers/net/wireless/atmel.c')
| -rw-r--r-- | drivers/net/wireless/atmel.c | 30 | 
1 files changed, 14 insertions, 16 deletions
diff --git a/drivers/net/wireless/atmel.c b/drivers/net/wireless/atmel.c index 587869d86ee..1fbe027d26b 100644 --- a/drivers/net/wireless/atmel.c +++ b/drivers/net/wireless/atmel.c @@ -618,12 +618,12 @@ static int atmel_lock_mac(struct atmel_private *priv);  static void atmel_wmem32(struct atmel_private *priv, u16 pos, u32 data);  static void atmel_command_irq(struct atmel_private *priv);  static int atmel_validate_channel(struct atmel_private *priv, int channel); -static void atmel_management_frame(struct atmel_private *priv, struct ieee80211_hdr *header,  +static void atmel_management_frame(struct atmel_private *priv, struct ieee80211_hdr_4addr *header,   				   u16 frame_len, u8 rssi);  static void atmel_management_timer(u_long a);  static void atmel_send_command(struct atmel_private *priv, int command, void *cmd, int cmd_size);  static int atmel_send_command_wait(struct atmel_private *priv, int command, void *cmd, int cmd_size); -static void atmel_transmit_management_frame(struct atmel_private *priv, struct ieee80211_hdr *header, +static void atmel_transmit_management_frame(struct atmel_private *priv, struct ieee80211_hdr_4addr *header,  					    u8 *body, int body_len);  static u8 atmel_get_mib8(struct atmel_private *priv, u8 type, u8 index); @@ -827,7 +827,7 @@ static void tx_update_descriptor(struct atmel_private *priv, int is_bcast, u16 l  static int start_tx (struct sk_buff *skb, struct net_device *dev)  {  	struct atmel_private *priv = netdev_priv(dev); -	struct ieee80211_hdr header; +	struct ieee80211_hdr_4addr header;  	unsigned long flags;  	u16 buff, frame_ctl, len = (ETH_ZLEN < skb->len) ? skb->len : ETH_ZLEN;  	u8 SNAP_RFC1024[6] = {0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00}; @@ -902,7 +902,7 @@ static int start_tx (struct sk_buff *skb, struct net_device *dev)  }  static void atmel_transmit_management_frame(struct atmel_private *priv,  -					    struct ieee80211_hdr *header, +					    struct ieee80211_hdr_4addr *header,  					    u8 *body, int body_len)  {  	u16 buff; @@ -917,7 +917,7 @@ static void atmel_transmit_management_frame(struct atmel_private *priv,  	tx_update_descriptor(priv, header->addr1[0] & 0x01, len, buff, TX_PACKET_TYPE_MGMT);  } -static void fast_rx_path(struct atmel_private *priv, struct ieee80211_hdr *header,  +static void fast_rx_path(struct atmel_private *priv, struct ieee80211_hdr_4addr *header,   			 u16 msdu_size, u16 rx_packet_loc, u32 crc)  {  	/* fast path: unfragmented packet copy directly into skbuf */ @@ -990,7 +990,7 @@ static int probe_crc(struct atmel_private *priv, u16 packet_loc, u16 msdu_size)  	return (crc ^ 0xffffffff) == netcrc;  } -static void frag_rx_path(struct atmel_private *priv, struct ieee80211_hdr *header,  +static void frag_rx_path(struct atmel_private *priv, struct ieee80211_hdr_4addr *header,   			 u16 msdu_size, u16 rx_packet_loc, u32 crc, u16 seq_no, u8 frag_no, int more_frags)  {  	u8 mac4[6];  @@ -1082,7 +1082,7 @@ static void frag_rx_path(struct atmel_private *priv, struct ieee80211_hdr *heade  static void rx_done_irq(struct atmel_private *priv)  {  	int i; -	struct ieee80211_hdr header; +	struct ieee80211_hdr_4addr header;  	for (i = 0;   	     atmel_rmem8(priv, atmel_rx(priv, RX_DESC_FLAGS_OFFSET, priv->rx_desc_head)) == RX_DESC_FLAG_VALID && @@ -1653,8 +1653,7 @@ void stop_atmel_card(struct net_device *dev, int freeres)  	unregister_netdev(dev);  	remove_proc_entry("driver/atmel", NULL);  	free_irq(dev->irq, dev); -	if (priv->firmware) -		kfree(priv->firmware); +	kfree(priv->firmware);  	if (freeres) {  		/* PCMCIA frees this stuff, so only for PCI */  	        release_region(dev->base_addr, 64); @@ -2450,8 +2449,7 @@ static int atmel_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)  			break;  		} -		if (priv->firmware) -			kfree(priv->firmware); +		kfree(priv->firmware);  		priv->firmware = new_firmware;  		priv->firmware_length = com.len; @@ -2650,7 +2648,7 @@ static void handle_beacon_probe(struct atmel_private *priv, u16 capability, u8 c  static void send_authentication_request(struct atmel_private *priv, u8 *challenge, int challenge_len)  { -	struct ieee80211_hdr header; +	struct ieee80211_hdr_4addr header;  	struct auth_body auth;  	header.frame_ctl = cpu_to_le16(IEEE80211_FTYPE_MGMT | IEEE80211_STYPE_AUTH);  @@ -2688,7 +2686,7 @@ static void send_association_request(struct atmel_private *priv, int is_reassoc)  {  	u8 *ssid_el_p;  	int bodysize; -	struct ieee80211_hdr header; +	struct ieee80211_hdr_4addr header;  	struct ass_req_format {  		u16 capability;  		u16 listen_interval;  @@ -2738,7 +2736,7 @@ static void send_association_request(struct atmel_private *priv, int is_reassoc)  	atmel_transmit_management_frame(priv, &header, (void *)&body, bodysize);  } -static int is_frame_from_current_bss(struct atmel_private *priv, struct ieee80211_hdr *header) +static int is_frame_from_current_bss(struct atmel_private *priv, struct ieee80211_hdr_4addr *header)  {  	if (le16_to_cpu(header->frame_ctl) & IEEE80211_FCTL_FROMDS)  		return memcmp(header->addr3, priv->CurrentBSSID, 6) == 0; @@ -2788,7 +2786,7 @@ static int retrieve_bss(struct atmel_private *priv)  } -static void store_bss_info(struct atmel_private *priv, struct ieee80211_hdr *header, +static void store_bss_info(struct atmel_private *priv, struct ieee80211_hdr_4addr *header,  			   u16 capability, u16 beacon_period, u8 channel, u8 rssi,   			   u8 ssid_len, u8 *ssid, int is_beacon)  { @@ -3072,7 +3070,7 @@ static void atmel_smooth_qual(struct atmel_private *priv)  }  /* deals with incoming managment frames. */ -static void atmel_management_frame(struct atmel_private *priv, struct ieee80211_hdr *header,  +static void atmel_management_frame(struct atmel_private *priv, struct ieee80211_hdr_4addr *header,   		      u16 frame_len, u8 rssi)  {  	u16 subtype;  | 
