diff options
author | Prarit Bhargava <prarit@redhat.com> | 2007-02-13 07:11:11 -0500 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2007-02-14 02:38:28 -0500 |
commit | 788c6043335590e0a483fdc18f85b1405a157bf9 (patch) | |
tree | 23e24335e62ba0f692da4707933c7680e94fa1d8 /sound/isa | |
parent | 46f02ca36e9b2b690ebcef18fa0652c586d6c08e (diff) |
[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 <prarit@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/isa')
-rw-r--r-- | sound/isa/ad1848/ad1848.c | 2 | ||||
-rw-r--r-- | sound/isa/cmi8330.c | 4 | ||||
-rw-r--r-- | sound/isa/es1688/es1688.c | 6 | ||||
-rw-r--r-- | sound/isa/gus/gusclassic.c | 10 | ||||
-rw-r--r-- | sound/isa/gus/gusextreme.c | 12 | ||||
-rw-r--r-- | sound/isa/gus/gusmax.c | 13 | ||||
-rw-r--r-- | sound/isa/opl3sa2.c | 4 | ||||
-rw-r--r-- | sound/isa/sb/sb8.c | 6 |
8 files changed, 29 insertions, 28 deletions
diff --git a/sound/isa/ad1848/ad1848.c b/sound/isa/ad1848/ad1848.c index 99908e44124d..74e501dea8b1 100644 --- a/sound/isa/ad1848/ad1848.c +++ b/sound/isa/ad1848/ad1848.c | |||
@@ -65,7 +65,7 @@ MODULE_PARM_DESC(thinkpad, "Enable only for the onboard CS4248 of IBM Thinkpad 3 | |||
65 | static struct platform_device *devices[SNDRV_CARDS]; | 65 | static struct platform_device *devices[SNDRV_CARDS]; |
66 | 66 | ||
67 | 67 | ||
68 | static int __init snd_ad1848_probe(struct platform_device *pdev) | 68 | static int __devinit snd_ad1848_probe(struct platform_device *pdev) |
69 | { | 69 | { |
70 | int dev = pdev->id; | 70 | int dev = pdev->id; |
71 | struct snd_card *card; | 71 | struct snd_card *card; |
diff --git a/sound/isa/cmi8330.c b/sound/isa/cmi8330.c index d1f6dfcec46e..c09a8009d2fa 100644 --- a/sound/isa/cmi8330.c +++ b/sound/isa/cmi8330.c | |||
@@ -574,7 +574,7 @@ static int __devinit snd_cmi8330_nonpnp_probe(struct platform_device *pdev) | |||
574 | return 0; | 574 | return 0; |
575 | } | 575 | } |
576 | 576 | ||
577 | static int snd_cmi8330_nonpnp_remove(struct platform_device *devptr) | 577 | static int __devexit snd_cmi8330_nonpnp_remove(struct platform_device *devptr) |
578 | { | 578 | { |
579 | snd_card_free(platform_get_drvdata(devptr)); | 579 | snd_card_free(platform_get_drvdata(devptr)); |
580 | platform_set_drvdata(devptr, NULL); | 580 | platform_set_drvdata(devptr, NULL); |
@@ -597,7 +597,7 @@ static int snd_cmi8330_nonpnp_resume(struct platform_device *dev) | |||
597 | 597 | ||
598 | static struct platform_driver snd_cmi8330_driver = { | 598 | static struct platform_driver snd_cmi8330_driver = { |
599 | .probe = snd_cmi8330_nonpnp_probe, | 599 | .probe = snd_cmi8330_nonpnp_probe, |
600 | .remove = snd_cmi8330_nonpnp_remove, | 600 | .remove = __devexit_p(snd_cmi8330_nonpnp_remove), |
601 | #ifdef CONFIG_PM | 601 | #ifdef CONFIG_PM |
602 | .suspend = snd_cmi8330_nonpnp_suspend, | 602 | .suspend = snd_cmi8330_nonpnp_suspend, |
603 | .resume = snd_cmi8330_nonpnp_resume, | 603 | .resume = snd_cmi8330_nonpnp_resume, |
diff --git a/sound/isa/es1688/es1688.c b/sound/isa/es1688/es1688.c index 7f29f56e405b..65f97ff4eef1 100644 --- a/sound/isa/es1688/es1688.c +++ b/sound/isa/es1688/es1688.c | |||
@@ -73,7 +73,7 @@ static struct platform_device *devices[SNDRV_CARDS]; | |||
73 | 73 | ||
74 | #define PFX "es1688: " | 74 | #define PFX "es1688: " |
75 | 75 | ||
76 | static int __init snd_es1688_probe(struct platform_device *pdev) | 76 | static int __devinit snd_es1688_probe(struct platform_device *pdev) |
77 | { | 77 | { |
78 | int dev = pdev->id; | 78 | int dev = pdev->id; |
79 | static int possible_irqs[] = {5, 9, 10, 7, -1}; | 79 | static int possible_irqs[] = {5, 9, 10, 7, -1}; |
@@ -171,7 +171,7 @@ static int __init snd_es1688_probe(struct platform_device *pdev) | |||
171 | return err; | 171 | return err; |
172 | } | 172 | } |
173 | 173 | ||
174 | static int snd_es1688_remove(struct platform_device *devptr) | 174 | static int __devexit snd_es1688_remove(struct platform_device *devptr) |
175 | { | 175 | { |
176 | snd_card_free(platform_get_drvdata(devptr)); | 176 | snd_card_free(platform_get_drvdata(devptr)); |
177 | platform_set_drvdata(devptr, NULL); | 177 | platform_set_drvdata(devptr, NULL); |
@@ -182,7 +182,7 @@ static int snd_es1688_remove(struct platform_device *devptr) | |||
182 | 182 | ||
183 | static struct platform_driver snd_es1688_driver = { | 183 | static struct platform_driver snd_es1688_driver = { |
184 | .probe = snd_es1688_probe, | 184 | .probe = snd_es1688_probe, |
185 | .remove = snd_es1688_remove, | 185 | .remove = __devexit_p(snd_es1688_remove), |
186 | /* FIXME: suspend/resume */ | 186 | /* FIXME: suspend/resume */ |
187 | .driver = { | 187 | .driver = { |
188 | .name = ES1688_DRIVER | 188 | .name = ES1688_DRIVER |
diff --git a/sound/isa/gus/gusclassic.c b/sound/isa/gus/gusclassic.c index 37057a37dc30..0395e2e0dd03 100644 --- a/sound/isa/gus/gusclassic.c +++ b/sound/isa/gus/gusclassic.c | |||
@@ -76,7 +76,7 @@ static struct platform_device *devices[SNDRV_CARDS]; | |||
76 | 76 | ||
77 | #define PFX "gusclassic: " | 77 | #define PFX "gusclassic: " |
78 | 78 | ||
79 | static int __init snd_gusclassic_detect(struct snd_gus_card * gus) | 79 | static int __devinit snd_gusclassic_detect(struct snd_gus_card * gus) |
80 | { | 80 | { |
81 | unsigned char d; | 81 | unsigned char d; |
82 | 82 | ||
@@ -95,7 +95,7 @@ static int __init snd_gusclassic_detect(struct snd_gus_card * gus) | |||
95 | return 0; | 95 | return 0; |
96 | } | 96 | } |
97 | 97 | ||
98 | static void __init snd_gusclassic_init(int dev, struct snd_gus_card * gus) | 98 | static void __devinit snd_gusclassic_init(int dev, struct snd_gus_card * gus) |
99 | { | 99 | { |
100 | gus->equal_irq = 0; | 100 | gus->equal_irq = 0; |
101 | gus->codec_flag = 0; | 101 | gus->codec_flag = 0; |
@@ -103,7 +103,7 @@ static void __init snd_gusclassic_init(int dev, struct snd_gus_card * gus) | |||
103 | gus->joystick_dac = joystick_dac[dev]; | 103 | gus->joystick_dac = joystick_dac[dev]; |
104 | } | 104 | } |
105 | 105 | ||
106 | static int __init snd_gusclassic_probe(struct platform_device *pdev) | 106 | static int __devinit snd_gusclassic_probe(struct platform_device *pdev) |
107 | { | 107 | { |
108 | int dev = pdev->id; | 108 | int dev = pdev->id; |
109 | static int possible_irqs[] = {5, 11, 12, 9, 7, 15, 3, 4, -1}; | 109 | static int possible_irqs[] = {5, 11, 12, 9, 7, 15, 3, 4, -1}; |
@@ -211,7 +211,7 @@ static int __init snd_gusclassic_probe(struct platform_device *pdev) | |||
211 | return err; | 211 | return err; |
212 | } | 212 | } |
213 | 213 | ||
214 | static int snd_gusclassic_remove(struct platform_device *devptr) | 214 | static int __devexit snd_gusclassic_remove(struct platform_device *devptr) |
215 | { | 215 | { |
216 | snd_card_free(platform_get_drvdata(devptr)); | 216 | snd_card_free(platform_get_drvdata(devptr)); |
217 | platform_set_drvdata(devptr, NULL); | 217 | platform_set_drvdata(devptr, NULL); |
@@ -222,7 +222,7 @@ static int snd_gusclassic_remove(struct platform_device *devptr) | |||
222 | 222 | ||
223 | static struct platform_driver snd_gusclassic_driver = { | 223 | static struct platform_driver snd_gusclassic_driver = { |
224 | .probe = snd_gusclassic_probe, | 224 | .probe = snd_gusclassic_probe, |
225 | .remove = snd_gusclassic_remove, | 225 | .remove = __devexit_p(snd_gusclassic_remove), |
226 | /* FIXME: suspend/resume */ | 226 | /* FIXME: suspend/resume */ |
227 | .driver = { | 227 | .driver = { |
228 | .name = GUSCLASSIC_DRIVER | 228 | .name = GUSCLASSIC_DRIVER |
diff --git a/sound/isa/gus/gusextreme.c b/sound/isa/gus/gusextreme.c index 532c56e35ca4..4f55fc3e66c1 100644 --- a/sound/isa/gus/gusextreme.c +++ b/sound/isa/gus/gusextreme.c | |||
@@ -92,7 +92,7 @@ static struct platform_device *devices[SNDRV_CARDS]; | |||
92 | 92 | ||
93 | #define PFX "gusextreme: " | 93 | #define PFX "gusextreme: " |
94 | 94 | ||
95 | static int __init snd_gusextreme_detect(int dev, | 95 | static int __devinit snd_gusextreme_detect(int dev, |
96 | struct snd_card *card, | 96 | struct snd_card *card, |
97 | struct snd_gus_card * gus, | 97 | struct snd_gus_card * gus, |
98 | struct snd_es1688 *es1688) | 98 | struct snd_es1688 *es1688) |
@@ -142,12 +142,12 @@ static int __init snd_gusextreme_detect(int dev, | |||
142 | return 0; | 142 | return 0; |
143 | } | 143 | } |
144 | 144 | ||
145 | static void __init snd_gusextreme_init(int dev, struct snd_gus_card * gus) | 145 | static void __devinit snd_gusextreme_init(int dev, struct snd_gus_card * gus) |
146 | { | 146 | { |
147 | gus->joystick_dac = joystick_dac[dev]; | 147 | gus->joystick_dac = joystick_dac[dev]; |
148 | } | 148 | } |
149 | 149 | ||
150 | static int __init snd_gusextreme_mixer(struct snd_es1688 *chip) | 150 | static int __devinit snd_gusextreme_mixer(struct snd_es1688 *chip) |
151 | { | 151 | { |
152 | struct snd_card *card = chip->card; | 152 | struct snd_card *card = chip->card; |
153 | struct snd_ctl_elem_id id1, id2; | 153 | struct snd_ctl_elem_id id1, id2; |
@@ -169,7 +169,7 @@ static int __init snd_gusextreme_mixer(struct snd_es1688 *chip) | |||
169 | return 0; | 169 | return 0; |
170 | } | 170 | } |
171 | 171 | ||
172 | static int __init snd_gusextreme_probe(struct platform_device *pdev) | 172 | static int __devinit snd_gusextreme_probe(struct platform_device *pdev) |
173 | { | 173 | { |
174 | int dev = pdev->id; | 174 | int dev = pdev->id; |
175 | static int possible_ess_irqs[] = {5, 9, 10, 7, -1}; | 175 | static int possible_ess_irqs[] = {5, 9, 10, 7, -1}; |
@@ -321,7 +321,7 @@ static int __init snd_gusextreme_probe(struct platform_device *pdev) | |||
321 | return err; | 321 | return err; |
322 | } | 322 | } |
323 | 323 | ||
324 | static int snd_gusextreme_remove(struct platform_device *devptr) | 324 | static int __devexit snd_gusextreme_remove(struct platform_device *devptr) |
325 | { | 325 | { |
326 | snd_card_free(platform_get_drvdata(devptr)); | 326 | snd_card_free(platform_get_drvdata(devptr)); |
327 | platform_set_drvdata(devptr, NULL); | 327 | platform_set_drvdata(devptr, NULL); |
@@ -332,7 +332,7 @@ static int snd_gusextreme_remove(struct platform_device *devptr) | |||
332 | 332 | ||
333 | static struct platform_driver snd_gusextreme_driver = { | 333 | static struct platform_driver snd_gusextreme_driver = { |
334 | .probe = snd_gusextreme_probe, | 334 | .probe = snd_gusextreme_probe, |
335 | .remove = snd_gusextreme_remove, | 335 | .remove = __devexit_p(snd_gusextreme_remove), |
336 | /* FIXME: suspend/resume */ | 336 | /* FIXME: suspend/resume */ |
337 | .driver = { | 337 | .driver = { |
338 | .name = GUSEXTREME_DRIVER | 338 | .name = GUSEXTREME_DRIVER |
diff --git a/sound/isa/gus/gusmax.c b/sound/isa/gus/gusmax.c index c1c69e3cbfd0..d1ad90ca035d 100644 --- a/sound/isa/gus/gusmax.c +++ b/sound/isa/gus/gusmax.c | |||
@@ -85,7 +85,7 @@ struct snd_gusmax { | |||
85 | 85 | ||
86 | #define PFX "gusmax: " | 86 | #define PFX "gusmax: " |
87 | 87 | ||
88 | static int __init snd_gusmax_detect(struct snd_gus_card * gus) | 88 | static int __devinit snd_gusmax_detect(struct snd_gus_card * gus) |
89 | { | 89 | { |
90 | unsigned char d; | 90 | unsigned char d; |
91 | 91 | ||
@@ -127,7 +127,8 @@ static irqreturn_t snd_gusmax_interrupt(int irq, void *dev_id) | |||
127 | return IRQ_RETVAL(handled); | 127 | return IRQ_RETVAL(handled); |
128 | } | 128 | } |
129 | 129 | ||
130 | static void __init snd_gusmax_init(int dev, struct snd_card *card, struct snd_gus_card * gus) | 130 | static void __devinit snd_gusmax_init(int dev, struct snd_card *card, |
131 | struct snd_gus_card * gus) | ||
131 | { | 132 | { |
132 | gus->equal_irq = 1; | 133 | gus->equal_irq = 1; |
133 | gus->codec_flag = 1; | 134 | gus->codec_flag = 1; |
@@ -145,7 +146,7 @@ static void __init snd_gusmax_init(int dev, struct snd_card *card, struct snd_gu | |||
145 | #define CS4231_PRIVATE( left, right, shift, mute ) \ | 146 | #define CS4231_PRIVATE( left, right, shift, mute ) \ |
146 | ((left << 24)|(right << 16)|(shift<<8)|mute) | 147 | ((left << 24)|(right << 16)|(shift<<8)|mute) |
147 | 148 | ||
148 | static int __init snd_gusmax_mixer(struct snd_cs4231 *chip) | 149 | static int __devinit snd_gusmax_mixer(struct snd_cs4231 *chip) |
149 | { | 150 | { |
150 | struct snd_card *card = chip->card; | 151 | struct snd_card *card = chip->card; |
151 | struct snd_ctl_elem_id id1, id2; | 152 | struct snd_ctl_elem_id id1, id2; |
@@ -204,7 +205,7 @@ static void snd_gusmax_free(struct snd_card *card) | |||
204 | free_irq(maxcard->irq, (void *)maxcard); | 205 | free_irq(maxcard->irq, (void *)maxcard); |
205 | } | 206 | } |
206 | 207 | ||
207 | static int __init snd_gusmax_probe(struct platform_device *pdev) | 208 | static int __devinit snd_gusmax_probe(struct platform_device *pdev) |
208 | { | 209 | { |
209 | int dev = pdev->id; | 210 | int dev = pdev->id; |
210 | static int possible_irqs[] = {5, 11, 12, 9, 7, 15, 3, -1}; | 211 | static int possible_irqs[] = {5, 11, 12, 9, 7, 15, 3, -1}; |
@@ -348,7 +349,7 @@ static int __init snd_gusmax_probe(struct platform_device *pdev) | |||
348 | return err; | 349 | return err; |
349 | } | 350 | } |
350 | 351 | ||
351 | static int snd_gusmax_remove(struct platform_device *devptr) | 352 | static int __devexit snd_gusmax_remove(struct platform_device *devptr) |
352 | { | 353 | { |
353 | snd_card_free(platform_get_drvdata(devptr)); | 354 | snd_card_free(platform_get_drvdata(devptr)); |
354 | platform_set_drvdata(devptr, NULL); | 355 | platform_set_drvdata(devptr, NULL); |
@@ -359,7 +360,7 @@ static int snd_gusmax_remove(struct platform_device *devptr) | |||
359 | 360 | ||
360 | static struct platform_driver snd_gusmax_driver = { | 361 | static struct platform_driver snd_gusmax_driver = { |
361 | .probe = snd_gusmax_probe, | 362 | .probe = snd_gusmax_probe, |
362 | .remove = snd_gusmax_remove, | 363 | .remove = __devexit_p(snd_gusmax_remove), |
363 | /* FIXME: suspend/resume */ | 364 | /* FIXME: suspend/resume */ |
364 | .driver = { | 365 | .driver = { |
365 | .name = GUSMAX_DRIVER | 366 | .name = GUSMAX_DRIVER |
diff --git a/sound/isa/opl3sa2.c b/sound/isa/opl3sa2.c index 1e30713d2cad..f3db686b1c0c 100644 --- a/sound/isa/opl3sa2.c +++ b/sound/isa/opl3sa2.c | |||
@@ -919,7 +919,7 @@ static int __devinit snd_opl3sa2_nonpnp_probe(struct platform_device *pdev) | |||
919 | return 0; | 919 | return 0; |
920 | } | 920 | } |
921 | 921 | ||
922 | static int snd_opl3sa2_nonpnp_remove(struct platform_device *devptr) | 922 | static int __devexit snd_opl3sa2_nonpnp_remove(struct platform_device *devptr) |
923 | { | 923 | { |
924 | snd_card_free(platform_get_drvdata(devptr)); | 924 | snd_card_free(platform_get_drvdata(devptr)); |
925 | platform_set_drvdata(devptr, NULL); | 925 | platform_set_drvdata(devptr, NULL); |
@@ -942,7 +942,7 @@ static int snd_opl3sa2_nonpnp_resume(struct platform_device *dev) | |||
942 | 942 | ||
943 | static struct platform_driver snd_opl3sa2_nonpnp_driver = { | 943 | static struct platform_driver snd_opl3sa2_nonpnp_driver = { |
944 | .probe = snd_opl3sa2_nonpnp_probe, | 944 | .probe = snd_opl3sa2_nonpnp_probe, |
945 | .remove = snd_opl3sa2_nonpnp_remove, | 945 | .remove = __devexit( snd_opl3sa2_nonpnp_remove), |
946 | #ifdef CONFIG_PM | 946 | #ifdef CONFIG_PM |
947 | .suspend = snd_opl3sa2_nonpnp_suspend, | 947 | .suspend = snd_opl3sa2_nonpnp_suspend, |
948 | .resume = snd_opl3sa2_nonpnp_resume, | 948 | .resume = snd_opl3sa2_nonpnp_resume, |
diff --git a/sound/isa/sb/sb8.c b/sound/isa/sb/sb8.c index 268ebd34703e..be1e83e6dea3 100644 --- a/sound/isa/sb/sb8.c +++ b/sound/isa/sb/sb8.c | |||
@@ -83,7 +83,7 @@ static void snd_sb8_free(struct snd_card *card) | |||
83 | release_and_free_resource(acard->fm_res); | 83 | release_and_free_resource(acard->fm_res); |
84 | } | 84 | } |
85 | 85 | ||
86 | static int __init snd_sb8_probe(struct platform_device *pdev) | 86 | static int __devinit snd_sb8_probe(struct platform_device *pdev) |
87 | { | 87 | { |
88 | int dev = pdev->id; | 88 | int dev = pdev->id; |
89 | struct snd_sb *chip; | 89 | struct snd_sb *chip; |
@@ -193,7 +193,7 @@ static int __init snd_sb8_probe(struct platform_device *pdev) | |||
193 | return err; | 193 | return err; |
194 | } | 194 | } |
195 | 195 | ||
196 | static int snd_sb8_remove(struct platform_device *pdev) | 196 | static int __devexit snd_sb8_remove(struct platform_device *pdev) |
197 | { | 197 | { |
198 | snd_card_free(platform_get_drvdata(pdev)); | 198 | snd_card_free(platform_get_drvdata(pdev)); |
199 | platform_set_drvdata(pdev, NULL); | 199 | platform_set_drvdata(pdev, NULL); |
@@ -230,7 +230,7 @@ static int snd_sb8_resume(struct platform_device *dev) | |||
230 | 230 | ||
231 | static struct platform_driver snd_sb8_driver = { | 231 | static struct platform_driver snd_sb8_driver = { |
232 | .probe = snd_sb8_probe, | 232 | .probe = snd_sb8_probe, |
233 | .remove = snd_sb8_remove, | 233 | .remove = __devexit_p(snd_sb8_remove), |
234 | #ifdef CONFIG_PM | 234 | #ifdef CONFIG_PM |
235 | .suspend = snd_sb8_suspend, | 235 | .suspend = snd_sb8_suspend, |
236 | .resume = snd_sb8_resume, | 236 | .resume = snd_sb8_resume, |