1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
2 | /* |
3 | * enumerations for HopeRf rf69 radio module |
4 | * |
5 | * Copyright (C) 2016 Wolf-Entwicklungen |
6 | * Marcus Wolf <linux@wolf-entwicklungen.de> |
7 | */ |
8 | |
9 | #ifndef RF69_ENUM_H |
10 | #define RF69_ENUM_H |
11 | |
12 | enum mode { |
13 | mode_sleep, |
14 | standby, |
15 | synthesizer, |
16 | transmit, |
17 | receive |
18 | }; |
19 | |
20 | enum modulation { |
21 | OOK, |
22 | FSK, |
23 | UNDEF |
24 | }; |
25 | |
26 | enum mod_shaping { |
27 | SHAPING_OFF, |
28 | SHAPING_1_0, |
29 | SHAPING_0_5, |
30 | SHAPING_0_3, |
31 | SHAPING_BR, |
32 | SHAPING_2BR |
33 | }; |
34 | |
35 | enum pa_ramp { |
36 | ramp3400, |
37 | ramp2000, |
38 | ramp1000, |
39 | ramp500, |
40 | ramp250, |
41 | ramp125, |
42 | ramp100, |
43 | ramp62, |
44 | ramp50, |
45 | ramp40, |
46 | ramp31, |
47 | ramp25, |
48 | ramp20, |
49 | ramp15, |
50 | ramp12, |
51 | ramp10 |
52 | }; |
53 | |
54 | enum antenna_impedance { |
55 | fifty_ohm, |
56 | two_hundred_ohm |
57 | }; |
58 | |
59 | enum lna_gain { |
60 | automatic, |
61 | max, |
62 | max_minus_6, |
63 | max_minus_12, |
64 | max_minus_24, |
65 | max_minus_36, |
66 | max_minus_48, |
67 | undefined |
68 | }; |
69 | |
70 | enum mantisse { |
71 | mantisse16, |
72 | mantisse20, |
73 | mantisse24 |
74 | }; |
75 | |
76 | enum threshold_decrement { |
77 | dec_every8th, |
78 | dec_every4th, |
79 | dec_every2nd, |
80 | dec_once, |
81 | dec_twice, |
82 | dec_4times, |
83 | dec_8times, |
84 | dec_16times |
85 | }; |
86 | |
87 | enum fifo_fill_condition { |
88 | after_sync_interrupt, |
89 | always |
90 | }; |
91 | |
92 | enum packet_format { |
93 | /* |
94 | * Used when the size of payload is fixed in advance. This mode of |
95 | * operation may be of interest to minimize RF overhead by 1 byte as |
96 | * no length byte field is required |
97 | */ |
98 | packet_length_fix, |
99 | /* |
100 | * Used when the size of payload isn't known in advance. It requires the |
101 | * transmitter to send the length byte in each packet so the receiver |
102 | * would know how to operate properly |
103 | */ |
104 | packet_length_var |
105 | }; |
106 | |
107 | enum tx_start_condition { |
108 | /* the number of bytes in the FIFO exceeds FIFO_THRESHOLD */ |
109 | fifo_level, |
110 | /* at least one byte in the FIFO */ |
111 | fifo_not_empty |
112 | }; |
113 | |
114 | enum address_filtering { |
115 | filtering_off, |
116 | node_address, |
117 | node_or_broadcast_address |
118 | }; |
119 | |
120 | enum dagc { |
121 | normal_mode, |
122 | improve, |
123 | improve_for_low_modulation_index |
124 | }; |
125 | |
126 | #endif |
127 | |