diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-07-17 02:30:08 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-07-17 02:30:08 +0000 |
commit | 613e530afeab2eb78d7b4100420fd305662beab1 (patch) | |
tree | 547d05d8319b3931a4fa1e5b1a5cbd543af52361 /package/madwifi/patches-r3776/126-rxerr_frames.patch | |
parent | 0e9ca337996b5b4ef392bc92cde7f4bc9699b3ea (diff) |
huge madwifi update (work in progress, disabled by default, compiles but breaks at run time)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@11851 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/madwifi/patches-r3776/126-rxerr_frames.patch')
-rw-r--r-- | package/madwifi/patches-r3776/126-rxerr_frames.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/package/madwifi/patches-r3776/126-rxerr_frames.patch b/package/madwifi/patches-r3776/126-rxerr_frames.patch new file mode 100644 index 000000000..4639b5abf --- /dev/null +++ b/package/madwifi/patches-r3776/126-rxerr_frames.patch @@ -0,0 +1,29 @@ +Index: madwifi-trunk-r3776/ath/if_ath.c +=================================================================== +--- madwifi-trunk-r3776.orig/ath/if_ath.c 2008-07-17 00:52:28.000000000 +0200 ++++ madwifi-trunk-r3776/ath/if_ath.c 2008-07-17 00:53:04.000000000 +0200 +@@ -6451,9 +6451,6 @@ + rs = &bf->bf_dsstatus.ds_rxstat; + + len = rs->rs_datalen; +- /* DMA sync. dies spectacularly if len == 0 */ +- if (len == 0) +- goto rx_next; + if (rs->rs_more) { + /* Frame spans multiple descriptors; this + * cannot happen yet as we don't support +@@ -6513,8 +6510,12 @@ + * setup again to receive another frame. + * NB: Meta-data (rs, noise, tsf) in the ath_buf is still + * used. */ +- bus_dma_sync_single(sc->sc_bdev, +- bf->bf_skbaddr, len, BUS_DMA_FROMDEVICE); ++ ++ /* DMA sync. dies spectacularly if len == 0 */ ++ if (len != 0) { ++ bus_dma_sync_single(sc->sc_bdev, ++ bf->bf_skbaddr, len, BUS_DMA_FROMDEVICE); ++ } + skb = ath_rxbuf_take_skb(sc, bf); + + sc->sc_stats.ast_ant_rx[rs->rs_antenna]++; |