1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * PPS kernel consumer API header
4 *
5 * Copyright (C) 2009-2010 Alexander Gordeev <lasaine@lvk.cs.msu.su>
6 */
7
8#ifndef LINUX_PPS_KC_H
9#define LINUX_PPS_KC_H
10
11#include <linux/errno.h>
12#include <linux/pps_kernel.h>
13
14#ifdef CONFIG_NTP_PPS
15
16extern int pps_kc_bind(struct pps_device *pps,
17 struct pps_bind_args *bind_args);
18extern void pps_kc_remove(struct pps_device *pps);
19extern void pps_kc_event(struct pps_device *pps,
20 struct pps_event_time *ts, int event);
21
22
23#else /* CONFIG_NTP_PPS */
24
25static inline int pps_kc_bind(struct pps_device *pps,
26 struct pps_bind_args *bind_args) { return -EOPNOTSUPP; }
27static inline void pps_kc_remove(struct pps_device *pps) {}
28static inline void pps_kc_event(struct pps_device *pps,
29 struct pps_event_time *ts, int event) {}
30
31#endif /* CONFIG_NTP_PPS */
32
33#endif /* LINUX_PPS_KC_H */
34

source code of linux/drivers/pps/kc.h