Lines Matching +full:per +full:- +full:module
1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
4 * Copyright (c) 2004-2008 Sam Leffler, Errno Consulting
39 * A rate control module is responsible for choosing the transmit rate
43 * Only one module may be present at a time; the driver references
45 * to be supported we'll need to switch to a registration-based scheme
48 * An instance of the rate control module is attached to each device
49 * at attach time and detached when the device is destroyed. The module
51 * sets of storage are opaque except for the size of the per-node storage
52 * which must be provided when the module is attached.
54 * The rate control module is notified for each state transition and
57 * frame. Any ancillary processing is the responsibility of the module
58 * (e.g. if periodic processing is required then the module should setup
61 * In addition to the transmit rate for each frame the module must also
72 size_t arc_space; /* space required for per-node state */
75 * Attach/detach a rate control module.
82 #define ATH_RC_DS_FLAG 0x01 /* dual-stream rate */
84 #define ATH_RC_SGI_FLAG 0x04 /* use short-GI */
88 #define ATH_RC_TS_FLAG 0x40 /* triple-stream rate */
103 * Initialize per-node state already allocated for the specified
108 * Cleanup any per-node state prior to the node being reclaimed.
129 * Return the transmit info for a data packet. If multi-rate state
132 * can be transmitted with multi-rate retry.
134 * maxdur is an optional return value (or -1 if not set) that defines
144 * Setup any extended (multi-rate) descriptor state for a data packet.
155 * For A-MPDU frames, nframes and nbad indicate how many frames
164 * Update rate control with a per-packet receive RSSI value.
175 * Fetch the per-node statistics.