2009-08-12 09:56:59 -07:00
/*
* Copyright ( c ) 2008 - 2009 Atheros Communications Inc .
*
* Permission to use , copy , modify , and / or distribute this software for any
* purpose with or without fee is hereby granted , provided that the above
* copyright notice and this permission notice appear in all copies .
*
* THE SOFTWARE IS PROVIDED " AS IS " AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS . IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL , DIRECT , INDIRECT , OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE , DATA OR PROFITS , WHETHER IN AN
* ACTION OF CONTRACT , NEGLIGENCE OR OTHER TORTIOUS ACTION , ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE .
*/
# ifndef ATH_H
# define ATH_H
# include <linux/skbuff.h>
2009-09-09 22:43:17 -07:00
# include <linux/if_ether.h>
2009-08-12 09:56:59 -07:00
2009-09-09 22:19:26 -07:00
static const u8 ath_bcast_mac [ ETH_ALEN ] = { 0xff , 0xff , 0xff , 0xff , 0xff , 0xff } ;
2009-08-17 18:07:23 -07:00
struct reg_dmn_pair_mapping {
u16 regDmnEnum ;
u16 reg_5ghz_ctl ;
u16 reg_2ghz_ctl ;
} ;
struct ath_regulatory {
char alpha2 [ 2 ] ;
u16 country_code ;
u16 max_power_level ;
u32 tp_scale ;
u16 current_rd ;
u16 current_rd_ext ;
int16_t power_limit ;
struct reg_dmn_pair_mapping * regpair ;
} ;
2009-08-12 09:56:59 -07:00
struct ath_common {
u16 cachelsz ;
2009-08-17 18:07:23 -07:00
struct ath_regulatory regulatory ;
2009-08-12 09:56:59 -07:00
} ;
struct sk_buff * ath_rxbuf_alloc ( struct ath_common * common ,
u32 len ,
gfp_t gfp_mask ) ;
# endif /* ATH_H */