1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 *
4 * Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd.
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer,
12 * without modification.
13 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
14 * similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
15 * redistribution must be conditioned upon including a substantially
16 * similar Disclaimer requirement for further binary redistribution.
17 *
18 * NO WARRANTY
19 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
22 * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
23 * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
24 * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
27 * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
29 * THE POSSIBILITY OF SUCH DAMAGES.
30 *
31 * $FreeBSD$
32 */
33 #ifndef __IF_ATH_TX_HT_H__
34 #define __IF_ATH_TX_HT_H__
35
36 enum {
37 MCS_HT20,
38 MCS_HT20_SGI,
39 MCS_HT40,
40 MCS_HT40_SGI,
41 };
42
43 typedef enum {
44 ATH_AGGR_DONE,
45 ATH_AGGR_BAW_CLOSED,
46 ATH_AGGR_LIMITED,
47 ATH_AGGR_SHORTPKT,
48 ATH_AGGR_8K_LIMITED,
49 ATH_AGGR_ERROR,
50 ATH_AGGR_NONAGGR,
51 ATH_AGGR_LEAK_CLOSED,
52 } ATH_AGGR_STATUS;
53
54 extern int ath_max_4ms_framelen[4][32];
55
56 extern void ath_tx_rate_fill_rcflags(struct ath_softc *sc, struct ath_buf *bf);
57
58 extern void ath_buf_set_rate(struct ath_softc *sc,
59 struct ieee80211_node *ni, struct ath_buf *bf);
60
61 extern ATH_AGGR_STATUS
62 ath_tx_form_aggr(struct ath_softc *sc, struct ath_node *an,
63 struct ath_tid *tid, ath_bufhead *bf_q);
64
65 #endif
Cache object: 9072de860d911981ae912d6aeb1623ac
|