Skip to content

Commit 2f1fae2

Browse files
Merge pull request #61 from tiagocoutinho/gpio-dev-doc
Gpio dev doc
2 parents ce749c7 + b0852b8 commit 2f1fae2

File tree

2 files changed

+17
-2
lines changed

2 files changed

+17
-2
lines changed

docs/develop.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,16 @@ Create a new rules file (ex: `/etc/udev/rules.d/80-device.rules`):
5757
```
5858
KERNEL=="event[0-9]*", SUBSYSTEM=="input", GROUP="input", MODE:="0660"
5959
KERNEL=="uinput", SUBSYSTEM=="misc", GROUP="input", MODE:="0660"
60+
6061
SUBSYSTEM=="video4linux", GROUP="video", MODE:="0660"
62+
6163
KERNEL=="uleds", GROUP="input", MODE:="0660"
6264
SUBSYSTEM=="leds", ACTION=="add", RUN+="/bin/chmod -R g=u,o=u /sys%p"
6365
SUBSYSTEM=="leds", ACTION=="change", ENV{TRIGGER}!="none", RUN+="/bin/chmod -R g=u,o=u /sys%p"
64-
SUBSYSTEM=="gpio", GROUP="input", MODE:="0660"
66+
67+
KERNEL=="gpiochip[0-9]*", SUBSYSTEM=="gpio", GROUP="input", MODE="0660"
68+
ACTION=="add", SUBSYSTEM=="configfs", KERNEL=="gpio-sim", RUN+="/bin/chmod 775 /sys/kernel/config/gpio-sim/%k"
69+
ACTION=="add", SUBSYSTEM=="configfs", KERNEL=="gpio-sim", RUN+="/bin/chown root:input /sys/kernel/config/gpio-sim/%k"
6570
```
6671

6772
Reload the rules:
@@ -78,4 +83,6 @@ $ sudo modprobe uinput
7883
$ sudo modprobe uleds
7984
$ sudo modprobe -r vivid
8085
$ sudo modprobe vivid n_devs=1 vid_cap_nr=190 vid_out_nr=191 meta_cap_nr=192 meta_out_nr=193
86+
$ sudo modprobe gpio-sim
87+
$ sudo python scripts/setup-gpio-sim.py
8188
```

tests/test_gpio.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
from pathlib import Path
1717
from unittest import mock
1818

19-
from ward import each, fixture, raises, test
19+
from ward import each, fixture, raises, skip, test
2020

2121
from linuxpy.device import device_number
2222
from linuxpy.gpio import device, raw
@@ -561,6 +561,7 @@ async def _(chip=emulate_gpiochip):
561561
sim_file = find_gpio_sim_file()
562562

563563

564+
@skip("gpio-sim not prepared", when=sim_file is None)
564565
@test("sim read chip info")
565566
def _():
566567
with sim_file.open() as chip:
@@ -569,6 +570,7 @@ def _():
569570
assert info.lines == 16
570571

571572

573+
@skip("gpio-sim not prepared", when=sim_file is None)
572574
@test("sim device open")
573575
def _():
574576
device = Device(sim_file)
@@ -578,6 +580,7 @@ def _():
578580
assert device.fileno() > 0
579581

580582

583+
@skip("gpio-sim not prepared", when=sim_file is None)
581584
@test("sim get info")
582585
def _():
583586
device = Device(sim_file)
@@ -627,6 +630,7 @@ def _():
627630
assert l4.attributes.flags == 0
628631

629632

633+
@skip("gpio-sim not prepared", when=sim_file is None)
630634
@test("sim make request")
631635
def _():
632636
nb_lines = 16
@@ -684,6 +688,7 @@ def _():
684688
assert l6.attributes.flags == 0
685689

686690

691+
@skip("gpio-sim not prepared", when=sim_file is None)
687692
@test("sim get value")
688693
def _():
689694
def assert_request(request):
@@ -722,6 +727,7 @@ def assert_request(request):
722727
assert_request(request)
723728

724729

730+
@skip("gpio-sim not prepared", when=sim_file is None)
725731
@test("sim set value")
726732
def _():
727733
with Device(sim_file) as device:
@@ -751,6 +757,7 @@ def _():
751757
assert request[7, 8, 11:14] == {7: 1, 8: 0, 11: 1, 12: 0, 13: 1}
752758

753759

760+
@skip("gpio-sim not prepared", when=sim_file is None)
754761
@test("sim line config event")
755762
def _():
756763
def run():
@@ -823,6 +830,7 @@ def run():
823830
assert event.attributes.debounce_period is None
824831

825832

833+
@skip("gpio-sim not prepared", when=sim_file is None)
826834
@test("async sim line config event")
827835
async def _():
828836
async def run():

0 commit comments

Comments
 (0)