Re: [RFC 1/3] drivers pps: add PPS generators support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/10/24 04:49, Hall, Christopher S wrote:
Hi Rudolfo,

-----Original Message-----
From: Rodolfo Giometti <giometti@xxxxxxxxxxxx>
Sent: Tuesday, October 08, 2024 6:51 AM
To: linux-doc@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx

Sometimes one needs to be able not only to catch PPS signals but to
produce them also. For example, running a distributed simulation,
which requires computers' clock to be synchronized very tightly.

This patch adds PPS generators class in order to have a well-defined
interface for these devices.

Signed-off-by: Rodolfo Giometti <giometti@xxxxxxxxxxxx>
---
  drivers/pps/Makefile                   |   3 +-
  drivers/pps/generators/Kconfig         |  19 +-
  drivers/pps/generators/Makefile        |   4 +
  drivers/pps/generators/pps_gen-dummy.c |  83 ++++++++
  drivers/pps/generators/pps_gen.c       | 283 +++++++++++++++++++++++++
  drivers/pps/generators/sysfs.c         |  89 ++++++++
  include/linux/pps_gen_kernel.h         |  57 +++++
  include/uapi/linux/pps_gen.h           |  35 +++
  8 files changed, 571 insertions(+), 2 deletions(-)
  create mode 100644 drivers/pps/generators/pps_gen-dummy.c
  create mode 100644 drivers/pps/generators/pps_gen.c
  create mode 100644 drivers/pps/generators/sysfs.c
  create mode 100644 include/linux/pps_gen_kernel.h
  create mode 100644 include/uapi/linux/pps_gen.h

This looks pretty good to me. I would like to see an alarm callback. We are able
to detect a missed event and rather than stopping inexplicably or writing to the
system log, it would be better to be able to notify an application directly.

Off the top of my head, something like:

void pps_gen_alarm(pps_gen_device *pps_gen) {
	pps_gen->alarm = 1;
	sysfs_notify(pps_gen->dev->kobj, NULL, "alarm");
}

The device is reset by disabling/enabling and this resets the alarm flag.

Could we add something like this?

Yes, of course. But it's better to provide a proper patch against my patchset V1 (I'm going to anticipate them to you shortly), since I'm not sure to understand what you need.

Ciao,

Rodolfo

--
GNU/Linux Solutions                  e-mail: giometti@xxxxxxxxxxxx
Linux Device Driver                          giometti@xxxxxxxx
Embedded Systems                     phone:  +39 349 2432127
UNIX programming





[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux