Lines Matching defs:link
159 DisableLinkPulse = 0x20, /* disable link pulse generation */
262 static int has_ce2_string(struct pcmcia_device * link);
263 static int xirc2ps_config(struct pcmcia_device * link);
264 static void xirc2ps_release(struct pcmcia_device * link);
295 static int set_card_type(struct pcmcia_device *link);
474 xirc2ps_probe(struct pcmcia_device *link)
479 dev_dbg(&link->dev, "attach()\n");
487 local->p_dev = link;
488 link->priv = dev;
491 link->config_index = 1;
499 return xirc2ps_config(link);
503 xirc2ps_detach(struct pcmcia_device *link)
505 struct net_device *dev = link->priv;
512 dev_dbg(&link->dev, "detach\n");
516 xirc2ps_release(link);
540 set_card_type(struct pcmcia_device *link)
542 struct net_device *dev = link->priv;
548 len = pcmcia_get_tuple(link, CISTPL_MANFID, &buf);
550 dev_err(&link->dev, "invalid CIS -- sorry\n");
558 dev_dbg(&link->dev, "cisrev=%02x mediaid=%02x prodid=%02x\n",
592 case 1: local->card_type = has_ce2_string(link)? XIR_CE2 : XIR_CE ;
692 xirc2ps_config(struct pcmcia_device * link)
694 struct net_device *dev = link->priv;
703 dev_dbg(&link->dev, "config\n");
706 if (link->has_manf_id == 0) {
711 switch (link->manf_id) {
730 (unsigned)link->manf_id);
733 dev_dbg(&link->dev, "found %s card\n", local->manf_str);
735 if (!set_card_type(link)) {
741 err = pcmcia_get_mac_from_cis(link, dev);
745 len = pcmcia_get_tuple(link, 0x89, &buf);
757 err = pcmcia_loop_tuple(link, CISTPL_FUNCE, pcmcia_get_mac_ce, dev);
766 link->config_flags |= CONF_AUTO_SET_IO;
771 if (!pcmcia_loop_config(link, xirc2ps_config_modem, NULL))
780 if (!pcmcia_loop_config(link, xirc2ps_config_check,
789 link->io_lines = 10;
790 link->resource[0]->end = 16;
791 link->resource[0]->flags |= IO_DATA_PATH_WIDTH_16;
793 link->resource[0]->start = ioaddr;
794 if (!(err = pcmcia_request_io(link)))
797 link->resource[0]->start = 0; /* let CS decide */
798 if ((err = pcmcia_request_io(link)))
807 if ((err=pcmcia_request_irq(link, xirc2ps_interrupt)))
810 link->config_flags |= CONF_ENABLE_IRQ;
812 link->config_flags |= CONF_ENABLE_SPKR;
814 if ((err = pcmcia_enable_device(link)))
823 err = pcmcia_write_config_byte(link, CISREG_IOBASE_0, (u8)
824 link->resource[1]->start & 0xff);
828 err = pcmcia_write_config_byte(link, CISREG_IOBASE_1,
829 (link->resource[1]->start >> 8) & 0xff);
837 link->resource[2]->flags = WIN_DATA_WIDTH_8 | WIN_MEMORY_TYPE_AM |
839 link->resource[2]->start = link->resource[2]->end = 0;
840 if ((err = pcmcia_request_window(link, link->resource[2], 0)))
843 local->dingo_ccr = ioremap(link->resource[2]->start, 0x1000) + 0x0800;
844 if ((err = pcmcia_map_mem_page(link, link->resource[2], 0)))
851 ioaddr = link->resource[0]->start;
897 dev->irq = link->irq;
898 dev->base_addr = link->resource[0]->start;
903 SET_NETDEV_DEV(dev, &link->dev);
918 xirc2ps_release(link);
926 xirc2ps_release(struct pcmcia_device *link)
928 dev_dbg(&link->dev, "release\n");
930 if (link->resource[2]->end) {
931 struct net_device *dev = link->priv;
936 pcmcia_disable_device(link);
942 static int xirc2ps_suspend(struct pcmcia_device *link)
944 struct net_device *dev = link->priv;
946 if (link->open) {
954 static int xirc2ps_resume(struct pcmcia_device *link)
956 struct net_device *dev = link->priv;
958 if (link->open) {
1389 struct pcmcia_device *link = lp->p_dev;
1391 dev_dbg(&link->dev, "do_open(%p)\n", dev);
1395 if (!pcmcia_dev_present(link))
1399 link->open++;
1688 netdev_info(dev, "MII link partner: %04x\n", linkpartner);
1717 struct pcmcia_device *link = lp->p_dev;
1719 dev_dbg(&link->dev, "do_stop(%p)\n", dev);
1721 if (!link)
1734 link->open--;