[alsa-devel] [PATCH resend 25/47] ASoC: samsung: snow: don't select unnecessary Platform
Marek Szyprowski
m.szyprowski at samsung.com
Mon Jun 24 15:19:04 CEST 2019
Hi
On 2019-06-19 03:18, Kuninori Morimoto wrote:
> From: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
>
> ALSA SoC is now supporting "no Platform". Sound card doesn't need to
> select "CPU component" as "Platform" anymore if it doesn't need
> special Platform.
> This patch removes such settings.
>
> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
This patch causes regression on Samsung Exynos-based boards: Snow,
Peach-Pi and Peach-Pit (all that use snow machine driver) since linux
next-20190620. ASoC device is properly registered, but it is not usable:
[ 3.203006] samsung-i2s 3830000.i2s-sec: DMA channels sourced from
device 3830000.i2s
[ 3.213440] snow-audio sound: Failed parsing codec node
[ 3.423241] snow-audio sound: multicodec <-> samsung-i2s mapping ok
[ 3.429776] max98095 7-0011: ASoC: mux External MIC has no paths
[ 3.434513] max98095 7-0011: ASoC: mux Linein Mux has no paths
[ 4.043488] ALSA device list:
[ 4.047171] #0: Snow-I2S-MAX98095
# speaker-test -l1
speaker-test 1.1.3
Playback device is default
Stream parameters are 48000Hz, S16_LE, 1 channels
Using 16 octaves of pink noise
Playback open error: -22,Invalid argument
#
The kernel logs are exactly the same whem it worked fine (i.e.
next-20190619, so the message about codec node can be ignored).
Similar issue appears also on Hardkernel's OdroidXU board
(Exynos5410-based, uses sound-card-simple ASoC driver) and Samsung TM2
board (Exynos5433, uses tm2_wm5110 driver). I'm open to test any patch
or provide more logs if needed.
> ---
> sound/soc/samsung/snow.c | 10 +++-------
> 1 file changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/sound/soc/samsung/snow.c b/sound/soc/samsung/snow.c
> index 8ea7799..7d669c4 100644
> --- a/sound/soc/samsung/snow.c
> +++ b/sound/soc/samsung/snow.c
> @@ -14,9 +14,9 @@
>
> #define FIN_PLL_RATE 24000000
>
> -SND_SOC_DAILINK_DEFS(links,
> - DAILINK_COMP_ARRAY(COMP_EMPTY()),
> - DAILINK_COMP_ARRAY(COMP_EMPTY()),
> +SND_SOC_DAILINK_DEF(links_cpus,
> + DAILINK_COMP_ARRAY(COMP_EMPTY()));
> +SND_SOC_DAILINK_DEF(links_codecs,
> DAILINK_COMP_ARRAY(COMP_EMPTY()));
>
> struct snow_priv {
> @@ -150,8 +150,6 @@ static int snow_probe(struct platform_device *pdev)
> link->num_cpus = ARRAY_SIZE(links_cpus);
> link->codecs = links_codecs;
> link->num_codecs = ARRAY_SIZE(links_codecs);
> - link->platforms = links_platforms;
> - link->num_platforms = ARRAY_SIZE(links_platforms);
>
> card->dai_link = link;
> card->num_links = 1;
> @@ -207,8 +205,6 @@ static int snow_probe(struct platform_device *pdev)
> }
> }
>
> - link->platforms->of_node = link->cpus->of_node;
> -
> /* Update card-name if provided through DT, else use default name */
> snd_soc_of_parse_card_name(card, "samsung,model");
>
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland
More information about the Alsa-devel
mailing list