418c8f8991
Don't use __init but __devinit to define probe function. A pointer to snd_aica_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_AICA=m the following probably oopses: echo -n AICA > /sys/bus/platform/driver/AICA/unbind echo -n AICA > /sys/bus/platform/driver/AICA/bind Strange enough add_aicamixer_controls which is only called by snd_aica_probe was already using __devinit. While at it move the remove function to .devexit.text section. Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de> Cc: Adrian McMenamin <adrian@mcmen.demon.co.uk> Cc: Paul Mundt <lethal@linux-sh.org> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz> |
||
---|---|---|
.. | ||
aica.c | ||
aica.h | ||
Kconfig | ||
Makefile |