Lines Matching refs:rs485

164 	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()
1327 } else if (rs485->delay_rts_before_send > RS485_MAX_RTS_DELAY) { in uart_sanitize_serial_rs485_delays()
1328 rs485->delay_rts_before_send = RS485_MAX_RTS_DELAY; in uart_sanitize_serial_rs485_delays()
1331 port->name, port->line, rs485->delay_rts_before_send); in uart_sanitize_serial_rs485_delays()
1335 if (rs485->delay_rts_after_send) { in uart_sanitize_serial_rs485_delays()
1340 rs485->delay_rts_after_send = 0; in uart_sanitize_serial_rs485_delays()
1341 } else if (rs485->delay_rts_after_send > RS485_MAX_RTS_DELAY) { in uart_sanitize_serial_rs485_delays()
1342 rs485->delay_rts_after_send = RS485_MAX_RTS_DELAY; in uart_sanitize_serial_rs485_delays()
1345 port->name, port->line, rs485->delay_rts_after_send); in uart_sanitize_serial_rs485_delays()
1349 static void uart_sanitize_serial_rs485(struct uart_port *port, struct serial_rs485 *rs485) in uart_sanitize_serial_rs485() argument
1353 if (!(rs485->flags & SER_RS485_ENABLED)) { in uart_sanitize_serial_rs485()
1354 memset(rs485, 0, sizeof(*rs485)); in uart_sanitize_serial_rs485()
1360 !(rs485->flags & SER_RS485_RTS_ON_SEND) == in uart_sanitize_serial_rs485()
1361 !(rs485->flags & SER_RS485_RTS_AFTER_SEND)) { in uart_sanitize_serial_rs485()
1365 rs485->flags |= SER_RS485_RTS_ON_SEND; in uart_sanitize_serial_rs485()
1366 rs485->flags &= ~SER_RS485_RTS_AFTER_SEND; in uart_sanitize_serial_rs485()
1370 rs485->flags &= supported_flags; in uart_sanitize_serial_rs485()
1372 uart_sanitize_serial_rs485_delays(port, 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()
1380 const struct serial_rs485 *rs485) in uart_set_rs485_termination() argument
1382 if (!(rs485->flags & SER_RS485_ENABLED)) in uart_set_rs485_termination()
1386 !!(rs485->flags & SER_RS485_TERMINATE_BUS)); in uart_set_rs485_termination()
1391 struct serial_rs485 *rs485 = &port->rs485; in uart_rs485_config() local
1394 uart_sanitize_serial_rs485(port, rs485); in uart_rs485_config()
1395 uart_set_rs485_termination(port, rs485); in uart_rs485_config()
1397 ret = port->rs485_config(port, NULL, rs485); in uart_rs485_config()
1399 memset(rs485, 0, sizeof(*rs485)); in uart_rs485_config()
1405 struct serial_rs485 __user *rs485) in uart_get_rs485_config() argument
1411 aux = port->rs485; in uart_get_rs485_config()
1414 if (copy_to_user(rs485, &aux, sizeof(aux))) in uart_get_rs485_config()
1423 struct serial_rs485 rs485; in uart_set_rs485_config() local
1430 if (copy_from_user(&rs485, rs485_user, sizeof(*rs485_user))) in uart_set_rs485_config()
1433 ret = uart_check_rs485_flags(port, &rs485); in uart_set_rs485_config()
1436 uart_sanitize_serial_rs485(port, &rs485); in uart_set_rs485_config()
1437 uart_set_rs485_termination(port, &rs485); in uart_set_rs485_config()
1440 ret = port->rs485_config(port, &tty->termios, &rs485); in uart_set_rs485_config()
1442 port->rs485 = rs485; in uart_set_rs485_config()
1445 if (!(rs485.flags & SER_RS485_ENABLED)) in uart_set_rs485_config()
1452 if (copy_to_user(rs485_user, &port->rs485, sizeof(port->rs485))) in uart_set_rs485_config()
2356 if (!(uport->rs485.flags & SER_RS485_ENABLED)) in uart_suspend_port()
2445 if (!(uport->rs485.flags & SER_RS485_ENABLED)) in uart_resume_port()
2457 if (!(uport->rs485.flags & SER_RS485_ENABLED)) in uart_resume_port()
2567 if (!(port->rs485.flags & SER_RS485_ENABLED)) in uart_configure_port()
3413 struct serial_rs485 *rs485conf = &port->rs485; in uart_get_rs485_mode()