Изменение направления строки символьного устройства - PullRequest
0 голосов
/ 13 февраля 2019

Как Линус представил на конференции Linux, теперь мы должны использовать новое символьное устройство вместо /sys/class/gpio.Используя SFS, вы можете изменить направление вывода, написав in или out в /gpioN/direction.Я не могу найти более простой способ в новом символьном устройстве, чем закрытие дескриптора и запросить ту же строку снова с другим флагом:

struct gpiohandle_request req;
req.flags = GPIOHANDLE_REQUEST_INPUT;
ioctl(fd_chip, GPIO_GET_LINEHANDLE_IOCTL, &req); 

// do some stuff

close(req.fd);    

req.flags = GPIOHANDLE_REQUEST_OUTPUT;
ioctl(fd_chip, GPIO_GET_LINEHANDLE_IOCTL, &req); 

Какой предпочтительный способ сделать это?

...