Linux uart驱动框架
串口驱动框架包括两部分
- struct uart_driver
int uart_register_driver(struct uart_driver *uart);
void uart_unregister_driver(struct uart_driver *uart);
- struct uart_port
int uart_add_one_port(struct uart_driver *reg, struct uart_port *port);
int uart_remove_one_port(struct uart_driver *reg, struct uart_port *port);
int uart_match_port(struct uart_port *port1, struct uart_port *port2);
其中struct uart_port中还包含一个特别重要的结构体struct uart_ops *ops,此结构体当中包含了对串口的所有操作。