ath9k: Remove ath_rate_softc

Move the hw rate tables to ath_softc, and access them directly.
tx_triglevel_max is global, move it to ath_rate_node.
Now that ath_rate_softc is gone, rate control attach becomes simpler.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Sujith
2008-11-18 09:07:06 +05:30
committed by John W. Linville
父節點 5ddfac3b55
當前提交 fe7f4a7745
共有 5 個文件被更改,包括 45 次插入87 次删除

查看文件

@@ -199,15 +199,6 @@ struct ath_rateset {
u8 rs_rates[ATH_RATE_MAX];
};
/* per-device state */
struct ath_rate_softc {
/* phy tables that contain rate control data */
const void *hw_rate_table[ATH9K_MODE_MAX];
/* -1 or index of fixed rate */
int fixedrix;
};
/**
* struct ath_rate_node - Rate Control priv data
* @state: RC state
@@ -261,6 +252,7 @@ struct ath_rate_node {
u32 per_down_time;
u32 probe_interval;
u32 prev_data_rix;
u32 tx_triglevel_max;
struct ath_tx_ratectrl_state state[MAX_TX_RATE_TBL];
struct ath_rateset neg_rates;
struct ath_rateset neg_ht_rates;
@@ -276,8 +268,7 @@ struct ath_tx_info_priv {
u8 min_rate;
};
struct ath_rate_softc *ath_rate_attach(struct ath_softc *sch);
void ath_rate_detach(struct ath_rate_softc *asc);
void ath_rate_attach(struct ath_softc *sc);
u8 ath_rate_findrateix(struct ath_softc *sc, u8 dot11_rate);
int ath_rate_control_register(void);
void ath_rate_control_unregister(void);