summaryrefslogtreecommitdiffstats
path: root/sound/soc/fsl/pcm030-audio-fabric.c
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@gmail.com>2011-12-22 14:04:54 +0100
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-12-22 18:34:32 +0100
commit4c3c5df05e02bfa774517cebc5b91b07c2a365dc (patch)
tree7be8ebf38e89b7b17271fccb7036680b2ac5c4ec /sound/soc/fsl/pcm030-audio-fabric.c
parentASoC: Declare soc_new_pcm() properly (diff)
downloadlinux-4c3c5df05e02bfa774517cebc5b91b07c2a365dc.tar.xz
linux-4c3c5df05e02bfa774517cebc5b91b07c2a365dc.zip
ASoC: fsl: Add .owner to struct snd_soc_card
Missed .owner of struct snd_soc_card will prevent the module from being removed from underneath its users. Reported-by: Lothar Waßmann <LW@KARO-electronics.de> Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/fsl/pcm030-audio-fabric.c')
-rw-r--r--sound/soc/fsl/pcm030-audio-fabric.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/sound/soc/fsl/pcm030-audio-fabric.c b/sound/soc/fsl/pcm030-audio-fabric.c
index ba4d85e317ed..b3af55dcde9d 100644
--- a/sound/soc/fsl/pcm030-audio-fabric.c
+++ b/sound/soc/fsl/pcm030-audio-fabric.c
@@ -31,8 +31,6 @@
#define DRV_NAME "pcm030-audio-fabric"
-static struct snd_soc_card card;
-
static struct snd_soc_dai_link pcm030_fabric_dai[] = {
{
.name = "AC97",
@@ -52,6 +50,13 @@ static struct snd_soc_dai_link pcm030_fabric_dai[] = {
},
};
+static struct snd_soc_card card = {
+ .name = "pcm030",
+ .owner = THIS_MODULE,
+ .dai_link = pcm030_fabric_dai,
+ .num_links = ARRAY_SIZE(pcm030_fabric_dai),
+};
+
static __init int pcm030_fabric_init(void)
{
struct platform_device *pdev;
@@ -60,11 +65,6 @@ static __init int pcm030_fabric_init(void)
if (!of_machine_is_compatible("phytec,pcm030"))
return -ENODEV;
-
- card.name = "pcm030";
- card.dai_link = pcm030_fabric_dai;
- card.num_links = ARRAY_SIZE(pcm030_fabric_dai);
-
pdev = platform_device_alloc("soc-audio", 1);
if (!pdev) {
pr_err("pcm030_fabric_init: platform_device_alloc() failed\n");