[PATCH] wireless/atmel: convert constants to ieee80211 layer equivalents
This patch converts the Atmel driver-only IEEE 802.11 constants to their equivalents from the kernel's ieee80211 layer headers. Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
		
							parent
							
								
									4ddc1651ce
								
							
						
					
					
						commit
						4861dd79c1
					
				| @ -137,44 +137,6 @@ static struct { | ||||
| #define MAC_BOOT_COMPLETE       0x0010        // MAC boot has been completed
 | ||||
| #define MAC_INIT_OK             0x0002        // MAC boot has been completed
 | ||||
| 
 | ||||
| #define C80211_SUBTYPE_MGMT_ASS_REQUEST                 0x00 | ||||
| #define C80211_SUBTYPE_MGMT_ASS_RESPONSE                0x10 | ||||
| #define C80211_SUBTYPE_MGMT_REASS_REQUEST               0x20 | ||||
| #define C80211_SUBTYPE_MGMT_REASS_RESPONSE              0x30 | ||||
| #define C80211_SUBTYPE_MGMT_ProbeRequest                0x40 | ||||
| #define C80211_SUBTYPE_MGMT_ProbeResponse               0x50 | ||||
| #define C80211_SUBTYPE_MGMT_BEACON                      0x80 | ||||
| #define C80211_SUBTYPE_MGMT_ATIM                        0x90 | ||||
| #define C80211_SUBTYPE_MGMT_DISASSOSIATION              0xA0 | ||||
| #define C80211_SUBTYPE_MGMT_Authentication              0xB0 | ||||
| #define C80211_SUBTYPE_MGMT_Deauthentication    0xC0 | ||||
| 
 | ||||
| #define C80211_MGMT_AAN_OPENSYSTEM              0x0000 | ||||
| #define C80211_MGMT_AAN_SHAREDKEY               0x0001 | ||||
| 
 | ||||
| #define C80211_MGMT_CAPABILITY_ESS              0x0001  // see 802.11 p.58
 | ||||
| #define C80211_MGMT_CAPABILITY_IBSS             0x0002  //      - " -
 | ||||
| #define C80211_MGMT_CAPABILITY_CFPollable       0x0004  //      - " -
 | ||||
| #define C80211_MGMT_CAPABILITY_CFPollRequest    0x0008  //      - " -
 | ||||
| #define C80211_MGMT_CAPABILITY_Privacy          0x0010  //      - " -
 | ||||
| 
 | ||||
| #define C80211_MGMT_SC_Success                  0 | ||||
| #define C80211_MGMT_SC_Unspecified              1 | ||||
| #define C80211_MGMT_SC_SupportCapabilities      10 | ||||
| #define C80211_MGMT_SC_ReassDenied              11 | ||||
| #define C80211_MGMT_SC_AssDenied                12 | ||||
| #define C80211_MGMT_SC_AuthAlgNotSupported      13 | ||||
| #define C80211_MGMT_SC_AuthTransSeqNumError     14 | ||||
| #define C80211_MGMT_SC_AuthRejectChallenge      15 | ||||
| #define C80211_MGMT_SC_AuthRejectTimeout        16 | ||||
| #define C80211_MGMT_SC_AssDeniedHandleAP        17 | ||||
| #define C80211_MGMT_SC_AssDeniedBSSRate         18 | ||||
| 
 | ||||
| #define C80211_MGMT_ElementID_SSID              0 | ||||
| #define C80211_MGMT_ElementID_SupportedRates    1 | ||||
| #define C80211_MGMT_ElementID_ChallengeText     16 | ||||
| #define C80211_MGMT_CAPABILITY_ShortPreamble    0x0020 | ||||
| 
 | ||||
| #define MIB_MAX_DATA_BYTES    212 | ||||
| #define MIB_HEADER_SIZE       4    /* first four fields */ | ||||
| 
 | ||||
| @ -2835,7 +2797,7 @@ static void handle_beacon_probe(struct atmel_private *priv, u16 capability, | ||||
| 				u8 channel) | ||||
| { | ||||
| 	int rejoin = 0; | ||||
| 	int new = capability  & C80211_MGMT_CAPABILITY_ShortPreamble ? | ||||
| 	int new = capability & MFIE_TYPE_POWER_CONSTRAINT ? | ||||
| 		SHORT_PREAMBLE : LONG_PREAMBLE; | ||||
| 
 | ||||
| 	if (priv->preamble != new) { | ||||
| @ -2921,11 +2883,11 @@ static void send_association_request(struct atmel_private *priv, int is_reassoc) | ||||
| 	memcpy(header.addr2, priv->dev->dev_addr, 6); | ||||
| 	memcpy(header.addr3, priv->CurrentBSSID, 6); | ||||
| 
 | ||||
| 	body.capability = cpu_to_le16(C80211_MGMT_CAPABILITY_ESS); | ||||
| 	body.capability = cpu_to_le16(WLAN_CAPABILITY_ESS); | ||||
| 	if (priv->wep_is_on) | ||||
| 		body.capability |= cpu_to_le16(C80211_MGMT_CAPABILITY_Privacy); | ||||
| 		body.capability |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY); | ||||
| 	if (priv->preamble == SHORT_PREAMBLE) | ||||
| 		body.capability |= cpu_to_le16(C80211_MGMT_CAPABILITY_ShortPreamble); | ||||
| 		body.capability |= cpu_to_le16(MFIE_TYPE_POWER_CONSTRAINT); | ||||
| 
 | ||||
| 	body.listen_interval = cpu_to_le16(priv->listen_interval * priv->beacon_period); | ||||
| 
 | ||||
| @ -2939,10 +2901,10 @@ static void send_association_request(struct atmel_private *priv, int is_reassoc) | ||||
| 		bodysize = 12 + priv->SSID_size; | ||||
| 	} | ||||
| 
 | ||||
| 	ssid_el_p[0] = C80211_MGMT_ElementID_SSID; | ||||
| 	ssid_el_p[0] = MFIE_TYPE_SSID; | ||||
| 	ssid_el_p[1] = priv->SSID_size; | ||||
| 	memcpy(ssid_el_p + 2, priv->SSID, priv->SSID_size); | ||||
| 	ssid_el_p[2 + priv->SSID_size] = C80211_MGMT_ElementID_SupportedRates; | ||||
| 	ssid_el_p[2 + priv->SSID_size] = MFIE_TYPE_RATES; | ||||
| 	ssid_el_p[3 + priv->SSID_size] = 4; /* len of suported rates */ | ||||
| 	memcpy(ssid_el_p + 4 + priv->SSID_size, atmel_basic_rates, 4); | ||||
| 
 | ||||
| @ -3004,7 +2966,7 @@ static void store_bss_info(struct atmel_private *priv, | ||||
| 			   u16 beacon_period, u8 channel, u8 rssi, u8 ssid_len, | ||||
| 			   u8 *ssid, int is_beacon) | ||||
| { | ||||
| 	u8 *bss = capability & C80211_MGMT_CAPABILITY_ESS ? header->addr2 : header->addr3; | ||||
| 	u8 *bss = capability & WLAN_CAPABILITY_ESS ? header->addr2 : header->addr3; | ||||
| 	int i, index; | ||||
| 
 | ||||
| 	for (index = -1, i = 0; i < priv->BSS_list_entries; i++) | ||||
| @ -3030,16 +2992,16 @@ static void store_bss_info(struct atmel_private *priv, | ||||
| 
 | ||||
| 	priv->BSSinfo[index].channel = channel; | ||||
| 	priv->BSSinfo[index].beacon_period = beacon_period; | ||||
| 	priv->BSSinfo[index].UsingWEP = capability & C80211_MGMT_CAPABILITY_Privacy; | ||||
| 	priv->BSSinfo[index].UsingWEP = capability & WLAN_CAPABILITY_PRIVACY; | ||||
| 	memcpy(priv->BSSinfo[index].SSID, ssid, ssid_len); | ||||
| 	priv->BSSinfo[index].SSIDsize = ssid_len; | ||||
| 
 | ||||
| 	if (capability & C80211_MGMT_CAPABILITY_IBSS) | ||||
| 	if (capability & WLAN_CAPABILITY_IBSS) | ||||
| 		priv->BSSinfo[index].BSStype = IW_MODE_ADHOC; | ||||
| 	else if (capability & C80211_MGMT_CAPABILITY_ESS) | ||||
| 	else if (capability & WLAN_CAPABILITY_ESS) | ||||
| 		priv->BSSinfo[index].BSStype =IW_MODE_INFRA; | ||||
| 
 | ||||
| 	priv->BSSinfo[index].preamble = capability & C80211_MGMT_CAPABILITY_ShortPreamble ? | ||||
| 	priv->BSSinfo[index].preamble = capability & MFIE_TYPE_POWER_CONSTRAINT ? | ||||
| 		SHORT_PREAMBLE : LONG_PREAMBLE; | ||||
| } | ||||
| 
 | ||||
| @ -3050,7 +3012,7 @@ static void authenticate(struct atmel_private *priv, u16 frame_len) | ||||
| 	u16 trans_seq_no = le16_to_cpu(auth->trans_seq); | ||||
| 	u16 system = le16_to_cpu(auth->alg); | ||||
| 
 | ||||
| 	if (status == C80211_MGMT_SC_Success && !priv->wep_is_on) { | ||||
| 	if (status == WLAN_STATUS_SUCCESS && !priv->wep_is_on) { | ||||
| 		/* no WEP */ | ||||
| 		if (priv->station_was_associated) { | ||||
| 			atmel_enter_state(priv, STATION_STATE_REASSOCIATING); | ||||
| @ -3063,19 +3025,19 @@ static void authenticate(struct atmel_private *priv, u16 frame_len) | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	if (status == C80211_MGMT_SC_Success && priv->wep_is_on) { | ||||
| 	if (status == WLAN_STATUS_SUCCESS && priv->wep_is_on) { | ||||
| 		int should_associate = 0; | ||||
| 		/* WEP */ | ||||
| 		if (trans_seq_no != priv->ExpectedAuthentTransactionSeqNum) | ||||
| 			return; | ||||
| 
 | ||||
| 		if (system == C80211_MGMT_AAN_OPENSYSTEM) { | ||||
| 		if (system == WLAN_AUTH_OPEN) { | ||||
| 			if (trans_seq_no == 0x0002) { | ||||
| 				should_associate = 1; | ||||
| 			} | ||||
| 		} else if (system == C80211_MGMT_AAN_SHAREDKEY) { | ||||
| 		} else if (system == WLAN_AUTH_SHARED_KEY) { | ||||
| 			if (trans_seq_no == 0x0002 && | ||||
| 			    auth->el_id == C80211_MGMT_ElementID_ChallengeText) { | ||||
| 			    auth->el_id == MFIE_TYPE_CHALLENGE) { | ||||
| 				send_authentication_request(priv, system, auth->chall_text, auth->chall_text_len); | ||||
| 				return; | ||||
| 			} else if (trans_seq_no == 0x0004) { | ||||
| @ -3140,8 +3102,8 @@ static void associate(struct atmel_private *priv, u16 frame_len, u16 subtype) | ||||
| 	if (frame_len < 8 + rates_len) | ||||
| 		return; | ||||
| 
 | ||||
| 	if (status == C80211_MGMT_SC_Success) { | ||||
| 		if (subtype == C80211_SUBTYPE_MGMT_ASS_RESPONSE) | ||||
| 	if (status == WLAN_STATUS_SUCCESS) { | ||||
| 		if (subtype == IEEE80211_STYPE_ASSOC_RESP) | ||||
| 			priv->AssociationRequestRetryCnt = 0; | ||||
| 		else | ||||
| 			priv->ReAssociationRequestRetryCnt = 0; | ||||
| @ -3178,9 +3140,9 @@ static void associate(struct atmel_private *priv, u16 frame_len, u16 subtype) | ||||
| 		return; | ||||
| 	} | ||||
| 
 | ||||
| 	if (subtype == C80211_SUBTYPE_MGMT_ASS_RESPONSE && | ||||
| 	    status != C80211_MGMT_SC_AssDeniedBSSRate && | ||||
| 	    status != C80211_MGMT_SC_SupportCapabilities && | ||||
| 	if (subtype == IEEE80211_STYPE_ASSOC_RESP && | ||||
| 	    status != WLAN_STATUS_ASSOC_DENIED_RATES && | ||||
| 	    status != WLAN_STATUS_CAPS_UNSUPPORTED && | ||||
| 	    priv->AssociationRequestRetryCnt < MAX_ASSOCIATION_RETRIES) { | ||||
| 		mod_timer(&priv->management_timer, jiffies + MGMT_JIFFIES); | ||||
| 		priv->AssociationRequestRetryCnt++; | ||||
| @ -3188,9 +3150,9 @@ static void associate(struct atmel_private *priv, u16 frame_len, u16 subtype) | ||||
| 		return; | ||||
| 	} | ||||
| 
 | ||||
| 	if (subtype == C80211_SUBTYPE_MGMT_REASS_RESPONSE && | ||||
| 	    status != C80211_MGMT_SC_AssDeniedBSSRate && | ||||
| 	    status != C80211_MGMT_SC_SupportCapabilities && | ||||
| 	if (subtype == IEEE80211_STYPE_REASSOC_RESP && | ||||
| 	    status != WLAN_STATUS_ASSOC_DENIED_RATES && | ||||
| 	    status != WLAN_STATUS_CAPS_UNSUPPORTED && | ||||
| 	    priv->AssociationRequestRetryCnt < MAX_ASSOCIATION_RETRIES) { | ||||
| 		mod_timer(&priv->management_timer, jiffies + MGMT_JIFFIES); | ||||
| 		priv->ReAssociationRequestRetryCnt++; | ||||
| @ -3325,8 +3287,8 @@ static void atmel_management_frame(struct atmel_private *priv, | ||||
| 
 | ||||
| 	subtype = le16_to_cpu(header->frame_ctl) & IEEE80211_FCTL_STYPE; | ||||
| 	switch (subtype) { | ||||
| 	case C80211_SUBTYPE_MGMT_BEACON: | ||||
| 	case C80211_SUBTYPE_MGMT_ProbeResponse: | ||||
| 	case IEEE80211_STYPE_BEACON: | ||||
| 	case IEEE80211_STYPE_PROBE_RESP: | ||||
| 
 | ||||
| 		/* beacon frame has multiple variable-length fields -
 | ||||
| 		   never let an engineer loose with a data structure design. */ | ||||
| @ -3384,19 +3346,19 @@ static void atmel_management_frame(struct atmel_private *priv, | ||||
| 					       beacon_interval, channel, rssi, | ||||
| 					       ssid_length, | ||||
| 					       &beacon->rates_el_id, | ||||
| 					       subtype == C80211_SUBTYPE_MGMT_BEACON); | ||||
| 					       subtype == IEEE80211_STYPE_BEACON); | ||||
| 		} | ||||
| 		break; | ||||
| 
 | ||||
| 	case C80211_SUBTYPE_MGMT_Authentication: | ||||
| 	case IEEE80211_STYPE_AUTH: | ||||
| 
 | ||||
| 		if (priv->station_state == STATION_STATE_AUTHENTICATING) | ||||
| 			authenticate(priv, frame_len); | ||||
| 
 | ||||
| 		break; | ||||
| 
 | ||||
| 	case C80211_SUBTYPE_MGMT_ASS_RESPONSE: | ||||
| 	case C80211_SUBTYPE_MGMT_REASS_RESPONSE: | ||||
| 	case IEEE80211_STYPE_ASSOC_RESP: | ||||
| 	case IEEE80211_STYPE_REASSOC_RESP: | ||||
| 
 | ||||
| 		if (priv->station_state == STATION_STATE_ASSOCIATING || | ||||
| 		    priv->station_state == STATION_STATE_REASSOCIATING) | ||||
| @ -3404,7 +3366,7 @@ static void atmel_management_frame(struct atmel_private *priv, | ||||
| 
 | ||||
| 		break; | ||||
| 
 | ||||
| 	case C80211_SUBTYPE_MGMT_DISASSOSIATION: | ||||
| 	case IEEE80211_STYPE_DISASSOC: | ||||
| 		if (priv->station_is_associated && | ||||
| 		    priv->operating_mode == IW_MODE_INFRA && | ||||
| 		    is_frame_from_current_bss(priv, header)) { | ||||
| @ -3417,7 +3379,7 @@ static void atmel_management_frame(struct atmel_private *priv, | ||||
| 
 | ||||
| 		break; | ||||
| 
 | ||||
| 	case C80211_SUBTYPE_MGMT_Deauthentication: | ||||
| 	case IEEE80211_STYPE_DEAUTH: | ||||
| 		if (priv->operating_mode == IW_MODE_INFRA && | ||||
| 		    is_frame_from_current_bss(priv, header)) { | ||||
| 			priv->station_was_associated = 0; | ||||
| @ -3453,12 +3415,12 @@ static void atmel_management_timer(u_long a) | ||||
| 			priv->AuthenticationRequestRetryCnt = 0; | ||||
| 			restart_search(priv); | ||||
| 		} else { | ||||
| 			int auth = C80211_MGMT_AAN_OPENSYSTEM; | ||||
| 			int auth = WLAN_AUTH_OPEN; | ||||
| 			priv->AuthenticationRequestRetryCnt++; | ||||
| 			priv->CurrentAuthentTransactionSeqNum = 0x0001; | ||||
| 			mod_timer(&priv->management_timer, jiffies + MGMT_JIFFIES); | ||||
| 			if (priv->wep_is_on && priv->exclude_unencrypted) | ||||
| 				auth = C80211_MGMT_AAN_SHAREDKEY; | ||||
| 				auth = WLAN_AUTH_SHARED_KEY; | ||||
| 			send_authentication_request(priv, auth, NULL, 0); | ||||
| 	  } | ||||
| 	  break; | ||||
| @ -3558,14 +3520,14 @@ static void atmel_command_irq(struct atmel_private *priv) | ||||
| 				priv->station_was_associated = priv->station_is_associated; | ||||
| 				atmel_enter_state(priv, STATION_STATE_READY); | ||||
| 			} else { | ||||
| 				int auth = C80211_MGMT_AAN_OPENSYSTEM; | ||||
| 				int auth = WLAN_AUTH_OPEN; | ||||
| 				priv->AuthenticationRequestRetryCnt = 0; | ||||
| 				atmel_enter_state(priv, STATION_STATE_AUTHENTICATING); | ||||
| 
 | ||||
| 				mod_timer(&priv->management_timer, jiffies + MGMT_JIFFIES); | ||||
| 				priv->CurrentAuthentTransactionSeqNum = 0x0001; | ||||
| 				if (priv->wep_is_on && priv->exclude_unencrypted) | ||||
| 					auth = C80211_MGMT_AAN_SHAREDKEY; | ||||
| 					auth = WLAN_AUTH_SHARED_KEY; | ||||
| 				send_authentication_request(priv, auth, NULL, 0); | ||||
| 			} | ||||
| 			return; | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user