Lines Matching defs:edge_port

223 static void stop_read(struct edgeport_port *edge_port);
224 static int restart_read(struct edgeport_port *edge_port);
1557 static void handle_new_msr(struct edgeport_port *edge_port, __u8 msr)
1562 dev_dbg(&edge_port->port->dev, "%s - %02x\n", __func__, msr);
1566 icount = &edge_port->port->icount;
1577 wake_up_interruptible(&edge_port->port->port.delta_msr_wait);
1581 edge_port->shadow_msr = msr & 0xf0;
1583 tty = tty_port_tty_get(&edge_port->port->port);
1592 static void handle_new_lsr(struct edgeport_port *edge_port, int lsr_data,
1599 dev_dbg(&edge_port->port->dev, "%s - %02x\n", __func__, new_lsr);
1601 edge_port->shadow_lsr = lsr;
1612 edge_tty_recv(edge_port->port, &data, 1);
1615 icount = &edge_port->port->icount;
1630 struct edgeport_port *edge_port;
1682 edge_port = usb_get_serial_port_data(port);
1683 if (!edge_port) {
1684 dev_dbg(dev, "%s - edge_port not found\n", __func__);
1696 edge_port->lsr_event = 1;
1697 edge_port->lsr_mask = lsr;
1701 handle_new_lsr(edge_port, 0, lsr, 0);
1710 handle_new_msr(edge_port, msr);
1731 struct edgeport_port *edge_port = urb->context;
1732 struct device *dev = &edge_port->port->dev;
1761 port_number = edge_port->port->port_number;
1763 if (urb->actual_length > 0 && edge_port->lsr_event) {
1764 edge_port->lsr_event = 0;
1766 __func__, port_number, edge_port->lsr_mask, *data);
1767 handle_new_lsr(edge_port, 1, edge_port->lsr_mask, *data);
1775 if (edge_port->close_pending)
1779 edge_tty_recv(edge_port->port, data,
1781 edge_port->port->icount.rx += urb->actual_length;
1786 spin_lock_irqsave(&edge_port->ep_lock, flags);
1787 if (edge_port->ep_read_urb_state == EDGE_READ_URB_RUNNING)
1789 else if (edge_port->ep_read_urb_state == EDGE_READ_URB_STOPPING)
1790 edge_port->ep_read_urb_state = EDGE_READ_URB_STOPPED;
1792 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
1812 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
1816 edge_port->ep_write_urb_in_use = 0;
1842 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
1851 if (edge_port == NULL)
1859 status = ti_do_config(edge_port, UMPC_SET_CLR_LOOPBACK, 0);
1876 edge_port->ump_read_timeout =
1916 &edge_port->shadow_msr, 1);
1923 dev_dbg(&port->dev, "ShadowMSR 0x%X\n", edge_port->shadow_msr);
1926 edge_port->shadow_mcr = MCR_RTS | MCR_DTR;
1927 dev_dbg(&port->dev, "ShadowMCR 0x%X\n", edge_port->shadow_mcr);
1929 edge_serial = edge_port->edge_serial;
1954 edge_port->ep_read_urb_state = EDGE_READ_URB_RUNNING;
1955 urb->context = edge_port;
1969 if (edge_port->edge_serial->num_ports_open == 0)
1979 struct edgeport_port *edge_port;
1985 edge_port = usb_get_serial_port_data(port);
1986 if (edge_serial == NULL || edge_port == NULL)
1993 edge_port->close_pending = 1;
1997 edge_port->ep_write_urb_in_use = 0;
1998 spin_lock_irqsave(&edge_port->ep_lock, flags);
2000 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2008 --edge_port->edge_serial->num_ports_open;
2009 if (edge_port->edge_serial->num_ports_open <= 0) {
2012 edge_port->edge_serial->num_ports_open = 0;
2015 edge_port->close_pending = 0;
2021 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2028 if (edge_port == NULL)
2030 if (edge_port->close_pending == 1)
2034 &edge_port->ep_lock);
2043 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2046 spin_lock_irqsave(&edge_port->ep_lock, flags);
2048 if (edge_port->ep_write_urb_in_use) {
2049 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2058 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2062 edge_port->ep_write_urb_in_use = 1;
2064 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2077 edge_port->ep_write_urb_in_use = 0;
2080 edge_port->port->icount.tx += count;
2093 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2097 if (edge_port == NULL)
2099 if (edge_port->close_pending == 1)
2102 spin_lock_irqsave(&edge_port->ep_lock, flags);
2104 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2113 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2116 if (edge_port == NULL)
2119 spin_lock_irqsave(&edge_port->ep_lock, flags);
2121 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2129 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2132 ret = tx_active(edge_port);
2142 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2145 if (edge_port == NULL)
2162 stop_read(edge_port);
2169 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2172 if (edge_port == NULL)
2188 status = restart_read(edge_port);
2197 static void stop_read(struct edgeport_port *edge_port)
2201 spin_lock_irqsave(&edge_port->ep_lock, flags);
2203 if (edge_port->ep_read_urb_state == EDGE_READ_URB_RUNNING)
2204 edge_port->ep_read_urb_state = EDGE_READ_URB_STOPPING;
2205 edge_port->shadow_mcr &= ~MCR_RTS;
2207 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2210 static int restart_read(struct edgeport_port *edge_port)
2216 spin_lock_irqsave(&edge_port->ep_lock, flags);
2218 if (edge_port->ep_read_urb_state == EDGE_READ_URB_STOPPED) {
2219 urb = edge_port->port->read_urb;
2222 edge_port->ep_read_urb_state = EDGE_READ_URB_RUNNING;
2223 edge_port->shadow_mcr |= MCR_RTS;
2225 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2231 struct edgeport_port *edge_port, struct ktermios *old_termios)
2233 struct device *dev = &edge_port->port->dev;
2238 int port_number = edge_port->port->port_number;
2253 config->bUartMode = (__u8)(edge_port->bUartMode);
2305 restart_read(edge_port);
2344 edge_port->baud_rate = baud;
2364 status = send_cmd(edge_port->port->serial->dev, UMPC_SET_CONFIG,
2376 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2378 if (edge_port == NULL)
2381 change_port_settings(tty, edge_port, old_termios);
2388 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2392 spin_lock_irqsave(&edge_port->ep_lock, flags);
2393 mcr = edge_port->shadow_mcr;
2408 edge_port->shadow_mcr = mcr;
2409 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2411 restore_mcr(edge_port, mcr);
2418 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2424 spin_lock_irqsave(&edge_port->ep_lock, flags);
2426 msr = edge_port->shadow_msr;
2427 mcr = edge_port->shadow_mcr;
2437 spin_unlock_irqrestore(&edge_port->ep_lock, flags);
2446 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2449 cwait = edge_port->port->port.closing_wait;
2454 ss->line = edge_port->port->minor;
2455 ss->port = edge_port->port->port_number;
2457 ss->xmit_fifo_size = edge_port->port->bulk_out_size;
2467 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2473 status = ti_do_config(edge_port, UMPC_SET_CLR_BREAK, bv);
2586 struct edgeport_port *edge_port;
2589 edge_port = kzalloc(sizeof(*edge_port), GFP_KERNEL);
2590 if (!edge_port)
2593 spin_lock_init(&edge_port->ep_lock);
2594 edge_port->port = port;
2595 edge_port->edge_serial = usb_get_serial_data(port->serial);
2596 edge_port->bUartMode = default_uart_mode;
2600 edge_port->uart_base = UMPMEM_BASE_UART1;
2601 edge_port->dma_address = UMPD_OEDB1_ADDRESS;
2604 edge_port->uart_base = UMPMEM_BASE_UART2;
2605 edge_port->dma_address = UMPD_OEDB2_ADDRESS;
2615 __func__, port->port_number, edge_port->uart_base,
2616 edge_port->dma_address);
2618 usb_set_serial_port_data(port, edge_port);
2629 kfree(edge_port);
2636 struct edgeport_port *edge_port;
2638 edge_port = usb_get_serial_port_data(port);
2640 kfree(edge_port);
2651 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2653 return sprintf(buf, "%d\n", edge_port->bUartMode);
2660 struct edgeport_port *edge_port = usb_get_serial_port_data(port);
2666 edge_port->bUartMode = v;