我能够使用 mmap 系统调用直接从用户空间控制 LED 操作来控制 GPIO。现在我想在内核空间中实现驱动程序。
我正在尝试为 ARM 控制器 RPi 在 Linux 中为 16*2 行 LCD 编写我的第一个内核空间设备驱动程序。现在我需要为此访问 GPIO。
在 AVR 中,我用这样的方式访问端口。
#define PORTA *(volatile unsigned char*)0x30
我正在阅读 LLD,它告诉使用 inb() 和 outb() 函数来访问 i/o 端口。
http://www.makelinux.net/ldd3/chp-9-sect-2
1>我们可以不使用#define端口地址来访问GPIO吗?
2> 使用 inb() & outb() 函数来控制 GPIO 有什么好处?
请建议。