Тесты libgpiod не работают на pcduino3 nano

Итак, я установил archlinux arm на свой pcduino3 nano, но обнаружил, что имею дело с новой версией ядра Linux, которая обеспечивает новый способ взаимодействия с gpios.
Доступного пакета нет, поэтому я скачал libgpiod и скомпилировал его, но мне не удалось запустить в нем gpiod-test.

      [root@alarm tests]# ./gpiod-test
# random seed: R02S4d1e0dec9c5f919815bc9b266db3af00
# gpiod-test-DEBUG: running libgpiod test suite
# gpiod-test-DEBUG: 92 tests registered
Bail out! gpiod-test-FATAL-ERROR: unable to initialize gpio-mockup library: No such file or directory

(/home/alarm/git/libgpiod-1.6.3/tests/.libs/lt-gpiod-test:24257): gpiod-test-ERROR **: 11:51:36.869: unable to initialize gpio-mockup library: No such file or directory
Trace/breakpoint trap (core dumped)
[root@alarm tests]# uname -a
Linux alarm 5.16.2-2-ARCH #1 SMP PREEMPT Sat Jan 22 03:08:40 UTC 2022 armv7l GNU/Linux

То же самое произошло, когда я попытался запустить версию CPP.
Вывод ошибки немного длинный, поэтому я опубликовал только последнюю часть.

      -------------------------------------------------------------------------------
Line objects can be compared
-------------------------------------------------------------------------------
tests-line.cpp:552
...............................................................................

tests-line.cpp:552: FAILED:
due to unexpected exception with message:
  unable to create the gpio-mockup context: No such file or directory

===============================================================================
test cases: 33 | 4 passed | 29 failed
assertions: 36 | 7 passed | 29 failed

Кроме того, я не могу запустить gpioset

      [root@alarm tests]# gpioset gpiochip0 231=0
gpioset: error setting the GPIO line values: Invalid argument

Другие инструменты, такие как gpioinfo, работают хорошо.

      gpiochip0 - 288 lines:
        line   0:      unnamed       unused   input  active-high
---
        line 287:      unnamed       unused   input  active-high

И каждый раз, когда я хочу использовать set_direction_input() или любую другую подобную функцию в gpiod.hpp

      terminate called after throwing an instance of 'std::system_error'
  what():  error setting GPIO line direction to output: Operation not permitted

0 ответов

Другие вопросы по тегам