mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-14 02:59:19 -04:00
ASoC: Intel: avs: Permit deferred card registration
Utilize card->deferrable flag to support delayed card enumeration - scenario where snd_soc_register_card() occurs before all the required card components are registered into the framework. Reviewed-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> Link: https://patch.msgid.link/20250404101622.3673850-2-cezary.rojewski@intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
committed by
Mark Brown
parent
a3375522bb
commit
d0e1a832ce
@@ -256,7 +256,7 @@ static int avs_da7219_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_da7219_driver_ids[] = {
|
||||
|
||||
@@ -74,7 +74,7 @@ static int avs_dmic_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_dmic_driver_ids[] = {
|
||||
|
||||
@@ -303,7 +303,7 @@ static int avs_es8336_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_es8336_driver_ids[] = {
|
||||
|
||||
@@ -209,7 +209,7 @@ static int avs_hdaudio_probe(struct platform_device *pdev)
|
||||
if (hda_codec_is_display(codec))
|
||||
card->late_probe = avs_card_late_probe;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_hdaudio_driver_ids[] = {
|
||||
|
||||
@@ -101,7 +101,7 @@ static int avs_i2s_test_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_i2s_test_driver_ids[] = {
|
||||
|
||||
@@ -132,7 +132,7 @@ static int avs_max98357a_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_max98357a_driver_ids[] = {
|
||||
|
||||
@@ -187,7 +187,7 @@ static int avs_max98373_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_max98373_driver_ids[] = {
|
||||
|
||||
@@ -184,7 +184,7 @@ static int avs_max98927_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_max98927_driver_ids[] = {
|
||||
|
||||
@@ -290,7 +290,7 @@ static int avs_nau8825_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_nau8825_driver_ids[] = {
|
||||
|
||||
@@ -116,7 +116,7 @@ static int avs_pcm3168a_probe(struct platform_device *pdev)
|
||||
card->num_dapm_routes = ARRAY_SIZE(card_routes);
|
||||
card->fully_routed = true;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_pcm3168a_driver_ids[] = {
|
||||
|
||||
@@ -47,7 +47,7 @@ static int avs_probe_mb_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_probe_mb_driver_ids[] = {
|
||||
|
||||
@@ -254,7 +254,7 @@ static int avs_rt274_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_rt274_driver_ids[] = {
|
||||
|
||||
@@ -224,7 +224,7 @@ static int avs_rt286_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_rt286_driver_ids[] = {
|
||||
|
||||
@@ -243,7 +243,7 @@ static int avs_rt298_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_rt298_driver_ids[] = {
|
||||
|
||||
@@ -170,7 +170,7 @@ static int avs_rt5514_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_rt5514_driver_ids[] = {
|
||||
|
||||
@@ -242,7 +242,7 @@ static int avs_rt5663_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_rt5663_driver_ids[] = {
|
||||
|
||||
@@ -318,7 +318,7 @@ static int avs_rt5682_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_rt5682_driver_ids[] = {
|
||||
|
||||
@@ -173,7 +173,7 @@ static int avs_ssm4567_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return devm_snd_soc_register_card(dev, card);
|
||||
return devm_snd_soc_register_deferrable_card(dev, card);
|
||||
}
|
||||
|
||||
static const struct platform_device_id avs_ssm4567_driver_ids[] = {
|
||||
|
||||
Reference in New Issue
Block a user