Thread (41 messages) flat view 41 messages, 7 authors, 2018-07-22

[v7,03/10] docs: Add Generic Counter interface documentation

From: William Breathitt Gray <hidden>
Date: 2018-07-03 14:16:28
Also in: linux-devicetree, linux-iio, lkml

On Mon, Jul 02, 2018 at 02:37:53PM -0500, David Lechner wrote:
On 06/21/2018 04:07 PM, William Breathitt Gray wrote:
quoted
+Userspace Interface
+===================
+
+Several sysfs attributes are generated by the Generic Counter interface,
+and reside under the /sys/bus/counter/devices/counterX directory, where
+counterX refers to the respective counter device. Please see
+Documentation/ABI/testing/sys-bus-counter-generic-sysfs for detailed
+information on each Generic Counter interface sysfs attribute.
+
+Through these sysfs attributes, programs and scripts may interact with
+the Generic Counter paradigm Counts, Signals, and Synapses of respective
+counter devices.
+
Have you considered a character device in addition to the sysfs interface?

I basically have many of the same concerns that resulted in a char dev for
gpio[1].

- With sysfs, you *can* technically poll for events, but then you have to
  seek and read or re-open the file.
- File permissions are annoying if you want a non root user to be able to
  use the device.
- A single program can't claim exclusive access to a device.
- There is no automatic cleanup if a userspace program accessing the device
   crashes.

[1]: https://www.elinux.org/images/7/74/Elce2017_new_GPIO_interface.pdf
Those look like good technical reasons for implementing a character
device for the Generic Counter interface. I chose to implement the sysfs
interface because I was using the IIO code as a reference, but I
personally don't have much opposition to a character device in addition.

I'd like to get Jonathan's opinion on this as well if possible -- I
vaguely recall us considering this option briefly last year when the
Generic Counter interface was still in its beginnings. I've CC'd Linus
Walleij as well for input as the GPIO maintainer.

William Breathitt Gray
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help