Re: Intel Timed-IO driver in IIO/Counter subsystem

Linus Walleij
2022-06-17T11:40:06Z

On Fri, Jun 17, 2022 at 11:51 AM Shevchenko, Andriy
<andriy.shevchenko@intel.com> wrote:
> On Fri, Jun 17, 2022 at 09:22:09AM +0200, Lars-Peter Clausen wrote:
> > On 6/17/22 08:37, N, Pandith wrote:
> > > Hi,
> > >
> > > We have a Intel Timed IO peripheral with following functionalities :
> > >
> > > 1. Event capture capability - Captures event count and timestamp.
> > > 2. Pulse generation - periodic or single event generation.
> > > 3. Return cross-timestamp on request.
> > >
> > > Timed IO device is being used in various Industrial use cases such as : time capture, synchronization, fan speed calculation etc.
> > >
> > > IIO or counter subsystem seems to be suitable for timed-io driver.
> > >
> > > Is it favourable to implement as part of IIO or counter subsystem ? Wanted to know your feedback.
> >
> > That sounds like a mix of a counter and PPS device. Have you looked at the
> > PPS subsystem[1]?
>
> The newly HTE subsystem was proposed by Linus W. to be used for this case.

Indeed, the subsystem was proposed exactly because both IIO and GPIO would
be consumers of it (possibly more). I think it covers case 1 & 3.

Dipen (the HTE subsystem maintainer) worked very hard on it and it can be
used with Tegra194 GPIO events flawlessly all the way to userspace.

You need to make an drivers/hte driver for the Intel hardware and jig
it to the IIO subsystem the same way we connected it to GPIO.

For 2. I am uncertain. Periodic events sound like PWM to me.

If a "single event" is something
like pulling a GPIO line high/low at a specific (wall clock) time in the
future, it should probably be in the GPIO subsystem, like a triggered
GPIO event or so, that sounds a bit hard but certainly doable with some
thinking and tinkering.

Yours,
Linus Walleij