Lines Matching defs:link
46 static int pdacf_config(struct pcmcia_device *link);
49 static void pdacf_release(struct pcmcia_device *link)
51 free_irq(link->irq, link->priv);
52 pcmcia_disable_device(link);
60 struct pcmcia_device *link = pdacf->p_dev;
62 pdacf_release(link);
80 static int snd_pdacf_probe(struct pcmcia_device *link)
103 err = snd_card_new(&link->dev, index[i], id[i], THIS_MODULE,
126 pdacf->p_dev = link;
127 link->priv = pdacf;
129 link->resource[0]->flags |= IO_DATA_PATH_WIDTH_AUTO;
130 link->resource[0]->end = 16;
132 link->config_flags = CONF_ENABLE_IRQ | CONF_ENABLE_PULSE_IRQ;
133 link->config_index = 1;
134 link->config_regs = PRESENT_OPTION;
136 return pdacf_config(link);
184 static void snd_pdacf_detach(struct pcmcia_device *link)
186 struct snd_pdacf *chip = link->priv;
201 static int pdacf_config(struct pcmcia_device *link)
203 struct snd_pdacf *pdacf = link->priv;
207 link->config_index = 0x5;
208 link->config_flags |= CONF_ENABLE_IRQ | CONF_ENABLE_PULSE_IRQ;
210 ret = pcmcia_request_io(link);
214 ret = request_threaded_irq(link->irq, pdacf_interrupt,
216 IRQF_SHARED, link->devname, link->priv);
220 ret = pcmcia_enable_device(link);
224 if (snd_pdacf_assign_resources(pdacf, link->resource[0]->start,
225 link->irq) < 0)
228 pdacf->card->sync_irq = link->irq;
232 free_irq(link->irq, link->priv);
234 pcmcia_disable_device(link);
240 static int pdacf_suspend(struct pcmcia_device *link)
242 struct snd_pdacf *chip = link->priv;
253 static int pdacf_resume(struct pcmcia_device *link)
255 struct snd_pdacf *chip = link->priv;
258 if (pcmcia_dev_present(link)) {