2 * SPDX-License-Identifier: ISC
4 * Copyright (c) 2008-2009 Sam Leffler, Errno Consulting
6 * Permission to use, copy, modify, and/or distribute this software for any
7 * purpose with or without fee is hereby granted, provided that the above
8 * copyright notice and this permission notice appear in all copies.
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
20 #ifndef _ATH_AR9280_H_
21 #define _ATH_AR9280_H_
23 #include "ar5416/ar5416.h"
26 * This is a chip thing, but it's used here as part of the
27 * ath_hal_9280 struct; so it's convienent to locate the
30 #define AR9280_TX_GAIN_TABLE_SIZE 22
33 struct ath_hal_5416 ah_5416;
35 HAL_INI_ARRAY ah_ini_xmodes;
36 HAL_INI_ARRAY ah_ini_rxgain;
37 HAL_INI_ARRAY ah_ini_txgain;
41 uint32_t originalGain[AR9280_TX_GAIN_TABLE_SIZE];
43 #define AH9280(_ah) ((struct ath_hal_9280 *)(_ah))
45 #define AR9280_DEFAULT_RXCHAINMASK 3
46 #define AR9285_DEFAULT_RXCHAINMASK 1
47 #define AR9280_DEFAULT_TXCHAINMASK 1
48 #define AR9285_DEFAULT_TXCHAINMASK 1
50 #define AR_PHY_CCA_NOM_VAL_9280_2GHZ -112
51 #define AR_PHY_CCA_NOM_VAL_9280_5GHZ -112
52 #define AR_PHY_CCA_MIN_GOOD_VAL_9280_2GHZ -127
53 #define AR_PHY_CCA_MIN_GOOD_VAL_9280_5GHZ -122
54 #define AR_PHY_CCA_MAX_GOOD_VAL_9280_2GHZ -97
55 #define AR_PHY_CCA_MAX_GOOD_VAL_9280_5GHZ -102
57 HAL_BOOL ar9280RfAttach(struct ath_hal *, HAL_STATUS *);
61 HAL_BOOL ar9280SetAntennaSwitch(struct ath_hal *, HAL_ANT_SETTING);
62 void ar9280SpurMitigate(struct ath_hal *,
63 const struct ieee80211_channel *);
64 void ar9280InitPLL(struct ath_hal *ah,
65 const struct ieee80211_channel *chan);
66 #endif /* _ATH_AR9280_H_ */