Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 64089b84 authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: Register non-AC97 codec DAIs



Currently this is done at module probe time since ASoC ties in codec
device probe to the instantiation of the entire ASoC device. Subsequent
patches will refactor the codec drivers to handle probing separately.
Note that the core does not yet use this information.

AC97 is special since the codec is controlled over the AC97 link but
we want to give the machine driver a chance to set up the system before
trying to instantiate since it may need to do configuration before the
AC97 link will operate

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent 958e792c
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -98,6 +98,18 @@ struct snd_soc_codec_device soc_codec_dev_ad73311 = {
};
EXPORT_SYMBOL_GPL(soc_codec_dev_ad73311);

static int __devinit ad73311_init(void)
{
	return snd_soc_register_dai(&ad73311_dai);
}
module_init(ad73311_init);

static void __exit ad73311_exit(void)
{
	snd_soc_unregister_dai(&ad73311_dai);
}
module_exit(ad73311_exit);

MODULE_DESCRIPTION("ASoC ad73311 driver");
MODULE_AUTHOR("Cliff Cai ");
MODULE_LICENSE("GPL");
+12 −0
Original line number Diff line number Diff line
@@ -688,6 +688,18 @@ struct snd_soc_codec_device soc_codec_dev_ak4535 = {
};
EXPORT_SYMBOL_GPL(soc_codec_dev_ak4535);

static int __devinit ak4535_modinit(void)
{
	return snd_soc_register_dai(&ak4535_dai);
}
module_init(ak4535_modinit);

static void __exit ak4535_exit(void)
{
	snd_soc_unregister_dai(&ak4535_dai);
}
module_exit(ak4535_exit);

MODULE_DESCRIPTION("Soc AK4535 driver");
MODULE_AUTHOR("Richard Purdie");
MODULE_LICENSE("GPL");
+12 −0
Original line number Diff line number Diff line
@@ -774,6 +774,18 @@ struct snd_soc_codec_device soc_codec_device_cs4270 = {
};
EXPORT_SYMBOL_GPL(soc_codec_device_cs4270);

static int __devinit cs4270_init(void)
{
	return snd_soc_register_dai(&cs4270_dai);
}
module_init(cs4270_init);

static void __exit cs4270_exit(void)
{
	snd_soc_unregister_dai(&cs4270_dai);
}
module_exit(cs4270_exit);

MODULE_AUTHOR("Timur Tabi <timur@freescale.com>");
MODULE_DESCRIPTION("Cirrus Logic CS4270 ALSA SoC Codec Driver");
MODULE_LICENSE("GPL");
+12 −0
Original line number Diff line number Diff line
@@ -195,6 +195,18 @@ struct snd_soc_codec_device soc_codec_dev_pcm3008 = {
};
EXPORT_SYMBOL_GPL(soc_codec_dev_pcm3008);

static int __devinit pcm3008_init(void)
{
	return snd_soc_register_dai(&pcm3008_dai);
}
module_init(pcm3008_init);

static void __exit pcm3008_exit(void)
{
	snd_soc_unregister_dai(&pcm3008_dai);
}
module_exit(pcm3008_exit);

MODULE_DESCRIPTION("Soc PCM3008 driver");
MODULE_AUTHOR("Hugo Villeneuve");
MODULE_LICENSE("GPL");
+12 −0
Original line number Diff line number Diff line
@@ -793,6 +793,18 @@ struct snd_soc_codec_device soc_codec_dev_ssm2602 = {
};
EXPORT_SYMBOL_GPL(soc_codec_dev_ssm2602);

static int __devinit ssm2602_modinit(void)
{
	return snd_soc_register_dai(&ssm2602_dai);
}
module_init(ssm2602_modinit);

static void __exit ssm2602_exit(void)
{
	snd_soc_unregister_dai(&ssm2602_dai);
}
module_exit(ssm2602_exit);

MODULE_DESCRIPTION("ASoC ssm2602 driver");
MODULE_AUTHOR("Cliff Cai");
MODULE_LICENSE("GPL");
Loading