Show
Ignore:
Timestamp:
03/11/08 01:37:08 (16 years ago)
Author:
ppalmers
Message:

Fix latency/reliability issue.
Preliminary tests indicate that this runs fine with
jackd -R -P60 -d firewire -v4 -p64 -n3
which corresponds to 331 frames of roundtrip latency on the quatafire.

For reference:
jackd -R -P60 -d freebob -p64 -n2
results in 355 frames for the same device

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/config.h.in

    r918 r930  
    4343#define IEEE1394SERVICE_MAX_FIREWIRE_PORTS  16 
    4444 
    45 #define IEEE1394SERVICE_CYCLETIMER_HELPER_RUN_REALTIME    0 
    46 #define IEEE1394SERVICE_CYCLETIMER_HELPER_PRIO_INCREASE  -5 
     45#define IEEE1394SERVICE_CYCLETIMER_HELPER_RUN_REALTIME    1 
     46#define IEEE1394SERVICE_CYCLETIMER_HELPER_PRIO_INCREASE  -10 
    4747 
    4848#define THREAD_MAX_RTPRIO                   98 
    49 #define THREAD_MIN_RTPRIO                   0 
     49#define THREAD_MIN_RTPRIO                   1 
    5050 
    5151#define MINIMUM_INTERRUPTS_PER_PERIOD       4U 
     
    6262#define ISOHANDLERMANAGER_MAX_ISO_HANDLERS_PER_PORT         16 
    6363#define ISOHANDLERMANAGER_MAX_STREAMS_PER_ISOTHREAD         16 
     64// the transmit thread should run at elevated priority since it 
     65// should push packets into the kernel ASAP 
    6466#define ISOHANDLERMANAGER_TRANSMIT_PRIO_INCREASE            1 
    65 #define ISOHANDLERMANAGER_RECEIVE_PRIO_INCREASE             0 
     67// the receive thread should have lower priority than the transmit one, since 
     68// it should be interrupted once it has flagged the semaphore that indicates 
     69// one period of frames. 
     70#define ISOHANDLERMANAGER_RECEIVE_PRIO_INCREASE             -6 
    6671 
    6772// allows to add some processing margin. This shifts the time