1 /* 2 * Copyright (c) 2008-2009 Atheros Communications Inc. 3 * 4 * Permission to use, copy, modify, and/or distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 */ 16 17 #ifndef ATH_H 18 #define ATH_H 19 20 #include <linux/skbuff.h> 21 22 struct reg_dmn_pair_mapping { 23 u16 regDmnEnum; 24 u16 reg_5ghz_ctl; 25 u16 reg_2ghz_ctl; 26 }; 27 28 struct ath_regulatory { 29 char alpha2[2]; 30 u16 country_code; 31 u16 max_power_level; 32 u32 tp_scale; 33 u16 current_rd; 34 u16 current_rd_ext; 35 int16_t power_limit; 36 struct reg_dmn_pair_mapping *regpair; 37 }; 38 39 struct ath_common { 40 u16 cachelsz; 41 struct ath_regulatory regulatory; 42 }; 43 44 struct sk_buff *ath_rxbuf_alloc(struct ath_common *common, 45 u32 len, 46 gfp_t gfp_mask); 47 48 #endif /* ATH_H */ 49