aboutsummaryrefslogtreecommitdiff
path: root/udev
diff options
context:
space:
mode:
Diffstat (limited to 'udev')
-rw-r--r--udev/98-gpiod.rules2
-rw-r--r--udev/99-pwm.rules10
2 files changed, 12 insertions, 0 deletions
diff --git a/udev/98-gpiod.rules b/udev/98-gpiod.rules
new file mode 100644
index 0000000..4961d33
--- /dev/null
+++ b/udev/98-gpiod.rules
@@ -0,0 +1,2 @@
+# Grants GPIO access to the gpio group.
+SUBSYSTEM=="gpio", KERNEL=="gpiochip*", GROUP="gpiod", MODE="0660"
diff --git a/udev/99-pwm.rules b/udev/99-pwm.rules
new file mode 100644
index 0000000..2b95f14
--- /dev/null
+++ b/udev/99-pwm.rules
@@ -0,0 +1,10 @@
+# Grants PWM access to the pwm group. Because UDEV is async, there might be a
+# slight delay between changes to the directory tree (e.g., a new PWM channel
+# being added) and changes to permissions taking effect. The command
+# `udevadm settle` can be used to wait for the rule to finish execution.
+SUBSYSTEM=="pwm*", PROGRAM="/bin/sh -c ' \
+ chown -R root:pwm /sys/class/pwm ; \
+ chmod -R 770 /sys/class/pwm ; \
+ chown -R root:pwm /sys/devices/platform/axi/1000120000.pcie/*.pwm/pwm/pwmchip* ; \
+ chmod -R 770 /sys/devices/platform/axi/1000120000.pcie/*.pwm/pwm/pwmchip* ; \
+'"