Symbol: cdns_uart
drivers/tty/serial/xilinx_uartps.c
1032
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1034
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED)
drivers/tty/serial/xilinx_uartps.c
1035
hrtimer_cancel(&cdns_uart->tx_timer);
drivers/tty/serial/xilinx_uartps.c
1146
struct cdns_uart *cdns_uart_data = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1168
struct cdns_uart *cdns_uart_data = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1500
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1509
ret = clk_enable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1513
ret = clk_enable(cdns_uart->uartclk);
drivers/tty/serial/xilinx_uartps.c
1515
clk_disable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1537
clk_disable(cdns_uart->uartclk);
drivers/tty/serial/xilinx_uartps.c
1538
clk_disable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1555
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1557
clk_disable(cdns_uart->uartclk);
drivers/tty/serial/xilinx_uartps.c
1558
clk_disable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1565
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1568
ret = clk_enable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1572
ret = clk_enable(cdns_uart->uartclk);
drivers/tty/serial/xilinx_uartps.c
1574
clk_disable(cdns_uart->pclk);
drivers/tty/serial/xilinx_uartps.c
1614
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
1624
hrtimer_setup(&cdns_uart->tx_timer, &cdns_rs485_tx_callback, CLOCK_MONOTONIC,
drivers/tty/serial/xilinx_uartps.c
1630
hrtimer_cancel(&cdns_uart->tx_timer);
drivers/tty/serial/xilinx_uartps.c
1646
struct cdns_uart *cdns_uart_data;
drivers/tty/serial/xilinx_uartps.c
1870
struct cdns_uart *cdns_uart_data = port->private_data;
drivers/tty/serial/xilinx_uartps.c
225
#define to_cdns_uart(_nb) container_of(_nb, struct cdns_uart, \
drivers/tty/serial/xilinx_uartps.c
237
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
245
is_rxbs_support = cdns_uart->quirks & CDNS_UART_RXBS_SUPPORT;
drivers/tty/serial/xilinx_uartps.c
328
static void cdns_rts_gpio_enable(struct cdns_uart *cdns_uart, bool enable)
drivers/tty/serial/xilinx_uartps.c
332
if (cdns_uart->gpiod_rts) {
drivers/tty/serial/xilinx_uartps.c
333
gpiod_set_value(cdns_uart->gpiod_rts, enable);
drivers/tty/serial/xilinx_uartps.c
335
val = readl(cdns_uart->port->membase + CDNS_UART_MODEMCR);
drivers/tty/serial/xilinx_uartps.c
340
writel(val, cdns_uart->port->membase + CDNS_UART_MODEMCR);
drivers/tty/serial/xilinx_uartps.c
348
static void cdns_rs485_tx_setup(struct cdns_uart *cdns_uart)
drivers/tty/serial/xilinx_uartps.c
352
enable = cdns_uart->port->rs485.flags & SER_RS485_RTS_ON_SEND;
drivers/tty/serial/xilinx_uartps.c
353
cdns_rts_gpio_enable(cdns_uart, enable);
drivers/tty/serial/xilinx_uartps.c
355
cdns_uart->rs485_tx_started = true;
drivers/tty/serial/xilinx_uartps.c
362
static void cdns_rs485_rx_setup(struct cdns_uart *cdns_uart)
drivers/tty/serial/xilinx_uartps.c
366
enable = cdns_uart->port->rs485.flags & SER_RS485_RTS_AFTER_SEND;
drivers/tty/serial/xilinx_uartps.c
367
cdns_rts_gpio_enable(cdns_uart, enable);
drivers/tty/serial/xilinx_uartps.c
369
cdns_uart->rs485_tx_started = false;
drivers/tty/serial/xilinx_uartps.c
393
struct cdns_uart *cdns_uart = container_of(t, struct cdns_uart, tx_timer);
drivers/tty/serial/xilinx_uartps.c
399
cdns_rs485_rx_setup(cdns_uart);
drivers/tty/serial/xilinx_uartps.c
408
static u64 cdns_calc_after_tx_delay(struct cdns_uart *cdns_uart)
drivers/tty/serial/xilinx_uartps.c
413
return cdns_uart->port->frame_time
drivers/tty/serial/xilinx_uartps.c
414
+ DIV_ROUND_UP(cdns_uart->port->frame_time, 7)
drivers/tty/serial/xilinx_uartps.c
415
+ (u64)cdns_uart->port->rs485.delay_rts_after_send * NSEC_PER_MSEC;
drivers/tty/serial/xilinx_uartps.c
426
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
436
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED) {
drivers/tty/serial/xilinx_uartps.c
437
cdns_uart->tx_timer.function = &cdns_rs485_rx_callback;
drivers/tty/serial/xilinx_uartps.c
438
rts_delay = ns_to_ktime(cdns_calc_after_tx_delay(cdns_uart));
drivers/tty/serial/xilinx_uartps.c
439
hrtimer_start(&cdns_uart->tx_timer, rts_delay, HRTIMER_MODE_REL);
drivers/tty/serial/xilinx_uartps.c
456
writel(CDNS_UART_IXR_TXEMPTY, cdns_uart->port->membase + CDNS_UART_IER);
drivers/tty/serial/xilinx_uartps.c
574
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
588
cdns_uart->baud = baud;
drivers/tty/serial/xilinx_uartps.c
608
struct cdns_uart *cdns_uart = to_cdns_uart(nb);
drivers/tty/serial/xilinx_uartps.c
611
port = cdns_uart->port;
drivers/tty/serial/xilinx_uartps.c
625
if (!cdns_uart_calc_baud_divs(ndata->new_rate, cdns_uart->baud,
drivers/tty/serial/xilinx_uartps.c
631
uart_port_lock_irqsave(cdns_uart->port, &flags);
drivers/tty/serial/xilinx_uartps.c
638
uart_port_unlock_irqrestore(cdns_uart->port, flags);
drivers/tty/serial/xilinx_uartps.c
648
uart_port_lock_irqsave(cdns_uart->port, &flags);
drivers/tty/serial/xilinx_uartps.c
653
cdns_uart->baud = cdns_uart_set_baud_rate(cdns_uart->port,
drivers/tty/serial/xilinx_uartps.c
654
cdns_uart->baud);
drivers/tty/serial/xilinx_uartps.c
658
uart_port_lock_irqsave(cdns_uart->port, &flags);
drivers/tty/serial/xilinx_uartps.c
680
uart_port_unlock_irqrestore(cdns_uart->port, flags);
drivers/tty/serial/xilinx_uartps.c
695
struct cdns_uart *cdns_uart = container_of(t, struct cdns_uart, tx_timer);
drivers/tty/serial/xilinx_uartps.c
697
uart_port_lock(cdns_uart->port);
drivers/tty/serial/xilinx_uartps.c
698
cdns_uart_handle_tx(cdns_uart->port);
drivers/tty/serial/xilinx_uartps.c
699
uart_port_unlock(cdns_uart->port);
drivers/tty/serial/xilinx_uartps.c
711
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
731
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED) {
drivers/tty/serial/xilinx_uartps.c
732
if (!cdns_uart->rs485_tx_started) {
drivers/tty/serial/xilinx_uartps.c
733
hrtimer_update_function(&cdns_uart->tx_timer, cdns_rs485_tx_callback);
drivers/tty/serial/xilinx_uartps.c
734
cdns_rs485_tx_setup(cdns_uart);
drivers/tty/serial/xilinx_uartps.c
735
return hrtimer_start(&cdns_uart->tx_timer,
drivers/tty/serial/xilinx_uartps.c
750
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
752
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED)
drivers/tty/serial/xilinx_uartps.c
753
cdns_rs485_rx_setup(cdns_uart);
drivers/tty/serial/xilinx_uartps.c
942
struct cdns_uart *cdns_uart = port->private_data;
drivers/tty/serial/xilinx_uartps.c
948
is_brk_support = cdns_uart->quirks & CDNS_UART_RXBS_SUPPORT;
drivers/tty/serial/xilinx_uartps.c
950
ret = reset_control_deassert(cdns_uart->rstc);
drivers/tty/serial/xilinx_uartps.c
970
if (cdns_uart->port->rs485.flags & SER_RS485_ENABLED)
drivers/tty/serial/xilinx_uartps.c
971
cdns_rs485_rx_setup(cdns_uart);