On Wed, May 14, 2014 at 2:57 AM, Łukasz Wójcik <[email protected]>wrote:
>
> I would appreciate any clues and suggestions on how to improve the latency
> situation.
>

I'm unfamiliar with BSD driver development but here are a couple things I
might check:
- Ensure the interrupts are being acknowledged properly by the driver. If
interrupts were left un-acknowledged, it could produce this scenario.
- Ensure all memory addresses are mapped properly regarding the descriptor
ring. If memory addresses were incorrectly loaded to the card for the
dring, it may cause similar issues.
- Time the irq handler to find it's running time. Linux has a tracer for
this, maybe BSD does as well. (I think this is least likely, unless some
BSD quirk is hanging up in the middle of the irq routine)

Also, could anyone explain what exactly 'rxident' is ?
>
rxident is just a counter that the driver uses to estimate how fast or slow
the card is processing the audio. This is then used to set a new latency
value during a missed interrupt event.

-- 
Russ Meyerriecks
Digium, Inc. | Linux Kernel Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
direct: +1 256-428-6025
Check us out at: www.digium.com & www.asterisk.org
-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to