Мне удалось управлять GPIO с помощью системного вызова mmap для управления работой светодиода непосредственно из пользовательского пространства. Теперь я хочу реализовать драйвер в пространстве ядра.первый драйвер пространства ядра in - linux
Я пытаюсь написать свой первый драйвер устройства пространства ядра для 16 * 2 линии ЖК-дисплея в Linux для контроллера ARM контроллера RPi. Теперь мне нужно получить доступ к GPIO для этой цели.
В AVR я использую для доступа к порту, как это.
#define PORTA *(volatile unsigned char*)0x30
Я читал LLD он говорит использовать МОП) функция (& OUTB() для доступа к I/O порт.
http://www.makelinux.net/ldd3/chp-9-sect-2
1> Можем ли мы использовать #define адрес порта для доступа к GPIO?
2> В чем преимущества использования inb() & функции outb() для управления GPIO?
Просьба предложить.
Я думаю, что inb() использует адресное пространство ввода/вывода для чтения порта вместо использования памяти. – Katoch
Я не спорю, обратитесь к компилятору и документам платформы – Serge
Что вы подразумеваете под переносимостью программы? – Katoch