Lines Matching refs:iwcard

195 static int snd_interwave_detect_stb(struct snd_interwave *iwcard,  in snd_interwave_detect_stb()  argument
201 struct snd_card *card = iwcard->card; in snd_interwave_detect_stb()
213 if ((iwcard->i2c_res = request_region(port, 1, "InterWave (I2C bus)")) != NULL) in snd_interwave_detect_stb()
218 iwcard->i2c_res = request_region(port, 1, "InterWave (I2C bus)"); in snd_interwave_detect_stb()
220 if (iwcard->i2c_res == NULL) { in snd_interwave_detect_stb()
237 static int snd_interwave_detect(struct snd_interwave *iwcard, in snd_interwave_detect() argument
277 return snd_interwave_detect_stb(iwcard, gus, dev, rbus); in snd_interwave_detect()
286 struct snd_interwave *iwcard = dev_id; in snd_interwave_interrupt() local
292 if (inb(iwcard->gus_status_reg)) { in snd_interwave_interrupt()
294 snd_gus_interrupt(irq, iwcard->gus); in snd_interwave_interrupt()
297 if (inb(iwcard->pcm_status_reg) & 0x01) { /* IRQ bit is set? */ in snd_interwave_interrupt()
299 snd_wss_interrupt(irq, iwcard->wss); in snd_interwave_interrupt()
539 static int snd_interwave_pnp(int dev, struct snd_interwave *iwcard, in snd_interwave_pnp() argument
546 iwcard->dev = pnp_request_card_device(card, id->devs[0].id, NULL); in snd_interwave_pnp()
547 if (iwcard->dev == NULL) in snd_interwave_pnp()
551 iwcard->devtc = pnp_request_card_device(card, id->devs[1].id, NULL); in snd_interwave_pnp()
552 if (iwcard->devtc == NULL) in snd_interwave_pnp()
556 pdev = iwcard->dev; in snd_interwave_pnp()
580 pdev = iwcard->devtc; in snd_interwave_pnp()
596 struct snd_interwave *iwcard = card->private_data; in snd_interwave_free() local
598 if (iwcard == NULL) in snd_interwave_free()
601 release_and_free_resource(iwcard->i2c_res); in snd_interwave_free()
603 if (iwcard->irq >= 0) in snd_interwave_free()
604 free_irq(iwcard->irq, (void *)iwcard); in snd_interwave_free()
611 struct snd_interwave *iwcard; in snd_interwave_card_new() local
618 iwcard = card->private_data; in snd_interwave_card_new()
619 iwcard->card = card; in snd_interwave_card_new()
620 iwcard->irq = -1; in snd_interwave_card_new()
629 struct snd_interwave *iwcard = card->private_data; in snd_interwave_probe() local
649 if ((err = snd_interwave_detect(iwcard, gus, dev in snd_interwave_probe()
656 iwcard->gus_status_reg = gus->gf1.reg_irqstat; in snd_interwave_probe()
657 iwcard->pcm_status_reg = gus->gf1.port + 0x10c + 2; in snd_interwave_probe()
665 "InterWave", iwcard)) { in snd_interwave_probe()
669 iwcard->irq = xirq; in snd_interwave_probe()
670 card->sync_irq = iwcard->irq; in snd_interwave_probe()
753 iwcard->wss = wss; in snd_interwave_probe()
754 iwcard->gus = gus; in snd_interwave_probe()