1 /*
2 * Data for pretty printing clock types
3 */
4 #include <config.h>
5 #include <stdio.h>
6
7 #include "ntp_fp.h"
8 #include "ntp.h"
9 #include "lib_strbuf.h"
10 #include "ntp_refclock.h"
11 #include "ntp_stdlib.h"
12
13 struct clktype clktypes[] = {
14 { REFCLK_NONE, "unspecified type (0)",
15 "UNKNOWN" },
16 { REFCLK_LOCALCLOCK, "Undisciplined local clock (1)",
17 "LOCAL" },
18 { REFCLK_GPS_TRAK, "TRAK 8810 GPS Receiver (2)",
19 "GPS_TRAK" },
20 { REFCLK_WWV_PST, "PSTI/Traconex WWV/WWVH Receiver (3)",
21 "WWV_PST" },
22 { REFCLK_SPECTRACOM, "Spectracom (generic) Receivers (4)",
23 "SPECTRACOM" },
24 { REFCLK_TRUETIME, "TrueTime (generic) Receivers (5)",
25 "TRUETIME" },
26 { REFCLK_IRIG_AUDIO, "IRIG Audio Decoder (6)",
27 "IRIG_AUDIO" },
28 { REFCLK_CHU_AUDIO, "CHU Audio Demodulator/Decoder (7)",
29 "CHU_AUDIO" },
30 { REFCLK_PARSE, "Generic reference clock driver (8)",
31 "GENERIC" },
32 { REFCLK_GPS_MX4200, "Magnavox MX4200 GPS Receiver (9)",
33 "GPS_MX4200" },
34 { REFCLK_GPS_AS2201, "Austron 2201A GPS Receiver (10)",
35 "GPS_AS2201" },
36 { REFCLK_GPS_ARBITER, "Arbiter 1088A/B GPS Receiver (11)",
37 "GPS_ARBITER" },
38 { REFCLK_IRIG_TPRO, "KSI/Odetics TPRO/S IRIG Interface (12)",
39 "IRIG_TPRO" },
40 { REFCLK_ATOM_LEITCH, "Leitch CSD 5300 Master Clock Controller (13)",
41 "ATOM_LEITCH" },
42 { REFCLK_MSF_EES, "EES M201 MSF Receiver (14)",
43 "MSF_EES" },
44 { REFCLK_NONE, "not used (15)",
45 "NOT_USED" },
46 { REFCLK_IRIG_BANCOMM, "Bancomm GPS/IRIG Receiver (16)",
47 "GPS_BANC" },
48 { REFCLK_GPS_DATUM, "Datum Precision Time System (17)",
49 "GPS_DATUM" },
50 { REFCLK_ACTS, "Automated Computer Time Service (18)",
51 "ACTS_MODEM" },
52 { REFCLK_WWV_HEATH, "Heath WWV/WWVH Receiver (19)",
53 "WWV_HEATH" },
54 { REFCLK_GPS_NMEA, "Generic NMEA GPS Receiver (20)",
55 "GPS_NMEA" },
56 { REFCLK_GPS_VME, "TrueTime GPS-VME Interface (21)",
57 "GPS_VME" },
58 { REFCLK_ATOM_PPS, "PPS Clock Discipline (22)",
59 "PPS" },
60 { REFCLK_NONE, "not used (23)",
61 "NOT_USED" },
62 { REFCLK_NONE, "not used (24)",
63 "NOT_USED" },
64 { REFCLK_NONE, "not used (25)",
65 "NOT_USED" },
66 { REFCLK_GPS_HP, "HP 58503A GPS Time & Frequency Receiver (26)",
67 "GPS_HP" },
68 { REFCLK_ARCRON_MSF, "ARCRON MSF (and DCF77) Receiver (27)",
69 "MSF_ARCRON" },
70 { REFCLK_SHM, "Clock attached thru shared Memory (28)",
71 "SHM" },
72 { REFCLK_PALISADE, "Trimble Navigation Palisade GPS (29)",
73 "GPS_PALISADE" },
74 { REFCLK_ONCORE, "Motorola UT Oncore GPS (30)",
75 "GPS_ONCORE" },
76 { REFCLK_GPS_JUPITER, "Rockwell Jupiter GPS (31)",
77 "GPS_JUPITER" },
78 { REFCLK_CHRONOLOG, "Chrono-log K (32)",
79 "CHRONOLOG" },
80 { REFCLK_DUMBCLOCK, "Dumb generic hh:mm:ss local clock (33)",
81 "DUMBCLOCK" },
82 { REFCLK_ULINK, "Ultralink M320 WWVB receiver (34)",
83 "ULINK_M320"},
84 { REFCLK_PCF, "Conrad parallel port radio clock (35)",
85 "PCF"},
86 { REFCLK_WWV_AUDIO, "WWV/H Audio Demodulator/Decoder (36)",
87 "WWV_AUDIO"},
88 { REFCLK_FG, "Forum Graphic GPS Dating Station (37)",
89 "GPS_FG"},
90 { REFCLK_HOPF_SERIAL, "hopf Elektronic serial line receiver (38)",
91 "HOPF_S"},
92 { REFCLK_HOPF_PCI, "hopf Elektronic PCI receiver (39)",
93 "HOPF_P"},
94 { REFCLK_JJY, "JJY receiver (40)",
95 "JJY"},
96 { REFCLK_TT560, "TrueTime 560 IRIG-B decoder (41)",
97 "TT_IRIG"},
98 { REFCLK_ZYFER, "Zyfer GPStarplus receiver (42)",
99 "GPS_ZYFER" },
100 { REFCLK_RIPENCC, "RIPE NCC Trimble driver (43)",
101 "GPS_RIPENCC" },
102 { REFCLK_NEOCLOCK4X, "NeoClock4X DCF77 / TDF receiver (44)",
103 "NEOCLK4X"},
104 { REFCLK_TSYNCPCI, "Spectracom TSYNC PCI timing board (45)",
105 "PCI_TSYNC"},
106 { REFCLK_GPSDJSON, "GPSD JSON socket (46)",
107 "GPSD_JSON"},
108 { -1, "", "" }
109 };
110
111 const char *
clockname(int num)112 clockname(
113 int num
114 )
115 {
116 register struct clktype *clk;
117
118 for (clk = clktypes; clk->code != -1; clk++) {
119 if (num == clk->code)
120 return (clk->abbrev);
121 }
122 return (NULL);
123 }
124