硬件寄存器内存映射

发布于 2022-09-18 18:08:04 字数 111 浏览 10 评论 0

小弟新手,向前辈请教一点问题,先声道谢!

我在写驱动时,在程序中访问硬件中的寄存器,寄存器是怎样映射到内存中的?映射的这相地址如何知道是多少?在程序中直接访问这个地址就相当于访问这个硬件的寄存器。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

你是年少的欢喜 2022-09-25 18:08:04

推荐LZ看一下LDD3中的IO读写的那一章

微暖i 2022-09-25 18:08:04

就是用mmap,随便找个mmap的例子一看就明白了

假面具 2022-09-25 18:08:04

驱动里面用ioremap_nocache(),返回映射后的虚拟地址

疯狂的代价 2022-09-25 18:08:04

只知道理论,还没有实践操作过

失去的东西太少 2022-09-25 18:08:04

两步:
1, request_mem_region()
2, ioremap()

帅气称霸 2022-09-25 18:08:04

将硬件寄存器地址映射到内核内存空间用函数ioremap,如果想将硬件寄存器地址映射到用户空间可在驱动程序中构造一个mmap的方法。

请远离我 2022-09-25 18:08:04

同意6楼和8楼,以前在产品中做过这样的小驱动。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文