mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Rodolfo Giometti <giometti@enneenne.com>
To: Greg KH <gregkh@linuxfoundation.org>, subramanian.mohan@intel.com
Cc: tglx@linutronix.de, corbet@lwn.net, linux-kernel@vger.kernel.org,
	linux-doc@vger.kernel.org, andriy.shevchenko@linux.intel.com,
	eddie.dong@intel.com, christopher.s.hall@intel.com,
	pandith.n@intel.com, thejesh.reddy.t.r@intel.com,
	david.zage@intel.com, srinivasan.chinnadurai@intel.com
Subject: Re: [PATCH v12 2/3] Documentation: driver-api: pps: Add Intel Timed I/O PPS generator
Date: Tue, 27 Aug 2024 15:09:15 +0200	[thread overview]
Message-ID: <801c7a93-667b-4c23-9493-4cbe979847a2@enneenne.com> (raw)
In-Reply-To: <2024082456-kitchen-astride-7892@gregkh>

On 24/08/24 04:21, Greg KH wrote:
> On Fri, Aug 23, 2024 at 12:31:07PM +0530, subramanian.mohan@intel.com wrote:
>> From: Subramanian Mohan <subramanian.mohan@intel.com>
>>
>> Add Intel Timed I/O PPS usage instructions.
>>
>> Co-developed-by: Pandith N <pandith.n@intel.com>
>> Signed-off-by: Pandith N <pandith.n@intel.com>
>> Signed-off-by: Lakshmi Sowjanya D <lakshmi.sowjanya.d@intel.com>
>> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
>> Acked-by: Rodolfo Giometti <giometti@enneenne.com>
>> Signed-off-by: Subramanian Mohan <subramanian.mohan@intel.com>
>> ---
>>   Documentation/driver-api/pps.rst | 24 ++++++++++++++++++++++++
>>   1 file changed, 24 insertions(+)
>>
>> diff --git a/Documentation/driver-api/pps.rst b/Documentation/driver-api/pps.rst
>> index 78dded03e5d8..75f7b094f963 100644
>> --- a/Documentation/driver-api/pps.rst
>> +++ b/Documentation/driver-api/pps.rst
>> @@ -246,3 +246,27 @@ delay between assert and clear edge as small as possible to reduce system
>>   latencies. But if it is too small slave won't be able to capture clear edge
>>   transition. The default of 30us should be good enough in most situations.
>>   The delay can be selected using 'delay' pps_gen_parport module parameter.
>> +
>> +
>> +Intel Timed I/O PPS signal generator
>> +------------------------------------
>> +
>> +Intel Timed I/O is a high precision device, present on 2019 and newer Intel
>> +CPUs, that can generate PPS signals.
>> +
>> +Timed I/O and system time are both driven by same hardware clock. The signal
>> +is generated with a precision of ~20 nanoseconds. The generated PPS signal
>> +is used to synchronize an external device with system clock. For example,
>> +it can be used to share your clock with a device that receives PPS signal,
>> +generated by Timed I/O device. There are dedicated Timed I/O pins to deliver
>> +the PPS signal to an external device.
>> +
>> +Usage of Intel Timed I/O as PPS generator:
>> +
>> +Start generating PPS signal::
>> +
>> +        $echo 1 > /sys/devices/platform/INTCxxxx\:00/enable
>> +
>> +Stop generating PPS signal::
>> +
>> +        $echo 0 > /sys/devices/platform/INTCxxxx\:00/enable
> 
> As I mentioned on the sysfs documentation, why isn't this just a generic
> pps class attribute instead?  Why did you make it
> only-this-one-special-driver type of thing?

This is an Original Sin when PPS generators were introduced. :-(

In 2011 a patch from Alexander Gordeev <lasaine@lvk.cs.msu.su> (which introduced 
the "parallel port PPS signal generator") was committed in the main kernel.

At the time it was something exotic and doing a PPS generator interface for it 
was not considered (since it actually has no controlling inputs), but now 
several Ethernet cards have such PPS generator functionalities, and they are 
enabled in a per-driver way or via the PTP API.

This code is a pure PPS generator and it cannot use any other way to enable such 
functionality than the one above since the PPS layer misses a proper 
implementation for PPS generator.

If you are willing to stop the inclusion due this fact maybe its time to add 
such PPS generators interface... on the other hand, if you agree for inclusion 
we can do this job as soon as the code has been included, in order to fix this 
anomalous status.

Ciao,

Rodolfo

-- 
GNU/Linux Solutions                  e-mail: giometti@enneenne.com
Linux Device Driver                          giometti@linux.it
Embedded Systems                     phone:  +39 349 2432127
UNIX programming


  reply	other threads:[~2024-08-27 13:12 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-23  7:01 [PATCH v12 0/3] Add support for Intel PPS Generator subramanian.mohan
2024-08-23  7:01 ` [PATCH v12 1/3] pps: generators: Add PPS Generator TIO Driver subramanian.mohan
2024-08-23 14:22   ` Andy Shevchenko
2024-08-23  7:01 ` [PATCH v12 2/3] Documentation: driver-api: pps: Add Intel Timed I/O PPS generator subramanian.mohan
2024-08-24  2:21   ` Greg KH
2024-08-27 13:09     ` Rodolfo Giometti [this message]
2024-09-03 10:25       ` Greg KH
2024-09-25 21:55         ` Hall, Christopher S
2024-09-26  8:46           ` Rodolfo Giometti
2024-09-26  9:34             ` Greg KH
2024-08-23  7:01 ` [PATCH v12 3/3] ABI: pps: Add ABI documentation for Intel TIO subramanian.mohan
2024-08-23 14:24   ` Andy Shevchenko
2024-08-24  2:20   ` Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=801c7a93-667b-4c23-9493-4cbe979847a2@enneenne.com \
    --to=giometti@enneenne.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=christopher.s.hall@intel.com \
    --cc=corbet@lwn.net \
    --cc=david.zage@intel.com \
    --cc=eddie.dong@intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pandith.n@intel.com \
    --cc=srinivasan.chinnadurai@intel.com \
    --cc=subramanian.mohan@intel.com \
    --cc=tglx@linutronix.de \
    --cc=thejesh.reddy.t.r@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®