• M
    Merge series "ASoC: soc-pcm: ignore dummy-DAI at soc_pcm_params_symmetry()"... · ac22cf52
    Mark Brown 提交于
    Merge series "ASoC: soc-pcm: ignore dummy-DAI at soc_pcm_params_symmetry()" from Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
    
    Hi Mark
    
    I noticed if we have...
    
    	1) Sound Card used DPCM
    	2) It exchanges rate to 48kHz by using .be_hw_params_fixup()
    	3) Codec had symmetric_rate = 1
    
    We will get below error.
    I didn't confirm, but maybe same things happen
    if it exchanged channels/sample_bits.
    
    	# aplay 44100.wav
    	# aplay 44100.wav
    =>	[kernel] be.ak4613-hifi: ASoC: unmatched rate symmetry: snd-soc-dummy-dai:44100 - soc_pcm_params_symmetry:48000
    	[kernel] be.ak4613-hifi: ASoC: hw_params BE failed -22
    	[kernel] fe.rsnd-dai.0: ASoC: hw_params BE failed -22
    	aplay: set_params:1407: Unable to install hw params:
    	ACCESS:  RW_INTERLEAVED
    	FORMAT:  S16_LE
    	SUBFORMAT:  STD
    	SAMPLE_BITS: 16
    	FRAME_BITS: 32
    	CHANNELS: 2
    	RATE: 44100
    	PERIOD_TIME: (23219 23220)
    	PERIOD_SIZE: 1024
    	PERIOD_BYTES: 4096
    	PERIODS: 4
    	BUFFER_TIME: (92879 92880)
    	BUFFER_SIZE: 4096
    	BUFFER_BYTES: 16384
    	TICK_TIME: 0
    
    This patch-set solves this issue.
    patch 1) - 3) are just cleanup patches.
    4) is fot this issue.
    
    Link: https://lore.kernel.org/r/87a6q0z4xt.wl-kuninori.morimoto.gx@renesas.com
    
    Kuninori Morimoto (4):
      ASoC: soc-pcm: don't use "name" on __soc_pcm_params_symmetry() macro
      ASoC: soc-pcm: indicate DAI name if soc_pcm_params_symmetry() failed
      ASoC: soc-utils: add snd_soc_component_is_dummy()
      ASoC: soc-pcm: ignore dummy-DAI at soc_pcm_params_symmetry()
    
     include/sound/soc-component.h |  1 +
     sound/soc/soc-core.c          |  2 +-
     sound/soc/soc-pcm.c           | 14 ++++++++------
     sound/soc/soc-utils.c         |  6 ++++++
     4 files changed, 16 insertions(+), 7 deletions(-)
    
    --
    2.25.1
    ac22cf52
soc-core.c 76.5 KB