IWL_RATE_COUNT
const u16 (*ht_tbl_pointer)[IWL_RATE_COUNT];
(sizeof(struct iwl_rate_scale_data) * IWL_RATE_COUNT));
(sizeof(struct iwl_rate_scale_data) * IWL_RATE_COUNT));
static const u16 expected_tpt_legacy[IWL_RATE_COUNT] = {
static const u16 expected_tpt_siso20MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_siso40MHz[4][IWL_RATE_COUNT] = {
(sizeof(struct iwl_rate_scale_data) * IWL_RATE_COUNT));
static const u16 expected_tpt_mimo2_20MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_mimo2_40MHz[4][IWL_RATE_COUNT] = {
(sizeof(struct iwl_rate_scale_data) * IWL_RATE_COUNT));
static const u16 expected_tpt_mimo3_20MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_mimo3_40MHz[4][IWL_RATE_COUNT] = {
for (i = 0; i < IWL_RATE_COUNT; i++)
for (i = 0; i < IWL_RATE_COUNT; i++)
for (i = 0; i < IWL_RATE_COUNT; i++)
if ((i < 0) || (i >= IWL_RATE_COUNT))
if (lq_sta->max_rate_idx < 0 || lq_sta->max_rate_idx >= IWL_RATE_COUNT)
for (i = 0; i < IWL_RATE_COUNT; i++)
static const struct iwl_rate_mcs_info iwl_rate_mcs[IWL_RATE_COUNT] = {
for (j = 0; j < IWL_RATE_COUNT; j++) {
if (scale_index < 0 || scale_index >= IWL_RATE_COUNT)
for (mask = (1 << i); i < IWL_RATE_COUNT; i++, mask <<= 1) {
const struct iwl_rate_info iwl_rates[IWL_RATE_COUNT] = {
#define IWL_RATES_MASK ((1 << IWL_RATE_COUNT) - 1)
extern const struct iwl_rate_info iwl_rates[IWL_RATE_COUNT];
struct iwl_rate_scale_data win[IWL_RATE_COUNT]; /* rate histories */
IWL_RATE_COUNT_LEGACY = IWL_RATE_COUNT - 1, /* Excluding 60M */
IWL_RATE_INVM_INDEX = IWL_RATE_COUNT,
IWL_RATE_INVALID = IWL_RATE_COUNT,
IWL_RATE_INVM_INDEX = IWL_RATE_COUNT,
IWL_RATE_INVALID = IWL_RATE_COUNT,
static const u8 fw_rate_idx_to_plcp[IWL_RATE_COUNT] = {
static const struct iwl_rate_mcs_info rate_mcs[IWL_RATE_COUNT] = {
u16 lowest_cck = IWL_RATE_COUNT, lowest_ofdm = IWL_RATE_COUNT;
if (lowest_cck != IWL_RATE_COUNT)
else if (lowest_ofdm != IWL_RATE_COUNT)
} else if (lowest_ofdm != IWL_RATE_COUNT) {
u16 lowest_cck = IWL_RATE_COUNT, lowest_ofdm = IWL_RATE_COUNT;
if (lowest_cck != IWL_RATE_COUNT)
else if (lowest_ofdm != IWL_RATE_COUNT)
} else if (lowest_ofdm != IWL_RATE_COUNT) {
const u16 (*ht_tbl_pointer)[IWL_RATE_COUNT];
for (j = 0; j < IWL_RATE_COUNT; j++) {
static const u16 expected_tpt_legacy[IWL_RATE_COUNT] = {
for (rate = 0; rate < IWL_RATE_COUNT; rate++)
for (rate = 0; rate < IWL_RATE_COUNT; rate++) {
static const u16 expected_tpt_siso_20MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_siso_40MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_siso_80MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_siso_160MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_mimo2_20MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_mimo2_40MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_mimo2_80MHz[4][IWL_RATE_COUNT] = {
static const u16 expected_tpt_mimo2_160MHz[4][IWL_RATE_COUNT] = {
for (i = 0; i < IWL_RATE_COUNT; i++)
if (scale_index < 0 || scale_index >= IWL_RATE_COUNT)
static const struct iwl_rs_rate_info iwl_rates[IWL_RATE_COUNT] = {
for (mask = (1 << i); i < IWL_RATE_COUNT; i++, mask <<= 1) {
#define IWL_RATES_MASK ((1 << IWL_RATE_COUNT) - 1)
struct iwl_rate_scale_data win[IWL_RATE_COUNT]; /* rate histories */
struct rs_rate_stats tx_stats[RS_COLUMN_COUNT][IWL_RATE_COUNT];
static const int rate_to_scan_rate[IWL_RATE_COUNT] = {