Radio Control Layer (RCL)
LRF.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2021-2023, Texas Instruments Incorporated
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * * Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  *
12  * * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  *
16  * * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32 
33 #ifndef __lrf_h__
34 #define __lrf_h__
35 
36 #include <stdint.h>
37 #include <stddef.h>
38 #include <stdbool.h>
39 
40 #if defined(DeviceFamily_CC23X0R5) || defined(DeviceFamily_CC23X0R2)
41 # include <ti/devices/DeviceFamily.h>
42 # include DeviceFamily_constructPath(driverlib/pbe_regs.h)
43 # include "LRFCC23X0.h"
44 #endif
45 
46 #ifdef DeviceFamily_CC1308
47 # define BUFFER_SPLIT_SUPPORT
48 # include "LRFCC1308.h"
49 #endif
50 
55 #define LRF_TxPower_Use_Min ((LRF_TxPowerTable_Index){.rawValue = -128})
56 
60 #define LRF_TxPower_Use_Max ((LRF_TxPowerTable_Index){.rawValue = 125})
61 
65 #define LRF_TxPower_Use_Raw ((LRF_TxPowerTable_Index){.rawValue = 126})
66 
71 #define LRF_TxPower_None ((LRF_TxPowerTable_Index){.rawValue = 127})
72 
77 #define LRF_SETTINGS_BUFFER_UNLIMITED 0x3FFF
78 
83 #define LRF_RSSI_INVALID (127)
84 
85 
86 typedef enum LRF_RadioState_e {
88  RadioState_ImagesLoaded, /* TOPsm images loaded, persists */
89  RadioState_Configured, /* REGBANK values loaded, no persist */
91 
95 typedef enum LRF_SetupResult_e {
106 
108  uint32_t imageLen;
109  uint32_t image[];
110 };
111 
112 typedef union {
113  struct {
114  uint32_t lengthMinus1 : 12;
115  uint32_t type : 4;
116  uint32_t startAddress : 16;
117  } region;
118  uint32_t value32;
119  uint16_t value16[2];
120  struct {
121  uint16_t value16;
122  uint16_t address;
123  } sparse;
124  struct {
125  uint16_t value16;
126  uint16_t mask16;
127  } masked;
128  struct {
129  uint32_t length : 14;
130  uint32_t invertedFeatureMask : 1;
131  uint32_t compoundSegment : 1;
132  uint32_t featureMask : 16;
133  } segment;
135 
137  uint32_t numEntries;
139 };
140 
141 typedef enum {
157 
158 typedef enum {
162 
163 typedef struct {
164  /* Settings */
165  uint16_t phyFeatures;
167 
168 #ifdef BUFFER_SPLIT_SUPPORT
169  /* State variables */
170  bool started;
171  int32_t totalLength;
172  uint32_t segmentLength;
173 
174  /* State variables for region */
175  uintptr_t address;
176  LRF_RegionOperation operation;
177  uint32_t regionLength;
178  uint32_t regionStart;
179 #endif
181 
182 #define LRF_PhyFeatures_Default 0
183 
184 #define LRF_NUM_CLK_ENA 2 /* Number of clock enable sets */
185 #define LRF_CLK_ENA_APP 0 /* Clock enable set to use for the application */
186 #define LRF_CLK_ENA_RCL 1 /* Clock enable set to use by the RCL */
187 
188 /* The definition below ensures an invalid value runtime and a warning compiletime */
189 #define __ERROR_Address_is_in_an_invalid_range_for_LRF_setup 0x00040000
190 
191 #define _ADDRESS_REGION_BIT(_address) \
192  ((((((uintptr_t)(_address)) >= (LRF_BASE_ADDR)) && \
193  ((uintptr_t)(_address)) < ((LRF_BASE_ADDR) + 0x10000)) ? 0 : \
194  ((((uintptr_t)(_address)) >= (PBE_RAM_BASE_ADDR)) && \
195  (((uintptr_t)(_address)) < ((PBE_RAM_BASE_ADDR) + 0x10000)) ? \
196  1 : \
197  (((((uintptr_t)(_address)) >= 0) && \
198  (((uintptr_t)(_address)) < 0x10000)) ? \
199  2 : \
200  (__ERROR_Address_is_in_an_invalid_range_for_LRF_setup)))) << 14)
201 
202 #define LRF_SETTINGS_CLEAR(_startAddress, _numWords) \
203  ((((_numWords) - 1) & 0x0FFF) | \
204  _ADDRESS_REGION_BIT(_startAddress) | \
205  ((((uintptr_t)(_startAddress)) & 0xFFFF) << 16))
206 
207 #define LRF_SETTINGS_16BIT_BLOCK(_startAddress, _numWords) \
208  ((((_numWords) - 1) & 0x0FFF) | \
209  _ADDRESS_REGION_BIT(_startAddress) | (1 << 12) | \
210  ((((uintptr_t)(_startAddress)) & 0xFFFF) << 16))
211 
212 #define LRF_SETTINGS_16BIT_DUAL_ENTRY(_value0, _value1) \
213  (((_value0) & 0xFFFF) | (((_value1) & 0xFFFF) << 16))
214 
215 #define LRF_SETTINGS_32BIT_BLOCK(_startAddress, _numWords) \
216  ((((_numWords) - 1) & 0x0FFF) | \
217  _ADDRESS_REGION_BIT(_startAddress) | (2 << 12) | \
218  ((((uintptr_t)(_startAddress)) & 0xFFFF) << 16))
219 
220 #define LRF_SETTINGS_16BIT_SPARSE_BLOCK(_startAddress, _numWords) \
221  ((((_numWords) - 1) & 0x0FFF) | \
222  _ADDRESS_REGION_BIT(_startAddress) | (3 << 12)) \
223 
224 #define LRF_SETTINGS_16BIT_SPARSE_ENTRY(_address, _value) \
225  (((((uintptr_t)(_address)) & 0xFFFF) << 16) | ((_value) & 0xFFFF))
226 
227 #define LRF_SETTINGS_16BIT_MASKED_BLOCK(_startAddress, _numWords) \
228  ((((_numWords) - 1) & 0x0FFF) | (11 << 12) | \
229  ((((uintptr_t)(_startAddress)) & 0xFFFF) << 16))
230 
231 #define LRF_SETTINGS_16BIT_MASKED_ENTRY(_mask, _value) \
232  ((((_mask) & 0xFFFF) << 16) | ((_value) & 0xFFFF))
233 
234 LRF_SetupResult LRF_setupRadio(const LRF_Config *lrfConfig, uint16_t phyFeatures, LRF_RadioState lrfState);
235 
236 LRF_SetupResult LRF_loadImage(const LRF_TOPsmImage *image, uint32_t destinationAddress);
237 
239 {
240 #ifdef BUFFER_SPLIT_SUPPORT
241  state->totalLength = 0;
242 #else
243  (void)state;
244 #endif
245 }
246 
248  LRF_ApplySettingsBase includeBase,
249  uint16_t phyFeatures);
251  LRF_ApplySettingsState *state,
252  int32_t bufferAvailWords);
253 
254 void LRF_enable(void);
255 void LRF_disable(void);
256 void LRF_powerDown(void);
257 void LRF_sendHardStop(void);
259 void LRF_hardStop(void);
260 
261 void LRF_waitForTopsmReady(void);
262 uint32_t LRF_prepareRxFifo(void);
263 uint32_t LRF_prepareTxFifo(void);
264 uint32_t LRF_peekRxFifo(int32_t offset);
265 uint32_t LRF_peekTxFifo(int32_t offset);
266 uint8_t *LRF_getTxFifoWrAddr(int32_t offset);
267 void LRF_skipTxFifoWords(uint32_t wordLength);
268 void LRF_discardRxFifoWords(uint32_t wordLength);
269 void LRF_readRxFifoWords(uint32_t *data32, uint32_t wordLength);
270 void LRF_writeTxFifoWords(const uint32_t *data32, uint32_t wordLength);
271 void LRF_setRxFifoEffSz(uint32_t maxSz);
272 void LRF_programFrequency(uint32_t frequency, bool tx);
273 uint32_t LRF_enableSynthRefsys(void);
274 void LRF_disableSynthRefsys(void);
275 void LRF_setClockEnable(uint16_t mask, uint8_t entryNumber);
276 void LRF_clearClockEnable(uint16_t mask, uint8_t entryNumber);
277 int8_t LRF_readRssi(void);
278 void LRF_setRawTxPower(uint32_t value, uint32_t temperatureCoefficient);
280 bool LRF_imagesNeedUpdate(const LRF_Config *lrfConfig);
281 
294 
295 void LRF_rclEnableRadioClocks(void);
296 void LRF_rclDisableRadioClocks(void);
297 
298 static inline void LRF_setAppClockEnable(uint16_t mask)
299 {
301 }
302 
303 static inline void LRF_clearAppClockEnable(uint16_t mask)
304 {
306 }
307 
308 extern uint32_t swParamList[];
309 extern const size_t swParamListSz;
310 
311 #endif
RCL_Handler_BLE5_findAdvChannel
static RCL_Ble5Channel RCL_Handler_BLE5_findAdvChannel(uint32_t advMap, uint32_t order)
Definition: ble5.c:2727
PBE_RAM_BASE_ADDR
#define PBE_RAM_BASE_ADDR
Definition: LRFCC23X0.h:464
RCL_PhyConfig_t::tDem
uint16_t tDem
Definition: ble_cs.c:207
RCL_Handler_BLE5_initAdvScanInitStats
static bool RCL_Handler_BLE5_initAdvScanInitStats(RCL_StatsAdvScanInit *stats, uint32_t startTime)
Definition: ble5.c:2985
RCL_AntennaConfig_t::ap
RCL_AntennaPath_t ap[2]
Definition: ble_cs.c:131
RCL_MultiBuffer_findAvailableRxSpace
uint32_t RCL_MultiBuffer_findAvailableRxSpace(const RCL_MultiBuffer *curBuffer)
Find the minumum number of bytes that can be stored in available MultiBuffers.
Definition: RCL_Buffer.c:367
RCL_CommandStatus_Error_RxFifo
@ RCL_CommandStatus_Error_RxFifo
Definition: RCL_Command.h:110
PBE_NUM_FILTER_ENTRIES
#define PBE_NUM_FILTER_ENTRIES
Definition: ble5.c:232
LRF_readRxFifoWords
void LRF_readRxFifoWords(uint32_t *data32, uint32_t wordLength)
Definition: LRFCC23X0.c:705
hal_enable_clk_buffer
void hal_enable_clk_buffer(void)
Definition: hal_octopus.c:276
BLE_CS_SILENT_CHANNEL
#define BLE_CS_SILENT_CHANNEL
Definition: ble_cs.c:77
LRF_disableSynthRefsys
void LRF_disableSynthRefsys(void)
Definition: LRFCC23X0.c:1184
LRF_clearClockEnable
void LRF_clearClockEnable(uint16_t mask, uint8_t entryNumber)
Definition: LRFCC23X0.c:1199
bleCsHandlerState
struct @37 bleCsHandlerState
foffErrorLut
const int8_t foffErrorLut[BLE_CS_NUM_CHANNELS]
Definition: ble_cs.c:338
swParamListSz
const size_t swParamListSz
Definition: LRFCC23X0.c:72
RCL_HANDLER_GENERIC_PRBS15_POLY
#define RCL_HANDLER_GENERIC_PRBS15_POLY
Definition: generic.c:62
RCL_Ble5_RxPktStatus
Appended packet status field from RX buffer.
Definition: ble5.h:84
hal_power_release_constraint
void hal_power_release_constraint(void)
Definition: hal_cc23x0rx.c:362
hal_setup_sync_found_cap
void hal_setup_sync_found_cap(void)
Definition: hal_octopus.c:220
RCL_Handler_Ble5_txTest
RCL_Events RCL_Handler_Ble5_txTest(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: ble5.c:2289
RCL_CmdBleCs_StepMode_2
@ RCL_CmdBleCs_StepMode_2
Definition: ble_cs.h:271
RCL_TxBuffer_get
static RCL_Buffer_TxBuffer * RCL_TxBuffer_get(List_List *list)
Function to atomically get the first elem in a Tx Buffer list.
Definition: RCL_Buffer.h:183
hal_trigger_command_fsm
void hal_trigger_command_fsm(void)
Definition: hal_octopus.c:113
RCL_CmdBleCs_StepMode_1
@ RCL_CmdBleCs_StepMode_1
Definition: ble_cs.h:270
RadioState_Down
@ RadioState_Down
Definition: LRF.h:87
Par_Reference_32bit
@ Par_Reference_32bit
Definition: LRF.h:151
RCL_CommandStatus_Connect
@ RCL_CommandStatus_Connect
Definition: RCL_Command.h:100
LRF_RegionOperation_Invalid
@ LRF_RegionOperation_Invalid
Definition: LRF.h:155
tAntennaAdjLut
uint16_t tAntennaAdjLut[RCL_CmdBleCs_StepMode_Length]
Definition: ble_cs.c:108
__attribute__
__attribute__((weak))
Definition: ble5.c:2626
RCL_HANDLER_GENERIC_RESTORE_WHITEN_POLY
#define RCL_HANDLER_GENERIC_RESTORE_WHITEN_POLY
Definition: generic.c:71
RCL_CommandStatus_RxErr
@ RCL_CommandStatus_RxErr
Definition: RCL_Command.h:95
hal_power_open
void hal_power_open(void(*f)(RCL_PowerEvent))
Definition: hal_octopus.c:288
RCL_Handler_Generic_TxRepeat
RCL_Events RCL_Handler_Generic_TxRepeat(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:432
RCL_Scheduler.h
BLE_CODED_S8_TIME_PER_BYTE
#define BLE_CODED_S8_TIME_PER_BYTE
Definition: ble5.c:210
RCL_HANDLER_GENERIC_RESTORE_WHITEN_INIT
#define RCL_HANDLER_GENERIC_RESTORE_WHITEN_INIT
Definition: generic.c:70
RCL_Handler_Generic_updateSyncWord
static uint32_t RCL_Handler_Generic_updateSyncWord(uint32_t syncWord)
Definition: generic.c:1998
hal_enable_hard_stop_time_irq
void hal_enable_hard_stop_time_irq(void)
Definition: hal_octopus.c:177
RCL_Handler_BLE5_findConnectTime
static uint32_t RCL_Handler_BLE5_findConnectTime(uint32_t initialConnectTime, uint32_t referenceTime, uint32_t interval)
Definition: ble5.c:3309
RCL_Handler_Adc_Noise_configureS2R
static void RCL_Handler_Adc_Noise_configureS2R(uint32_t numWords)
Definition: adc_noise.c:218
LRF_ConfigWord::masked
struct LRF_ConfigWord::@55 masked
halCommandFsmCb
void(* halCommandFsmCb)(void)
Definition: hal_octopus.c:69
ble_cs.h
TOPSM_RAM_SZ
#define TOPSM_RAM_SZ
Definition: LRFCC23X0.h:469
LRF_clearAppClockEnable
static void LRF_clearAppClockEnable(uint16_t mask)
Definition: LRF.h:303
RCL_Scheduler_setStartStopTimeEarliestStart
RCL_CommandStatus RCL_Scheduler_setStartStopTimeEarliestStart(const RCL_Command *cmd, uint32_t earliestStartTime)
Set start and stop time for LRF based on command with earliest start time.
Definition: RCL_Scheduler.c:94
BLE_CRC_LENGTH
#define BLE_CRC_LENGTH
Definition: ble5.c:220
BLE_CONNECT_INT_UNIT
#define BLE_CONNECT_INT_UNIT
Definition: ble5.c:276
DTM_ACCESS_ADDRESS
#define DTM_ACCESS_ADDRESS
Definition: ble5.c:193
RCL_HANDLER_BLE5_PRBS32_INIT
#define RCL_HANDLER_BLE5_PRBS32_INIT
Definition: ble5.c:261
LRF_peekRxFifo
uint32_t LRF_peekRxFifo(int32_t offset)
Definition: LRFCC23X0.c:646
BLE_2MBPS_PACKET_BASE_TIME
#define BLE_2MBPS_PACKET_BASE_TIME
Definition: ble5.c:204
halDispatchFsmCb
void(* halDispatchFsmCb)(void)
Definition: hal_octopus.c:59
RCL_Handler_Adc_Noise_powerDown
static void RCL_Handler_Adc_Noise_powerDown(void)
Definition: adc_noise.c:268
LRF_TxPower_Use_Min
#define LRF_TxPower_Use_Min
Definition: LRF.h:55
hal_setup_sync_found_cap
void hal_setup_sync_found_cap(void)
Definition: hal_cc23x0rx.c:247
RCL_Handler_BLE5_findPbeErrorEndStatus
static RCL_CommandStatus RCL_Handler_BLE5_findPbeErrorEndStatus(uint16_t pbeEndStatus)
Definition: ble5.c:2811
Par_Write_32bit
@ Par_Write_32bit
Definition: LRF.h:152
LRF_EventRxIgnored
#define LRF_EventRxIgnored
Definition: LRFCC23X0.h:76
RCL_BLE5_updateFilterList
RCL_BLE5_FilterListUpdateResult RCL_BLE5_updateFilterList(const RCL_FL_Entry *newEntry, RCL_FilterList *filterList, uint32_t index)
Update filter list.
Definition: ble5.c:2447
SYSTIM_CH2_START
@ SYSTIM_CH2_START
Definition: hal_octopus.c:138
LRF_setAppClockEnable
static void LRF_setAppClockEnable(uint16_t mask)
Definition: LRF.h:298
RCL_Handler_BLE5_prepareConnectTime
static uint32_t RCL_Handler_BLE5_prepareConnectTime(uint32_t *connectTime, uint32_t referenceTime, uint32_t interval)
Definition: ble5.c:3291
BLE_CS_S2R_SAMPLE_INCREMENT
#define BLE_CS_S2R_SAMPLE_INCREMENT
RF_commandHwi
static void RF_commandHwi(uintptr_t a)
Definition: hal_octopus.c:70
RCL_BLE5_FilterListUpdateIndexError
@ RCL_BLE5_FilterListUpdateIndexError
Definition: ble5.h:59
RCL_CommandStatus_Error_MissingTxBuffer
@ RCL_CommandStatus_Error_MissingTxBuffer
Definition: RCL_Command.h:105
RCL_Handler_Generic_updateLongStats
static void RCL_Handler_Generic_updateLongStats(void)
Definition: generic.c:1932
RCL_CmdBleCs_StepMode_3
@ RCL_CmdBleCs_StepMode_3
Definition: ble_cs.h:272
LRF_EventRxNok
#define LRF_EventRxNok
Definition: LRFCC23X0.h:75
RCL_SchedulerStopInfo::apiStopEnabled
uint32_t apiStopEnabled
Definition: RCL_Scheduler.h:81
BLE_INTERVAL_POS
#define BLE_INTERVAL_POS
Definition: ble5.c:272
RCL_Handler_BLE5_scan_init
RCL_Events RCL_Handler_BLE5_scan_init(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: ble5.c:765
BLE_DTM_PAYLOAD_TYPE_PRBS9
#define BLE_DTM_PAYLOAD_TYPE_PRBS9
Definition: ble5.c:244
RCL_Handler_BLE_CS_fetchNextStep
static RCL_CmdBleCs_Step * RCL_Handler_BLE_CS_fetchNextStep(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:770
LRF_TxPowerTable_findValue
LRF_TxPowerTable_Entry LRF_TxPowerTable_findValue(const LRF_TxPowerTable *table, LRF_TxPowerTable_Index powerLevel)
Search for settings corresponding to the highest tx power lower than specified value in the tx power ...
Definition: LRF.c:668
LRF_getTxFifoWritable
static uint32_t LRF_getTxFifoWritable(void)
Definition: LRFCC23X0.h:498
tStepLut
uint32_t tStepLut[RCL_CmdBleCs_StepMode_Length+1]
Definition: ble_cs.c:105
hal.h
RCL_Handler_BLE5_initConnStats
static bool RCL_Handler_BLE5_initConnStats(RCL_StatsConnection *stats, uint32_t startTime)
Definition: ble5.c:3028
BLE_WIN_SIZE_POS
#define BLE_WIN_SIZE_POS
Definition: ble5.c:268
LRF_EventRxfifo
#define LRF_EventRxfifo
Definition: LRFCC23X0.h:87
LRF_ConfigWord::segment
struct LRF_ConfigWord::@56 segment
RCL_PhyConfig_t::baud
uint16_t baud
Definition: ble_cs.c:191
RCL_SchedulerState::currCmd
RCL_Command * currCmd
Definition: RCL_Scheduler.h:88
HalTimerEvent
HalTimerEvent
Definition: hal.h:59
LRF_BASE_ADDR
#define LRF_BASE_ADDR
Definition: LRFCC23X0.h:463
BLE_CUSTOM_FREQ_BM
#define BLE_CUSTOM_FREQ_BM
Bit mask indicating the use of a custom frequency.
Definition: ble5.h:123
__attribute__
__attribute__((weak))
Definition: hal_octopus.c:302
LRF_TxPowerTable_Index
Index of the tx power table.
Definition: LRFCC23X0.h:153
ble5HandlerState
struct @27 ble5HandlerState
adcNoiseHandlerState
struct @26 adcNoiseHandlerState
RCL_CmdBleCs_Tpm_20us
@ RCL_CmdBleCs_Tpm_20us
Definition: ble_cs.h:309
SW_Write_32bit
@ SW_Write_32bit
Definition: LRF.h:148
BLE_TRANSMIT_WINDOW_DELAY_LEGACY
#define BLE_TRANSMIT_WINDOW_DELAY_LEGACY
Definition: ble5.c:274
LRF_TxPowerTable::numEntries
uint32_t numEntries
Definition: LRFCC23X0.h:185
LRF_TOPsmImage_s::imageLen
uint32_t imageLen
Definition: LRF.h:108
RCL_Handler_BLE5_commitPacket
static void RCL_Handler_BLE5_commitPacket(RCL_MultiBuffer *curBuffer, uint32_t numBytes)
Definition: ble5.c:2931
LRF_enable
void LRF_enable(void)
Definition: LRFCC23X0.c:561
RCL_Handler_BLE_CS_readRxBuffer
static void RCL_Handler_BLE_CS_readRxBuffer(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:470
BLE_ADV_LEGACY_MAX_PKT_LEN
#define BLE_ADV_LEGACY_MAX_PKT_LEN
Definition: ble5.c:224
RCL_Handler_Nesb_updateLongStats
static void RCL_Handler_Nesb_updateLongStats(void)
Definition: generic.c:2082
BLE_HEADER_LENGTH
#define BLE_HEADER_LENGTH
Definition: ble5.c:218
RAMREG32
#define RAMREG32(addr)
Definition: ble5.c:285
RCL_PhyConfig_t::tTxModDelay
uint16_t tTxModDelay
Definition: ble_cs.c:209
LRF_imagesNeedUpdate
bool LRF_imagesNeedUpdate(const LRF_Config *lrfConfig)
Definition: LRFCC23X0.c:183
hal_init_fsm
void hal_init_fsm(void(*dispatchFsmCb)(void), void(*schedFsmCb)(void), void(*commandFsmCb)(void))
Definition: hal_octopus.c:94
RCL_AntennaConfig_t
Definition: ble_cs.c:127
RCL_Handler_BLE_CS_fillTxBuffer
static void RCL_Handler_BLE_CS_fillTxBuffer(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:415
BLE_ADV_CHAN_HI_FREQ
#define BLE_ADV_CHAN_HI_FREQ
Definition: ble5.c:181
RCL_PhyConfig_t::tTr
uint16_t tTr
Definition: ble_cs.c:205
LRF_CLOCK_TICKS_PER_US
#define LRF_CLOCK_TICKS_PER_US
Definition: ble5.c:283
dispatchHwi
static HwiP_Struct dispatchHwi
Definition: hal_octopus.c:58
BLE_CS_NUM_INVALID_CHANNELS
#define BLE_CS_NUM_INVALID_CHANNELS
Definition: ble_cs.c:76
LRF_prepareRxFifo
uint32_t LRF_prepareRxFifo(void)
Definition: LRFCC23X0.c:616
tAdjBLut
uint16_t tAdjBLut[RCL_CmdBleCs_StepMode_Length]
Definition: ble_cs.c:107
RCL_Handler_Generic_TxTest
RCL_Events RCL_Handler_Generic_TxTest(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:694
BLE_ADV_CHAN_HI
#define BLE_ADV_CHAN_HI
Definition: ble5.c:171
RCL_Ble5_RxPhy2Mbps
@ RCL_Ble5_RxPhy2Mbps
Definition: ble5.h:75
hal_cancel_start_time
void hal_cancel_start_time(void)
Definition: hal_octopus.c:202
hal_setup_start_time
void hal_setup_start_time(uint32_t startTime)
Definition: hal_octopus.c:157
RCL_HANDLER_BLE5_RESTORE_MODCTRL
#define RCL_HANDLER_BLE5_RESTORE_MODCTRL
Definition: ble5.c:67
hal_trigger_dispatch_fsm
void hal_trigger_dispatch_fsm(void)
Definition: hal_octopus.c:119
RCL_Handler_BLE5_maskEventsByFifoConf
static uint32_t RCL_Handler_BLE5_maskEventsByFifoConf(uint32_t mask, uint16_t fifoConfVal)
Definition: ble5.c:2945
channelFilter
const uint8_t channelFilter[BLE_CS_NUM_INVALID_CHANNELS]
Definition: ble_cs.c:351
LRF_loadImage
LRF_SetupResult LRF_loadImage(const LRF_TOPsmImage *image, uint32_t destinationAddress)
Definition: LRF.c:46
ble5.h
tAdjALut
uint16_t tAdjALut[RCL_CmdBleCs_StepMode_Length]
Definition: ble_cs.c:106
BLE_DATA_CHAN_BASE
#define BLE_DATA_CHAN_BASE
Definition: ble5.c:163
RCL_Handler_BLE5_updateConnStats
static void RCL_Handler_BLE5_updateConnStats(RCL_StatsConnection *stats, uint32_t startTime)
Definition: ble5.c:3095
LRF_resetSettingsState
static void LRF_resetSettingsState(LRF_ApplySettingsState *state)
Definition: LRF.h:238
RCL_BLE5_FilterListUpdateResult
RCL_BLE5_FilterListUpdateResult
Result of filter list update API.
Definition: ble5.h:57
RCL_HANDLER_GENERIC_RESTORE_MODCTRL
#define RCL_HANDLER_GENERIC_RESTORE_MODCTRL
Definition: generic.c:69
BLE_CS_NUM_CHANNELS
#define BLE_CS_NUM_CHANNELS
Definition: ble_cs.c:75
RCL_CommandStatus_Error_TxBufferCorruption
@ RCL_CommandStatus_Error_TxBufferCorruption
Definition: RCL_Command.h:106
RCL_Handler_BLE5_findRfFreq
static uint32_t RCL_Handler_BLE5_findRfFreq(RCL_Ble5Channel channel)
Definition: ble5.c:2681
LRF_getTxFifoWrAddr
uint8_t * LRF_getTxFifoWrAddr(int32_t offset)
Definition: LRFCC23X0.c:670
SetupResult_ErrorImageLen
@ SetupResult_ErrorImageLen
Definition: LRF.h:98
hal_cancel_hard_stop_time
void hal_cancel_hard_stop_time(void)
Definition: hal_octopus.c:208
LRF.h
HW_Write_16bit_sparse
@ HW_Write_16bit_sparse
Definition: LRF.h:145
hal_set_systim_imask
void hal_set_systim_imask(void)
Definition: hal_octopus.c:297
LRF_TxPowerTable_Entry::power
LRF_TxPowerTable_Index power
Definition: LRFCC23X0.h:166
hal_power_release_constraint
void hal_power_release_constraint(void)
Definition: hal_octopus.c:284
tInfiniteRxAdj
uint16_t tInfiniteRxAdj
Definition: ble_cs.c:109
LRF_SetupResult
LRF_SetupResult
Setup operation result.
Definition: LRF.h:95
RCL_Handler_BLE5_getRandomNumber
uint32_t RCL_Handler_BLE5_getRandomNumber(void)
RCL_Handler_BLE_CS_preprocessCommand
static void RCL_Handler_BLE_CS_preprocessCommand(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:600
BLE_DTM_PAYLOAD_TYPE_01010101
#define BLE_DTM_PAYLOAD_TYPE_01010101
Definition: ble5.c:251
RCL_Scheduler_getCurrentTime
static uint32_t RCL_Scheduler_getCurrentTime(void)
Get current time.
Definition: RCL_Scheduler.h:233
HW_Region_Clear
@ HW_Region_Clear
Definition: LRF.h:142
RCL_HANDLER_BLE5_PRBS32_POLY
#define RCL_HANDLER_BLE5_PRBS32_POLY
Definition: ble5.c:260
RCL_EventHandlerCmdUpdate
#define RCL_EventHandlerCmdUpdate
Definition: RCL_Event.h:57
RCL_Handler_BLE_CS_readStatistics
static void RCL_Handler_BLE_CS_readStatistics(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:588
RCL_Scheduler_setCmdStopTimeNoStartTrigger
RCL_CommandStatus RCL_Scheduler_setCmdStopTimeNoStartTrigger(const RCL_Command *cmd)
Set stop time for LRF based on command when it does not need a start trigger.
Definition: RCL_Scheduler.c:132
RCL_Handler_Generic_FsOff
RCL_Events RCL_Handler_Generic_FsOff(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:227
RCL_Command.h
TPLT
#define TPLT
Definition: ble_cs.c:87
LRF_sendGracefulStop
void LRF_sendGracefulStop(void)
RCL_CommandStatus_Finished
@ RCL_CommandStatus_Finished
Definition: RCL_Command.h:90
BLE_MAX_PKT_LEN
#define BLE_MAX_PKT_LEN
Definition: ble5.c:222
BLE_CONNECT_MSG_LEN
#define BLE_CONNECT_MSG_LEN
Definition: ble5.c:266
LRF_disable
void LRF_disable(void)
Definition: LRFCC23X0.c:583
LRF_discardRxFifoWords
void LRF_discardRxFifoWords(uint32_t wordLength)
Definition: LRFCC23X0.c:692
LRFCC23X0.h
RCL_MultiBuffer_commitBytes
static void RCL_MultiBuffer_commitBytes(RCL_MultiBuffer *curBuffer, uint32_t numBytes)
Update number of bytes written to RCL_MultiBuffer.
Definition: RCL_Buffer.h:484
RCL_Handler_Generic_Fs
RCL_Events RCL_Handler_Generic_Fs(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:136
LRF_ApplySettingsState
Definition: LRF.h:163
LRF_CLK_ENA_APP
#define LRF_CLK_ENA_APP
Definition: LRF.h:185
SetupResult_Ok
@ SetupResult_Ok
Definition: LRF.h:96
LRF_EventRxOk
#define LRF_EventRxOk
Definition: LRFCC23X0.h:79
BLE_DTM_PAYLOAD_TYPE_10101010
#define BLE_DTM_PAYLOAD_TYPE_10101010
Definition: ble5.c:246
RCL_HANDLER_BLE5_PRBS9_POLY
#define RCL_HANDLER_BLE5_PRBS9_POLY
Definition: ble5.c:254
LRF_enableSynthRefsys
uint32_t LRF_enableSynthRefsys(void)
Definition: LRFCC23X0.c:1159
RCL_Ble5_RxPhy1Mbps
@ RCL_Ble5_RxPhy1Mbps
Definition: ble5.h:74
hal_power_set_constraint
void hal_power_set_constraint(void)
Definition: hal_cc23x0rx.c:353
RCL_BLE5_FilterListUpdateOk
@ RCL_BLE5_FilterListUpdateOk
Definition: ble5.h:58
RCL_Buffer.h
RCL_SchedulerState::gracefulStopInfo
RCL_SchedulerStopInfo gracefulStopInfo
Definition: RCL_Scheduler.h:94
LRF_TxPowerTable::powerTable
LRF_TxPowerTable_Entry powerTable[]
Definition: LRFCC23X0.h:186
LRF_EventTxCtrlAck
#define LRF_EventTxCtrlAck
Definition: LRFCC23X0.h:85
RCL_HANDLER_BLE5_PRBS9_INIT
#define RCL_HANDLER_BLE5_PRBS9_INIT
Definition: ble5.c:255
RCL_Tadjust_t::mode2
int16_t mode2[2]
Definition: ble_cs.c:182
LRF_ConfigWord::sparse
struct LRF_ConfigWord::@54 sparse
RCL_Handler_BLE5_updateGenericRxStats
static void RCL_Handler_BLE5_updateGenericRxStats(RCL_StatsGenericRx *stats, uint32_t startTime)
Definition: ble5.c:3167
RCL_Handler_BLE_CS_fetchNextStepResult
static RCL_CmdBleCs_StepResult * RCL_Handler_BLE_CS_fetchNextStepResult(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:907
RCL_AntennaConfig_t::numPath
uint8_t numPath
Definition: ble_cs.c:128
channel2usage
enum @25 channel2usage
RCL_Debug_assert
#define RCL_Debug_assert(expr)
Definition: RCL_Debug.h:39
TIMESTAMP_ADJUST_2MBPS
#define TIMESTAMP_ADJUST_2MBPS
Definition: ble5.c:187
hal_cancel_setup_time
void hal_cancel_setup_time(void)
Definition: hal_octopus.c:196
RCL_PowerEvent
RCL_PowerEvent
Definition: hal.h:67
RCL_CommandStatus
RCL_CommandStatus
Command status.
Definition: RCL_Command.h:83
RCL_Ble5_RxPktStatus::value
uint8_t value
Definition: ble5.h:92
BLE_CODED_S2_PACKET_BASE_TIME
#define BLE_CODED_S2_PACKET_BASE_TIME
Definition: ble5.c:212
RCL_Tadjust_t::mode1
int16_t mode1[2]
Definition: ble_cs.c:181
RCL_HANDLER_BLE5_PRBS15_INIT
#define RCL_HANDLER_BLE5_PRBS15_INIT
Definition: ble5.c:258
RCL_TxBufferInfo::lastEnteredTxBuffer
RCL_Buffer_TxBuffer * lastEnteredTxBuffer
Definition: ble5.c:72
LRF_applySettings
LRF_SetupResult LRF_applySettings(LRF_ConfigWord *config, LRF_ApplySettingsState *state, int32_t bufferAvailWords)
Definition: LRF.c:118
RCL_AntennaPath_t
Definition: ble_cs.c:114
LRF_EventOpError
#define LRF_EventOpError
Definition: LRFCC23X0.h:86
ADC_NOISE_SAMPLE_MEM_S2R_START
#define ADC_NOISE_SAMPLE_MEM_S2R_START
Definition: adc_noise.c:60
BLE_ADV_FILTER_POLICY_CONN
#define BLE_ADV_FILTER_POLICY_CONN
Definition: ble5.c:229
RCL_ADC_NOISE_MAX_NUM_WORDS
#define RCL_ADC_NOISE_MAX_NUM_WORDS
Definition: adc_noise.h:45
RCL_BLE_CS_US_TO_MCE_TIMER
#define RCL_BLE_CS_US_TO_MCE_TIMER(x)
Definition: ble_cs.h:64
hal_power_close
void hal_power_close(void)
Definition: hal_octopus.c:293
RCL_SchedulerStopInfo::cmdStopEnabled
uint32_t cmdStopEnabled
Definition: RCL_Scheduler.h:79
BLE_PHY_FEATURE_PHY_MASK
#define BLE_PHY_FEATURE_PHY_MASK
Definition: ble5.c:238
BLE_ADV_CHAN_MID
#define BLE_ADV_CHAN_MID
Definition: ble5.c:169
RCL_PhyConfig_t::tAntennaAdj
uint16_t tAntennaAdj
Definition: ble_cs.c:212
RCL_Handler_Generic_updateTxBuffers
static uint32_t RCL_Handler_Generic_updateTxBuffers(List_List *txBuffers, uint32_t maxBuffers)
Definition: generic.c:1860
HAL_TIMER_EVT_GRACEFUL_STOP
@ HAL_TIMER_EVT_GRACEFUL_STOP
Definition: hal.h:63
generic.h
RCL_BLE5_setDefaultRfFrequency
void RCL_BLE5_setDefaultRfFrequency(uint32_t rfFrequency)
Set RF frequency to use if custom frequency is specified.
Definition: ble5.c:2480
RCL_Handler_BLE5_dtmTx
RCL_Events RCL_Handler_BLE5_dtmTx(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: ble5.c:1673
RCL_PctConfig_t
Definition: ble_cs.c:161
RCL_CmdBleCs_Tpm_40us
@ RCL_CmdBleCs_Tpm_40us
Definition: ble_cs.h:310
RCL_Handler_BLE_CS_configureS2R
static void RCL_Handler_BLE_CS_configureS2R(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:524
RCL_Handler_BLE_CS
RCL_Events RCL_Handler_BLE_CS(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: ble_cs.c:949
RCL_CmdBleCs_PacketResult_Ok
@ RCL_CmdBleCs_PacketResult_Ok
Definition: ble_cs.h:283
RCL_HANDLER_BLE5_PRBS15_POLY
#define RCL_HANDLER_BLE5_PRBS15_POLY
Definition: ble5.c:257
RCL_BLE5_CONNECT_SUB_INT
#define RCL_BLE5_CONNECT_SUB_INT
Definition: ble5.c:280
RCL_Handler_BLE5_findNumExtraBytes
static uint32_t RCL_Handler_BLE5_findNumExtraBytes(uint32_t fifoCfg)
Definition: ble5.c:3359
schedHwi
static HwiP_Struct schedHwi
Definition: hal_octopus.c:48
RCL_Handler_BLE5_findPacketDuration
static uint32_t RCL_Handler_BLE5_findPacketDuration(uint32_t length, uint16_t phyFeatures)
Definition: ble5.c:3331
RCL_AntennaConfig_t::numPerm
uint8_t numPerm
Definition: ble_cs.c:129
LRF_ConfigWord::value16
uint16_t value16[2]
Definition: LRF.h:119
RCL_Scheduler_setNewStartNow
RCL_CommandStatus RCL_Scheduler_setNewStartNow(void)
Set new start time for LRF to now, after a previous start.
Definition: RCL_Scheduler.c:142
RCL_ProfilingEvent_PreprocStop
@ RCL_ProfilingEvent_PreprocStop
Definition: RCL_Profiling.h:38
RCL_Scheduler_setNewStartAbsTime
RCL_CommandStatus RCL_Scheduler_setNewStartAbsTime(uint32_t startTime)
Set new start time for LRF to given absolute time, after a previous start.
Definition: RCL_Scheduler.c:150
RCL_SchedulerStopInfo::schedStopEnabled
uint32_t schedStopEnabled
Definition: RCL_Scheduler.h:80
RCL_Handler_BLE5_setPhy
static RCL_CommandStatus RCL_Handler_BLE5_setPhy(uint16_t phyFeatures)
Definition: ble5.c:2783
RCL_Handler_Generic_updateRxStats
static void RCL_Handler_Generic_updateRxStats(RCL_StatsGeneric *stats, uint32_t startTime)
Definition: generic.c:1908
hal_check_clear_timer_compare
HalTimerEvent hal_check_clear_timer_compare(void)
Definition: hal_octopus.c:231
RCL_HANDLER_BLE5_PRBS_SYNC
#define RCL_HANDLER_BLE5_PRBS_SYNC
Definition: ble5.c:262
LRF_writeTxFifoWords
void LRF_writeTxFifoWords(const uint32_t *data32, uint32_t wordLength)
Definition: LRFCC23X0.c:712
BLE_PHY_FEATURE_PHY_CODED
#define BLE_PHY_FEATURE_PHY_CODED
Definition: ble5.c:237
RCL_Handler_BLE_CS_configureTxRxFIFO
static void RCL_Handler_BLE_CS_configureTxRxFIFO(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:380
RCL_CmdBleCs_Role_Initiator
@ RCL_CmdBleCs_Role_Initiator
Definition: ble_cs.h:258
RCL_PhyConfig_t::tRxTimeoutRn
uint16_t tRxTimeoutRn
Definition: ble_cs.c:203
SetupResult_ErrorElemAddrAlign
@ SetupResult_ErrorElemAddrAlign
Definition: LRF.h:102
RCL_Handler_BLE5_genericRx
RCL_Events RCL_Handler_BLE5_genericRx(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: ble5.c:1911
BLE_ADV_FILTER_POLICY_SCAN
#define BLE_ADV_FILTER_POLICY_SCAN
Definition: ble5.c:227
RCL_Handler_Nesb_Prx
RCL_Events RCL_Handler_Nesb_Prx(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:1482
RCL_Ble5_RxPhyCodedS2
@ RCL_Ble5_RxPhyCodedS2
Definition: ble5.h:77
RCL_HANDLER_GENERIC_PRBS_SYNC
#define RCL_HANDLER_GENERIC_PRBS_SYNC
Definition: generic.c:66
RCL_AntennaConfig_t::increment
uint8_t increment
Definition: ble_cs.c:130
BLE_PHY_CHAN_MAX
#define BLE_PHY_CHAN_MAX
Definition: ble5.c:175
RCL_BLE_CS_US_TO_PBE_TIMER
#define RCL_BLE_CS_US_TO_PBE_TIMER(x)
Definition: ble_cs.h:65
SYSTIM_CH2_SETUP
@ SYSTIM_CH2_SETUP
Definition: hal_octopus.c:137
RCL_Types.h
LRF_TxPowerEntry_INVALID_VALUE
#define LRF_TxPowerEntry_INVALID_VALUE
Definition: LRFCC23X0.h:172
RCL_BLE5_getRxStatus
RCL_Ble5_RxPktStatus RCL_BLE5_getRxStatus(const RCL_Buffer_DataEntry *rxEntry)
Get received status field from packet.
Definition: ble5.c:2488
RCL_BLE5_setAccessAddressModification
void RCL_BLE5_setAccessAddressModification(bool enable)
Definition: ble5.c:2618
RCL_PhyConfig_t::tFidc
uint16_t tFidc
Definition: ble_cs.c:208
LRF_ConfigWord
Definition: LRF.h:112
RCL_CmdBleCs_Role_Reflector
@ RCL_CmdBleCs_Role_Reflector
Definition: ble_cs.h:259
Par_Region_Clear
@ Par_Region_Clear
Definition: LRF.h:150
RCL_Handler_BLE_CS_readS2RSamples
static void RCL_Handler_BLE_CS_readS2RSamples(RCL_CmdBleCs *pCmd)
Definition: ble_cs.c:544
RCL_PhyConfig_t::tRxTimeoutI3
uint16_t tRxTimeoutI3
Definition: ble_cs.c:199
TPYL
#define TPYL
Definition: ble_cs.c:88
RCL_CMD_GENERIC_WH_MODE_PRBS15
#define RCL_CMD_GENERIC_WH_MODE_PRBS15
Definition: generic.h:220
BLE_PHY_FEATURE_PHY_2MBPS
#define BLE_PHY_FEATURE_PHY_2MBPS
Definition: ble5.c:236
BLE_ADV_CHAN_MID_FREQ
#define BLE_ADV_CHAN_MID_FREQ
Definition: ble5.c:179
RCL_Tadjust_t::mode3
int16_t mode3[2]
Definition: ble_cs.c:183
LRF_EventTxDone
#define LRF_EventTxDone
Definition: LRFCC23X0.h:84
RCL_HANDLER_BLE5_RESTORE_NONE
#define RCL_HANDLER_BLE5_RESTORE_NONE
Definition: ble5.c:66
hal_enable_graceful_stop_time_irq
void hal_enable_graceful_stop_time_irq(void)
Definition: hal_octopus.c:191
RCL_Handler_Generic_PbeOperation
RCL_Events RCL_Handler_Generic_PbeOperation(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:1116
RCL_CommandStatus_Error_RxBufferCorruption
@ RCL_CommandStatus_Error_RxBufferCorruption
Definition: RCL_Command.h:107
LRF_TxPower_Use_Raw
#define LRF_TxPower_Use_Raw
Definition: LRF.h:65
RCL_PhyConfig_t::tPostProcessDiv1
uint16_t tPostProcessDiv1
Definition: ble_cs.c:196
RCL_Scheduler_setNewStartRelTime
RCL_CommandStatus RCL_Scheduler_setNewStartRelTime(uint32_t relStartTime)
Set new start time for LRF to given time relative to previous LRF start.
Definition: RCL_Scheduler.c:158
LRF_EventRxEmpty
#define LRF_EventRxEmpty
Definition: LRFCC23X0.h:77
RCL_PhyConfig_t::demmisc3
uint16_t demmisc3
Definition: ble_cs.c:193
BLE_CODED_S8_PACKET_BASE_TIME
#define BLE_CODED_S8_PACKET_BASE_TIME
Definition: ble5.c:208
RCL_BufferStateFinished
@ RCL_BufferStateFinished
Definition: RCL_Buffer.h:46
RCL_CommandStatus_MaxNak
@ RCL_CommandStatus_MaxNak
Definition: RCL_Command.h:101
RCL_CmdBleCs_Tpm_Length
@ RCL_CmdBleCs_Tpm_Length
Definition: ble_cs.h:311
LRF_RSSI_INVALID
#define LRF_RSSI_INVALID
Definition: LRF.h:83
BLE_CS_NUM_PERMUTATION
#define BLE_CS_NUM_PERMUTATION
Definition: ble_cs.c:78
RCL_PhyConfig_t::tPacket
uint16_t tPacket
Definition: ble_cs.c:202
HW_Write_16bit
@ HW_Write_16bit
Definition: LRF.h:143
RCL_TxBufferInfo::numBuffers
uint16_t numBuffers
Definition: ble5.c:75
RCL_CmdBleCs_Payload_Length
@ RCL_CmdBleCs_Payload_Length
Definition: ble_cs.h:371
swParamList
uint32_t swParamList[]
Definition: LRFCC23X0.c:71
RCL_MultiBuffer_getBuffer
RCL_MultiBuffer * RCL_MultiBuffer_getBuffer(RCL_MultiBuffer *curBuffer, uint32_t minLength)
Returns a buffer with at least minLength bytes remaining capacity.
Definition: RCL_Buffer.c:313
RCL_Ble5_RxPhyCodedS8
@ RCL_Ble5_RxPhyCodedS8
Definition: ble5.h:76
TGD
#define TGD
Definition: ble_cs.c:86
RCL_TxBuffer_head
static RCL_Buffer_TxBuffer * RCL_TxBuffer_head(List_List *list)
Function to return the head of a TxBuffer list.
Definition: RCL_Buffer.h:198
BLE_PHY_FEATURE_PHY_1MBPS
#define BLE_PHY_FEATURE_PHY_1MBPS
Definition: ble5.c:235
BLE_CS_MAX_CHANNEL
#define BLE_CS_MAX_CHANNEL
Definition: ble_cs.c:74
RCL_BufferStateInUse
@ RCL_BufferStateInUse
Definition: RCL_Buffer.h:45
RadioState_ImagesLoaded
@ RadioState_ImagesLoaded
Definition: LRF.h:88
BLE_1MBPS_TIME_PER_BYTE
#define BLE_1MBPS_TIME_PER_BYTE
Definition: ble5.c:202
LRF_RadioState
LRF_RadioState
Definition: LRF.h:86
LRF_ConfigWord::value32
uint32_t value32
Definition: LRF.h:118
LRF_hardStop
void LRF_hardStop(void)
LRF_setRxFifoEffSz
void LRF_setRxFifoEffSz(uint32_t maxSz)
Definition: LRFCC23X0.c:720
LRF_TOPsmImage_s::image
uint32_t image[]
Definition: LRF.h:109
MAX_REG_CONFIG_LEN
#define MAX_REG_CONFIG_LEN
Definition: LRFCC23X0.h:470
LRF_TxPowerTable
Tx power table, containing all characterized dBm to register settings mappings.
Definition: LRFCC23X0.h:184
hal_get_ifg_reg
uint32_t hal_get_ifg_reg(void)
Definition: hal_octopus.c:78
RCL_CmdBleCs_Role_Length
@ RCL_CmdBleCs_Role_Length
Definition: ble_cs.h:260
S2R_RAM_BASE_ADDR
#define S2R_RAM_BASE_ADDR
Definition: LRFCC23X0.h:468
SW_Write_16bit
@ SW_Write_16bit
Definition: LRF.h:147
LRF_setupRadio
LRF_SetupResult LRF_setupRadio(const LRF_Config *lrfConfig, uint16_t phyFeatures, LRF_RadioState lrfState)
Definition: LRFCC23X0.c:87
BLE_WIN_OFFSET_POS
#define BLE_WIN_OFFSET_POS
Definition: ble5.c:270
RCL_Debug.h
LRF_setRawTxPower
void LRF_setRawTxPower(uint32_t value, uint32_t temperatureCoefficient)
Definition: LRFCC23X0.c:1252
RCL_CommandStatus_RxTimeout
@ RCL_CommandStatus_RxTimeout
Definition: RCL_Command.h:93
hal_get_current_time
uint32_t hal_get_current_time(void)
Definition: hal_octopus.c:131
TIMESTAMP_ADJUST_CODED
#define TIMESTAMP_ADJUST_CODED
Definition: ble5.c:189
LRF_ApplySettingsBase
LRF_ApplySettingsBase
Definition: LRF.h:158
hal_setup_graceful_stop_time
void hal_setup_graceful_stop_time(uint32_t stopTime)
Definition: hal_octopus.c:182
BLE_PHY_CHAN_MIN
#define BLE_PHY_CHAN_MIN
Definition: ble5.c:173
RCL_Schedule_AbsTime
@ RCL_Schedule_AbsTime
Definition: RCL_Command.h:136
BLE_T_IFS
#define BLE_T_IFS
Definition: ble5.c:216
HAL_TIMER_EVT_NONE
@ HAL_TIMER_EVT_NONE
Definition: hal.h:60
SetupResult_ErrorParRange
@ SetupResult_ErrorParRange
Definition: LRF.h:103
RCL_Handler_BLE5_initGenericRxStats
static bool RCL_Handler_BLE5_initGenericRxStats(RCL_StatsGenericRx *stats, uint32_t startTime)
Definition: ble5.c:3130
BLE_DTM_PAYLOAD_TYPE_PRBS15
#define BLE_DTM_PAYLOAD_TYPE_PRBS15
Definition: ble5.c:247
commandHwi
static HwiP_Struct commandHwi
Definition: hal_octopus.c:68
RCL_CmdBleCs_Phy_Length
@ RCL_CmdBleCs_Phy_Length
Definition: ble_cs.h:249
LRF_readRssi
int8_t LRF_readRssi(void)
Definition: LRFCC23X0.c:1247
RCL_BLE_CS_MCE_TIMER_TO_PBE_TIMER
#define RCL_BLE_CS_MCE_TIMER_TO_PBE_TIMER(x)
Definition: ble_cs.h:68
HAL_TIMER_EVT_START
@ HAL_TIMER_EVT_START
Definition: hal.h:62
ADV_ACCESS_ADDRESS
#define ADV_ACCESS_ADDRESS
Definition: ble5.c:191
RCL_CommandStatus_Active
@ RCL_CommandStatus_Active
Definition: RCL_Command.h:87
RCL_Handler_BLE5_InitializeFilterList
static void RCL_Handler_BLE5_InitializeFilterList(RCL_FilterList *filterList, uint32_t *pbeFilterList, uint32_t invertMask)
Definition: ble5.c:3192
RCL_Handler_Nesb_updateHeader
static void RCL_Handler_Nesb_updateHeader(List_List *txBuffers, uint8_t autoRetransmitMode, uint8_t hdrConf, uint8_t seqNumber)
Definition: generic.c:2024
LRF_powerDown
void LRF_powerDown(void)
RCL_HANDLER_GENERIC_PRBS_INIT
#define RCL_HANDLER_GENERIC_PRBS_INIT
Definition: generic.c:65
RCL_PhyConfig_t::tPostProcessDiv12
uint16_t tPostProcessDiv12
Definition: ble_cs.c:197
RCL_CommandStatus_Error
@ RCL_CommandStatus_Error
Definition: RCL_Command.h:102
LRF_ApplySettings_IncludeBase
@ LRF_ApplySettings_IncludeBase
Definition: LRF.h:160
SetupResult_ErrorElemType
@ SetupResult_ErrorElemType
Definition: LRF.h:101
RCL_TxBufferInfo::numBytes
uint16_t numBytes
Definition: ble5.c:74
LRF_getRawTxPower
LRF_TxPowerTable_Entry LRF_getRawTxPower(void)
Definition: LRFCC23X0.c:1259
LRF_RegConfigList_s::entries
LRF_ConfigWord * entries[]
Definition: LRF.h:138
LRF_initSettingsState
void LRF_initSettingsState(LRF_ApplySettingsState *state, LRF_ApplySettingsBase includeBase, uint16_t phyFeatures)
Definition: LRF.c:109
HW_Write_16bit_masked
@ HW_Write_16bit_masked
Definition: LRF.h:153
RCL_HANDLER_GENERIC_RESTORE_NONE
#define RCL_HANDLER_GENERIC_RESTORE_NONE
Definition: generic.c:68
RCL_PhyConfig_t::symmap
uint16_t symmap
Definition: ble_cs.c:192
SetupResult_ErrorElemLen
@ SetupResult_ErrorElemLen
Definition: LRF.h:100
RCL_CommandStatus_GracefulStop
@ RCL_CommandStatus_GracefulStop
Definition: RCL_Command.h:96
BLE_1MBPS_PACKET_BASE_TIME
#define BLE_1MBPS_PACKET_BASE_TIME
Definition: ble5.c:200
LRF_rclDisableRadioClocks
void LRF_rclDisableRadioClocks(void)
Definition: LRFCC23X0.c:1234
LRF_skipTxFifoWords
void LRF_skipTxFifoWords(uint32_t wordLength)
Definition: LRFCC23X0.c:681
RCL_Handler_Generic_Rx
RCL_Events RCL_Handler_Generic_Rx(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:872
RCL_Handler_Generic_initRxStats
static bool RCL_Handler_Generic_initRxStats(RCL_StatsGeneric *stats, uint32_t startTime)
Definition: generic.c:1954
RCL_CMD_BLE5_WH_MODE_DEFAULT
#define RCL_CMD_BLE5_WH_MODE_DEFAULT
Definition: ble5.h:635
BLE_DTM_PAYLOAD_TYPE_11110000
#define BLE_DTM_PAYLOAD_TYPE_11110000
Definition: ble5.c:245
RCL_Buffer_DataEntry_paddedLen
#define RCL_Buffer_DataEntry_paddedLen(len)
Total length of a data entry in bytes based on length field of the entry.
Definition: RCL_Buffer.h:117
RCL_Handler_BLE5_findWhitenInit
static uint16_t RCL_Handler_BLE5_findWhitenInit(RCL_Ble5Channel channel)
Definition: ble5.c:2653
BLE_CHAN_SPACE
#define BLE_CHAN_SPACE
Definition: ble5.c:165
RCL_Handler_Nesb_Ptx
RCL_Events RCL_Handler_Nesb_Ptx(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:1174
RCL_ProfilingEvent_PostprocStart
@ RCL_ProfilingEvent_PostprocStart
Definition: RCL_Profiling.h:39
RCL_CommandStatus_Error_TxFifo
@ RCL_CommandStatus_Error_TxFifo
Definition: RCL_Command.h:109
RCL_AntennaPath_t::apn
uint8_t apn
Definition: ble_cs.c:121
BLE_PHY_FEATURE_CODING_S8
#define BLE_PHY_FEATURE_CODING_S8
Definition: ble5.c:239
LRF_rclEnableRadioClocks
void LRF_rclEnableRadioClocks(void)
Definition: LRFCC23X0.c:1221
RCL_Handler_Generic_setSynthPowerState
static void RCL_Handler_Generic_setSynthPowerState(bool fsOff)
Definition: generic.c:1776
LRF_TxPowerTable_findValue
LRF_TxPowerTable_Entry LRF_TxPowerTable_findValue(const LRF_TxPowerTable *table, LRF_TxPowerTable_Index powerLevel)
Search for settings corresponding to the highest tx power lower than specified value in the tx power ...
Definition: LRF.c:668
hal_get_temperature
int16_t hal_get_temperature(void)
adc_noise.h
ADV_CRC_INIT
#define ADV_CRC_INIT
Definition: ble5.c:195
RCL_PhyConfig_t::tInfiniteRx
uint16_t tInfiniteRx
Definition: ble_cs.c:204
RCL_Handler_BLE_CS_findPbeErrorEndStatus
static RCL_CommandStatus RCL_Handler_BLE_CS_findPbeErrorEndStatus(uint16_t pbeEndStatus)
Definition: ble_cs.c:915
RCL_PhyConfig_t::tPilotAdjust
int16_t tPilotAdjust
Definition: ble_cs.c:200
HAL_TIMER_EVT_HARD_STOP
@ HAL_TIMER_EVT_HARD_STOP
Definition: hal.h:64
RCL_TxBuffer_next
static RCL_Buffer_TxBuffer * RCL_TxBuffer_next(RCL_Buffer_TxBuffer *elem)
Function to return the next elem in a linked list of Tx Buffers.
Definition: RCL_Buffer.h:213
RCL_BLE5_CONNECT_INT_SUB_DIV
#define RCL_BLE5_CONNECT_INT_SUB_DIV
Definition: ble5.c:278
HW_Write_32bit
@ HW_Write_32bit
Definition: LRF.h:144
RCL_CMD_BLE5_WH_MODE_PRBS9
#define RCL_CMD_BLE5_WH_MODE_PRBS9
Definition: ble5.h:636
LRF_setClockEnable
void LRF_setClockEnable(uint16_t mask, uint8_t entryNumber)
Definition: LRFCC23X0.c:1190
SetupResult_Ok_Partial
@ SetupResult_Ok_Partial
Definition: LRF.h:97
hal_setup_setup_time
void hal_setup_setup_time(uint32_t startTime)
Definition: hal_octopus.c:147
antennaConfig
const RCL_AntennaConfig_t antennaConfig[RCL_CmdBleCs_AntennaConfig_Length]
Definition: ble_cs.c:147
BLE_2MBPS_TIME_PER_BYTE
#define BLE_2MBPS_TIME_PER_BYTE
Definition: ble5.c:206
RCL_Handler_BLE5_genericTx
RCL_Events RCL_Handler_BLE5_genericTx(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: ble5.c:2156
LRF_ApplySettingsState::phyFeatures
uint16_t phyFeatures
Definition: LRF.h:165
RCL_CommandStatus_Error_Param
@ RCL_CommandStatus_Error_Param
Definition: RCL_Command.h:104
LRF_CLK_ENA_RCL
#define LRF_CLK_ENA_RCL
Definition: LRF.h:186
RCL_Tadjust_t
Definition: ble_cs.c:179
BLE_DATA_CHAN_MAX
#define BLE_DATA_CHAN_MAX
Definition: ble5.c:161
LRF_prepareTxFifo
uint32_t LRF_prepareTxFifo(void)
Definition: LRFCC23X0.c:632
RCL_CmdBleCs_Tpm_10us
@ RCL_CmdBleCs_Tpm_10us
Definition: ble_cs.h:308
RCL_PhyConfig_t::tAdj
RCL_Tadjust_t tAdj[RCL_CmdBleCs_Role_Length]
Definition: ble_cs.c:221
payloadLut
const uint16_t payloadLut[RCL_CmdBleCs_Payload_Length]
Definition: ble_cs.c:356
LRF_RegConfigList_s
Definition: LRF.h:136
RCL_PhyConfig_t::tRxTimeoutI0
uint16_t tRxTimeoutI0
Definition: ble_cs.c:198
RCL_CommandStatus_HardStop
@ RCL_CommandStatus_HardStop
Definition: RCL_Command.h:97
RCL_CommandStatus_Error_UnknownOp
@ RCL_CommandStatus_Error_UnknownOp
Definition: RCL_Command.h:112
DECODE_ANTENNA
#define DECODE_ANTENNA(x, y)
Definition: ble_cs.c:81
BLE_CS_FIRST_BATCH_SIZE
#define BLE_CS_FIRST_BATCH_SIZE
Definition: ble_cs.c:80
txBuffer_dataByte
#define txBuffer_dataByte(buffer, pos)
Pointer to a given byte in the data part of a TX buffer.
Definition: ble5.c:295
RCL_Handler_BLE_CS_preprocessStep
static RCL_CmdBleCs_Step * RCL_Handler_BLE_CS_preprocessStep(RCL_CmdBleCs *pCmd, RCL_CmdBleCs_Step *pStep)
Definition: ble_cs.c:779
RCL_Profiling.h
RCL_PhyConfig_t::pctConfig
RCL_PctConfig_t pctConfig[RCL_CmdBleCs_Tpm_Length]
Definition: ble_cs.c:215
LRF_RegionOperation_Skip
@ LRF_RegionOperation_Skip
Definition: LRF.h:154
RCL_CmdBleCs_StepMode_Length
@ RCL_CmdBleCs_StepMode_Length
Definition: ble_cs.h:273
BLE_CS_S2R_OVERSAMPLE_RATE
#define BLE_CS_S2R_OVERSAMPLE_RATE
Definition: ble_cs.c:79
LRF_waitForTopsmReady
void LRF_waitForTopsmReady(void)
Definition: LRFCC23X0.c:607
LRF_programFrequency
void LRF_programFrequency(uint32_t frequency, bool tx)
Definition: LRFCC23X0.c:1073
TRD
#define TRD
Definition: ble_cs.c:85
RCL_CMD_GENERIC_WH_MODE_NONE
#define RCL_CMD_GENERIC_WH_MODE_NONE
Definition: generic.h:218
BLE_ADV_CHAN_LO_FREQ
#define BLE_ADV_CHAN_LO_FREQ
Definition: ble5.c:177
ADC_NOISE_SAMPLE_PTR
#define ADC_NOISE_SAMPLE_PTR
Definition: adc_noise.c:58
RCL_BLE5_getRxRssi
int8_t RCL_BLE5_getRxRssi(const RCL_Buffer_DataEntry *rxEntry)
Get received RSSI from packet.
Definition: ble5.c:2523
RCL_CmdBleCs_AntennaConfig_Length
@ RCL_CmdBleCs_AntennaConfig_Length
Definition: ble_cs.h:357
RCL_Handler_BLE5_updateAdvScanInitStats
static void RCL_Handler_BLE5_updateAdvScanInitStats(RCL_StatsAdvScanInit *stats, uint32_t startTime)
Definition: ble5.c:2958
RCL_HANDLER_BLE5_RESTORE_WHITEN_POLY
#define RCL_HANDLER_BLE5_RESTORE_WHITEN_POLY
Definition: ble5.c:68
LRF_ConfigWord::region
struct LRF_ConfigWord::@53 region
RF_schedHwi
static void RF_schedHwi(uintptr_t a)
Definition: hal_octopus.c:50
RCL_CommandStatus_NoSync
@ RCL_CommandStatus_NoSync
Definition: RCL_Command.h:94
RCL_Handler_Nesb_updateStats
static void RCL_Handler_Nesb_updateStats(RCL_StatsNesb *stats, uint32_t startTime)
Definition: generic.c:2054
RCL_Buffer_bytesToWords
#define RCL_Buffer_bytesToWords(byteLen)
Number of 32-bit words needed to hold a given number of bytes (rounded up)
Definition: RCL_Buffer.h:111
LRF_EventTxfifo
#define LRF_EventTxfifo
Definition: LRFCC23X0.h:88
RCL_HANDLER_GENERIC_PRBS32_POLY
#define RCL_HANDLER_GENERIC_PRBS32_POLY
Definition: generic.c:64
RCL_BLE5_RX_PKT_STATUS_INVALID
#define RCL_BLE5_RX_PKT_STATUS_INVALID
Definition: ble5.h:96
RCL_PhyConfig_t::tCorr
uint16_t tCorr
Definition: ble_cs.c:206
HAL_TIMER_EVT_SETUP
@ HAL_TIMER_EVT_SETUP
Definition: hal.h:61
LRF_ApplySettings_NoBase
@ LRF_ApplySettings_NoBase
Definition: LRF.h:159
LRF_RegConfigList_s::numEntries
uint32_t numEntries
Definition: LRF.h:137
RCL_PhyConfig_t::tStartup
uint16_t tStartup
Definition: ble_cs.c:201
RCL_Handler_Generic_findPbeErrorEndStatus
static RCL_CommandStatus RCL_Handler_Generic_findPbeErrorEndStatus(uint16_t pbeEndStatus)
Definition: generic.c:1823
hal_enable_setup_time_irq
void hal_enable_setup_time_irq(void)
Definition: hal_octopus.c:142
RadioState_Configured
@ RadioState_Configured
Definition: LRF.h:89
phyConfigLut
const RCL_PhyConfig_t phyConfigLut[RCL_CmdBleCs_Phy_Length]
Definition: ble_cs.c:227
RCL_EventNone
#define RCL_EventNone
Definition: RCL_Event.h:38
RCL_Handler_Generic_maskEventsByFifoConf
static uint32_t RCL_Handler_Generic_maskEventsByFifoConf(uint32_t mask, uint16_t fifoConfVal)
Definition: generic.c:1896
hal_trigger_scheduler_fsm
void hal_trigger_scheduler_fsm(void)
Definition: hal_octopus.c:125
RCL_SchedulerState::hardStopInfo
RCL_SchedulerStopInfo hardStopInfo
Definition: RCL_Scheduler.h:93
RCL_Handler_BLE5_conn
RCL_Events RCL_Handler_BLE5_conn(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: ble5.c:1335
antennaPermutation
const RCL_AntennaPath_t antennaPermutation[BLE_CS_NUM_PERMUTATION]
Definition: ble_cs.c:137
RF_dispatchHwi
static void RF_dispatchHwi(uintptr_t a)
Definition: hal_octopus.c:60
RCL_Ble5Channel
uint8_t RCL_Ble5Channel
Type for BLE channels.
Definition: ble5.h:67
RCL_Handler_BLE5_updateFilterListEntry
static void RCL_Handler_BLE5_updateFilterListEntry(RCL_FilterList *filterList, uint32_t *pbeFilterList, uint32_t invertMask, uint32_t index)
Definition: ble5.c:3233
LRF_RegionOperation
LRF_RegionOperation
Definition: LRF.h:141
BLE_CODED_S2_TIME_PER_BYTE
#define BLE_CODED_S2_TIME_PER_BYTE
Definition: ble5.c:214
LRF_programTxPower
LRF_TxPowerResult LRF_programTxPower(LRF_TxPowerTable_Index powerLevel)
Finds settings corresponding to the highest tx power lower than the specified value in the tx power t...
Definition: LRFCC23X0.c:1303
LRF_TOPsmImage_s
Definition: LRF.h:107
RCL_MultiBuffer_getNextWritableByte
static uint8_t * RCL_MultiBuffer_getNextWritableByte(RCL_MultiBuffer *curBuffer)
Find the first byte to write in an RCL_MultiBuffer.
Definition: RCL_Buffer.h:468
ENCODE_ANTENNA
#define ENCODE_ANTENNA(x, y)
Definition: ble_cs.c:82
RCL_SchedulerState::actualStartTime
uint32_t actualStartTime
Definition: RCL_Scheduler.h:92
genericHandlerState
struct @45 genericHandlerState
RCL_PhyConfig_t
Definition: ble_cs.c:189
LRF_TxPowerTable_Index::rawValue
int8_t rawValue
Definition: LRFCC23X0.h:158
LRF_ApplySettingsState::includeBase
LRF_ApplySettingsBase includeBase
Definition: LRF.h:166
LRF_sendHardStop
void LRF_sendHardStop(void)
RCL_Handler_BLE5_adv
RCL_Events RCL_Handler_BLE5_adv(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: ble5.c:300
BACKOFF_UPPER_MAX
#define BACKOFF_UPPER_MAX
Definition: ble5.c:197
RCL_CMD_BLE5_WH_MODE_PRBS15
#define RCL_CMD_BLE5_WH_MODE_PRBS15
Definition: ble5.h:637
halSchedFsmCb
void(* halSchedFsmCb)(void)
Definition: hal_octopus.c:49
LRF_peekTxFifo
uint32_t LRF_peekTxFifo(int32_t offset)
Definition: LRFCC23X0.c:659
SetupResult_ErrorSwConfig
@ SetupResult_ErrorSwConfig
Definition: LRF.h:104
RCL_Handler_BLE5_updateTxBuffers
static uint32_t RCL_Handler_BLE5_updateTxBuffers(List_List *txBuffers, uint32_t maxBuffers, RCL_TxBufferInfo *txBufferInfo, bool retransPossible)
Definition: ble5.c:2846
RCL_MagnConfig_t
Definition: ble_cs.c:171
LRF_initSettingsState
void LRF_initSettingsState(LRF_ApplySettingsState *state, LRF_ApplySettingsBase includeBase, uint16_t phyFeatures)
Definition: LRF.c:109
LRF_EventOpDone
#define LRF_EventOpDone
Definition: LRFCC23X0.h:71
hal_cancel_graceful_stop_time
void hal_cancel_graceful_stop_time(void)
Definition: hal_octopus.c:214
BLE_DTM_PAYLOAD_TYPE_00001111
#define BLE_DTM_PAYLOAD_TYPE_00001111
Definition: ble5.c:250
RAMREG32
#define RAMREG32(addr)
Definition: generic.c:131
hal_set_clkctl
void hal_set_clkctl(uint32_t clkctl)
Definition: hal_octopus.c:270
BLE_DTM_PAYLOAD_TYPE_00000000
#define BLE_DTM_PAYLOAD_TYPE_00000000
Definition: ble5.c:249
BLE_ADV_CHAN_LO
#define BLE_ADV_CHAN_LO
Definition: ble5.c:167
RCL_CommandStatus_Scheduled
@ RCL_CommandStatus_Scheduled
Definition: RCL_Command.h:86
SetupResult_ErrorConfigLen
@ SetupResult_ErrorConfigLen
Definition: LRF.h:99
RCL_Scheduler_postEvent
bool RCL_Scheduler_postEvent(RCL_Command_Handle c, RCL_Events e)
Post event to command handler.
Definition: RCL_Scheduler.c:498
RCL_Handler_Nesb_initStats
static bool RCL_Handler_Nesb_initStats(RCL_StatsNesb *stats, uint32_t startTime)
Definition: generic.c:2134
LRF_TxPower_Use_Max
#define LRF_TxPower_Use_Max
Definition: LRF.h:60
RCL_CMDID_BLE5_INITIATOR
#define RCL_CMDID_BLE5_INITIATOR
Definition: ble5.h:108
RCL_TxBufferInfo
Definition: ble5.c:71
RCL_Handler_ADC_Noise_getNoise
RCL_Events RCL_Handler_ADC_Noise_getNoise(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: adc_noise.c:76
hal_setup_hard_stop_time
void hal_setup_hard_stop_time(uint32_t stopTime)
Definition: hal_octopus.c:167
RCL_PhyConfig_t::magnConfig
RCL_MagnConfig_t magnConfig[RCL_CmdBleCs_Tpm_Length]
Definition: ble_cs.c:218
RCL_TxBufferInfo::lastTxHdr
uint8_t * lastTxHdr
Definition: ble5.c:73
SYSTIM_CH2_STOP
@ SYSTIM_CH2_STOP
Definition: hal_octopus.c:139
RCL_Handler_Generic_updateRxCurBufferAndFifo
static void RCL_Handler_Generic_updateRxCurBufferAndFifo(List_List *rxBuffers)
Definition: generic.c:1805
RCL_BLE5_getRxTimestamp
uint32_t RCL_BLE5_getRxTimestamp(const RCL_Buffer_DataEntry *rxEntry)
Get received timestamp from packet.
Definition: ble5.c:2555
rclSchedulerState
RCL_SchedulerState rclSchedulerState
Definition: RCL_Scheduler.c:51
RCL_CmdBleCs_StepMode_0
@ RCL_CmdBleCs_StepMode_0
Definition: ble_cs.h:269
LRF_Config
Radio configuration structure.
Definition: LRFCC23X0.h:456
RCL_PctConfig_t::val
uint16_t val
Definition: ble_cs.c:168
LRF_TxPowerTable_Entry
Single entry of the tx power table. Maps power in dBm to specific register settings.
Definition: LRFCC23X0.h:165
RCL_Handler_Generic_Tx
RCL_Events RCL_Handler_Generic_Tx(RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
Definition: generic.c:287
RCL_Handler_BLE5_updateRxCurBufferAndFifo
static void RCL_Handler_BLE5_updateRxCurBufferAndFifo(List_List *rxBuffers)
Definition: ble5.c:2634
RCL_FsType_Tx
@ RCL_FsType_Tx
Definition: generic.h:78
RCL_Tadjust_t::mode0
int16_t mode0[2]
Definition: ble_cs.c:180
TIMESTAMP_ADJUST_1MBPS
#define TIMESTAMP_ADJUST_1MBPS
Definition: ble5.c:185
hal_disable_radio_interrupts
void hal_disable_radio_interrupts(void)
Definition: hal_octopus.c:264
LRF_applySettings
LRF_SetupResult LRF_applySettings(LRF_ConfigWord *config, LRF_ApplySettingsState *state, int32_t bufferAvailWords)
Definition: LRF.c:118
BLE_DTM_PAYLOAD_TYPE_11111111
#define BLE_DTM_PAYLOAD_TYPE_11111111
Definition: ble5.c:248
RCL_Handler_Adc_Noise_powerUp
static void RCL_Handler_Adc_Noise_powerUp(void)
Definition: adc_noise.c:240
SW_Region_Clear
@ SW_Region_Clear
Definition: LRF.h:146
RCL_CommandStatus_Error_Synth
@ RCL_CommandStatus_Error_Synth
Definition: RCL_Command.h:111
RCL_MultiBuffer_findFirstWritableBuffer
RCL_MultiBuffer * RCL_MultiBuffer_findFirstWritableBuffer(RCL_MultiBuffer *head)
Find the first writable buffer in a list of MultiBuffers.
Definition: RCL_Buffer.c:300
TxPowerResult_Ok
@ TxPowerResult_Ok
Definition: LRFCC23X0.h:65
hal_enable_graceful_stop_time_irq
void hal_enable_graceful_stop_time_irq(void)
Definition: hal_cc23x0rx.c:202
SW_Write_16bit_sparse
@ SW_Write_16bit_sparse
Definition: LRF.h:149
HIGH_DUTY_CYCLE_INTERVAL
#define HIGH_DUTY_CYCLE_INTERVAL
Definition: ble5.c:183
RCL_MagnConfig_t::val
uint16_t val
Definition: ble_cs.c:176
LRF_loadImage
LRF_SetupResult LRF_loadImage(const LRF_TOPsmImage *image, uint32_t destinationAddress)
Definition: LRF.c:46
hal_power_set_constraint
void hal_power_set_constraint(void)
Definition: hal_octopus.c:280