Device Tree Overlay & GPIO Events


I’m using a Beaglebone Black with a custom cape attached to it.
I created a device tree overlay for it (see the attached mycape.dts), which is almost working fine, except that I won’t receive any events using the C poll() function.

When I load the dts all Inputs/Outpus are muxed and exported automatically to the sysfs as expected. But only the “edge-file” gives me a none, instead of both.
I didn’t find any documentation for this. I only found the two options “count-rising-edge” and “count-falling-edge” which should enable the interrupts for this pin. But so far, it does not work for me…

So is there any way I can tell the device tree that I want to watch for both edges?
Trying to set the edge manually after loading the device tree overlay only gives me a write error: “Device or resource busy”.

If I remove the GPIO Part:

In0 { //GPIO-1[12] gpio-name = "Input0"; gpio = <&gpio2 12 0x00>; input; active-low; count-rising-edge; count-falling-edge; };Code hier eingeben...

and export & configure the inputs manually, the events are working!
So I think my C-Code should be fine…

I hope anyone can help me with this…
Thank you very much!

With best regards,

mycape.dts.txt (1.51 KB)