• Takashi Sakamoto's avatar
    ALSA: firewire-motu: sequence replay for source packet header · f2ac3b83
    Takashi Sakamoto authored
    This commit takes ALSA firewire-motu driver to perform sequence replay for
    media clock recovery.
    
    Unlike the other types of device, the devices in MOTU FireWire series
    require two levels of sequence replay; the sequence of the number of
    data blocks per packet and the sequence of source packet header per data
    block. The former is already cached by ALSA IEC 61883-1/6 packet streaming
    engine and ready to be replayed. The latter is also cached by ALSA
    firewire-motu driver itself with a previous patch. This commit takes
    the driver to replay both of them from the caches.
    
    The sequence replay is tested with below models:
    
     * 828 mkII
     * Traveler
     * UltraLite
     * 828 mk3 FireWire
     * 828 mk3 Hybrid (except for high sampling transfer frequency
     * UltraLite mk3 FireWire
     * 4pre
     * AudioExpress
    
    Unfortunately, below models still don't generate better sound, requires
    more work:
    
     * 8pre
     * 828 mk3 Hybrid at high sampling transfer frequency
    
    As long as I know, MOTU protocol version 1 requires extra care of the
    format of data block, thus below models are not supported yet in this
    time:
    
     * 828
     * 896
    Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
    Link: https://lore.kernel.org/r/20210602013406.26442-4-o-takashi@sakamocchi.jpSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    f2ac3b83
motu.h 7.84 KB