Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: soc-pcm: use snd_soc_ret()

Many functions uses below style for error return

dev_err(dev, "message");
return -Exxxx;

We can merge these into snd_soc_ret() which can use same error
format. Let's cleaup code.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://patch.msgid.link/87cyfx2qlo.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Kuninori Morimoto and committed by
Mark Brown
be61cd42 062b7ef6

+39 -57
+39 -57
sound/soc/soc-pcm.c
··· 238 238 int stream; 239 239 char *buf; 240 240 241 - if (fe->dai_link->num_cpus > 1) { 242 - dev_err(fe->dev, 241 + if (fe->dai_link->num_cpus > 1) 242 + return snd_soc_ret(fe->dev, -EINVAL, 243 243 "%s doesn't support Multi CPU yet\n", __func__); 244 - return -EINVAL; 245 - } 246 244 247 245 buf = kmalloc(out_count, GFP_KERNEL); 248 246 if (!buf) ··· 458 460 ret = snd_pcm_hw_constraint_single(substream->runtime, \ 459 461 SNDRV_PCM_HW_PARAM_##NAME,\ 460 462 soc_dai->symmetric_##name); \ 461 - if (ret < 0) { \ 462 - dev_err(soc_dai->dev, \ 463 - "ASoC: Unable to apply %s constraint: %d\n",\ 464 - #name, ret); \ 465 - return ret; \ 466 - } \ 463 + if (ret < 0) \ 464 + return snd_soc_ret(soc_dai->dev, ret, \ 465 + "Unable to apply %s constraint\n", #name); \ 467 466 } 468 467 469 468 __soc_pcm_apply_symmetry(rate, RATE); ··· 491 496 for_each_rtd_cpu_dais(rtd, i, cpu_dai) \ 492 497 if (!snd_soc_dai_is_dummy(cpu_dai) && \ 493 498 cpu_dai->symmetric_##xxx && \ 494 - cpu_dai->symmetric_##xxx != d.symmetric_##xxx) { \ 495 - dev_err(rtd->dev, "ASoC: unmatched %s symmetry: %s:%d - %s:%d\n", \ 496 - #xxx, cpu_dai->name, cpu_dai->symmetric_##xxx, \ 497 - d.name, d.symmetric_##xxx); \ 498 - return -EINVAL; \ 499 - } 499 + cpu_dai->symmetric_##xxx != d.symmetric_##xxx) \ 500 + return snd_soc_ret(rtd->dev, -EINVAL, \ 501 + "unmatched %s symmetry: %s:%d - %s:%d\n", \ 502 + #xxx, cpu_dai->name, cpu_dai->symmetric_##xxx, \ 503 + d.name, d.symmetric_##xxx); 500 504 501 505 /* reject unmatched parameters when applying symmetry */ 502 506 __soc_pcm_params_symmetry(rate); ··· 840 846 return 0; 841 847 842 848 config_err: 843 - dev_err(dev, "ASoC: %s <-> %s No matching %s\n", 844 - name_codec, name_cpu, err_msg); 845 - return -EINVAL; 849 + return snd_soc_ret(dev, -EINVAL, 850 + "%s <-> %s No matching %s\n", name_codec, name_cpu, err_msg); 846 851 } 847 852 848 853 /* ··· 1312 1319 fe_substream = snd_soc_dpcm_get_substream(fe, stream); 1313 1320 be_substream = snd_soc_dpcm_get_substream(be, stream); 1314 1321 1315 - if (!fe_substream->pcm->nonatomic && be_substream->pcm->nonatomic) { 1316 - dev_err(be->dev, "%s: FE is atomic but BE is nonatomic, invalid configuration\n", 1317 - __func__); 1318 - return -EINVAL; 1319 - } 1322 + if (!fe_substream->pcm->nonatomic && be_substream->pcm->nonatomic) 1323 + return snd_soc_ret(be->dev, -EINVAL, 1324 + "%s: %s is atomic but %s is nonatomic, invalid configuration\n", 1325 + __func__, fe->dai_link->name, be->dai_link->name); 1326 + 1320 1327 if (fe_substream->pcm->nonatomic && !be_substream->pcm->nonatomic) { 1321 1328 dev_dbg(be->dev, "FE is nonatomic but BE is not, forcing BE as nonatomic\n"); 1322 1329 be_substream->pcm->nonatomic = 1; ··· 1486 1493 struct snd_soc_dai *cpu_dai = snd_soc_rtd_to_cpu(fe, 0); 1487 1494 int paths; 1488 1495 1489 - if (fe->dai_link->num_cpus > 1) { 1490 - dev_err(fe->dev, 1496 + if (fe->dai_link->num_cpus > 1) 1497 + return snd_soc_ret(fe->dev, -EINVAL, 1491 1498 "%s doesn't support Multi CPU yet\n", __func__); 1492 - return -EINVAL; 1493 - } 1494 1499 1495 1500 /* get number of valid DAI paths and their widgets */ 1496 1501 paths = snd_soc_dapm_dai_get_connected_widgets(cpu_dai, stream, list, ··· 2379 2388 2380 2389 ret = soc_pcm_trigger(substream, cmd); 2381 2390 if (ret < 0) 2382 - return ret; 2391 + goto end; 2383 2392 2384 2393 ret = dpcm_be_dai_trigger(fe, substream->stream, cmd); 2385 - return ret; 2394 + goto end; 2386 2395 } 2387 2396 2388 2397 /* call trigger on the frontend after the backend. */ 2389 2398 ret = dpcm_be_dai_trigger(fe, substream->stream, cmd); 2390 2399 if (ret < 0) 2391 - return ret; 2400 + goto end; 2392 2401 2393 2402 dev_dbg(fe->dev, "ASoC: post trigger FE %s cmd %d\n", 2394 2403 fe->dai_link->name, cmd); 2395 2404 2396 2405 ret = soc_pcm_trigger(substream, cmd); 2397 - 2398 - return ret; 2406 + end: 2407 + return snd_soc_ret(fe->dev, ret, "trigger FE cmd: %d failed\n", cmd); 2399 2408 } 2400 2409 2401 2410 static int dpcm_fe_dai_do_trigger(struct snd_pcm_substream *substream, int cmd) ··· 2451 2460 goto out; 2452 2461 } 2453 2462 2454 - if (ret < 0) { 2455 - dev_err(fe->dev, "ASoC: trigger FE cmd: %d failed: %d\n", 2456 - cmd, ret); 2463 + if (ret < 0) 2457 2464 goto out; 2458 - } 2459 2465 2460 2466 switch (cmd) { 2461 2467 case SNDRV_PCM_TRIGGER_START: ··· 2681 2693 if (!fe->dai_link->dynamic) 2682 2694 return 0; 2683 2695 2684 - if (fe->dai_link->num_cpus > 1) { 2685 - dev_err(fe->dev, 2696 + if (fe->dai_link->num_cpus > 1) 2697 + return snd_soc_ret(fe->dev, -EINVAL, 2686 2698 "%s doesn't support Multi CPU yet\n", __func__); 2687 - return -EINVAL; 2688 - } 2689 2699 2690 2700 /* only check active links */ 2691 2701 if (!snd_soc_dai_active(snd_soc_rtd_to_cpu(fe, 0))) ··· 2754 2768 2755 2769 out: 2756 2770 snd_soc_dpcm_mutex_unlock(card); 2757 - return ret; 2771 + 2772 + return snd_soc_ret(card->dev, ret, "%s() failed\n", __func__); 2758 2773 } 2759 2774 EXPORT_SYMBOL_GPL(snd_soc_dpcm_runtime_update); 2760 2775 ··· 2829 2842 int has_capture = 0; 2830 2843 int i; 2831 2844 2832 - if (dai_link->dynamic && dai_link->num_cpus > 1) { 2833 - dev_err(rtd->dev, "DPCM doesn't support Multi CPU for Front-Ends yet\n"); 2834 - return -EINVAL; 2835 - } 2845 + if (dai_link->dynamic && dai_link->num_cpus > 1) 2846 + return snd_soc_ret(rtd->dev, -EINVAL, 2847 + "DPCM doesn't support Multi CPU for Front-Ends yet\n"); 2836 2848 2837 2849 /* Adapt stream for codec2codec links */ 2838 2850 cpu_capture = snd_soc_get_stream_cpu(dai_link, SNDRV_PCM_STREAM_CAPTURE); ··· 2873 2887 if (dai_link->capture_only) 2874 2888 has_playback = 0; 2875 2889 2876 - if (!has_playback && !has_capture) { 2877 - dev_err(rtd->dev, "substream %s has no playback, no capture\n", 2878 - dai_link->stream_name); 2879 - 2880 - return -EINVAL; 2881 - } 2890 + if (!has_playback && !has_capture) 2891 + return snd_soc_ret(rtd->dev, -EINVAL, 2892 + "substream %s has no playback, no capture\n", dai_link->stream_name); 2882 2893 2883 2894 *playback = has_playback; 2884 2895 *capture = has_capture; ··· 2915 2932 ret = snd_pcm_new(rtd->card->snd_card, new_name, rtd->id, playback, 2916 2933 capture, pcm); 2917 2934 } 2918 - if (ret < 0) { 2919 - dev_err(rtd->card->dev, "ASoC: can't create pcm %s for dailink %s: %d\n", 2920 - new_name, rtd->dai_link->name, ret); 2921 - return ret; 2922 - } 2935 + if (ret < 0) 2936 + return snd_soc_ret(rtd->dev, ret, 2937 + "can't create pcm %s for dailink %s\n", new_name, rtd->dai_link->name); 2938 + 2923 2939 dev_dbg(rtd->card->dev, "ASoC: registered pcm #%d %s\n", rtd->id, new_name); 2924 2940 2925 2941 return 0;