Lines Matching refs:card
151 _set_debug(struct fritzcard *card) in _set_debug() argument
153 card->isac.dch.debug = debug; in _set_debug()
154 card->bch[0].debug = debug; in _set_debug()
155 card->bch[1].debug = debug; in _set_debug()
162 struct fritzcard *card; in set_debug() local
167 list_for_each_entry(card, &Cards, list) in set_debug()
168 _set_debug(card); in set_debug()
1013 release_card(struct fritzcard *card) in release_card() argument
1017 disable_hwirq(card); in release_card()
1018 spin_lock_irqsave(&card->lock, flags); in release_card()
1019 modehdlc(&card->bch[0], ISDN_P_NONE); in release_card()
1020 modehdlc(&card->bch[1], ISDN_P_NONE); in release_card()
1021 spin_unlock_irqrestore(&card->lock, flags); in release_card()
1022 card->isac.release(&card->isac); in release_card()
1023 free_irq(card->irq, card); in release_card()
1024 mISDN_freebchannel(&card->bch[1]); in release_card()
1025 mISDN_freebchannel(&card->bch[0]); in release_card()
1026 mISDN_unregister_device(&card->isac.dch.dev); in release_card()
1027 release_region(card->addr, 32); in release_card()
1028 pci_disable_device(card->pdev); in release_card()
1029 pci_set_drvdata(card->pdev, NULL); in release_card()
1031 list_del(&card->list); in release_card()
1033 kfree(card); in release_card()
1038 setup_instance(struct fritzcard *card) in setup_instance() argument
1044 snprintf(card->name, MISDN_MAX_IDLEN - 1, "AVM.%d", AVM_cnt + 1); in setup_instance()
1046 list_add_tail(&card->list, &Cards); in setup_instance()
1049 _set_debug(card); in setup_instance()
1050 card->isac.name = card->name; in setup_instance()
1051 spin_lock_init(&card->lock); in setup_instance()
1052 card->isac.hwlock = &card->lock; in setup_instance()
1053 mISDNisac_init(&card->isac, card); in setup_instance()
1055 card->isac.dch.dev.Bprotocols = (1 << (ISDN_P_B_RAW & ISDN_P_B_MASK)) | in setup_instance()
1057 card->isac.dch.dev.D.ctrl = avm_dctrl; in setup_instance()
1059 card->bch[i].nr = i + 1; in setup_instance()
1060 set_channelmap(i + 1, card->isac.dch.dev.channelmap); in setup_instance()
1061 if (AVM_FRITZ_PCIV2 == card->type) in setup_instance()
1065 mISDN_initbchannel(&card->bch[i], MAX_DATA_MEM, minsize); in setup_instance()
1066 card->bch[i].hw = card; in setup_instance()
1067 card->bch[i].ch.send = avm_l2l1B; in setup_instance()
1068 card->bch[i].ch.ctrl = avm_bctrl; in setup_instance()
1069 card->bch[i].ch.nr = i + 1; in setup_instance()
1070 list_add(&card->bch[i].ch.list, &card->isac.dch.dev.bchannels); in setup_instance()
1072 err = setup_fritz(card); in setup_instance()
1075 err = mISDN_register_device(&card->isac.dch.dev, &card->pdev->dev, in setup_instance()
1076 card->name); in setup_instance()
1079 err = init_card(card); in setup_instance()
1085 mISDN_unregister_device(&card->isac.dch.dev); in setup_instance()
1087 release_region(card->addr, 32); in setup_instance()
1089 card->isac.release(&card->isac); in setup_instance()
1090 mISDN_freebchannel(&card->bch[1]); in setup_instance()
1091 mISDN_freebchannel(&card->bch[0]); in setup_instance()
1093 list_del(&card->list); in setup_instance()
1095 kfree(card); in setup_instance()
1103 struct fritzcard *card; in fritzpci_probe() local
1105 card = kzalloc(sizeof(struct fritzcard), GFP_KERNEL); in fritzpci_probe()
1106 if (!card) { in fritzpci_probe()
1111 card->type = AVM_FRITZ_PCIV2; in fritzpci_probe()
1113 card->type = AVM_FRITZ_PCI; in fritzpci_probe()
1114 card->pdev = pdev; in fritzpci_probe()
1117 kfree(card); in fritzpci_probe()
1124 card->addr = pci_resource_start(pdev, 1); in fritzpci_probe()
1125 card->irq = pdev->irq; in fritzpci_probe()
1126 pci_set_drvdata(pdev, card); in fritzpci_probe()
1127 err = setup_instance(card); in fritzpci_probe()
1136 struct fritzcard *card = pci_get_drvdata(pdev); in fritz_remove_pci() local
1138 if (card) in fritz_remove_pci()
1139 release_card(card); in fritz_remove_pci()