Lines Matching refs:link
47 static void sl811_cs_release(struct pcmcia_device * link);
115 static void sl811_cs_detach(struct pcmcia_device *link) in sl811_cs_detach() argument
117 dev_dbg(&link->dev, "sl811_cs_detach\n"); in sl811_cs_detach()
119 sl811_cs_release(link); in sl811_cs_detach()
122 kfree(link->priv); in sl811_cs_detach()
125 static void sl811_cs_release(struct pcmcia_device * link) in sl811_cs_release() argument
127 dev_dbg(&link->dev, "sl811_cs_release\n"); in sl811_cs_release()
129 pcmcia_disable_device(link); in sl811_cs_release()
142 static int sl811_cs_config(struct pcmcia_device *link) in sl811_cs_config() argument
144 struct device *parent = &link->dev; in sl811_cs_config()
147 dev_dbg(&link->dev, "sl811_cs_config\n"); in sl811_cs_config()
149 link->config_flags |= CONF_ENABLE_IRQ | CONF_AUTO_SET_VPP | in sl811_cs_config()
152 if (pcmcia_loop_config(link, sl811_cs_config_check, NULL)) in sl811_cs_config()
156 if (resource_size(link->resource[0]) < 2) in sl811_cs_config()
159 if (!link->irq) in sl811_cs_config()
162 ret = pcmcia_enable_device(link); in sl811_cs_config()
166 if (sl811_hc_init(parent, link->resource[0]->start, link->irq) in sl811_cs_config()
170 sl811_cs_release(link); in sl811_cs_config()
176 static int sl811_cs_probe(struct pcmcia_device *link) in sl811_cs_probe() argument
183 local->p_dev = link; in sl811_cs_probe()
184 link->priv = local; in sl811_cs_probe()
186 return sl811_cs_config(link); in sl811_cs_probe()