• Alessandro Rubini's avatar
    bugfix: swfifo locking was racy · e5459f60
    Alessandro Rubini authored
    moreover, I was reading the hardware fifo both at interrupt level and
    at tasklet level.  The tasklet read-out is mandatory if we are using
    a timer instead of an interrupt (the timer is the tasklet function),
    but should be avoided if we have interrupts.
    
    Sometimes I got duplicate samples because the tasklet reading the
    hardware fifo was preempted by the interrupt handler.
    
    Now I can stamp 50kHz bursts withouth data loss, provided the zio
    buffer is big enough.
    Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    e5459f60
fd-irq.c 9.59 KB