Radio Control Layer (RCL)
generic.c File Reference
#include <stdint.h>
#include <stdlib.h>
#include <ti/log/Log.h>
#include <ti/drivers/rcl/RCL_Command.h>
#include <ti/drivers/rcl/RCL_Buffer.h>
#include <ti/drivers/rcl/RCL_Scheduler.h>
#include <ti/drivers/rcl/RCL_Profiling.h>
#include <ti/drivers/rcl/hal/hal.h>
#include <ti/drivers/rcl/commands/generic.h>
#include <ti/devices/DeviceFamily.h>
+ Include dependency graph for generic.c:

Data Structures

struct  .common
 
union  .__unnamed__
 
struct  .__unnamed__.tx
 
struct  .__unnamed__.txTest
 
struct  .__unnamed__.rx
 
struct  .__unnamed__.nesb
 

Macros

#define RCL_HANDLER_GENERIC_PRBS15_POLY   0x80020000
 
#define RCL_HANDLER_GENERIC_PRBS32_POLY   0x00400007
 
#define RCL_HANDLER_GENERIC_PRBS_INIT   0x00005555
 
#define RCL_HANDLER_GENERIC_PRBS_SYNC   0xAB05FA1C
 
#define RCL_HANDLER_GENERIC_RESTORE_NONE   0x0000
 
#define RCL_HANDLER_GENERIC_RESTORE_MODCTRL   0x0001
 
#define RCL_HANDLER_GENERIC_RESTORE_WHITEN_INIT   0x0002
 
#define RCL_HANDLER_GENERIC_RESTORE_WHITEN_POLY   0x0004
 
#define RAMREG32(addr)   (*((volatile uint32_t *)(addr)))
 

Functions

static void RCL_Handler_Generic_setSynthPowerState (bool fsOff)
 
static void RCL_Handler_Generic_updateRxCurBufferAndFifo (List_List *rxBuffers)
 
static RCL_CommandStatus RCL_Handler_Generic_findPbeErrorEndStatus (uint16_t pbeEndStatus)
 
static uint32_t RCL_Handler_Generic_updateTxBuffers (List_List *txBuffers, uint32_t maxBuffers)
 
static uint32_t RCL_Handler_Generic_maskEventsByFifoConf (uint32_t mask, uint16_t fifoConfVal)
 
static void RCL_Handler_Generic_updateRxStats (RCL_StatsGeneric *stats, uint32_t startTime)
 
static void RCL_Handler_Generic_updateLongStats (void)
 
static bool RCL_Handler_Generic_initRxStats (RCL_StatsGeneric *stats, uint32_t startTime)
 
static uint32_t RCL_Handler_Generic_updateSyncWord (uint32_t syncWord)
 
static void RCL_Handler_Nesb_updateHeader (List_List *txBuffers, uint8_t autoRetransmitMode, uint8_t hdrConf, uint8_t seqNumber)
 
static void RCL_Handler_Nesb_updateStats (RCL_StatsNesb *stats, uint32_t startTime)
 
static void RCL_Handler_Nesb_updateLongStats (void)
 
static bool RCL_Handler_Nesb_initStats (RCL_StatsNesb *stats, uint32_t startTime)
 
RCL_Events RCL_Handler_Generic_Fs (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 
RCL_Events RCL_Handler_Generic_FsOff (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 
RCL_Events RCL_Handler_Generic_Tx (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 
RCL_Events RCL_Handler_Generic_TxRepeat (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 
RCL_Events RCL_Handler_Generic_TxTest (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 
RCL_Events RCL_Handler_Generic_Rx (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 
RCL_Events RCL_Handler_Generic_PbeOperation (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 
RCL_Events RCL_Handler_Nesb_Ptx (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 
RCL_Events RCL_Handler_Nesb_Prx (RCL_Command *cmd, LRF_Events lrfEvents, RCL_Events rclEventsIn)
 

Variables

struct {
   struct {
uint16_t txFifoSize
 
uint16_t rxFifoSize
 
RCL_CommandStatus endStatus
 
bool activeUpdate
 
bool powerConstraintsSet
 
RCL_MultiBuffer * curBuffer
 
   } common
 
   union {
      struct {
bool gracefulStopObserved
 
bool stopFs
 
uint32_t txCount
 
uint32_t period
 
      } tx
 
      struct {
uint16_t restoreOpt
 
uint16_t storedWhitenInit
 
uint32_t storedWhitenPoly
 
      } txTest
 
      struct {
uint32_t longOkCount
 
uint32_t longNokCount
 
uint16_t demc1be1
 
uint16_t demc1be2
 
bool restoreThresh
 
      } rx
 
      struct {
uint32_t longTxCount
 
uint32_t longOkCount
 
uint32_t longNokCount
 
uint32_t longRxIgnoredCount
 
uint32_t longRxAddrMismatchCount
 
uint32_t longRxBufFullCount
 
      } nesb
 
   } 
 
genericHandlerState
 

Data Structure Documentation

◆ .common

struct .common
Data Fields
uint16_t txFifoSize
uint16_t rxFifoSize
RCL_CommandStatus endStatus
bool activeUpdate
bool powerConstraintsSet
RCL_MultiBuffer * curBuffer

◆ .__unnamed__

union .__unnamed__
Data Fields
__unnamed__ tx
__unnamed__ txTest
__unnamed__ rx
__unnamed__ nesb

◆ .__unnamed__.tx

struct .__unnamed__.tx
Data Fields
bool gracefulStopObserved
bool stopFs
uint32_t txCount
uint32_t period

◆ .__unnamed__.txTest

struct .__unnamed__.txTest
Data Fields
uint16_t restoreOpt
uint16_t storedWhitenInit
uint32_t storedWhitenPoly

◆ .__unnamed__.rx

struct .__unnamed__.rx
Data Fields
uint32_t longOkCount
uint32_t longNokCount
uint16_t demc1be1
uint16_t demc1be2
bool restoreThresh

◆ .__unnamed__.nesb

struct .__unnamed__.nesb
Data Fields
uint32_t longTxCount
uint32_t longOkCount
uint32_t longNokCount
uint32_t longRxIgnoredCount
uint32_t longRxAddrMismatchCount
uint32_t longRxBufFullCount

Macro Definition Documentation

◆ RCL_HANDLER_GENERIC_PRBS15_POLY

#define RCL_HANDLER_GENERIC_PRBS15_POLY   0x80020000

Polynomial to use for PRBS15 data

◆ RCL_HANDLER_GENERIC_PRBS32_POLY

#define RCL_HANDLER_GENERIC_PRBS32_POLY   0x00400007

Polynomial to use for PRBS32 data

◆ RCL_HANDLER_GENERIC_PRBS_INIT

#define RCL_HANDLER_GENERIC_PRBS_INIT   0x00005555

◆ RCL_HANDLER_GENERIC_PRBS_SYNC

#define RCL_HANDLER_GENERIC_PRBS_SYNC   0xAB05FA1C

◆ RCL_HANDLER_GENERIC_RESTORE_NONE

#define RCL_HANDLER_GENERIC_RESTORE_NONE   0x0000

◆ RCL_HANDLER_GENERIC_RESTORE_MODCTRL

#define RCL_HANDLER_GENERIC_RESTORE_MODCTRL   0x0001

◆ RCL_HANDLER_GENERIC_RESTORE_WHITEN_INIT

#define RCL_HANDLER_GENERIC_RESTORE_WHITEN_INIT   0x0002

◆ RCL_HANDLER_GENERIC_RESTORE_WHITEN_POLY

#define RCL_HANDLER_GENERIC_RESTORE_WHITEN_POLY   0x0004

◆ RAMREG32

#define RAMREG32 (   addr)    (*((volatile uint32_t *)(addr)))

Function Documentation

◆ RCL_Handler_Generic_setSynthPowerState()

◆ RCL_Handler_Generic_updateRxCurBufferAndFifo()

static void RCL_Handler_Generic_updateRxCurBufferAndFifo ( List_List *  rxBuffers)
static

◆ RCL_Handler_Generic_findPbeErrorEndStatus()

◆ RCL_Handler_Generic_updateTxBuffers()

static uint32_t RCL_Handler_Generic_updateTxBuffers ( List_List *  txBuffers,
uint32_t  maxBuffers 
)
static

◆ RCL_Handler_Generic_maskEventsByFifoConf()

static uint32_t RCL_Handler_Generic_maskEventsByFifoConf ( uint32_t  mask,
uint16_t  fifoConfVal 
)
static

◆ RCL_Handler_Generic_updateRxStats()

static void RCL_Handler_Generic_updateRxStats ( RCL_StatsGeneric *  stats,
uint32_t  startTime 
)
static

◆ RCL_Handler_Generic_updateLongStats()

static void RCL_Handler_Generic_updateLongStats ( void  )
static

◆ RCL_Handler_Generic_initRxStats()

static bool RCL_Handler_Generic_initRxStats ( RCL_StatsGeneric *  stats,
uint32_t  startTime 
)
static

◆ RCL_Handler_Generic_updateSyncWord()

static uint32_t RCL_Handler_Generic_updateSyncWord ( uint32_t  syncWord)
static

◆ RCL_Handler_Nesb_updateHeader()

static void RCL_Handler_Nesb_updateHeader ( List_List *  txBuffers,
uint8_t  autoRetransmitMode,
uint8_t  hdrConf,
uint8_t  seqNumber 
)
static

References RCL_TxBuffer_head().

Referenced by RCL_Handler_Nesb_Ptx().

◆ RCL_Handler_Nesb_updateStats()

static void RCL_Handler_Nesb_updateStats ( RCL_StatsNesb *  stats,
uint32_t  startTime 
)
static

◆ RCL_Handler_Nesb_updateLongStats()

static void RCL_Handler_Nesb_updateLongStats ( void  )
static

◆ RCL_Handler_Nesb_initStats()

static bool RCL_Handler_Nesb_initStats ( RCL_StatsNesb *  stats,
uint32_t  startTime 
)
static

◆ RCL_Handler_Generic_Fs()

◆ RCL_Handler_Generic_FsOff()

◆ RCL_Handler_Generic_Tx()

◆ RCL_Handler_Generic_TxRepeat()

◆ RCL_Handler_Generic_TxTest()

◆ RCL_Handler_Generic_Rx()

◆ RCL_Handler_Generic_PbeOperation()

◆ RCL_Handler_Nesb_Ptx()

◆ RCL_Handler_Nesb_Prx()

Variable Documentation

◆ genericHandlerState