tty_operations结构体之uart_ops分析

版权声明:本文为博主原创文章,未经博主允许不得转载 https://blog.csdn.net/qq_37600027/article/details/84112608

static const struct tty_operations uart_ops = {
	.open		= uart_open,
	.close		= uart_close,
	.write		= uart_write,
	.put_char	= uart_put_char,//单字符写入函数
	.flush_chars	= uart_flush_chars,
	.write_room	= uart_write_room,//用来检测缓冲区的剩余空间
	.chars_in_buffer= uart_chars_in_buffer,//检测包含数据缓冲区的数量
	.flush_buffer	= uart_flush_buffer,//刷新缓冲区并丢弃其中的数据
	.ioctl		= uart_ioctl,
	.throttle	= uart_throttle,
	.unthrottle	= uart_unthrottle,
	.send_xchar	= uart_send_xchar,
	.set_termios	= uart_set_termios,//设置termios,当设备的termios发生变化时函数被调用
	.set_ldisc	= uart_set_ldisc,//设置线路规程的函数
	.stop		= uart_stop,
	.start		= uart_start,
	.hangup		= uart_hangup,//挂起函数
	.break_ctl	= uart_break_ctl,
	.wait_until_sent= uart_wait_until_sent,//用来向硬件发送数据
#ifdef CONFIG_PROC_FS
	.proc_fops	= &uart_proc_fops,//proc操作函数
#endif
	.tiocmget	= uart_tiocmget,//获取特定tty设备当前的线路设置
	.tiocmset	= uart_tiocmset,//设置特定tty设备当前的线路
	.get_icount	= uart_get_icount,
#ifdef CONFIG_CONSOLE_POLL
	.poll_init	= uart_poll_init,
	.poll_get_char	= uart_poll_get_char,
	.poll_put_char	= uart_poll_put_char,
#endif
};

猜你喜欢

转载自blog.csdn.net/qq_37600027/article/details/84112608
今日推荐