• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asus-wl-520gu-7.0.1.45/src/linux/linux/drivers/bluetooth/

Lines Matching refs:link

84 	dev_link_t link;
100 void bt3c_config(dev_link_t *link);
213 register unsigned int iobase = info->link.io.BasePort1;
217 if (!(info->link.state & DEV_PRESENT))
253 iobase = info->link.io.BasePort1;
374 iobase = info->link.io.BasePort1;
522 sprintf(dev, "%04x", info->link.io.BasePort1);
634 dev_link_t *link;
643 link = &info->link;
644 link->priv = info;
646 link->release.function = &bt3c_release;
647 link->release.data = (u_long)link;
648 link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
649 link->io.NumPorts1 = 8;
650 link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
651 link->irq.IRQInfo1 = IRQ_INFO2_VALID | IRQ_LEVEL_ID;
654 link->irq.IRQInfo2 = irq_mask;
657 link->irq.IRQInfo2 |= 1 << irq_list[i];
659 link->irq.Handler = bt3c_interrupt;
660 link->irq.Instance = info;
662 link->conf.Attributes = CONF_ENABLE_IRQ;
663 link->conf.Vcc = 50;
664 link->conf.IntType = INT_MEMORY_AND_IO;
667 link->next = dev_list;
668 dev_list = link;
677 client_reg.event_callback_args.client_data = link;
679 ret = CardServices(RegisterClient, &link->handle, &client_reg);
681 cs_error(link->handle, RegisterClient, ret);
682 bt3c_detach(link);
686 return link;
690 void bt3c_detach(dev_link_t *link)
692 bt3c_info_t *info = link->priv;
698 if (*linkp == link)
704 del_timer(&link->release);
706 if (link->state & DEV_CONFIG)
707 bt3c_release((u_long)link);
709 if (link->handle) {
710 ret = CardServices(DeregisterClient, link->handle);
712 cs_error(link->handle, DeregisterClient, ret);
716 *linkp = link->next;
741 void bt3c_config(dev_link_t *link)
744 client_handle_t handle = link->handle;
745 bt3c_info_t *info = link->priv;
765 link->conf.ConfigBase = parse.config.base;
766 link->conf.Present = parse.config.rmask[0];
769 link->state |= DEV_CONFIG;
771 link->conf.Vcc = config.Vcc;
786 link->conf.Vpp1 = link->conf.Vpp2 = cf->vpp1.param[CISTPL_POWER_VNOM] / 10000;
788 link->conf.ConfigIndex = cf->index;
789 link->io.BasePort1 = cf->io.win[0].base;
790 link->io.IOAddrLines = (try == 0) ? 16 : cf->io.flags & CISTPL_IO_LINES_MASK;
791 i = CardServices(RequestIO, link->handle, &link->io);
806 link->conf.ConfigIndex = cf->index;
808 link->io.BasePort1 = base[j];
809 link->io.IOAddrLines = base[j] ? 16 : 3;
810 i = CardServices(RequestIO, link->handle, &link->io);
821 cs_error(link->handle, RequestIO, i);
825 i = CardServices(RequestIRQ, link->handle, &link->irq);
827 cs_error(link->handle, RequestIRQ, i);
828 link->irq.AssignedIRQ = 0;
831 i = CardServices(RequestConfiguration, link->handle, &link->conf);
833 cs_error(link->handle, RequestConfiguration, i);
843 link->dev = &info->node;
844 link->state &= ~DEV_CONFIG_PENDING;
849 cs_error(link->handle, last_fn, last_ret);
852 bt3c_release((u_long)link);
858 dev_link_t *link = (dev_link_t *)arg;
859 bt3c_info_t *info = link->priv;
861 if (link->state & DEV_PRESENT)
866 link->dev = NULL;
868 CardServices(ReleaseConfiguration, link->handle);
869 CardServices(ReleaseIO, link->handle, &link->io);
870 CardServices(ReleaseIRQ, link->handle, &link->irq);
872 link->state &= ~DEV_CONFIG;
878 dev_link_t *link = args->client_data;
879 bt3c_info_t *info = link->priv;
883 link->state &= ~DEV_PRESENT;
884 if (link->state & DEV_CONFIG) {
886 mod_timer(&link->release, jiffies + HZ / 20);
890 link->state |= DEV_PRESENT | DEV_CONFIG_PENDING;
891 bt3c_config(link);
894 link->state |= DEV_SUSPEND;
897 if (link->state & DEV_CONFIG)
898 CardServices(ReleaseConfiguration, link->handle);
901 link->state &= ~DEV_SUSPEND;
904 if (DEV_OK(link))
905 CardServices(RequestConfiguration, link->handle, &link->conf);