On 10/31/24 9:35 AM, Rodolfo Giometti wrote: > 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> > --- > .../userspace-api/ioctl/ioctl-number.rst | 1 + > MAINTAINERS | 1 + > drivers/pps/Makefile | 3 +- > drivers/pps/generators/Kconfig | 13 +- > drivers/pps/generators/Makefile | 3 + > drivers/pps/generators/pps_gen.c | 344 ++++++++++++++++++ > drivers/pps/generators/sysfs.c | 75 ++++ > include/linux/pps_gen_kernel.h | 78 ++++ > include/uapi/linux/pps_gen.h | 37 ++ > 9 files changed, 553 insertions(+), 2 deletions(-) > 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 > > diff --git a/drivers/pps/generators/Kconfig b/drivers/pps/generators/Kconfig > index d615e640fcad..5edbfdb8bd92 100644 > --- a/drivers/pps/generators/Kconfig > +++ b/drivers/pps/generators/Kconfig > @@ -3,7 +3,16 @@ > # PPS generators configuration > # > > -comment "PPS generators support" > +menuconfig PPS_GENERATOR > + tristate "PPS generators support" > + help > + PPS generators are special hardware which are able to produce PPS > + (Pulse Per Second) signals. > + > + To compile this driver as a module, choose M here: the module > + will be called pps_gen_core.ko. Drop the ".ko" suffix as you did for the dummy module and most of the kernel does. > + > +if PPS_GENERATOR > > config PPS_GENERATOR_PARPORT > tristate "Parallel port PPS signal generator" > @@ -12,3 +21,5 @@ config PPS_GENERATOR_PARPORT > If you say yes here you get support for a PPS signal generator which > utilizes STROBE pin of a parallel port to send PPS signals. It uses > parport abstraction layer and hrtimers to precisely control the signal. > + > +endif # PPS_GENERATOR -- ~Randy