/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * PPS generator API header * * Copyright (C) 2024 Rodolfo Giometti */ #ifndef _PPS_GEN_H_ #define _PPS_GEN_H_ #include #include /** * struct pps_gen_event - the PPS generator events * @event: the event type * @sequence: the event sequence number * * Userspace can get the last PPS generator event by using the * ioctl(pps_gen, PPS_GEN_FETCHEVENT, ...) syscall. * The sequence field can be used to save the last event ID, while in the * event field is stored the last event type. Currently known event is: * * PPS_GEN_EVENT_MISSEDPULSE : last pulse was not generated */ struct pps_gen_event { unsigned int event; unsigned int sequence; }; #define PPS_GEN_EVENT_MISSEDPULSE 1 #define PPS_GEN_SETENABLE _IOW('p', 0xb1, unsigned int *) #define PPS_GEN_USESYSTEMCLOCK _IOR('p', 0xb2, unsigned int *) #define PPS_GEN_FETCHEVENT _IOR('p', 0xb3, struct pps_gen_event *) #endif /* _PPS_GEN_H_ */