|
@@ -1214,6 +1214,7 @@ ath5k_rxbuf_setup(struct ath5k_softc *sc, struct ath5k_buf *bf)
|
|
|
struct ath5k_hw *ah = sc->ah;
|
|
|
struct sk_buff *skb = bf->skb;
|
|
|
struct ath5k_desc *ds;
|
|
|
+ int ret;
|
|
|
|
|
|
if (!skb) {
|
|
|
skb = ath5k_rx_skb_alloc(sc, &bf->skbaddr);
|
|
@@ -1240,9 +1241,9 @@ ath5k_rxbuf_setup(struct ath5k_softc *sc, struct ath5k_buf *bf)
|
|
|
ds = bf->desc;
|
|
|
ds->ds_link = bf->daddr; /* link to self */
|
|
|
ds->ds_data = bf->skbaddr;
|
|
|
- ah->ah_setup_rx_desc(ah, ds,
|
|
|
- skb_tailroom(skb), /* buffer size */
|
|
|
- 0);
|
|
|
+ ret = ah->ah_setup_rx_desc(ah, ds, ah->common.rx_bufsize, 0);
|
|
|
+ if (ret)
|
|
|
+ return ret;
|
|
|
|
|
|
if (sc->rxlink != NULL)
|
|
|
*sc->rxlink = bf->daddr;
|