62 #include <ti/devices/DeviceFamily.h> 63 #include DeviceFamily_constructPath(inc/hw_types.h) 64 #include DeviceFamily_constructPath(inc/hw_memmap.h) 65 #include DeviceFamily_constructPath(inc/hw_rfc_pwr.h) 66 #include DeviceFamily_constructPath(inc/hw_rfc_dbell.h) 67 #include DeviceFamily_constructPath(inc/hw_fcfg1.h) 68 #include DeviceFamily_constructPath(inc/hw_adi_3_refsys.h) 69 #include DeviceFamily_constructPath(inc/hw_adi.h) 70 #include DeviceFamily_constructPath(inc/hw_prcm.h) 78 uint32_t configRfFrontend;
86 #define RFC_MAX_SEARCH_DEPTH 5 87 #define RFC_IEEE_CMD_BG_ADDRESS 0x21000160 88 #define RFC_IEEE_CMD_BG_IEEE_RX_O_CAP_TIME 24 89 #define RFC_PA_TYPE_ADDRESS 0x21000385 90 #define RFC_PA_TYPE_MASK 0x04 91 #define RFC_PA_GAIN_ADDRESS 0x21000398 92 #define RFC_PA_GAIN_MASK 0x003FFFFF 93 #define RFC_FE_MODE_ESCAPE_VALUE 0xFF 94 #define RFC_FE_OVERRIDE_ADDRESS 0x0703 95 #define RFC_FE_OVERRIDE_MASK 0x0000FFFF 110 #if !defined(DOXYGEN) 111 #define RFCCpeIntGetAndClear NOROM_RFCCpeIntGetAndClear 112 #define RFCDoorbellSendTo NOROM_RFCDoorbellSendTo 113 #define RFCSynthPowerDown NOROM_RFCSynthPowerDown 114 #define RFCCpePatchReset NOROM_RFCCpePatchReset 115 #define RFCOverrideSearch NOROM_RFCOverrideSearch 116 #define RFCOverrideUpdate NOROM_RFCOverrideUpdate 117 #define RFCHwIntGetAndClear NOROM_RFCHwIntGetAndClear 118 #define RFCAnaDivTxOverride NOROM_RFCAnaDivTxOverride 119 #define RFCRfTrimRead NOROM_RFCRfTrimRead 120 #define RFCRfTrimSet NOROM_RFCRfTrimSet 144 HWREG(RFC_PWR_NONBUF_BASE + RFC_PWR_O_PWMCLKEN) = RFC_PWR_PWMCLKEN_CPERAM
145 | RFC_PWR_PWMCLKEN_CPE
146 | RFC_PWR_PWMCLKEN_RFC;
169 HWREG(RFC_PWR_NONBUF_BASE + RFC_PWR_O_PWMCLKEN) = 0x0;
182 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFCPEIFG) = ~ui32Mask;
195 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFHWIFG) = ~ui32Mask;
208 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFCPEISL) &= ~ui32Mask;
221 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFCPEISL) |= ui32Mask;
234 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFCPEIEN) |= ui32Mask;
285 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFHWIEN) |= ui32Mask;
298 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFCPEIEN) &= ~ui32Mask;
311 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFHWIEN) &= ~ui32Mask;
332 HWREG(RFC_DBELL_BASE + RFC_DBELL_O_RFACKIFG) = 0x0;
365 extern uint8_t
RFCOverrideSearch(
const uint32_t *pOverride,
const uint32_t pattern,
const uint32_t mask,
const uint8_t searchDepth);
400 __STATIC_INLINE uint32_t
411 __STATIC_INLINE uint32_t
414 return (HWREG(PRCM_BASE + PRCM_O_PDCTL1RFC) |
415 HWREG(PRCM_BASE + PRCM_O_PDSTAT0RFC));
424 __STATIC_INLINE uint32_t
460 #if !defined(DRIVERLIB_NOROM) && !defined(DOXYGEN) 461 #include DeviceFamily_constructPath(driverlib/rom.h) 462 #ifdef ROM_RFCCpeIntGetAndClear 463 #undef RFCCpeIntGetAndClear 464 #define RFCCpeIntGetAndClear ROM_RFCCpeIntGetAndClear 466 #ifdef ROM_RFCDoorbellSendTo 467 #undef RFCDoorbellSendTo 468 #define RFCDoorbellSendTo ROM_RFCDoorbellSendTo 470 #ifdef ROM_RFCSynthPowerDown 471 #undef RFCSynthPowerDown 472 #define RFCSynthPowerDown ROM_RFCSynthPowerDown 474 #ifdef ROM_RFCCpePatchReset 475 #undef RFCCpePatchReset 476 #define RFCCpePatchReset ROM_RFCCpePatchReset 478 #ifdef ROM_RFCOverrideSearch 479 #undef RFCOverrideSearch 480 #define RFCOverrideSearch ROM_RFCOverrideSearch 482 #ifdef ROM_RFCOverrideUpdate 483 #undef RFCOverrideUpdate 484 #define RFCOverrideUpdate ROM_RFCOverrideUpdate 486 #ifdef ROM_RFCHwIntGetAndClear 487 #undef RFCHwIntGetAndClear 488 #define RFCHwIntGetAndClear ROM_RFCHwIntGetAndClear 490 #ifdef ROM_RFCAnaDivTxOverride 491 #undef RFCAnaDivTxOverride 492 #define RFCAnaDivTxOverride ROM_RFCAnaDivTxOverride 494 #ifdef ROM_RFCRfTrimRead 496 #define RFCRfTrimRead ROM_RFCRfTrimRead 498 #ifdef ROM_RFCRfTrimSet 500 #define RFCRfTrimSet ROM_RFCRfTrimSet __STATIC_INLINE void RFCHwIntDisable(uint32_t ui32Mask)
Disable HW interrupt sources.
Definition: cc13x2_cc26x2/driverlib/rfc.h:304
uint8_t loDivider
Definition: cc13x1_cc26x1/driverlib/rfc.h:81
#define RFCCpePatchReset
Definition: cc13x1_cc26x1/driverlib/rfc.h:114
__STATIC_INLINE uint32_t RFCGetIeeeRxCaptureTime(void)
Definition: cc13x2_cc26x2/driverlib/rfc.h:421
__STATIC_INLINE void RFCHwIntClear(uint32_t ui32Mask)
Clear CPE interrupt flags.
Definition: cc13x2_cc26x2/driverlib/rfc.h:188
#define RFCOverrideSearch
Definition: cc13x1_cc26x1/driverlib/rfc.h:115
#define RFCRfTrimSet
Definition: cc13x1_cc26x1/driverlib/rfc.h:120
#define RFCAnaDivTxOverride
Definition: cc13x1_cc26x1/driverlib/rfc.h:118
#define RFC_PA_TYPE_ADDRESS
Definition: cc13x1_cc26x1/driverlib/rfc.h:89
#define RFCSynthPowerDown
Definition: cc13x1_cc26x1/driverlib/rfc.h:113
__STATIC_INLINE void RFCCpeIntClear(uint32_t ui32Mask)
Clear HW interrupt flags.
Definition: cc13x2_cc26x2/driverlib/rfc.h:175
#define RFCCpeIntGetAndClear
Definition: cc13x1_cc26x1/driverlib/rfc.h:111
__STATIC_INLINE void RFCClockDisable(void)
Disable the RF core clocks.
Definition: cc13x2_cc26x2/driverlib/rfc.h:162
__STATIC_INLINE void RFCCpe1IntSelectClearEnable(uint32_t ui32Mask)
Select, clear, and enable interrupt sources to CPE1.
Definition: cc13x2_cc26x2/driverlib/rfc.h:259
uint8_t noTrim
Definition: cc13x1_cc26x1/driverlib/rfc.h:82
__STATIC_INLINE void RFCCpeIntEnable(uint32_t ui32Mask)
Enable CPEx interrupt sources.
Definition: cc13x2_cc26x2/driverlib/rfc.h:227
__STATIC_INLINE void RFCHwIntEnable(uint32_t ui32Mask)
Enable HW interrupt sources.
Definition: cc13x2_cc26x2/driverlib/rfc.h:278
#define RFC_IEEE_CMD_BG_IEEE_RX_O_CAP_TIME
Definition: cc13x1_cc26x1/driverlib/rfc.h:88
#define RFCDoorbellSendTo
Definition: cc13x1_cc26x1/driverlib/rfc.h:112
Definition: cc13x2_cc26x2/driverlib/rfc.h:76
__STATIC_INLINE bool RFCGetPaType(void)
Get the type of currently selected PA.
Definition: cc13x2_cc26x2/driverlib/rfc.h:386
uint32_t configRfCommon
Definition: cc13x1_cc26x1/driverlib/rfc.h:80
#define RFC_IEEE_CMD_BG_ADDRESS
Definition: cc13x1_cc26x1/driverlib/rfc.h:87
#define RFC_PA_GAIN_ADDRESS
Definition: cc13x1_cc26x1/driverlib/rfc.h:91
__STATIC_INLINE void RFCCpeIntDisable(uint32_t ui32Mask)
Disable CPE interrupt sources.
Definition: cc13x2_cc26x2/driverlib/rfc.h:291
__STATIC_INLINE void RFCAckIntClear(void)
Clear ACK interrupt flag.
Definition: cc13x2_cc26x2/driverlib/rfc.h:325
#define RFC_PA_TYPE_MASK
Definition: cc13x1_cc26x1/driverlib/rfc.h:90
__STATIC_INLINE void RFCClockEnable(void)
Enable the RF core clocks.
Definition: cc13x2_cc26x2/driverlib/rfc.h:137
__STATIC_INLINE uint32_t RFCGetPowerDomainStatus(void)
Get the power domain status of the radio core.
Definition: cc13x2_cc26x2/driverlib/rfc.h:408
__STATIC_INLINE void RFCCpe0IntSelectClearEnable(uint32_t ui32Mask)
Select, clear, and enable interrupt sources to CPE0.
Definition: cc13x2_cc26x2/driverlib/rfc.h:240
__STATIC_INLINE uint32_t RFCGetPaGain(void)
Get the gain of currently selected PA.
Definition: cc13x2_cc26x2/driverlib/rfc.h:397
__STATIC_INLINE void RFCCpe1IntSelect(uint32_t ui32Mask)
Select interrupt sources to CPE1 (assign to INT_RFC_CPE_1 interrupt vector).
Definition: cc13x2_cc26x2/driverlib/rfc.h:214
Definition: cc13x2_cc26x2/driverlib/rf_common_cmd.h:122
#define RFCOverrideUpdate
Definition: cc13x1_cc26x1/driverlib/rfc.h:116
#define RFC_PA_GAIN_MASK
Definition: cc13x1_cc26x1/driverlib/rfc.h:92
#define RFCHwIntGetAndClear
Definition: cc13x1_cc26x1/driverlib/rfc.h:117
__STATIC_INLINE void RFCCpe0IntSelect(uint32_t ui32Mask)
Select interrupt sources to CPE0 (assign to INT_RFC_CPE_0 interrupt vector).
Definition: cc13x2_cc26x2/driverlib/rfc.h:201
#define RFCRfTrimRead
Definition: cc13x1_cc26x1/driverlib/rfc.h:119