On Mon, 2010-02-22 at 12:33 +0200, Juuso Oikarinen wrote: > > > wl->rx_counter++; > > > drv_rx_counter = wl->rx_counter & NUM_RX_PKT_DESC_MOD_MASK; > > > - wl1271_write32(wl, RX_DRIVER_COUNTER_ADDRESS, wl->rx_counter); > > > } > > > + > > > + wl1271_write32(wl, RX_DRIVER_COUNTER_ADDRESS, wl->rx_counter); > > > } > > > > What if the counter overflows and you got the & to change it? > > > > johannes > > > > The rx_counter itself is never changed with & - it's just incremented > for each frame. It's supposed to overflow when the u32 is full - it > will > then still behave sane when a delta is calculated inside the firmware > against its corresponding counter. That's a very common way to handle > counters for this particular chipset. Ok. > Did I miss the point? No ... I did. I thought the second quoted line was the same counter, didn't see it was a different variable because it looked so similar. That and I wasn't sure the firmware would really do the right thing when an overflow happened since it looked like before it wouldn't have to :) johannes -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html