Lines Matching refs:card

297 	struct cyclades_card *card = port->card;  in cyy_writeb()  local
299 cy_writeb(port->u.cyy.base_addr + (reg << card->bus_index), val); in cyy_writeb()
304 struct cyclades_card *card = port->card; in cyy_readb() local
306 return readb(port->u.cyy.base_addr + (reg << card->bus_index)); in cyy_readb()
309 static inline bool cy_is_Z(struct cyclades_card *card) in cy_is_Z() argument
311 return card->num_chips == (unsigned int)-1; in cy_is_Z()
319 static inline bool cyz_fpga_loaded(struct cyclades_card *card) in cyz_fpga_loaded() argument
321 return __cyz_fpga_loaded(card->ctl_addr.p9060); in cyz_fpga_loaded()
324 static inline bool cyz_is_loaded(struct cyclades_card *card) in cyz_is_loaded() argument
326 struct FIRM_ID __iomem *fw_id = card->base_addr + ID_ADDRESS; in cyz_is_loaded()
328 return (card->hw_ver == ZO_V1 || cyz_fpga_loaded(card)) && in cyz_is_loaded()
386 port->card->bus_index); in cyy_issue_cmd()
825 struct cyclades_card *card = info->card; in cyy_change_rts_dtr() local
826 int channel = info->line - card->first_line; in cyy_change_rts_dtr()
923 struct cyclades_card *cinfo = info->card; in cyz_handle_rx()
1012 struct cyclades_card *cinfo = info->card; in cyz_handle_tx()
1155 "port %ld\n", info->card, channel); in cyz_handle_cmd()
1165 "port %ld\n", info->card, channel); in cyz_handle_cmd()
1205 struct cyclades_card *card = info->card; in cyz_rx_restart() local
1207 __u32 channel = info->line - card->first_line; in cyz_rx_restart()
1210 spin_lock_irqsave(&card->card_lock, flags); in cyz_rx_restart()
1211 retval = cyz_issue_cmd(card, channel, C_CM_INTBACK2, 0L); in cyz_rx_restart()
1216 spin_unlock_irqrestore(&card->card_lock, flags); in cyz_rx_restart()
1226 unsigned int port, card; in cyz_poll() local
1228 for (card = 0; card < NR_CARDS; card++) { in cyz_poll()
1229 cinfo = &cy_card[card]; in cyz_poll()
1267 struct cyclades_card *card; in cy_startup() local
1273 card = info->card; in cy_startup()
1274 channel = info->line - card->first_line; in cy_startup()
1280 spin_lock_irqsave(&card->card_lock, flags); in cy_startup()
1295 spin_unlock_irqrestore(&card->card_lock, flags); in cy_startup()
1299 if (!cy_is_Z(card)) { in cy_startup()
1302 spin_lock_irqsave(&card->card_lock, flags); in cy_startup()
1318 if (!cyz_is_loaded(card)) in cy_startup()
1323 "base_addr %p\n", card, channel, card->base_addr); in cy_startup()
1325 spin_lock_irqsave(&card->card_lock, flags); in cy_startup()
1347 retval = cyz_issue_cmd(card, channel, C_CM_IOCTL, 0L); in cy_startup()
1354 retval = cyz_issue_cmd(card, channel, C_CM_FLUSH_RX, 0L); in cy_startup()
1377 spin_unlock_irqrestore(&card->card_lock, flags); in cy_startup()
1385 spin_unlock_irqrestore(&card->card_lock, flags); in cy_startup()
1392 struct cyclades_card *card = info->card; in start_xmit() local
1394 int channel = info->line - card->first_line; in start_xmit()
1396 if (!cy_is_Z(card)) { in start_xmit()
1397 spin_lock_irqsave(&card->card_lock, flags); in start_xmit()
1400 spin_unlock_irqrestore(&card->card_lock, flags); in start_xmit()
1405 spin_lock_irqsave(&card->card_lock, flags); in start_xmit()
1406 retval = cyz_issue_cmd(card, channel, C_CM_INTBACK, 0L); in start_xmit()
1411 spin_unlock_irqrestore(&card->card_lock, flags); in start_xmit()
1424 struct cyclades_card *card; in cy_shutdown() local
1430 card = info->card; in cy_shutdown()
1431 if (!cy_is_Z(card)) { in cy_shutdown()
1432 spin_lock_irqsave(&card->card_lock, flags); in cy_shutdown()
1452 spin_unlock_irqrestore(&card->card_lock, flags); in cy_shutdown()
1455 int channel = info->line - card->first_line; in cy_shutdown()
1457 "base_addr %p\n", card, channel, card->base_addr); in cy_shutdown()
1460 if (!cyz_is_loaded(card)) in cy_shutdown()
1463 spin_lock_irqsave(&card->card_lock, flags); in cy_shutdown()
1478 spin_unlock_irqrestore(&card->card_lock, flags); in cy_shutdown()
1516 if (cy_is_Z(info->card)) { in cy_open()
1517 struct cyclades_card *cinfo = info->card; in cy_open()
1618 struct cyclades_card *card; in cy_wait_until_sent() local
1658 card = info->card; in cy_wait_until_sent()
1659 if (!cy_is_Z(card)) { in cy_wait_until_sent()
1675 struct cyclades_card *card; in cy_flush_buffer() local
1686 card = info->card; in cy_flush_buffer()
1687 channel = info->line - card->first_line; in cy_flush_buffer()
1689 spin_lock_irqsave(&card->card_lock, flags); in cy_flush_buffer()
1691 spin_unlock_irqrestore(&card->card_lock, flags); in cy_flush_buffer()
1693 if (cy_is_Z(card)) { /* If it is a Z card, flush the on-board in cy_flush_buffer()
1695 spin_lock_irqsave(&card->card_lock, flags); in cy_flush_buffer()
1696 retval = cyz_issue_cmd(card, channel, C_CM_FLUSH_TX, 0L); in cy_flush_buffer()
1701 spin_unlock_irqrestore(&card->card_lock, flags); in cy_flush_buffer()
1711 struct cyclades_card *card; in cy_do_close() local
1715 card = info->card; in cy_do_close()
1716 channel = info->line - card->first_line; in cy_do_close()
1717 spin_lock_irqsave(&card->card_lock, flags); in cy_do_close()
1719 if (!cy_is_Z(card)) { in cy_do_close()
1726 spin_unlock_irqrestore(&card->card_lock, flags); in cy_do_close()
1728 spin_lock_irqsave(&card->card_lock, flags); in cy_do_close()
1738 retval = cyz_issue_cmd(card, channel, C_CM_IOCTLW, 0L); in cy_do_close()
1743 spin_unlock_irqrestore(&card->card_lock, flags); in cy_do_close()
1745 spin_lock_irqsave(&card->card_lock, flags); in cy_do_close()
1749 spin_unlock_irqrestore(&card->card_lock, flags); in cy_do_close()
1793 spin_lock_irqsave(&info->card->card_lock, flags); in cy_write()
1809 spin_unlock_irqrestore(&info->card->card_lock, flags); in cy_write()
1842 spin_lock_irqsave(&info->card->card_lock, flags); in cy_put_char()
1844 spin_unlock_irqrestore(&info->card->card_lock, flags); in cy_put_char()
1853 spin_unlock_irqrestore(&info->card->card_lock, flags); in cy_put_char()
1910 if (!cy_is_Z(info->card)) { in cy_chars_in_buffer()
1976 struct cyclades_card *card; in cy_set_line_char() local
2001 card = info->card; in cy_set_line_char()
2002 channel = info->line - card->first_line; in cy_set_line_char()
2004 if (!cy_is_Z(card)) { in cy_set_line_char()
2119 spin_lock_irqsave(&card->card_lock, flags); in cy_set_line_char()
2167 spin_unlock_irqrestore(&card->card_lock, flags); in cy_set_line_char()
2174 if (!cyz_is_loaded(card)) in cy_set_line_char()
2257 retval = cyz_issue_cmd(card, channel, C_CM_IOCTL, 0L); in cy_set_line_char()
2283 retval = cyz_issue_cmd(card, channel, C_CM_IOCTLM, 0L); in cy_set_line_char()
2296 struct cyclades_card *cinfo = info->card; in cy_get_serial_info()
2300 .port = (info->card - cy_card) * 0x100 + info->line - in cy_get_serial_info()
2376 struct cyclades_card *card = info->card; in get_lsr_info() local
2381 if (!cy_is_Z(card)) { in get_lsr_info()
2382 spin_lock_irqsave(&card->card_lock, flags); in get_lsr_info()
2384 spin_unlock_irqrestore(&card->card_lock, flags); in get_lsr_info()
2396 struct cyclades_card *card; in cy_tiocmget() local
2402 card = info->card; in cy_tiocmget()
2404 if (!cy_is_Z(card)) { in cy_tiocmget()
2406 int channel = info->line - card->first_line; in cy_tiocmget()
2409 spin_lock_irqsave(&card->card_lock, flags); in cy_tiocmget()
2413 spin_unlock_irqrestore(&card->card_lock, flags); in cy_tiocmget()
2429 if (!cyz_is_loaded(card)) { in cy_tiocmget()
2451 struct cyclades_card *card; in cy_tiocmset() local
2457 card = info->card; in cy_tiocmset()
2458 if (!cy_is_Z(card)) { in cy_tiocmset()
2459 spin_lock_irqsave(&card->card_lock, flags); in cy_tiocmset()
2461 spin_unlock_irqrestore(&card->card_lock, flags); in cy_tiocmset()
2464 int retval, channel = info->line - card->first_line; in cy_tiocmset()
2467 if (!cyz_is_loaded(card)) in cy_tiocmset()
2470 spin_lock_irqsave(&card->card_lock, flags); in cy_tiocmset()
2490 retval = cyz_issue_cmd(card, channel, C_CM_IOCTLM, 0L); in cy_tiocmset()
2491 spin_unlock_irqrestore(&card->card_lock, flags); in cy_tiocmset()
2506 struct cyclades_card *card; in cy_break() local
2513 card = info->card; in cy_break()
2515 spin_lock_irqsave(&card->card_lock, flags); in cy_break()
2516 if (!cy_is_Z(card)) { in cy_break()
2524 spin_unlock_irqrestore(&card->card_lock, flags); in cy_break()
2526 spin_lock_irqsave(&card->card_lock, flags); in cy_break()
2533 spin_unlock_irqrestore(&card->card_lock, flags); in cy_break()
2535 spin_lock_irqsave(&card->card_lock, flags); in cy_break()
2541 retval = cyz_issue_cmd(card, in cy_break()
2542 info->line - card->first_line, in cy_break()
2549 retval = cyz_issue_cmd(card, in cy_break()
2550 info->line - card->first_line, in cy_break()
2559 spin_unlock_irqrestore(&card->card_lock, flags); in cy_break()
2565 struct cyclades_card *card = info->card; in set_threshold() local
2568 if (!cy_is_Z(card)) { in set_threshold()
2572 spin_lock_irqsave(&card->card_lock, flags); in set_threshold()
2575 spin_unlock_irqrestore(&card->card_lock, flags); in set_threshold()
2583 struct cyclades_card *card = info->card; in get_threshold() local
2585 if (!cy_is_Z(card)) { in get_threshold()
2594 struct cyclades_card *card = info->card; in set_timeout() local
2597 if (!cy_is_Z(card)) { in set_timeout()
2598 spin_lock_irqsave(&card->card_lock, flags); in set_timeout()
2600 spin_unlock_irqrestore(&card->card_lock, flags); in set_timeout()
2608 struct cyclades_card *card = info->card; in get_timeout() local
2610 if (!cy_is_Z(card)) { in get_timeout()
2624 spin_lock_irqsave(&info->card->card_lock, flags); in cy_cflags_changed()
2626 spin_unlock_irqrestore(&info->card->card_lock, flags); in cy_cflags_changed()
2742 spin_lock_irqsave(&info->card->card_lock, flags); in cy_ioctl()
2745 spin_unlock_irqrestore(&info->card->card_lock, flags); in cy_ioctl()
2773 spin_lock_irqsave(&info->card->card_lock, flags); in cy_get_icount()
2775 spin_unlock_irqrestore(&info->card->card_lock, flags); in cy_get_icount()
2831 struct cyclades_card *card; in cy_send_xchar() local
2842 card = info->card; in cy_send_xchar()
2843 channel = info->line - card->first_line; in cy_send_xchar()
2845 if (cy_is_Z(card)) { in cy_send_xchar()
2847 cyz_issue_cmd(card, channel, C_CM_SENDXOFF, 0L); in cy_send_xchar()
2849 cyz_issue_cmd(card, channel, C_CM_SENDXON, 0L); in cy_send_xchar()
2860 struct cyclades_card *card; in cy_throttle() local
2873 card = info->card; in cy_throttle()
2876 if (!cy_is_Z(card)) in cy_throttle()
2883 if (!cy_is_Z(card)) { in cy_throttle()
2884 spin_lock_irqsave(&card->card_lock, flags); in cy_throttle()
2886 spin_unlock_irqrestore(&card->card_lock, flags); in cy_throttle()
2901 struct cyclades_card *card; in cy_unthrottle() local
2922 card = info->card; in cy_unthrottle()
2923 if (!cy_is_Z(card)) { in cy_unthrottle()
2924 spin_lock_irqsave(&card->card_lock, flags); in cy_unthrottle()
2926 spin_unlock_irqrestore(&card->card_lock, flags); in cy_unthrottle()
2950 cinfo = info->card; in cy_stop()
2974 cinfo = info->card; in cy_start()
3007 struct cyclades_card *cinfo = info->card; in cyy_carrier_raised()
3024 struct cyclades_card *cinfo = info->card; in cyy_dtr_rts()
3045 struct cyclades_card *cinfo = info->card; in cyz_dtr_rts()
3105 info->card = cinfo; in cy_init_card()
3272 struct cyclades_card *card; in cy_detect_isa() local
3333 card = &cy_card[j]; in cy_detect_isa()
3334 if (card->base_addr == NULL) in cy_detect_isa()
3348 0, "Cyclom-Y", card)) { in cy_detect_isa()
3357 card->base_addr = cy_isa_address; in cy_detect_isa()
3358 card->ctl_addr.p9050 = NULL; in cy_detect_isa()
3359 card->irq = (int)cy_isa_irq; in cy_detect_isa()
3360 card->bus_index = 0; in cy_detect_isa()
3361 card->first_line = cy_next_channel; in cy_detect_isa()
3362 card->num_chips = cy_isa_nchan / CyPORTS_PER_CHIP; in cy_detect_isa()
3363 card->nports = cy_isa_nchan; in cy_detect_isa()
3364 if (cy_init_card(card)) { in cy_detect_isa()
3365 card->base_addr = NULL; in cy_detect_isa()
3366 free_irq(cy_isa_irq, card); in cy_detect_isa()
3380 tty_port_register_device(&card->ports[k].port, in cy_detect_isa()
3681 struct cyclades_card *card; in cy_pci_probe() local
3816 card = &cy_card[card_no]; in cy_pci_probe()
3817 if (card->base_addr == NULL) in cy_pci_probe()
3831 IRQF_SHARED, "Cyclom-Y", card); in cy_pci_probe()
3836 card->num_chips = nchan / CyPORTS_PER_CHIP; in cy_pci_probe()
3843 card->hw_ver = mailbox; in cy_pci_probe()
3844 card->num_chips = (unsigned int)-1; in cy_pci_probe()
3845 card->board_ctrl = &zfw_ctrl->board_ctrl; in cy_pci_probe()
3850 IRQF_SHARED, "Cyclades-Z", card); in cy_pci_probe()
3860 card->base_addr = addr2; in cy_pci_probe()
3861 card->ctl_addr.p9050 = addr0; in cy_pci_probe()
3862 card->irq = irq; in cy_pci_probe()
3863 card->bus_index = 1; in cy_pci_probe()
3864 card->first_line = cy_next_channel; in cy_pci_probe()
3865 card->nports = nchan; in cy_pci_probe()
3866 retval = cy_init_card(card); in cy_pci_probe()
3870 pci_set_drvdata(pdev, card); in cy_pci_probe()
3897 tty_port_register_device(&card->ports[j].port, in cy_pci_probe()
3903 card->base_addr = NULL; in cy_pci_probe()
3904 free_irq(irq, card); in cy_pci_probe()
4122 struct cyclades_card *card; in cy_cleanup_module() local
4139 card = &cy_card[i]; in cy_cleanup_module()
4140 if (card->base_addr) { in cy_cleanup_module()
4142 cy_writeb(card->base_addr + Cy_ClrIntr, 0); in cy_cleanup_module()
4143 iounmap(card->base_addr); in cy_cleanup_module()
4144 if (card->ctl_addr.p9050) in cy_cleanup_module()
4145 iounmap(card->ctl_addr.p9050); in cy_cleanup_module()
4146 if (card->irq in cy_cleanup_module()
4148 && !cy_is_Z(card) in cy_cleanup_module()
4151 free_irq(card->irq, card); in cy_cleanup_module()
4152 for (e1 = card->first_line; e1 < card->first_line + in cy_cleanup_module()
4153 card->nports; e1++) in cy_cleanup_module()
4155 kfree(card->ports); in cy_cleanup_module()