Lines Matching refs:n
194 static int snd_galaxy_match(struct device *dev, unsigned int n) in snd_galaxy_match() argument
196 if (!enable[n]) in snd_galaxy_match()
199 switch (port[n]) { in snd_galaxy_match()
204 config[n] |= GALAXY_CONFIG_SBA_220; in snd_galaxy_match()
207 config[n] |= GALAXY_CONFIG_SBA_240; in snd_galaxy_match()
210 config[n] |= GALAXY_CONFIG_SBA_260; in snd_galaxy_match()
213 config[n] |= GALAXY_CONFIG_SBA_280; in snd_galaxy_match()
216 dev_err(dev, "invalid port %#lx\n", port[n]); in snd_galaxy_match()
220 switch (wss_port[n]) { in snd_galaxy_match()
225 config[n] |= GALAXY_CONFIG_WSS_ENABLE | GALAXY_CONFIG_WSSA_530; in snd_galaxy_match()
228 config[n] |= GALAXY_CONFIG_WSS_ENABLE | GALAXY_CONFIG_WSSA_604; in snd_galaxy_match()
231 config[n] |= GALAXY_CONFIG_WSS_ENABLE | GALAXY_CONFIG_WSSA_E80; in snd_galaxy_match()
234 config[n] |= GALAXY_CONFIG_WSS_ENABLE | GALAXY_CONFIG_WSSA_F40; in snd_galaxy_match()
237 dev_err(dev, "invalid WSS port %#lx\n", wss_port[n]); in snd_galaxy_match()
241 switch (irq[n]) { in snd_galaxy_match()
246 wss_config[n] |= WSS_CONFIG_IRQ_7; in snd_galaxy_match()
249 irq[n] = 9; in snd_galaxy_match()
252 wss_config[n] |= WSS_CONFIG_IRQ_9; in snd_galaxy_match()
255 wss_config[n] |= WSS_CONFIG_IRQ_10; in snd_galaxy_match()
258 wss_config[n] |= WSS_CONFIG_IRQ_11; in snd_galaxy_match()
261 dev_err(dev, "invalid IRQ %d\n", irq[n]); in snd_galaxy_match()
265 switch (dma1[n]) { in snd_galaxy_match()
270 wss_config[n] |= WSS_CONFIG_DMA_0; in snd_galaxy_match()
273 wss_config[n] |= WSS_CONFIG_DMA_1; in snd_galaxy_match()
276 wss_config[n] |= WSS_CONFIG_DMA_3; in snd_galaxy_match()
279 dev_err(dev, "invalid playback DMA %d\n", dma1[n]); in snd_galaxy_match()
283 if (dma2[n] == SNDRV_AUTO_DMA || dma2[n] == dma1[n]) { in snd_galaxy_match()
284 dma2[n] = -1; in snd_galaxy_match()
288 wss_config[n] |= WSS_CONFIG_DUPLEX; in snd_galaxy_match()
289 switch (dma2[n]) { in snd_galaxy_match()
293 if (dma1[n] == 0) in snd_galaxy_match()
297 dev_err(dev, "invalid capture DMA %d\n", dma2[n]); in snd_galaxy_match()
302 switch (mpu_port[n]) { in snd_galaxy_match()
305 mpu_port[n] = -1; in snd_galaxy_match()
308 config[n] |= GALAXY_CONFIG_MPU_ENABLE | GALAXY_CONFIG_MPUA_300; in snd_galaxy_match()
311 config[n] |= GALAXY_CONFIG_MPU_ENABLE | GALAXY_CONFIG_MPUA_330; in snd_galaxy_match()
314 dev_err(dev, "invalid MPU port %#lx\n", mpu_port[n]); in snd_galaxy_match()
318 switch (mpu_irq[n]) { in snd_galaxy_match()
321 mpu_irq[n] = -1; in snd_galaxy_match()
324 mpu_irq[n] = 9; in snd_galaxy_match()
327 config[n] |= GALAXY_CONFIG_MPUIRQ_2; in snd_galaxy_match()
331 config[n] |= GALAXY_CONFIG_MPUIRQ_3; in snd_galaxy_match()
335 config[n] |= GALAXY_CONFIG_MPUIRQ_5; in snd_galaxy_match()
338 config[n] |= GALAXY_CONFIG_MPUIRQ_7; in snd_galaxy_match()
342 config[n] |= GALAXY_CONFIG_MPUIRQ_10; in snd_galaxy_match()
346 dev_err(dev, "invalid MPU IRQ %d\n", mpu_irq[n]); in snd_galaxy_match()
350 if (mpu_irq[n] == irq[n]) { in snd_galaxy_match()
356 switch (fm_port[n]) { in snd_galaxy_match()
359 fm_port[n] = -1; in snd_galaxy_match()
364 dev_err(dev, "illegal FM port %#lx\n", fm_port[n]); in snd_galaxy_match()
368 config[n] |= GALAXY_CONFIG_GAME_ENABLE; in snd_galaxy_match()
491 static int snd_galaxy_probe(struct device *dev, unsigned int n) in snd_galaxy_probe() argument
499 err = snd_card_new(dev, index[n], id[n], THIS_MODULE, in snd_galaxy_probe()
507 galaxy->res_port = request_region(port[n], 16, DRV_NAME); in snd_galaxy_probe()
509 dev_err(dev, "could not grab ports %#lx-%#lx\n", port[n], in snd_galaxy_probe()
510 port[n] + 15); in snd_galaxy_probe()
514 galaxy->port = ioport_map(port[n], 16); in snd_galaxy_probe()
518 dev_err(dev, "did not find a Sound Galaxy at %#lx\n", port[n]); in snd_galaxy_probe()
521 dev_info(dev, "Sound Galaxy (type %d) found at %#lx\n", type, port[n]); in snd_galaxy_probe()
523 galaxy->res_config_port = request_region(port[n] + GALAXY_PORT_CONFIG, in snd_galaxy_probe()
527 port[n] + GALAXY_PORT_CONFIG, in snd_galaxy_probe()
528 port[n] + GALAXY_PORT_CONFIG + 15); in snd_galaxy_probe()
532 galaxy->config_port = ioport_map(port[n] + GALAXY_PORT_CONFIG, 16); in snd_galaxy_probe()
534 galaxy_config(galaxy, config[n]); in snd_galaxy_probe()
536 galaxy->res_wss_port = request_region(wss_port[n], 4, DRV_NAME); in snd_galaxy_probe()
538 dev_err(dev, "could not grab ports %#lx-%#lx\n", wss_port[n], in snd_galaxy_probe()
539 wss_port[n] + 3); in snd_galaxy_probe()
543 galaxy->wss_port = ioport_map(wss_port[n], 4); in snd_galaxy_probe()
545 err = galaxy_wss_config(galaxy, wss_config[n]); in snd_galaxy_probe()
554 card->shortname, port[n], wss_port[n], irq[n], dma1[n], in snd_galaxy_probe()
555 dma2[n]); in snd_galaxy_probe()
557 err = snd_wss_create(card, wss_port[n] + 4, -1, irq[n], dma1[n], in snd_galaxy_probe()
558 dma2[n], WSS_HW_DETECT, 0, &chip); in snd_galaxy_probe()
574 if (mpu_port[n] >= 0) { in snd_galaxy_probe()
576 mpu_port[n], 0, mpu_irq[n], NULL); in snd_galaxy_probe()
581 if (fm_port[n] >= 0) { in snd_galaxy_probe()
584 err = snd_opl3_create(card, fm_port[n], fm_port[n] + 2, in snd_galaxy_probe()
587 dev_err(dev, "no OPL device at %#lx\n", fm_port[n]); in snd_galaxy_probe()
611 static int snd_galaxy_remove(struct device *dev, unsigned int n) in snd_galaxy_remove() argument