#include <linux/kernel.h>
#include <linux/rtnetlink.h>
#include <linux/slab.h>
#include <linux/module.h>
#include "rate.h"
#include "ieee80211_i.h"
#include "debugfs.h"
Go to the source code of this file.
Classes | |
struct | rate_control_alg |
Functions | |
static | DEFINE_MUTEX (rate_ctrl_mutex) |
EXPORT_SYMBOL (ieee80211_rate_control_register) | |
EXPORT_SYMBOL (ieee80211_rate_control_unregister) | |
EXPORT_SYMBOL (rate_control_send_low) | |
int | ieee80211_init_rate_ctrl_alg (struct ieee80211_local *local, const char *name) |
static struct rate_control_ops * | ieee80211_rate_control_ops_get (const char *name) |
static void | ieee80211_rate_control_ops_put (struct rate_control_ops *ops) |
int | ieee80211_rate_control_register (struct rate_control_ops *ops) |
void | ieee80211_rate_control_unregister (struct rate_control_ops *ops) |
static struct rate_control_ops * | ieee80211_try_rate_control_ops_get (const char *name) |
static | LIST_HEAD (rate_ctrl_algs) |
module_param (ieee80211_default_rc_algo, charp, 0644) | |
MODULE_PARM_DESC (ieee80211_default_rc_algo,"Default rate control algorithm for mac80211 to use") | |
static struct rate_control_ref * | rate_control_alloc (const char *name, struct ieee80211_local *local) |
void | rate_control_deinitialize (struct ieee80211_local *local) |
static void | rate_control_free (struct rate_control_ref *ctrl_ref) |
void | rate_control_get_rate (struct ieee80211_sub_if_data *sdata, struct sta_info *sta, struct ieee80211_tx_rate_control *txrc) |
bool | rate_control_send_low (struct ieee80211_sta *sta, void *priv_sta, struct ieee80211_tx_rate_control *txrc) |
static bool | rate_idx_match_legacy_mask (struct ieee80211_tx_rate *rate, int n_bitrates, u32 mask) |
static void | rate_idx_match_mask (struct ieee80211_tx_rate *rate, struct ieee80211_tx_rate_control *txrc, u32 mask, u8 mcs_mask[IEEE80211_HT_MCS_MASK_LEN]) |
static bool | rate_idx_match_mcs_mask (struct ieee80211_tx_rate *rate, u8 mcs_mask[IEEE80211_HT_MCS_MASK_LEN]) |
static s8 | rate_lowest_non_cck_index (struct ieee80211_supported_band *sband, struct ieee80211_sta *sta) |
static bool | rc_no_data_or_no_ack_use_min (struct ieee80211_tx_rate_control *txrc) |
static void | rc_send_low_broadcast (s8 *idx, u32 basic_rates, struct ieee80211_supported_band *sband) |
Variables | |
static char * | ieee80211_default_rc_algo = CONFIG_MAC80211_RC_DEFAULT |
static DEFINE_MUTEX | ( | rate_ctrl_mutex | ) | [static] |
int ieee80211_init_rate_ctrl_alg | ( | struct ieee80211_local * | local, |
const char * | name | ||
) |
Definition at line 490 of file kernel-3.5/rate.c.
static struct rate_control_ops* ieee80211_rate_control_ops_get | ( | const char * | name | ) | [static, read] |
Definition at line 102 of file kernel-3.5/rate.c.
static void ieee80211_rate_control_ops_put | ( | struct rate_control_ops * | ops | ) | [static] |
Definition at line 130 of file kernel-3.5/rate.c.
int ieee80211_rate_control_register | ( | struct rate_control_ops * | ops | ) |
Definition at line 32 of file kernel-3.5/rate.c.
void ieee80211_rate_control_unregister | ( | struct rate_control_ops * | ops | ) |
Definition at line 63 of file kernel-3.5/rate.c.
static struct rate_control_ops* ieee80211_try_rate_control_ops_get | ( | const char * | name | ) | [static, read] |
Definition at line 80 of file kernel-3.5/rate.c.
static LIST_HEAD | ( | rate_ctrl_algs | ) | [static] |
module_param | ( | ieee80211_default_rc_algo | , |
charp | , | ||
0644 | |||
) |
MODULE_PARM_DESC | ( | ieee80211_default_rc_algo | , |
"Default rate control algorithm for mac80211 to use" | |||
) |
static struct rate_control_ref* rate_control_alloc | ( | const char * | name, |
struct ieee80211_local * | local | ||
) | [static, read] |
Definition at line 153 of file kernel-3.5/rate.c.
void rate_control_deinitialize | ( | struct ieee80211_local * | local | ) |
Definition at line 522 of file kernel-3.5/rate.c.
static void rate_control_free | ( | struct rate_control_ref * | ctrl_ref | ) | [static] |
Definition at line 186 of file kernel-3.5/rate.c.
void rate_control_get_rate | ( | struct ieee80211_sub_if_data * | sdata, |
struct sta_info * | sta, | ||
struct ieee80211_tx_rate_control * | txrc | ||
) |
Definition at line 430 of file kernel-3.5/rate.c.
bool rate_control_send_low | ( | struct ieee80211_sta * | sta, |
void * | priv_sta, | ||
struct ieee80211_tx_rate_control * | txrc | ||
) |
Definition at line 256 of file kernel-3.5/rate.c.
static bool rate_idx_match_legacy_mask | ( | struct ieee80211_tx_rate * | rate, |
int | n_bitrates, | ||
u32 | mask | ||
) | [static] |
Definition at line 292 of file kernel-3.5/rate.c.
static void rate_idx_match_mask | ( | struct ieee80211_tx_rate * | rate, |
struct ieee80211_tx_rate_control * | txrc, | ||
u32 | mask, | ||
u8 | mcs_mask[IEEE80211_HT_MCS_MASK_LEN] | ||
) | [static] |
Definition at line 357 of file kernel-3.5/rate.c.
static bool rate_idx_match_mcs_mask | ( | struct ieee80211_tx_rate * | rate, |
u8 | mcs_mask[IEEE80211_HT_MCS_MASK_LEN] | ||
) | [static] |
Definition at line 317 of file kernel-3.5/rate.c.
static s8 rate_lowest_non_cck_index | ( | struct ieee80211_supported_band * | sband, |
struct ieee80211_sta * | sta | ||
) | [inline, static] |
Definition at line 236 of file kernel-3.5/rate.c.
static bool rc_no_data_or_no_ack_use_min | ( | struct ieee80211_tx_rate_control * | txrc | ) | [static] |
Definition at line 199 of file kernel-3.5/rate.c.
static void rc_send_low_broadcast | ( | s8 * | idx, |
u32 | basic_rates, | ||
struct ieee80211_supported_band * | sband | ||
) | [static] |
Definition at line 213 of file kernel-3.5/rate.c.
char* ieee80211_default_rc_algo = CONFIG_MAC80211_RC_DEFAULT [static] |
Definition at line 27 of file kernel-3.5/rate.c.