On Sat, 20 Apr 2013 16:14:09 +0200 (CEST) Thommy <thom...@gmail.com> wrote:
> +void b43_dma_rx_discard(struct b43_dmaring *ring) > +{ > + B43_WARN_ON(ring->tx); > + > + /* Device has filled all buffers, drop all packets in buffers > + * and let TCP decrease speed. > + * Set index to one desc after the last one > + * so the device will see all slots as free again > + */ > + /* > + *TODO: How to increase rx_drop in mac80211? > + */ > + b43_dma_write(ring, B43_DMA32_RXINDEX, ring->nr_slots * > + sizeof(struct b43_dmadesc32)); > +} You need to check whether this is a 32bit or 64bit DMA engine and write to B43_DMA32_RXINDEX or B43_DMA64_RXINDEX. You could simply use the ring->ops->set_current_rxslot() dmaop for that. And I think you need to set ring->current_slot to the value of ring->ops->get_current_slot(). Not 100% sure, though, since it is years since I worked on that code. -- Michael
signature.asc
Description: PGP signature
_______________________________________________ b43-dev mailing list b43-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/b43-dev