aboutsummaryrefslogtreecommitdiffstats
path: root/sound/isa
diff options
context:
space:
mode:
authorPrarit Bhargava <prarit@redhat.com>2007-02-13 07:11:11 -0500
committerJaroslav Kysela <perex@suse.cz>2007-02-14 02:38:28 -0500
commit788c6043335590e0a483fdc18f85b1405a157bf9 (patch)
tree23e24335e62ba0f692da4707933c7680e94fa1d8 /sound/isa
parent46f02ca36e9b2b690ebcef18fa0652c586d6c08e (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.c2
-rw-r--r--sound/isa/cmi8330.c4
-rw-r--r--sound/isa/es1688/es1688.c6
-rw-r--r--sound/isa/gus/gusclassic.c10
-rw-r--r--sound/isa/gus/gusextreme.c12
-rw-r--r--sound/isa/gus/gusmax.c13
-rw-r--r--sound/isa/opl3sa2.c4
-rw-r--r--sound/isa/sb/sb8.c6
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
65static struct platform_device *devices[SNDRV_CARDS]; 65static struct platform_device *devices[SNDRV_CARDS];
66 66
67 67
68static int __init snd_ad1848_probe(struct platform_device *pdev) 68static 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
577static int snd_cmi8330_nonpnp_remove(struct platform_device *devptr) 577static 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
598static struct platform_driver snd_cmi8330_driver = { 598static 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
76static int __init snd_es1688_probe(struct platform_device *pdev) 76static 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
174static int snd_es1688_remove(struct platform_device *devptr) 174static 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
183static struct platform_driver snd_es1688_driver = { 183static 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
79static int __init snd_gusclassic_detect(struct snd_gus_card * gus) 79static 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
98static void __init snd_gusclassic_init(int dev, struct snd_gus_card * gus) 98static 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
106static int __init snd_gusclassic_probe(struct platform_device *pdev) 106static 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
214static int snd_gusclassic_remove(struct platform_device *devptr) 214static 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
223static struct platform_driver snd_gusclassic_driver = { 223static 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
95static int __init snd_gusextreme_detect(int dev, 95static 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
145static void __init snd_gusextreme_init(int dev, struct snd_gus_card * gus) 145static 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
150static int __init snd_gusextreme_mixer(struct snd_es1688 *chip) 150static 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
172static int __init snd_gusextreme_probe(struct platform_device *pdev) 172static 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
324static int snd_gusextreme_remove(struct platform_device *devptr) 324static 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
333static struct platform_driver snd_gusextreme_driver = { 333static 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
88static int __init snd_gusmax_detect(struct snd_gus_card * gus) 88static 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
130static void __init snd_gusmax_init(int dev, struct snd_card *card, struct snd_gus_card * gus) 130static 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
148static int __init snd_gusmax_mixer(struct snd_cs4231 *chip) 149static 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
207static int __init snd_gusmax_probe(struct platform_device *pdev) 208static 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
351static int snd_gusmax_remove(struct platform_device *devptr) 352static 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
360static struct platform_driver snd_gusmax_driver = { 361static 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
922static int snd_opl3sa2_nonpnp_remove(struct platform_device *devptr) 922static 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
943static struct platform_driver snd_opl3sa2_nonpnp_driver = { 943static 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
86static int __init snd_sb8_probe(struct platform_device *pdev) 86static 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
196static int snd_sb8_remove(struct platform_device *pdev) 196static 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
231static struct platform_driver snd_sb8_driver = { 231static 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,