[alsa-devel] [RESEND, PATCH] Fix section for sa11xx-uda1341 platform driver

Uwe Kleine-König ukleinek at informatik.uni-freiburg.de
Mon Sep 8 20:51:23 CEST 2008

Don't use __init but __devinit to define probe function.  A pointer to
sa11xx_uda1341_probe is passed to the core via platform_driver_register and
so the function must not disappear after the module is loaded.  Using __init
and having HOTPLUG=y and SND_SA11XX_UDA1341=m the following probably oopses:

	echo -n sa11xx_uda1341.1 > /sys/bus/platform/driver/sa11xx_uda1341/unbind
	echo -n sa11xx_uda1341.1 > /sys/bus/platform/driver/sa11xx_uda1341/bind

Signed-off-by: Uwe Kleine-König <ukleinek at informatik.uni-freiburg.de>
Cc: Russell King <rmk+kernel at arm.linux.org.uk>
Cc: Jaroslav Kysela <perex at perex.cz>
Cc: Brian Avery <b.avery at hp.com>
Cc: alsa-devel at alsa-project.org
Cc: Andrew Morton <akpm at linux-foundation.org>


uups, I forgot to add the right cc:.  Sorry.

@Andrew,  I have a few more patches of this type pending.  Is it OK for
you if they go via you?  This would ease the process a bit for me.


 sound/arm/sa11xx-uda1341.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sound/arm/sa11xx-uda1341.c b/sound/arm/sa11xx-uda1341.c
index b9c51bf..da25b41 100644
--- a/sound/arm/sa11xx-uda1341.c
+++ b/sound/arm/sa11xx-uda1341.c
@@ -879,7 +879,7 @@ void snd_sa11xx_uda1341_free(struct snd_card *card)
-static int __init sa11xx_uda1341_probe(struct platform_device *devptr)
+static int __devinit sa11xx_uda1341_probe(struct platform_device *devptr)
 	int err;
 	struct snd_card *card;
tg: (7686ad5..) t/sectionfixes/sa11xx_uda1341 (depends on: t/sectionfixes/sa11xx_uda1341)

Uwe Kleine-König


More information about the Alsa-devel mailing list