diff --git a/sys/dev/rtwn/if_rtwn.c b/sys/dev/rtwn/if_rtwn.c --- a/sys/dev/rtwn/if_rtwn.c +++ b/sys/dev/rtwn/if_rtwn.c @@ -1724,6 +1724,7 @@ un->id = RTWN_MACID_UNDEFINED; un->avg_pwdb = -1; + un->current_ra_level = RTWN_RA_LEVEL_OFF; return &un->ni; } diff --git a/sys/dev/rtwn/if_rtwnvar.h b/sys/dev/rtwn/if_rtwnvar.h --- a/sys/dev/rtwn/if_rtwnvar.h +++ b/sys/dev/rtwn/if_rtwnvar.h @@ -95,12 +95,22 @@ }; #define RTWN_CMDQ_SIZE 16 +enum rtwn_ra_level { + RTWN_RA_LEVEL_OFF = 0, + RTWN_RA_LEVEL_LOW = 1, + RTWN_RA_LEVEL_MED = 2, + RTWN_RA_LEVEL_HI = 3, +}; + struct rtwn_node { struct ieee80211_node ni; /* must be the first */ int id; struct rtwn_tx_phystat last_physt; int avg_pwdb; + enum rtwn_ra_level current_ra_level; + uint32_t rate_mask; + uint32_t ht_rate_mask; }; #define RTWN_NODE(ni) ((struct rtwn_node *)(ni))