Linux的TTY驱动分析
来源:互联网 发布:数据库中的事务是什么 编辑:程序博客网 时间:2024/05/16 09:12
本文针对的内核为友善提供的linux-3.0.31版本,从linux驱动模型的角度分析了uart驱动。
一、首先分析linux内核怎么启动并使用uart驱动的。
二、接下来我们首先分析uart的tty驱动部分
“linux-3.0.31\drivers\tty\serial\samsung.c”
到了这里uart有了“s3c24xx_serial_modinit”中注册的“tty驱动”,有了“s3c24xx_serial_probe”中注册的“tty设备”,这样一个完整的tty设备驱动就完成了。其操作函数调用关系如下图所示:
三、然后我们再看uart的platform总线驱动
其源码路径比较分散:
“linux-3.0.31\drivers\tty\serial\s3c2410.c”(注册串口的platform驱动)
“linux-3.0.31\arch\arm\plat-s3c24xx\devs.c”(串口platform设备资源)
“linux-3.0.31\arch\arm\plat-samsung\dev-uarts.c”(串口platform设备)
“linux-3.0.31\arch\arm\mach-exynos\mach-tiny4412.c”(注册串口platform设备)
其在“s3c2410.c”中注册串口platform驱动,在“mach-tiny4412.c”中注册串口platform设备,接下来我们主要看串口platform设备是怎么注册的。
在“mach-tiny4412.c”源码中,有一个“smdk4x12_map_io”这个函数,串口platform设备就是通过这个函数进去注册的。
所以针对不同的CPU做串口驱动移植,还需要修改mach-tiny4412.c中的“smdk4x12_uartcfgs”及devs.c中的“s3c2410_uart_resources”。
- Linux的TTY驱动分析
- linux tty驱动架构分析
- linux tty驱动架构分析
- Linux tty驱动学习 - LDD3的tty驱动
- linux终端tty设备驱动模型分析
- mini2440 串口和tty驱动的分析
- tty驱动框架分析
- Linux TTY 驱动
- 四 linux tty驱动
- 四 linux tty驱动
- linux 终端 tty驱动
- linux驱动子系统--TTY
- Linux tty 终端设备驱动
- Linux下基于tty架构的串口驱动分析(S3C2440)
- Linux设备模型之tty驱动架构分析
- Linux设备模型之tty驱动架构分析
- Linux设备模型之tty驱动架构分析
- Linux设备模型之tty驱动架构分析
- Linux vmstat命令实战详解
- python中文编码的问题
- ubuntu配置静态ip地址
- 使用eclipse for c++的一个报错问题
- java对象克隆简单实现(可多级克隆)
- Linux的TTY驱动分析
- Linux的i2c驱动分析
- Linux的spi驱动分析
- Linux的USB驱动分析
- Linux的input子系统分析
- Linux的IRQ中断子系统分析
- Linux的Graphics子系统分析
- wifi增强
- Linux的LCD驱动分析