• Peter Ujfalusi's avatar
    ASoC: TWL4030: Fix for the constraint handling · 6b87a91f
    Peter Ujfalusi authored
    The original implementation of the constraints were good against sane
    applications.
    If the opening sequence is:
    stream1_open, stream1_hw_params, stream2_open, stream2_hw_params -> the
    constraints are set correctly for stream2.
    
    But if the sequence is:
    stream1_open, stream2_open, stream2_hw_params, stream1_hw_params -> than stream2
    would receive constraint rate = 0, sample_bits = 0, since the stream1 has not
    yet called hw_params...
    
    The command to trigger this event:
    gst-launch-0.10 alsasrc device=hw:0 ! alsasink device=hw:0 sync=false
    
    This patch does some 'black magic' in order to always set the correct
    constraints and sets it only when it is needed for the other stream.
    Signed-off-by: default avatarPeter Ujfalusi <peter.ujfalusi@nokia.com>
    Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
    6b87a91f
twl4030.c 49.3 KB