From 788c6043335590e0a483fdc18f85b1405a157bf9 Mon Sep 17 00:00:00 2001 From: Prarit Bhargava Date: Tue, 13 Feb 2007 13:11:11 +0100 Subject: [ALSA] Fix __devinit and __devexit issues with sound drivers Fix __devinit and __devexit issues with sound drivers. Resolves MODPOST warnings similar to: WARNING: sound/drivers/snd-dummy.o - Section mismatch: reference to .init.text:snd_dummy_probe from .data.rel.local between 'snd_dummy_driver' (at offset 0x0) and 'snd_dummy_controls' WARNING: sound/drivers/snd-mtpav.o - Section mismatch: reference to .init.text:snd_mtpav_probe from .data.rel.local between 'snd_mtpav_driver' (at offset 0x0) and 'snd_mtpav_input' WARNING: sound/drivers/snd-virmidi.o - Section mismatch: reference to .init.text:snd_virmidi_probe from .data.rel.local after 'snd_virmidi_driver' (at offset 0x0) Signed-off-by: Prarit Bhargava Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela --- sound/drivers/dummy.c | 11 ++++++----- sound/drivers/mtpav.c | 12 ++++++------ sound/drivers/mts64.c | 6 +++--- sound/drivers/portman2x4.c | 6 +++--- sound/drivers/serial-u16550.c | 14 +++++++------- sound/drivers/virmidi.c | 6 +++--- 6 files changed, 28 insertions(+), 27 deletions(-) (limited to 'sound/drivers') diff --git a/sound/drivers/dummy.c b/sound/drivers/dummy.c index 8339bad969b..a0f28f51fc7 100644 --- a/sound/drivers/dummy.c +++ b/sound/drivers/dummy.c @@ -423,7 +423,8 @@ static struct snd_pcm_ops snd_card_dummy_capture_ops = { .pointer = snd_card_dummy_pcm_pointer, }; -static int __init snd_card_dummy_pcm(struct snd_dummy *dummy, int device, int substreams) +static int __devinit snd_card_dummy_pcm(struct snd_dummy *dummy, int device, + int substreams) { struct snd_pcm *pcm; int err; @@ -562,7 +563,7 @@ DUMMY_VOLUME("CD Volume", 0, MIXER_ADDR_CD), DUMMY_CAPSRC("CD Capture Switch", 0, MIXER_ADDR_CD) }; -static int __init snd_card_dummy_new_mixer(struct snd_dummy *dummy) +static int __devinit snd_card_dummy_new_mixer(struct snd_dummy *dummy) { struct snd_card *card = dummy->card; unsigned int idx; @@ -579,7 +580,7 @@ static int __init snd_card_dummy_new_mixer(struct snd_dummy *dummy) return 0; } -static int __init snd_dummy_probe(struct platform_device *devptr) +static int __devinit snd_dummy_probe(struct platform_device *devptr) { struct snd_card *card; struct snd_dummy *dummy; @@ -617,7 +618,7 @@ static int __init snd_dummy_probe(struct platform_device *devptr) return err; } -static int snd_dummy_remove(struct platform_device *devptr) +static int __devexit snd_dummy_remove(struct platform_device *devptr) { snd_card_free(platform_get_drvdata(devptr)); platform_set_drvdata(devptr, NULL); @@ -648,7 +649,7 @@ static int snd_dummy_resume(struct platform_device *pdev) static struct platform_driver snd_dummy_driver = { .probe = snd_dummy_probe, - .remove = snd_dummy_remove, + .remove = __devexit_p(snd_dummy_remove), #ifdef CONFIG_PM .suspend = snd_dummy_suspend, .resume = snd_dummy_resume, diff --git a/sound/drivers/mtpav.c b/sound/drivers/mtpav.c index a9ff391258e..40eb026c86e 100644 --- a/sound/drivers/mtpav.c +++ b/sound/drivers/mtpav.c @@ -583,7 +583,7 @@ static irqreturn_t snd_mtpav_irqh(int irq, void *dev_id) /* * get ISA resources */ -static int __init snd_mtpav_get_ISA(struct mtpav * mcard) +static int __devinit snd_mtpav_get_ISA(struct mtpav * mcard) { if ((mcard->res_port = request_region(port, 3, "MotuMTPAV MIDI")) == NULL) { snd_printk("MTVAP port 0x%lx is busy\n", port); @@ -619,7 +619,7 @@ static struct snd_rawmidi_ops snd_mtpav_input = { * get RAWMIDI resources */ -static void __init snd_mtpav_set_name(struct mtpav *chip, +static void __devinit snd_mtpav_set_name(struct mtpav *chip, struct snd_rawmidi_substream *substream) { if (substream->number >= 0 && substream->number < chip->num_ports) @@ -634,7 +634,7 @@ static void __init snd_mtpav_set_name(struct mtpav *chip, strcpy(substream->name, "MTP broadcast"); } -static int __init snd_mtpav_get_RAWMIDI(struct mtpav *mcard) +static int __devinit snd_mtpav_get_RAWMIDI(struct mtpav *mcard) { int rval; struct snd_rawmidi *rawmidi; @@ -691,7 +691,7 @@ static void snd_mtpav_free(struct snd_card *card) /* */ -static int __init snd_mtpav_probe(struct platform_device *dev) +static int __devinit snd_mtpav_probe(struct platform_device *dev) { struct snd_card *card; int err; @@ -745,7 +745,7 @@ static int __init snd_mtpav_probe(struct platform_device *dev) return err; } -static int snd_mtpav_remove(struct platform_device *devptr) +static int __devexit snd_mtpav_remove(struct platform_device *devptr) { snd_card_free(platform_get_drvdata(devptr)); platform_set_drvdata(devptr, NULL); @@ -756,7 +756,7 @@ static int snd_mtpav_remove(struct platform_device *devptr) static struct platform_driver snd_mtpav_driver = { .probe = snd_mtpav_probe, - .remove = snd_mtpav_remove, + .remove = __devexit_p(snd_mtpav_remove), .driver = { .name = SND_MTPAV_DRIVER }, diff --git a/sound/drivers/mts64.c b/sound/drivers/mts64.c index 5327c6f841f..6c9f4c9bfeb 100644 --- a/sound/drivers/mts64.c +++ b/sound/drivers/mts64.c @@ -1026,7 +1026,7 @@ __err: return err; } -static int snd_mts64_remove(struct platform_device *pdev) +static int __devexit snd_mts64_remove(struct platform_device *pdev) { struct snd_card *card = platform_get_drvdata(pdev); @@ -1039,7 +1039,7 @@ static int snd_mts64_remove(struct platform_device *pdev) static struct platform_driver snd_mts64_driver = { .probe = snd_mts64_probe, - .remove = snd_mts64_remove, + .remove = __devexit_p(snd_mts64_remove), .driver = { .name = PLATFORM_DRIVER } @@ -1048,7 +1048,7 @@ static struct platform_driver snd_mts64_driver = { /********************************************************************* * module init stuff *********************************************************************/ -static void snd_mts64_unregister_all(void) +static void __init_or_module snd_mts64_unregister_all(void) { int i; diff --git a/sound/drivers/portman2x4.c b/sound/drivers/portman2x4.c index 6c48772aaef..b43d4c96ed1 100644 --- a/sound/drivers/portman2x4.c +++ b/sound/drivers/portman2x4.c @@ -811,7 +811,7 @@ __err: return err; } -static int snd_portman_remove(struct platform_device *pdev) +static int __devexit snd_portman_remove(struct platform_device *pdev) { struct snd_card *card = platform_get_drvdata(pdev); @@ -824,7 +824,7 @@ static int snd_portman_remove(struct platform_device *pdev) static struct platform_driver snd_portman_driver = { .probe = snd_portman_probe, - .remove = snd_portman_remove, + .remove = __dev_exit_p(snd_portman_remove), .driver = { .name = PLATFORM_DRIVER } @@ -833,7 +833,7 @@ static struct platform_driver snd_portman_driver = { /********************************************************************* * module init stuff *********************************************************************/ -static void snd_portman_unregister_all(void) +static void __init_or_module snd_portman_unregister_all(void) { int i; diff --git a/sound/drivers/serial-u16550.c b/sound/drivers/serial-u16550.c index 3a86a582072..838a4277929 100644 --- a/sound/drivers/serial-u16550.c +++ b/sound/drivers/serial-u16550.c @@ -327,7 +327,7 @@ static void snd_uart16550_buffer_timer(unsigned long data) * return 0 if found * return negative error if not found */ -static int __init snd_uart16550_detect(struct snd_uart16550 *uart) +static int __devinit snd_uart16550_detect(struct snd_uart16550 *uart) { unsigned long io_base = uart->base; int ok; @@ -781,7 +781,7 @@ static int snd_uart16550_dev_free(struct snd_device *device) return snd_uart16550_free(uart); } -static int __init snd_uart16550_create(struct snd_card *card, +static int __devinit snd_uart16550_create(struct snd_card *card, unsigned long iobase, int irq, unsigned int speed, @@ -860,7 +860,7 @@ static int __init snd_uart16550_create(struct snd_card *card, return 0; } -static void __init snd_uart16550_substreams(struct snd_rawmidi_str *stream) +static void __devinit snd_uart16550_substreams(struct snd_rawmidi_str *stream) { struct snd_rawmidi_substream *substream; @@ -869,7 +869,7 @@ static void __init snd_uart16550_substreams(struct snd_rawmidi_str *stream) } } -static int __init snd_uart16550_rmidi(struct snd_uart16550 *uart, int device, +static int __devinit snd_uart16550_rmidi(struct snd_uart16550 *uart, int device, int outs, int ins, struct snd_rawmidi **rmidi) { @@ -896,7 +896,7 @@ static int __init snd_uart16550_rmidi(struct snd_uart16550 *uart, int device, return 0; } -static int __init snd_serial_probe(struct platform_device *devptr) +static int __devinit snd_serial_probe(struct platform_device *devptr) { struct snd_card *card; struct snd_uart16550 *uart; @@ -981,7 +981,7 @@ static int __init snd_serial_probe(struct platform_device *devptr) return err; } -static int snd_serial_remove(struct platform_device *devptr) +static int __devexit snd_serial_remove(struct platform_device *devptr) { snd_card_free(platform_get_drvdata(devptr)); platform_set_drvdata(devptr, NULL); @@ -992,7 +992,7 @@ static int snd_serial_remove(struct platform_device *devptr) static struct platform_driver snd_serial_driver = { .probe = snd_serial_probe, - .remove = snd_serial_remove, + .remove = __devexit_p( snd_serial_remove), .driver = { .name = SND_SERIAL_DRIVER }, diff --git a/sound/drivers/virmidi.c b/sound/drivers/virmidi.c index 59171f8200d..70e70baa3bc 100644 --- a/sound/drivers/virmidi.c +++ b/sound/drivers/virmidi.c @@ -85,7 +85,7 @@ struct snd_card_virmidi { static struct platform_device *devices[SNDRV_CARDS]; -static int __init snd_virmidi_probe(struct platform_device *devptr) +static int __devinit snd_virmidi_probe(struct platform_device *devptr) { struct snd_card *card; struct snd_card_virmidi *vmidi; @@ -129,7 +129,7 @@ static int __init snd_virmidi_probe(struct platform_device *devptr) return err; } -static int snd_virmidi_remove(struct platform_device *devptr) +static int __devexit snd_virmidi_remove(struct platform_device *devptr) { snd_card_free(platform_get_drvdata(devptr)); platform_set_drvdata(devptr, NULL); @@ -140,7 +140,7 @@ static int snd_virmidi_remove(struct platform_device *devptr) static struct platform_driver snd_virmidi_driver = { .probe = snd_virmidi_probe, - .remove = snd_virmidi_remove, + .remove = __devexit_p(snd_virmidi_remove), .driver = { .name = SND_VIRMIDI_DRIVER }, -- cgit v1.2.3