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 flag { 88 mode_switch_completed, 89 ready_to_receive, 90 ready_to_send, 91 pll_locked, 92 rssi_exceeded_threshold, 93 timeout, 94 automode, 95 sync_address_match, 96 fifo_full, 97 // fifo_not_empty, collision with next enum; replaced by following enum... 98 fifo_empty, 99 fifo_level_below_threshold, 100 fifo_overrun, 101 packet_sent, 102 payload_ready, 103 crc_ok, 104 battery_low 105 }; 106 107 enum fifo_fill_condition { 108 after_sync_interrupt, 109 always 110 }; 111 112 enum packet_format { 113 packet_length_fix, 114 packet_length_var 115 }; 116 117 enum tx_start_condition { 118 fifo_level, 119 fifo_not_empty 120 }; 121 122 enum address_filtering { 123 filtering_off, 124 node_address, 125 node_or_broadcast_address 126 }; 127 128 enum dagc { 129 normal_mode, 130 improve, 131 improve_for_low_modulation_index 132 }; 133 134 #endif 135