我正在研究树莓派板。是否可以直接访问GPIO物理地址
从 Linux 内核空间使用 inb()、outb()...?如果是的话怎么办?
GPIO寄存器地址链接
第90页http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf
谢谢
Yes.
- 使用以下命令获取到相关寄存器的虚拟地址映射设置
ioremap
- Use
readl/writel
来操纵物理内存。
请注意,ARM 处理器会因未对齐的访问而出错。 Linux 可以优雅地处理这个问题,但会降低性能。
小例子:
void __iomem *regs = ioremap(0xdead0000, 4);
pr_info("0xdead0000: %#x\n", readl(regs));
iounmap(regs);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)