[PATCH v2 6/7] ASoC: mediatek: mt8188-mt6359: support new board with nau88255

Alexandre Mergnat amergnat at baylibre.com
Wed May 24 08:51:46 PDT 2023


On 23/05/2023 04:19, Trevor Wu wrote:
>   	card_data = (struct mt8188_card_data *)of_device_get_match_data(&pdev->dev);
> @@ -776,9 +1066,38 @@ static int mt8188_mt6359_dev_probe(struct platform_device *pdev)
>   				dai_link->init = mt8188_mt6359_init;
>   				init_mt6359 = true;
>   			}
> +		} else if (strcmp(dai_link->name, "ETDM1_OUT_BE") == 0 ||
> +			   strcmp(dai_link->name, "ETDM2_OUT_BE") == 0 ||
> +			   strcmp(dai_link->name, "ETDM1_IN_BE") == 0 ||
> +			   strcmp(dai_link->name, "ETDM2_IN_BE") == 0) {
> +			if (!strcmp(dai_link->codecs->dai_name, MAX98390_CODEC_DAI)) {
> +				dai_link->ops = &mt8188_max98390_ops;
> +				if (init_max98390)
> +					continue;

I prefer that you do like your patch [PATCH v2 1/7] to be consistent
and easy to read.

+			if (!init_mt6359) {
+				dai_link->init = mt8188_mt6359_init;
+				init_mt6359 = true;
+			}

> +
> +				dai_link->init = mt8188_max98390_codec_init;
> +				init_max98390 = true;
> +			} else if (!strcmp(dai_link->codecs->dai_name, NAU8825_CODEC_DAI)) {
> +				dai_link->ops = &mt8188_nau8825_ops;
> +				if (init_nau8825)
> +					continue;

ditto

> +
> +				dai_link->init = mt8188_nau8825_codec_init;
> +				dai_link->exit = mt8188_nau8825_codec_exit;
> +				init_nau8825 = true;
> +			} else {
> +				if (strcmp(dai_link->codecs->dai_name, "snd-soc-dummy-dai")) {

Shouldn't be with a NOT operator ("!") ?
+ if (!strcmp(dai_link->codecs->dai_name, "snd-soc-dummy-dai")) {


> +					if (init_dumb)
> +						continue;

ditto

> +
> +					dai_link->init = mt8188_dumb_amp_init;
> +					init_dumb = true;
> +				}
> +			}
>   		}
>   	}
>   
> +	priv->private_data = card_data;
>   	snd_soc_card_set_drvdata(card, priv);
>   
>   	ret = devm_snd_soc_register_card(&pdev->dev, card);
> @@ -795,11 +1114,20 @@ static struct mt8188_card_data mt8188_evb_card = {
>   	.name = "mt8188_mt6359",
>   };
>   
> +static struct mt8188_card_data mt8188_nau8825_card = {
> +	.name = "mt8188_nau8825",
> +	.quirk = NAU8825_HS_PRESENT,
> +};
> +
>   static const struct of_device_id mt8188_mt6359_dt_match[] = {
>   	{
>   		.compatible = "mediatek,mt8188-mt6359-evb",
>   		.data = &mt8188_evb_card,
>   	},
> +	{
> +		.compatible = "mediatek,mt8188-nau8825",
> +		.data = &mt8188_nau8825_card,
> +	},
>   	{},
>   };
>   MODULE_DEVICE_TABLE(of, mt8188_mt6359_dt_match);

-- 
Regards,
Alexandre




More information about the Linux-mediatek mailing list