we don't report stats for now, as some init is missing for ratectl, this should avoid KDL for these drivers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41251 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -2982,7 +2982,9 @@ bwi_encap(struct bwi_softc *sc, int idx, struct mbuf *m,
|
|||||||
} else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) {
|
} else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) {
|
||||||
rate = rate_fb = tp->ucastrate;
|
rate = rate_fb = tp->ucastrate;
|
||||||
} else {
|
} else {
|
||||||
|
#ifndef __HAIKU__
|
||||||
rix = ieee80211_ratectl_rate(ni, NULL, pkt_len);
|
rix = ieee80211_ratectl_rate(ni, NULL, pkt_len);
|
||||||
|
#endif
|
||||||
rate = ni->ni_txrate;
|
rate = ni->ni_txrate;
|
||||||
|
|
||||||
if (rix > 0) {
|
if (rix > 0) {
|
||||||
@@ -3378,9 +3380,11 @@ _bwi_txeof(struct bwi_softc *sc, uint16_t tx_id, int acked, int data_txcnt)
|
|||||||
* well so to avoid over-aggressive downshifting we
|
* well so to avoid over-aggressive downshifting we
|
||||||
* treat any number of retries as "1".
|
* treat any number of retries as "1".
|
||||||
*/
|
*/
|
||||||
|
#ifndef __HAIKU__
|
||||||
ieee80211_ratectl_tx_complete(vap, ni,
|
ieee80211_ratectl_tx_complete(vap, ni,
|
||||||
(data_txcnt > 1) ? IEEE80211_RATECTL_TX_SUCCESS :
|
(data_txcnt > 1) ? IEEE80211_RATECTL_TX_SUCCESS :
|
||||||
IEEE80211_RATECTL_TX_FAILURE, &acked, NULL);
|
IEEE80211_RATECTL_TX_FAILURE, &acked, NULL);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -1600,8 +1600,10 @@ wpi_tx_intr(struct wpi_softc *sc, struct wpi_rx_desc *desc)
|
|||||||
DPRINTFN(WPI_DEBUG_TX, ("%d retries\n", stat->ntries));
|
DPRINTFN(WPI_DEBUG_TX, ("%d retries\n", stat->ntries));
|
||||||
retrycnt = 1;
|
retrycnt = 1;
|
||||||
}
|
}
|
||||||
|
#ifndef __HAIKU__
|
||||||
ieee80211_ratectl_tx_complete(vap, ni, IEEE80211_RATECTL_TX_SUCCESS,
|
ieee80211_ratectl_tx_complete(vap, ni, IEEE80211_RATECTL_TX_SUCCESS,
|
||||||
&retrycnt, NULL);
|
&retrycnt, NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
/* XXX oerrors should only count errors !maxtries */
|
/* XXX oerrors should only count errors !maxtries */
|
||||||
if ((le32toh(stat->status) & 0xff) != 1)
|
if ((le32toh(stat->status) & 0xff) != 1)
|
||||||
@@ -1947,7 +1949,9 @@ wpi_tx_data(struct wpi_softc *sc, struct mbuf *m0, struct ieee80211_node *ni,
|
|||||||
} else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) {
|
} else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) {
|
||||||
rate = tp->ucastrate;
|
rate = tp->ucastrate;
|
||||||
} else {
|
} else {
|
||||||
|
#ifndef __HAIKU__
|
||||||
(void) ieee80211_ratectl_rate(ni, NULL, 0);
|
(void) ieee80211_ratectl_rate(ni, NULL, 0);
|
||||||
|
#endif
|
||||||
rate = ni->ni_txrate;
|
rate = ni->ni_txrate;
|
||||||
}
|
}
|
||||||
tx->rate = wpi_plcp_signal(rate);
|
tx->rate = wpi_plcp_signal(rate);
|
||||||
|
|||||||
@@ -826,9 +826,7 @@ iwn_vap_create(struct ieee80211com *ic,
|
|||||||
ivp->iv_newstate = vap->iv_newstate;
|
ivp->iv_newstate = vap->iv_newstate;
|
||||||
vap->iv_newstate = iwn_newstate;
|
vap->iv_newstate = iwn_newstate;
|
||||||
|
|
||||||
#ifndef __HAIKU__
|
|
||||||
ieee80211_ratectl_init(vap);
|
ieee80211_ratectl_init(vap);
|
||||||
#endif
|
|
||||||
/* Complete setup. */
|
/* Complete setup. */
|
||||||
ieee80211_vap_attach(vap, iwn_media_change, ieee80211_media_status);
|
ieee80211_vap_attach(vap, iwn_media_change, ieee80211_media_status);
|
||||||
ic->ic_opmode = opmode;
|
ic->ic_opmode = opmode;
|
||||||
@@ -840,9 +838,7 @@ iwn_vap_delete(struct ieee80211vap *vap)
|
|||||||
{
|
{
|
||||||
struct iwn_vap *ivp = IWN_VAP(vap);
|
struct iwn_vap *ivp = IWN_VAP(vap);
|
||||||
|
|
||||||
#ifndef __HAIKU__
|
|
||||||
ieee80211_ratectl_deinit(vap);
|
ieee80211_ratectl_deinit(vap);
|
||||||
#endif
|
|
||||||
ieee80211_vap_detach(vap);
|
ieee80211_vap_detach(vap);
|
||||||
free(ivp, M_80211_VAP);
|
free(ivp, M_80211_VAP);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -953,10 +953,12 @@ rt2560_tx_intr(struct rt2560_softc *sc)
|
|||||||
retrycnt = 0;
|
retrycnt = 0;
|
||||||
|
|
||||||
DPRINTFN(sc, 10, "%s\n", "data frame sent successfully");
|
DPRINTFN(sc, 10, "%s\n", "data frame sent successfully");
|
||||||
|
#ifndef __HAIKU__
|
||||||
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
||||||
ieee80211_ratectl_tx_complete(vap, ni,
|
ieee80211_ratectl_tx_complete(vap, ni,
|
||||||
IEEE80211_RATECTL_TX_SUCCESS,
|
IEEE80211_RATECTL_TX_SUCCESS,
|
||||||
&retrycnt, NULL);
|
&retrycnt, NULL);
|
||||||
|
#endif
|
||||||
ifp->if_opackets++;
|
ifp->if_opackets++;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -965,10 +967,12 @@ rt2560_tx_intr(struct rt2560_softc *sc)
|
|||||||
|
|
||||||
DPRINTFN(sc, 9, "data frame sent after %u retries\n",
|
DPRINTFN(sc, 9, "data frame sent after %u retries\n",
|
||||||
retrycnt);
|
retrycnt);
|
||||||
|
#ifndef __HAIKU__
|
||||||
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
||||||
ieee80211_ratectl_tx_complete(vap, ni,
|
ieee80211_ratectl_tx_complete(vap, ni,
|
||||||
IEEE80211_RATECTL_TX_SUCCESS,
|
IEEE80211_RATECTL_TX_SUCCESS,
|
||||||
&retrycnt, NULL);
|
&retrycnt, NULL);
|
||||||
|
#endif
|
||||||
ifp->if_opackets++;
|
ifp->if_opackets++;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -977,10 +981,12 @@ rt2560_tx_intr(struct rt2560_softc *sc)
|
|||||||
|
|
||||||
DPRINTFN(sc, 9, "data frame failed after %d retries\n",
|
DPRINTFN(sc, 9, "data frame failed after %d retries\n",
|
||||||
retrycnt);
|
retrycnt);
|
||||||
|
#ifndef __HAIKU__
|
||||||
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
||||||
ieee80211_ratectl_tx_complete(vap, ni,
|
ieee80211_ratectl_tx_complete(vap, ni,
|
||||||
IEEE80211_RATECTL_TX_FAILURE,
|
IEEE80211_RATECTL_TX_FAILURE,
|
||||||
&retrycnt, NULL);
|
&retrycnt, NULL);
|
||||||
|
#endif
|
||||||
ifp->if_oerrors++;
|
ifp->if_oerrors++;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -1800,7 +1806,9 @@ rt2560_tx_data(struct rt2560_softc *sc, struct mbuf *m0,
|
|||||||
} else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) {
|
} else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) {
|
||||||
rate = tp->ucastrate;
|
rate = tp->ucastrate;
|
||||||
} else {
|
} else {
|
||||||
|
#ifndef __HAIKU__
|
||||||
(void) ieee80211_ratectl_rate(ni, NULL, 0);
|
(void) ieee80211_ratectl_rate(ni, NULL, 0);
|
||||||
|
#endif
|
||||||
rate = ni->ni_txrate;
|
rate = ni->ni_txrate;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -904,10 +904,12 @@ rt2661_tx_intr(struct rt2661_softc *sc)
|
|||||||
|
|
||||||
DPRINTFN(sc, 10, "data frame sent successfully after "
|
DPRINTFN(sc, 10, "data frame sent successfully after "
|
||||||
"%d retries\n", retrycnt);
|
"%d retries\n", retrycnt);
|
||||||
|
#ifndef __HAIKU__
|
||||||
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
||||||
ieee80211_ratectl_tx_complete(vap, ni,
|
ieee80211_ratectl_tx_complete(vap, ni,
|
||||||
IEEE80211_RATECTL_TX_SUCCESS,
|
IEEE80211_RATECTL_TX_SUCCESS,
|
||||||
&retrycnt, NULL);
|
&retrycnt, NULL);
|
||||||
|
#endif
|
||||||
ifp->if_opackets++;
|
ifp->if_opackets++;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -916,10 +918,12 @@ rt2661_tx_intr(struct rt2661_softc *sc)
|
|||||||
|
|
||||||
DPRINTFN(sc, 9, "%s\n",
|
DPRINTFN(sc, 9, "%s\n",
|
||||||
"sending data frame failed (too much retries)");
|
"sending data frame failed (too much retries)");
|
||||||
|
#ifndef __HAIKU__
|
||||||
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
if (data->rix != IEEE80211_FIXED_RATE_NONE)
|
||||||
ieee80211_ratectl_tx_complete(vap, ni,
|
ieee80211_ratectl_tx_complete(vap, ni,
|
||||||
IEEE80211_RATECTL_TX_FAILURE,
|
IEEE80211_RATECTL_TX_FAILURE,
|
||||||
&retrycnt, NULL);
|
&retrycnt, NULL);
|
||||||
|
#endif
|
||||||
ifp->if_oerrors++;
|
ifp->if_oerrors++;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -1485,7 +1489,9 @@ rt2661_tx_data(struct rt2661_softc *sc, struct mbuf *m0,
|
|||||||
} else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) {
|
} else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE) {
|
||||||
rate = tp->ucastrate;
|
rate = tp->ucastrate;
|
||||||
} else {
|
} else {
|
||||||
|
#ifndef __HAIKU__
|
||||||
(void) ieee80211_ratectl_rate(ni, NULL, 0);
|
(void) ieee80211_ratectl_rate(ni, NULL, 0);
|
||||||
|
#endif
|
||||||
rate = ni->ni_txrate;
|
rate = ni->ni_txrate;
|
||||||
}
|
}
|
||||||
rate &= IEEE80211_RATE_VAL;
|
rate &= IEEE80211_RATE_VAL;
|
||||||
|
|||||||
Reference in New Issue
Block a user