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 | |
16 | extern int pps_kc_bind(struct pps_device *pps, |
17 | struct pps_bind_args *bind_args); |
18 | extern void pps_kc_remove(struct pps_device *pps); |
19 | extern void pps_kc_event(struct pps_device *pps, |
20 | struct pps_event_time *ts, int event); |
21 | |
22 | |
23 | #else /* CONFIG_NTP_PPS */ |
24 | |
25 | static inline int pps_kc_bind(struct pps_device *pps, |
26 | struct pps_bind_args *bind_args) { return -EOPNOTSUPP; } |
27 | static inline void pps_kc_remove(struct pps_device *pps) {} |
28 | static 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 | |