All of lore.kernel.org
 help / color / mirror / Atom feed
* Using oob GPIO on RPi4B and evl_poll
@ 2021-09-03 21:49 j.villena
  2021-09-04  7:36 ` Philippe Gerum
  0 siblings, 1 reply; 8+ messages in thread
From: j.villena @ 2021-09-03 21:49 UTC (permalink / raw)
  To: xenomai

Hi all,

 

I am using the EVL Raspberry-PI-4 GPIO driver in oob mode for waiting for 4
GPI signals changes by monitoring raising and falling edges continuously.

 

The first version uses 4 diferent oob threads and it works as expected when
waiting forever in oob_read on each thread.

 

To optimize resources, I want to avoid to use the 4 threads approach, and I
want to create only one thread to handle all GPI functionality. Thus I have
added polling capabilities with evl_poll and related API to GPIO file
descriptors in only one thread.

 

At first it seems to work, but when I added another file descriptor to the
same polliing set (from an event flag group) the program freezes, and system
becomes unstable.

 

Then I noticed that in the "Polling file descriptors
<https://evlproject.org/core/user-api/poll/> " section of the EVL online
documentation, the GPIO real-time I/O driver is not listed in the
enumeration of pollable elements.

 

Is this true and the cause of the wrong behavior when using polled wait? If
yes, could it be easily fixed?

 

Thanks

 

 


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-09-20  8:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-03 21:49 Using oob GPIO on RPi4B and evl_poll j.villena
2021-09-04  7:36 ` Philippe Gerum
2021-09-05 10:34   ` j.villena
2021-09-05 16:00     ` Philippe Gerum
2021-09-12 20:38       ` j.villena
2021-09-13  7:58         ` j.villena
2021-09-20  6:57           ` Philippe Gerum
2021-09-20  8:12             ` j.villena

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.