Home
last modified time | relevance | path

Searched refs:rs485 (Results 1 – 25 of 63) sorted by relevance

123

/Linux-v6.1/drivers/tty/serial/8250/
D8250_dwlib.c138 static void dw8250_rs485_set_addr(struct uart_port *p, struct serial_rs485 *rs485, in dw8250_rs485_set_addr() argument
143 if (rs485->flags & SER_RS485_ADDRB) { in dw8250_rs485_set_addr()
148 if (rs485->flags & SER_RS485_ADDR_RECV) { in dw8250_rs485_set_addr()
149 u32 delta = p->rs485.flags ^ rs485->flags; in dw8250_rs485_set_addr()
155 if (unlikely(&p->rs485 == rs485)) in dw8250_rs485_set_addr()
156 delta = rs485->flags; in dw8250_rs485_set_addr()
159 (p->rs485.addr_recv != rs485->addr_recv)) in dw8250_rs485_set_addr()
160 dw8250_update_rar(p, rs485->addr_recv); in dw8250_rs485_set_addr()
165 if (rs485->flags & SER_RS485_ADDR_DEST) { in dw8250_rs485_set_addr()
171 dw8250_writel_ext(p, DW_UART_TAR, rs485->addr_dest); in dw8250_rs485_set_addr()
[all …]
D8250_fintek.c195 struct serial_rs485 *rs485) in fintek_8250_rs485_config() argument
204 if (rs485->flags & SER_RS485_ENABLED) { in fintek_8250_rs485_config()
206 if (!(rs485->flags & SER_RS485_RTS_ON_SEND) == in fintek_8250_rs485_config()
207 !(rs485->flags & SER_RS485_RTS_AFTER_SEND)) in fintek_8250_rs485_config()
212 if (rs485->delay_rts_before_send) { in fintek_8250_rs485_config()
213 rs485->delay_rts_before_send = 1; in fintek_8250_rs485_config()
217 if (rs485->delay_rts_after_send) { in fintek_8250_rs485_config()
218 rs485->delay_rts_after_send = 1; in fintek_8250_rs485_config()
222 if (rs485->flags & SER_RS485_RTS_ON_SEND) in fintek_8250_rs485_config()
D8250_lpc18xx.c36 struct serial_rs485 *rs485) in lpc18xx_rs485_config() argument
43 if (rs485->flags & SER_RS485_ENABLED) { in lpc18xx_rs485_config()
47 if (rs485->flags & SER_RS485_RTS_ON_SEND) in lpc18xx_rs485_config()
51 if (rs485->delay_rts_after_send) { in lpc18xx_rs485_config()
53 rs485_dly_reg = DIV_ROUND_UP(rs485->delay_rts_after_send in lpc18xx_rs485_config()
60 rs485->delay_rts_after_send = (rs485_dly_reg * MSEC_PER_SEC) in lpc18xx_rs485_config()
D8250_bcm2835aux.c54 if (!(up->port.rs485.flags & SER_RS485_RX_DURING_TX)) { in bcm2835aux_rs485_start_tx()
65 if (up->port.rs485.flags & SER_RS485_RTS_ON_SEND) in bcm2835aux_rs485_start_tx()
73 if (up->port.rs485.flags & SER_RS485_RTS_AFTER_SEND) in bcm2835aux_rs485_stop_tx()
78 if (!(up->port.rs485.flags & SER_RS485_RX_DURING_TX)) { in bcm2835aux_rs485_stop_tx()
D8250_exar.c116 struct serial_rs485 *rs485);
414 struct serial_rs485 *rs485) in generic_rs485_config() argument
416 bool is_rs485 = !!(rs485->flags & SER_RS485_ENABLED); in generic_rs485_config()
446 struct serial_rs485 *rs485) in iot2040_rs485_config() argument
448 bool is_rs485 = !!(rs485->flags & SER_RS485_ENABLED); in iot2040_rs485_config()
454 if (rs485->flags & SER_RS485_RX_DURING_TX) in iot2040_rs485_config()
459 if (rs485->flags & SER_RS485_TERMINATE_BUS) in iot2040_rs485_config()
475 return generic_rs485_config(port, termios, rs485); in iot2040_rs485_config()
/Linux-v6.1/arch/arm/boot/dts/
Daks-cdu.dts32 linux,rs485-enabled-at-boot-time;
33 rs485-rts-delay = <0 0>;
38 linux,rs485-enabled-at-boot-time;
39 rs485-rts-delay = <0 0>;
44 linux,rs485-enabled-at-boot-time;
45 rs485-rts-delay = <0 0>;
Dimx6qdl-dhcom-drc02.dtsi30 rs485-rx-en-hog {
33 line-name = "rs485-rx-en";
92 linux,rs485-enabled-at-boot-time;
122 * P: uart5 rs485-tx-en
123 * Q: uart5 rs485-rx-en
Dimx28-duckbill-2-485.dts174 rs485-red {
175 label = "duckbill:red:rs485";
179 rs485-green {
180 label = "duckbill:green:rs485";
Dam335x-nano.dts171 rs485-rts-active-high;
172 rs485-rx-during-tx;
173 rs485-rts-delay = <1 1>;
174 linux,rs485-enabled-at-boot-time;
182 rs485-rts-active-high;
183 rs485-rts-delay = <1 1>;
184 linux,rs485-enabled-at-boot-time;
Dstm32mp15xx-dhcom-drc02.dtsi36 rs485-rx-en-hog {
40 line-name = "rs485-rx-en";
145 linux,rs485-enabled-at-boot-time;
Danimeo_ip.dts59 linux,rs485-enabled-at-boot-time;
65 linux,rs485-enabled-at-boot-time;
Dimx6ul-kontron-bl-common.dtsi170 linux,rs485-enabled-at-boot-time;
171 rs485-rx-during-tx;
172 rs485-rts-active-low;
/Linux-v6.1/drivers/tty/serial/
Dserial_core.c164 if (old != port->mctrl && !(port->rs485.flags & SER_RS485_ENABLED)) in uart_update_mctrl()
1289 static int uart_check_rs485_flags(struct uart_port *port, struct serial_rs485 *rs485) in uart_check_rs485_flags() argument
1291 u32 flags = rs485->flags; in uart_check_rs485_flags()
1304 if (!(rs485->flags & SER_RS485_ADDRB) && in uart_check_rs485_flags()
1305 (rs485->flags & (SER_RS485_ADDR_RECV|SER_RS485_ADDR_DEST))) in uart_check_rs485_flags()
1309 if (!(rs485->flags & SER_RS485_ADDR_RECV) && rs485->addr_recv) in uart_check_rs485_flags()
1311 if (!(rs485->flags & SER_RS485_ADDR_DEST) && rs485->addr_dest) in uart_check_rs485_flags()
1318 struct serial_rs485 *rs485) in uart_sanitize_serial_rs485_delays() argument
1321 if (rs485->delay_rts_before_send) { in uart_sanitize_serial_rs485_delays()
1326 rs485->delay_rts_before_send = 0; in uart_sanitize_serial_rs485_delays()
[all …]
Domap-serial.c290 if (port->rs485.flags & SER_RS485_ENABLED) { in serial_omap_stop_tx()
301 res = (port->rs485.flags & SER_RS485_RTS_AFTER_SEND) ? in serial_omap_stop_tx()
304 if (port->rs485.delay_rts_after_send > 0) in serial_omap_stop_tx()
306 port->rs485.delay_rts_after_send); in serial_omap_stop_tx()
343 if ((up->port.rs485.flags & SER_RS485_ENABLED) && in serial_omap_put_char()
344 !(up->port.rs485.flags & SER_RS485_RX_DURING_TX)) in serial_omap_put_char()
394 if (port->rs485.flags & SER_RS485_ENABLED) { in serial_omap_start_tx()
400 res = (port->rs485.flags & SER_RS485_RTS_ON_SEND) ? 1 : 0; in serial_omap_start_tx()
403 if (port->rs485.delay_rts_before_send > 0) in serial_omap_start_tx()
404 mdelay(port->rs485.delay_rts_before_send); in serial_omap_start_tx()
[all …]
Dmax310x.c1022 delay = (one->port.rs485.delay_rts_before_send << 4) | in max310x_rs_proc()
1023 one->port.rs485.delay_rts_after_send; in max310x_rs_proc()
1026 if (one->port.rs485.flags & SER_RS485_ENABLED) { in max310x_rs_proc()
1029 if (!(one->port.rs485.flags & SER_RS485_RX_DURING_TX)) in max310x_rs_proc()
1040 struct serial_rs485 *rs485) in max310x_rs485_config() argument
1044 if ((rs485->delay_rts_before_send > 0x0f) || in max310x_rs485_config()
1045 (rs485->delay_rts_after_send > 0x0f)) in max310x_rs485_config()
1048 port->rs485 = *rs485; in max310x_rs485_config()
1073 val = (clamp(port->rs485.delay_rts_before_send, 0U, 15U) << 4) | in max310x_startup()
1074 clamp(port->rs485.delay_rts_after_send, 0U, 15U); in max310x_startup()
[all …]
Dmcf.c102 if (port->rs485.flags & SER_RS485_ENABLED) { in mcf_start_tx()
256 if (port->rs485.flags & SER_RS485_ENABLED) { in mcf_set_termios()
354 if (port->rs485.flags & SER_RS485_ENABLED) in mcf_tx_chars()
435 struct serial_rs485 *rs485) in mcf_config_rs485() argument
442 if (rs485->flags & SER_RS485_ENABLED) { in mcf_config_rs485()
Dimx.c453 if (port->rs485.flags & SER_RS485_ENABLED) { in imx_uart_stop_tx()
457 if (port->rs485.delay_rts_after_send > 0) { in imx_uart_stop_tx()
459 port->rs485.delay_rts_after_send); in imx_uart_stop_tx()
473 if (port->rs485.flags & SER_RS485_RTS_AFTER_SEND) in imx_uart_stop_tx()
606 else if (sport->port.rs485.flags & SER_RS485_ENABLED) { in imx_uart_dma_tx_callback()
691 if (port->rs485.flags & SER_RS485_ENABLED) { in imx_uart_start_tx()
694 if (port->rs485.flags & SER_RS485_RTS_ON_SEND) in imx_uart_start_tx()
700 if (!(port->rs485.flags & SER_RS485_RX_DURING_TX)) in imx_uart_start_tx()
705 if (port->rs485.delay_rts_before_send > 0) { in imx_uart_start_tx()
707 port->rs485.delay_rts_before_send); in imx_uart_start_tx()
[all …]
Dsc16is7xx.c821 if ((port->rs485.flags & SER_RS485_ENABLED) && in sc16is7xx_tx_proc()
822 (port->rs485.delay_rts_before_send > 0)) in sc16is7xx_tx_proc()
823 msleep(port->rs485.delay_rts_before_send); in sc16is7xx_tx_proc()
839 struct serial_rs485 *rs485 = &port->rs485; in sc16is7xx_reconf_rs485() local
843 if (rs485->flags & SER_RS485_ENABLED) { in sc16is7xx_reconf_rs485()
846 if (rs485->flags & SER_RS485_RTS_AFTER_SEND) in sc16is7xx_reconf_rs485()
1131 struct serial_rs485 *rs485) in sc16is7xx_config_rs485() argument
1136 if (rs485->flags & SER_RS485_ENABLED) { in sc16is7xx_config_rs485()
1142 if (rs485->delay_rts_after_send) in sc16is7xx_config_rs485()
Damba-pl011.c1307 if (port->rs485.delay_rts_after_send) in pl011_rs485_tx_stop()
1308 mdelay(port->rs485.delay_rts_after_send); in pl011_rs485_tx_stop()
1312 if (port->rs485.flags & SER_RS485_RTS_AFTER_SEND) in pl011_rs485_tx_stop()
1334 if ((port->rs485.flags & SER_RS485_ENABLED) && uap->rs485_tx_started) in pl011_stop_tx()
1445 if (!(port->rs485.flags & SER_RS485_RX_DURING_TX)) in pl011_rs485_tx_start()
1448 if (port->rs485.flags & SER_RS485_RTS_ON_SEND) in pl011_rs485_tx_start()
1455 if (port->rs485.delay_rts_before_send) in pl011_rs485_tx_start()
1456 mdelay(port->rs485.delay_rts_before_send); in pl011_rs485_tx_start()
1478 if ((uap->port.rs485.flags & SER_RS485_ENABLED) && in pl011_tx_chars()
1858 if (!(port->rs485.flags & SER_RS485_ENABLED)) in pl011_startup()
[all …]
/Linux-v6.1/arch/arm64/boot/dts/freescale/
Dimx8mp-verdin-dev.dtsi38 linux,rs485-enabled-at-boot-time;
39 rs485-rts-active-low;
40 rs485-rx-during-tx;
Dimx8mm-verdin-dev.dtsi59 linux,rs485-enabled-at-boot-time;
60 rs485-rts-active-low;
61 rs485-rx-during-tx;
DMakefile123 imx8mm-venice-gw72xx-0x-rs485-dtbs := imx8mm-venice-gw72xx-0x.dtb imx8mm-venice-gw72xx-0x-rs485.dtbo
127 imx8mm-venice-gw73xx-0x-rs485-dtbs := imx8mm-venice-gw73xx-0x.dtb imx8mm-venice-gw73xx-0x-rs485.dtbo
132 dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw72xx-0x-rs485.dtb
136 dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw73xx-0x-rs485.dtb
/Linux-v6.1/arch/x86/platform/ts5500/
Dts5500.c77 bool rs485; member
135 sbc->rs485 = tmp & TS5500_RS485; in ts5500_detect_config()
188 TS5500_ATTR_BOOL(rs485);
/Linux-v6.1/Documentation/devicetree/bindings/serial/
Drs485.txt1 See rs485.yaml
/Linux-v6.1/Documentation/driver-api/serial/
Dindex.rst20 serial-rs485

123