• Patrick Lai's avatar
    ASoC: msm: fall back to have AFE port started at prepare · bf978953
    Patrick Lai authored
    
    
    After upgrading to kernel 3.4, there is 5 second delay
    at the closing of PCM playback. The delay is due to missing
    EOS from QDSP6 audio session manager causing pcm close function
    of PCM platform driver to wait for 5 seconds. The root cause
    for missing EOS is that ALSA dynmic PCM shutdown sequence has
    changed. Now, trigger stop is called on the back-end DAI-LINK.
    Furthermore, back-end trigger stop is called before front-end
    trigger stop. Since sink stops rendering data, data at source
    will never get consumed. EOS event will not arrive. As trigger
    operation has to be atomic, it is very difficult to guarantee
    sequence on shutting down various modules in QDSP6. The decision
    is to abandon starting and stopping QDSP6 AFE port in trigger
    function. This decision is considered acceptable as playback
    and capture over SLIMBUS is no longer subject to strict sequence
    which Q6 AFE port must be started after CODEC configuration.
    
    Change-Id: I0cc1d8b7d058052d7fae55c84b6be46b5b0678e9
    CRs-fixed: 373966
    Signed-off-by: default avatarPatrick Lai <plai@codeaurora.org>
    bf978953
q6afe.h 3.49 KB