CC26xx Driver Library
ddi.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include "../inc/hw_types.h"
#include "../inc/hw_memmap.h"
#include "../inc/hw_ddi.h"
#include "../inc/hw_aux_smph.h"
#include "debug.h"
#include "cpu.h"

Macros

#define DDI_SLAVE_REGS   64
 
#define DDI_PROTECT   0x00000080
 
#define DDI_ACK   0x00000001
 
#define DDI_SYNC   0x00000000
 

Functions

static uint32_t DDI32RegRead (uint32_t ui32Base, uint32_t ui32Reg)
 Read the value in a 32 bit register. More...
 
static void DDI32BitsSet (uint32_t ui32Base, uint32_t ui32Reg, uint32_t ui32Val)
 Set specific bits in a DDI slave register. More...
 
static void DDI32BitsClear (uint32_t ui32Base, uint32_t ui32Reg, uint32_t ui32Val)
 Clear specific bits in a 32 bit DDI register. More...
 
static void DDI8SetValBit (uint32_t ui32Base, uint32_t ui32Reg, uint32_t ui32Byte, uint16_t ui16Mask, uint16_t ui16Val)
 Set a value on any 8 bits inside a 32 bit register in the DDI slave. More...
 
static void DDI16SetValBit (uint32_t ui32Base, uint32_t ui32Reg, bool bWriteHigh, uint32_t ui32Mask, uint32_t ui32Val)
 Set a value on any 16 bits inside a 32 bit register aligned on a half-word boundary in the DDI slave. More...
 
void DDI32RegWrite (uint32_t ui32Base, uint32_t ui32Reg, uint32_t ui32Val)
 Write a 32 bit value to a register in the DDI slave. More...
 
void DDI16BitWrite (uint32_t ui32Base, uint32_t ui32Reg, uint32_t ui32Mask, uint32_t ui32WrData)
 Write a single bit using a 16-bit maskable write. More...
 
void DDI16BitfieldWrite (uint32_t ui32Base, uint32_t ui32Reg, uint32_t ui32Mask, uint32_t ui32Shift, uint16_t ui32Data)
 Write a bit field via the DDI using 16-bit maskable write. More...
 
uint16_t DDI16BitRead (uint32_t ui32Base, uint32_t ui32Reg, uint32_t ui32Mask)
 Read a bit via the DDI using 16-bit read. More...
 
uint16_t DDI16BitfieldRead (uint32_t ui32Base, uint32_t ui32Reg, uint32_t ui32Mask, uint32_t ui32Shift)
 Read a bit field via the DDI using 16-bit read. More...