1/* prism2mgmt.h 2* 3* Declares the mgmt command handler functions 4* 5* Copyright (C) 1999 AbsoluteValue Systems, Inc. All Rights Reserved. 6* -------------------------------------------------------------------- 7* 8* linux-wlan 9* 10* The contents of this file are subject to the Mozilla Public 11* License Version 1.1 (the "License"); you may not use this file 12* except in compliance with the License. You may obtain a copy of 13* the License at http://www.mozilla.org/MPL/ 14* 15* Software distributed under the License is distributed on an "AS 16* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or 17* implied. See the License for the specific language governing 18* rights and limitations under the License. 19* 20* Alternatively, the contents of this file may be used under the 21* terms of the GNU Public License version 2 (the "GPL"), in which 22* case the provisions of the GPL are applicable instead of the 23* above. If you wish to allow the use of your version of this file 24* only under the terms of the GPL and not to allow others to use 25* your version of this file under the MPL, indicate your decision 26* by deleting the provisions above and replace them with the notice 27* and other provisions required by the GPL. If you do not delete 28* the provisions above, a recipient may use your version of this 29* file under either the MPL or the GPL. 30* 31* -------------------------------------------------------------------- 32* 33* Inquiries regarding the linux-wlan Open Source project can be 34* made directly to: 35* 36* AbsoluteValue Systems Inc. 37* info@linux-wlan.com 38* http://www.linux-wlan.com 39* 40* -------------------------------------------------------------------- 41* 42* Portions of the development of this software were funded by 43* Intersil Corporation as part of PRISM(R) chipset product development. 44* 45* -------------------------------------------------------------------- 46* 47* This file contains the constants and data structures for interaction 48* with the hfa384x Wireless LAN (WLAN) Media Access Contoller (MAC). 49* The hfa384x is a portion of the Harris PRISM(tm) WLAN chipset. 50* 51* [Implementation and usage notes] 52* 53* [References] 54* CW10 Programmer's Manual v1.5 55* IEEE 802.11 D10.0 56* 57* -------------------------------------------------------------------- 58*/ 59 60#ifndef _PRISM2MGMT_H 61#define _PRISM2MGMT_H 62 63extern int prism2_reset_holdtime; 64extern int prism2_reset_settletime; 65 66u32 prism2sta_ifstate(wlandevice_t *wlandev, u32 ifstate); 67 68void prism2sta_ev_info(wlandevice_t *wlandev, hfa384x_InfFrame_t *inf); 69void prism2sta_ev_txexc(wlandevice_t *wlandev, u16 status); 70void prism2sta_ev_tx(wlandevice_t *wlandev, u16 status); 71void prism2sta_ev_rx(wlandevice_t *wlandev, struct sk_buff *skb); 72void prism2sta_ev_alloc(wlandevice_t *wlandev); 73 74int prism2mgmt_mibset_mibget(wlandevice_t *wlandev, void *msgp); 75int prism2mgmt_scan(wlandevice_t *wlandev, void *msgp); 76int prism2mgmt_scan_results(wlandevice_t *wlandev, void *msgp); 77int prism2mgmt_start(wlandevice_t *wlandev, void *msgp); 78int prism2mgmt_wlansniff(wlandevice_t *wlandev, void *msgp); 79int prism2mgmt_readpda(wlandevice_t *wlandev, void *msgp); 80int prism2mgmt_ramdl_state(wlandevice_t *wlandev, void *msgp); 81int prism2mgmt_ramdl_write(wlandevice_t *wlandev, void *msgp); 82int prism2mgmt_flashdl_state(wlandevice_t *wlandev, void *msgp); 83int prism2mgmt_flashdl_write(wlandevice_t *wlandev, void *msgp); 84int prism2mgmt_autojoin(wlandevice_t *wlandev, void *msgp); 85 86/*--------------------------------------------------------------- 87* conversion functions going between wlan message data types and 88* Prism2 data types 89---------------------------------------------------------------*/ 90/* byte area conversion functions*/ 91void prism2mgmt_pstr2bytearea(u8 *bytearea, p80211pstrd_t *pstr); 92void prism2mgmt_bytearea2pstr(u8 *bytearea, p80211pstrd_t *pstr, int len); 93 94/* byte string conversion functions*/ 95void prism2mgmt_pstr2bytestr(hfa384x_bytestr_t *bytestr, p80211pstrd_t *pstr); 96void prism2mgmt_bytestr2pstr(hfa384x_bytestr_t *bytestr, p80211pstrd_t *pstr); 97 98/* functions to convert Group Addresses */ 99void prism2mgmt_get_grpaddr(u32 did, p80211pstrd_t *pstr, hfa384x_t *priv); 100int prism2mgmt_set_grpaddr(u32 did, 101 u8 *prism2buf, p80211pstrd_t *pstr, 102 hfa384x_t *priv); 103int prism2mgmt_get_grpaddr_index(u32 did); 104 105void prism2sta_processing_defer(struct work_struct *data); 106 107void prism2sta_commsqual_defer(struct work_struct *data); 108void prism2sta_commsqual_timer(unsigned long data); 109 110#endif 111