Add support in ONOE/AMRR for drivers that can't provide per TX statistics:
- Add callback function pointer ieee80211_ratectl_state.rc_st_state, which
will be called periodically by ONOE/AMRR during their internal state
updating. This callback function pointer should return a
ieee80211_ratectl_stats struct, which provides statistics concerning TX.
- Add ieee80211_ratectl_state.rc_st_valid_stats bitmask. It is used to
tell ONOE/AMRR which fields of ieee80211_ratectl_stats are valid.
- Make ONOE/AMRR spit out a warning message if driver can't provide per TX
statistics and the statistics in ieee80211_ratectl_stats are not enough to
do proper TX rate control.
Drivers that can't provide per TX statistics should setup
ieee80211_ratectl_state.rc_st_state and
ieee80211_ratectl_state.rc_st_valid_stats before ieee80211_ifattach().
Add ieee80211_ratectl_state.rc_st_param, it could be used by drivers to
override TX rate control algorithm's default tunable values. This field should
be allocated, setup and freed in ieee80211_ratectl_state.rc_st_change. Drivers
that is going to override TX rate control algorithm's default tunable values
should include specific TX rate control algorithm's parameter header file
e.g. netproto/802_11/wlan_ratectl/ieee80211_amrr_param.h