- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ok6410
ok6410 学习笔记( 18.linux 串口驱动程序设计)
串口这节的资料真的是少的可怜啊 ~~~ 国嵌这节讲的真
心不敢恭维,网上的资料基本都是一个样子,不是说说
s3c6400.c 和 samsung.c 这两个文件就是说说驱动的结构。
是些意义不大的东西。
首先,我先说说本节的学习资料:
这本tty1.lt;linux 设备驱动开发详解 gt; 宋宝华
这本
tty
说里面对 uart 的基本驱动结构讲的是比较细致的是深入 设备驱动讲解的,但是缺乏从驱动到应用的一贯性。
国嵌视频和 ppt 主要是将驱动的框架进行了大
致讲解,即终端设备的基本概念
3.lt; 精通 linux 设备驱动程序开发
3.lt; 精通 linux 设备驱动程序开发
gt; 宋宝华
译 有一个详细的 uart 驱动程序 可以和
s3c6400.c 和
samsung.c文件进行对比学习
4.linux 内核源码包括
4.linux 内核源码包括 s3c6400.c
samsung.c
serial_core.c 文件等
serial_core.c 文件等
5.lt;linux 高级程序设计 gt; 杨宗德 第七章
这本说的是对于终端串口的应用开发。可以把底层驱动和应 用进行联系。
6.lt; 嵌入式 linux 应用开发完全手册 gt; 韦东山
我觉得这节对终端的概念讲解还是挺好的,但是对于串口
我觉得这节对终端的概念讲解还是挺好的
,但是对于串口
驱动讲的挺一般的 因为主要是讲 8250 的 (可以不看 )
本节的学习目的:
1.能够使用 ok6410 上面的串口进行通信, 即应用程
序的开发。
2.理解 uart 驱动结构和 tty 驱动的结构。 这个结构很
复杂理解就可以了本节保留问题:
复杂理解就可以了
本节保留问题:
最大的问题就是下面的问题一! !!本节知识点:
1.本节最大的知识点就是 uart 的驱动结构,我们就先入手对
结构的分析 (分析的是 linux 中串口驱动的结构 )。
第一:首先要知道在 linux
第一:首先要知道在 linux
中串口驱动是终端设备
的一种,终端设备是字符设备,所有串口驱动是字符设备驱 动,是通过 dev 目录下的文件节点对设备进行操作的。这样 我们就有了一点初步的从驱动到应用的想法。
第二:我们看下 s3c6400.c samsung.c 6410 串
口驱动文件。这个两个文件是让我最迷糊的两个文件,初
看跟什么 uart_driver uart_op uart_port 一点关系都没有。
那是因为好多 samsun
那是因为好多 samsun
g的片子共用一套串口驱动,什么2440 ,
6410 等,所以就在这个层次上有进行了一次封装,就有了
s3c6400.c 这个文件了。
第三:对于s3c6400.c samsung.c具体的我还不是
很懂,但是大体上我可以猜一下,应该是在s3c6400.c
很懂,但是大体上我可以猜一下,应该是在
s3c6400.c 中通
过类似 s3c6400_uart_inf 中的 type 变量,告诉驱动类型应该
是 s3c6410 的,然后改了 uart 各种寄存器的基地址,让这些 寄存器地址变成了 6410 的,并且也调用了 6410 的 uart_port
和 uart_driver 。因为 uart_op 的功能都是一样的, 所以共用同
套 op 。
第四:其实自己也可以写这个结构的 uart 驱动,步 骤为 1.填写 uart_port 和 uart_driver 填写 uart_driver 主要 的目的是为了在注册 uart_driver 的时候能够创建出字符设备 其实就是注册一个 uart 的字符设备 填写 uart_port 主要是 为了在往对应 uart 驱动中添加 port 的时候能够跟 uart 寄存器
(即基地址),中断,fifo建立联系,但是同时也产生了问题一:
因为在 s3c6400.c 文件中,对这一步进行了封装,我没有找 到对应 6410 的 uart_driver 和 uart_port 赋值,不知道基地址 应该填写那个基地址,是否进行 ioremap 映射,也不知道什 么 console
, tty_driver 什么都进行赋值。 2.uart_op 结构填写,然后
uart_register_driver() 对 uart_driver 进行注册,
uar1_add_one_port()对uart_port进行注册,这里出现了问题
二: uart_op 中的函数都分别有对应的功能, 这些函数应该是
给上层 tty 驱动调用的。但是具体都是怎么调用的,都在那 和 read 函数和 tcsetattr 等终端
您可能关注的文档
- MATLAB软件在《电机与拖动》课程任务驱动教学法中的应用-2019年教育文档.docx
- MBBS留学生汉语教学研究-2019年精选文档.docx
- MDaemon服务器的升级、迁移与激活(新).docx
- MEMS发展趋势预测–微视界.docx
- MF-47型万用表的设计与组装实训指导书[1]分析.docx
- MINE方案治疗32例复发或难治性中高危非霍奇金淋巴瘤的疗效观察.docx
- moboplayer-Android平台的万能播放器.docx
- MOOC与大数据技术在大学计算机基础教学中的应用-最新教育资料.docx
- MOOC对高校传统教学模式的影响和改革研究-最新教育资料.docx
- Moodle平台在信息化教学中的应用-精品文档.docx
最近下载
- WW-XK-001放射诊疗许可申请表.DOC VIP
- 哈尔滨工程大简介(PPT).pptx VIP
- (高清版)B-T 6739-2022 色漆和清漆 铅笔法测定漆膜硬度.pdf VIP
- 降低血管内导管相关血流感染发生率.pptx VIP
- 经典版《升华和凝华》课后反思经典版.docx VIP
- 2025年苏州经贸职业技术学院单招职业技能测试题库及答案(精选题).docx VIP
- 胸痛救治单元创建汇报.pptx
- 半导体材料研发及制造项目环评资料环境影响.docx VIP
- 2025年苏州经贸职业技术学院单招职业技能测试题库及答案参考.docx VIP
- 2025年社区专职工作人员考试(社工知识、政治时事、写作)题库.docx VIP
原创力文档


文档评论(0)