On Tue, Jul 3, 2018 at 4:16 PM William Breathitt Gray <vilhelm.gray@xxxxxxxxx> wrote: > On Mon, Jul 02, 2018 at 02:37:53PM -0500, David Lechner wrote: > >On 06/21/2018 04:07 PM, William Breathitt Gray wrote: > >> +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. IIO is also using a character device for outputting events and sensor data. In IIO sysfs is only used for configuring what events and data should come out of the character device. > 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. The GPIO character device was based on the IIO character device. We have one TODO item: to merge the timestamping format between GPIO and IIO and use the same sysfs file for configuring the time base. Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html