Symbol: cdns_uart
drivers/tty/serial/xilinx_uartps.c
1033
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1035
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED)
drivers/tty/serial/xilinx_uartps.c
1036
hrtimer_cancel(&cdns_uart->tx_timer);
drivers/tty/serial/xilinx_uartps.c
1147
struct cdns_uart *cdns_uart_data = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1169
struct cdns_uart *cdns_uart_data = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1501
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1510
ret = clk_enable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1514
ret = clk_enable(cdns_uart->uartclk);
drivers/tty/serial/xilinx_uartps.c
1516
clk_disable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1538
clk_disable(cdns_uart->uartclk);
drivers/tty/serial/xilinx_uartps.c
1539
clk_disable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1556
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1558
clk_disable(cdns_uart->uartclk);
drivers/tty/serial/xilinx_uartps.c
1559
clk_disable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1566
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1569
ret = clk_enable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1573
ret = clk_enable(cdns_uart->uartclk);
drivers/tty/serial/xilinx_uartps.c
1575
clk_disable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1615
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1625
hrtimer_setup(&cdns_uart->tx_timer, &cdns_rs485_tx_callback, CLOCK_MONOTONIC,
drivers/tty/serial/xilinx_uartps.c
1631
hrtimer_cancel(&cdns_uart->tx_timer);
drivers/tty/serial/xilinx_uartps.c
1647
struct cdns_uart *cdns_uart_data;
drivers/tty/serial/xilinx_uartps.c
1871
struct cdns_uart *cdns_uart_data = port->private_data;
drivers/tty/serial/xilinx_uartps.c
226
#define to_cdns_uart(_nb) container_of(_nb, struct cdns_uart, \
drivers/tty/serial/xilinx_uartps.c
238
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
246
is_rxbs_support = cdns_uart->quirks & CDNS_UART_RXBS_SUPPORT;
drivers/tty/serial/xilinx_uartps.c
329
static void cdns_rts_gpio_enable(struct cdns_uart *cdns_uart, bool enable)
drivers/tty/serial/xilinx_uartps.c
333
if (cdns_uart->gpiod_rts) {
drivers/tty/serial/xilinx_uartps.c
334
gpiod_set_value(cdns_uart->gpiod_rts, enable);
drivers/tty/serial/xilinx_uartps.c
336
val = readl(cdns_uart->port->membase + CDNS_UART_MODEMCR);
drivers/tty/serial/xilinx_uartps.c
341
writel(val, cdns_uart->port->membase + CDNS_UART_MODEMCR);
drivers/tty/serial/xilinx_uartps.c
349
static void cdns_rs485_tx_setup(struct cdns_uart *cdns_uart)
drivers/tty/serial/xilinx_uartps.c
353
enable = cdns_uart->port->rs485.flags & SER_RS485_RTS_ON_SEND;
drivers/tty/serial/xilinx_uartps.c
354
cdns_rts_gpio_enable(cdns_uart, enable);
drivers/tty/serial/xilinx_uartps.c
356
cdns_uart->rs485_tx_started = true;
drivers/tty/serial/xilinx_uartps.c
363
static void cdns_rs485_rx_setup(struct cdns_uart *cdns_uart)
drivers/tty/serial/xilinx_uartps.c
367
enable = cdns_uart->port->rs485.flags & SER_RS485_RTS_AFTER_SEND;
drivers/tty/serial/xilinx_uartps.c
368
cdns_rts_gpio_enable(cdns_uart, enable);
drivers/tty/serial/xilinx_uartps.c
370
cdns_uart->rs485_tx_started = false;
drivers/tty/serial/xilinx_uartps.c
394
struct cdns_uart *cdns_uart = container_of(t, struct cdns_uart, tx_timer);
drivers/tty/serial/xilinx_uartps.c
400
cdns_rs485_rx_setup(cdns_uart);
drivers/tty/serial/xilinx_uartps.c
409
static u64 cdns_calc_after_tx_delay(struct cdns_uart *cdns_uart)
drivers/tty/serial/xilinx_uartps.c
414
return cdns_uart->port->frame_time
drivers/tty/serial/xilinx_uartps.c
415
+ DIV_ROUND_UP(cdns_uart->port->frame_time, 7)
drivers/tty/serial/xilinx_uartps.c
416
+ (u64)cdns_uart->port->rs485.delay_rts_after_send * NSEC_PER_MSEC;
drivers/tty/serial/xilinx_uartps.c
427
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
437
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED) {
drivers/tty/serial/xilinx_uartps.c
438
cdns_uart->tx_timer.function = &cdns_rs485_rx_callback;
drivers/tty/serial/xilinx_uartps.c
439
rts_delay = ns_to_ktime(cdns_calc_after_tx_delay(cdns_uart));
drivers/tty/serial/xilinx_uartps.c
440
hrtimer_start(&cdns_uart->tx_timer, rts_delay, HRTIMER_MODE_REL);
drivers/tty/serial/xilinx_uartps.c
457
writel(CDNS_UART_IXR_TXEMPTY, cdns_uart->port->membase + CDNS_UART_IER);
drivers/tty/serial/xilinx_uartps.c
575
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
589
cdns_uart->baud = baud;
drivers/tty/serial/xilinx_uartps.c
609
struct cdns_uart *cdns_uart = to_cdns_uart(nb);
drivers/tty/serial/xilinx_uartps.c
612
port = cdns_uart->port;
drivers/tty/serial/xilinx_uartps.c
626
if (!cdns_uart_calc_baud_divs(ndata->new_rate, cdns_uart->baud,
drivers/tty/serial/xilinx_uartps.c
632
uart_port_lock_irqsave(cdns_uart->port, &flags);
drivers/tty/serial/xilinx_uartps.c
639
uart_port_unlock_irqrestore(cdns_uart->port, flags);
drivers/tty/serial/xilinx_uartps.c
649
uart_port_lock_irqsave(cdns_uart->port, &flags);
drivers/tty/serial/xilinx_uartps.c
654
cdns_uart->baud = cdns_uart_set_baud_rate(cdns_uart->port,
drivers/tty/serial/xilinx_uartps.c
655
cdns_uart->baud);
drivers/tty/serial/xilinx_uartps.c
659
uart_port_lock_irqsave(cdns_uart->port, &flags);
drivers/tty/serial/xilinx_uartps.c
681
uart_port_unlock_irqrestore(cdns_uart->port, flags);
drivers/tty/serial/xilinx_uartps.c
696
struct cdns_uart *cdns_uart = container_of(t, struct cdns_uart, tx_timer);
drivers/tty/serial/xilinx_uartps.c
698
uart_port_lock(cdns_uart->port);
drivers/tty/serial/xilinx_uartps.c
699
cdns_uart_handle_tx(cdns_uart->port);
drivers/tty/serial/xilinx_uartps.c
700
uart_port_unlock(cdns_uart->port);
drivers/tty/serial/xilinx_uartps.c
712
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
732
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED) {
drivers/tty/serial/xilinx_uartps.c
733
if (!cdns_uart->rs485_tx_started) {
drivers/tty/serial/xilinx_uartps.c
734
hrtimer_update_function(&cdns_uart->tx_timer, cdns_rs485_tx_callback);
drivers/tty/serial/xilinx_uartps.c
735
cdns_rs485_tx_setup(cdns_uart);
drivers/tty/serial/xilinx_uartps.c
736
return hrtimer_start(&cdns_uart->tx_timer,
drivers/tty/serial/xilinx_uartps.c
751
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
753
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED)
drivers/tty/serial/xilinx_uartps.c
754
cdns_rs485_rx_setup(cdns_uart);
drivers/tty/serial/xilinx_uartps.c
943
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
949
is_brk_support = cdns_uart->quirks & CDNS_UART_RXBS_SUPPORT;
drivers/tty/serial/xilinx_uartps.c
951
ret = reset_control_deassert(cdns_uart->rstc);
drivers/tty/serial/xilinx_uartps.c
971
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED)
drivers/tty/serial/xilinx_uartps.c
972
cdns_rs485_rx_setup(cdns_uart);