/linux-6.3-rc2/drivers/tty/serial/8250/ |
A D | 8250_dwlib.c | 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() 181 struct serial_rs485 *rs485) in dw8250_rs485_config() argument 188 if (rs485->flags & SER_RS485_ENABLED) { in dw8250_rs485_config() [all …]
|
A D | 8250_fintek.c | 195 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()
|
A D | 8250_lpc18xx.c | 36 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()
|
A D | 8250_bcm2835aux.c | 54 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()
|
A D | 8250_pci1xxxx.c | 169 struct serial_rs485 *rs485) in pci1xxxx_rs485_config() argument 180 if (rs485->flags & SER_RS485_ENABLED) { in pci1xxxx_rs485_config() 183 if (!(rs485->flags & SER_RS485_RTS_ON_SEND)) in pci1xxxx_rs485_config() 186 if (rs485->delay_rts_after_send) { in pci1xxxx_rs485_config() 192 rs485->delay_rts_after_send * NSEC_PER_MSEC / in pci1xxxx_rs485_config() 199 rs485->delay_rts_after_send = in pci1xxxx_rs485_config()
|
A D | 8250_exar.c | 122 struct serial_rs485 *rs485); 420 struct serial_rs485 *rs485) in generic_rs485_config() argument 422 bool is_rs485 = !!(rs485->flags & SER_RS485_ENABLED); in generic_rs485_config() 452 struct serial_rs485 *rs485) in iot2040_rs485_config() argument 454 bool is_rs485 = !!(rs485->flags & SER_RS485_ENABLED); in iot2040_rs485_config() 460 if (rs485->flags & SER_RS485_RX_DURING_TX) in iot2040_rs485_config() 465 if (rs485->flags & SER_RS485_TERMINATE_BUS) in iot2040_rs485_config() 481 return generic_rs485_config(port, termios, rs485); in iot2040_rs485_config()
|
/linux-6.3-rc2/Documentation/devicetree/bindings/serial/ |
A D | rs485.yaml | 4 $id: http://devicetree.org/schemas/serial/rs485.yaml# 17 rs485-rts-delay: 32 rs485-rts-active-low: 36 rs485-rx-active-high: 41 linux,rs485-enabled-at-boot-time: 42 description: enables the rs485 feature at boot time. It can be disabled 46 rs485-rx-during-tx: 50 rs485-term-gpios: 54 rs485-rx-during-tx-gpios: 55 description: Output GPIO pin that sets the state of rs485-rx-during-tx. This
|
A D | rs485.txt | 1 See rs485.yaml
|
A D | st,stm32-uart.yaml | 74 - $ref: rs485.yaml# 123 rs485-rts-active-low;
|
/linux-6.3-rc2/arch/arm/boot/dts/ |
A D | aks-cdu.dts | 32 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>;
|
A D | am335x-nano.dts | 171 rs485-rts-active-high; 172 rs485-rx-during-tx; 173 rs485-rts-delay = <1 1>; 182 rs485-rts-active-high; 183 rs485-rts-delay = <1 1>; 191 rs485-rts-active-high; 192 rs485-rx-during-tx; 193 rs485-rts-delay = <1 1>; 202 rs485-rts-active-high; 203 rs485-rx-during-tx; [all …]
|
A D | imx6qdl-dhcom-drc02.dtsi | 30 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
|
A D | imx28-duckbill-2-485.dts | 174 rs485-red { 175 label = "duckbill:red:rs485"; 179 rs485-green { 180 label = "duckbill:green:rs485";
|
A D | imx6ull-dhcom-drc02.dts | 59 rs485-rx-en-hog { 62 line-name = "rs485-rx-en"; 97 linux,rs485-enabled-at-boot-time;
|
A D | stm32mp15xx-dhcom-drc02.dtsi | 36 rs485-rx-en-hog { 40 line-name = "rs485-rx-en"; 145 linux,rs485-enabled-at-boot-time;
|
/linux-6.3-rc2/drivers/tty/serial/ |
A D | serial_core.c | 1291 u32 flags = rs485->flags; 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() 1354 memset(rs485, 0, sizeof(*rs485)); in uart_sanitize_serial_rs485() 1375 memset(rs485->padding0, 0, sizeof(rs485->padding0)); in uart_sanitize_serial_rs485() 1376 memset(rs485->padding1, 0, sizeof(rs485->padding1)); in uart_sanitize_serial_rs485() 1391 struct serial_rs485 *rs485 = &port->rs485; in uart_rs485_config() local 1399 memset(rs485, 0, sizeof(*rs485)); in uart_rs485_config() 1411 aux = port->rs485; in uart_get_rs485_config() 1442 port->rs485 = rs485; in uart_set_rs485_config() [all …]
|
A D | omap-serial.c | 290 if (port->rs485.flags & SER_RS485_ENABLED) { 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() 372 if (port->rs485.flags & SER_RS485_ENABLED) { in serial_omap_start_tx() 381 if (port->rs485.delay_rts_before_send > 0) in serial_omap_start_tx() 382 mdelay(port->rs485.delay_rts_before_send); in serial_omap_start_tx() 386 if ((port->rs485.flags & SER_RS485_ENABLED) && in serial_omap_start_tx() 1307 struct serial_rs485 *rs485) in serial_omap_config_rs485() argument 1319 val = (rs485->flags & SER_RS485_ENABLED) ? in serial_omap_config_rs485() 1321 val = (rs485->flags & val) ? 1 : 0; in serial_omap_config_rs485() [all …]
|
A D | max310x.c | 1018 delay = (one->port.rs485.delay_rts_before_send << 4) | in max310x_rs_proc() 1019 one->port.rs485.delay_rts_after_send; in max310x_rs_proc() 1022 if (one->port.rs485.flags & SER_RS485_ENABLED) { in max310x_rs_proc() 1025 if (!(one->port.rs485.flags & SER_RS485_RX_DURING_TX)) in max310x_rs_proc() 1036 struct serial_rs485 *rs485) in max310x_rs485_config() argument 1040 if ((rs485->delay_rts_before_send > 0x0f) || in max310x_rs485_config() 1041 (rs485->delay_rts_after_send > 0x0f)) in max310x_rs485_config() 1044 port->rs485 = *rs485; in max310x_rs485_config() 1070 clamp(port->rs485.delay_rts_after_send, 0U, 15U); in max310x_startup() 1073 if (port->rs485.flags & SER_RS485_ENABLED) { in max310x_startup() [all …]
|
A D | imx.c | 439 if (port->rs485.flags & SER_RS485_ENABLED) { in imx_uart_stop_tx() 443 if (port->rs485.delay_rts_after_send > 0) { in imx_uart_stop_tx() 445 port->rs485.delay_rts_after_send); in imx_uart_stop_tx() 496 if (port->rs485.flags & SER_RS485_ENABLED && in imx_uart_stop_rx() 497 port->rs485.flags & SER_RS485_RTS_ON_SEND && in imx_uart_stop_rx() 686 if (port->rs485.flags & SER_RS485_ENABLED) { in imx_uart_start_tx() 701 if (port->rs485.delay_rts_before_send > 0) { in imx_uart_start_tx() 703 port->rs485.delay_rts_before_send); in imx_uart_start_tx() 1078 if (!(port->rs485.flags & SER_RS485_ENABLED)) { in imx_uart_set_mctrl() 1599 if (port->rs485.flags & SER_RS485_ENABLED && in imx_uart_shutdown() [all …]
|
A D | mcf.c | 102 if (port->rs485.flags & SER_RS485_ENABLED) { in mcf_start_tx() 256 if (port->rs485.flags & SER_RS485_ENABLED) { in mcf_set_termios() 338 if (!pending && (port->rs485.flags & SER_RS485_ENABLED)) in mcf_tx_chars() 417 struct serial_rs485 *rs485) in mcf_config_rs485() argument 424 if (rs485->flags & SER_RS485_ENABLED) { in mcf_config_rs485()
|
/linux-6.3-rc2/arch/arm64/boot/dts/freescale/ |
A D | imx8mp-verdin-dev.dtsi | 119 linux,rs485-enabled-at-boot-time; 120 rs485-rts-active-low; 121 rs485-rx-during-tx;
|
A D | imx8mm-verdin-dev.dtsi | 133 linux,rs485-enabled-at-boot-time; 134 rs485-rts-active-low; 135 rs485-rx-during-tx;
|
A D | Makefile | 135 imx8mm-venice-gw72xx-0x-rs485-dtbs := imx8mm-venice-gw72xx-0x.dtb imx8mm-venice-gw72xx-0x-rs485.dtbo 139 imx8mm-venice-gw73xx-0x-rs485-dtbs := imx8mm-venice-gw73xx-0x.dtb imx8mm-venice-gw73xx-0x-rs485.dtbo 144 dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw72xx-0x-rs485.dtb 148 dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw73xx-0x-rs485.dtb
|
/linux-6.3-rc2/arch/x86/platform/ts5500/ |
A D | ts5500.c | 77 bool rs485; member 135 sbc->rs485 = tmp & TS5500_RS485; in ts5500_detect_config() 188 TS5500_ATTR_BOOL(rs485);
|
/linux-6.3-rc2/Documentation/driver-api/serial/ |
A D | index.rst | 20 serial-rs485
|