Hardware access layer for managing the High Speed Frequency Locked Loop (HSFLL). More...
Data Structures | |
struct | nrf_hsfll_status_clk_t |
HSFLL clock status. More... | |
struct | nrf_hsfll_freqm_error_t |
HSFLL frequency measurements errors. More... | |
struct | nrf_hsfll_clkctrl_t |
HSFLL clock control. More... | |
struct | nrf_hsfll_dithering_t |
HSFLL clock dithering configuration. More... | |
struct | nrf_hsfll_sleep_t |
HSFLL clock sleep configuration. More... | |
struct | nrf_hsfll_trim_t |
HSFLL trims configuration. More... | |
Enumerations | |
enum | nrf_hsfll_task_t { NRF_HSFLL_TASK_START = offsetof(NRF_HSFLL_Type, TASKS_START) , NRF_HSFLL_TASK_STOP = offsetof(NRF_HSFLL_Type, TASKS_STOP) , NRF_HSFLL_TASK_FREQ_MEAS = offsetof(NRF_HSFLL_Type, TASKS_FREQMEAS) , NRF_HSFLL_TASK_FREQ_CHANGE = offsetof(NRF_HSFLL_Type, TASKS_FREQCHANGE) } |
HSFLL tasks. More... | |
enum | nrf_hsfll_event_t { NRF_HSFLL_EVENT_STARTED = offsetof(NRF_HSFLL_Type, EVENTS_STARTED) , NRF_HSFLL_EVENT_STOPPED = offsetof(NRF_HSFLL_Type, EVENTS_STOPPED) , NRF_HSFLL_EVENT_FREQM_DONE = offsetof(NRF_HSFLL_Type, EVENTS_FREQMDONE) , NRF_HSFLL_EVENT_FREQ_CHANGED = offsetof(NRF_HSFLL_Type, EVENTS_FREQCHANGED) } |
HSFLL events. More... | |
enum | nrf_hsfll_mode_status_t { NRF_HSFLL_MODE_STATUS_OPEN_LOOP = HSFLL_CLOCKSTATUS_MODE_OpenLoop , NRF_HSFLL_MODE_STATUS_CLOSED_LOOP = HSFLL_CLOCKSTATUS_MODE_ClosedLoop , NRF_HSFLL_MODE_STATUS_BYPASS = HSFLL_CLOCKSTATUS_MODE_Bypass } |
HSFLL clock status operating modes. More... | |
enum | nrf_hsfll_mode_ctrl_t { NRF_HSFLL_MODE_CTRL_AUTO = HSFLL_CLOCKCTRL_MODE_MODE_Auto , NRF_HSFLL_MODE_CTRL_OPEN_LOOP = HSFLL_CLOCKCTRL_MODE_MODE_OpenLoop , NRF_HSFLL_MODE_CTRL_CLOSED_LOOP = HSFLL_CLOCKCTRL_MODE_MODE_ClosedLoop , NRF_HSFLL_MODE_CTRL_BYPASS = HSFLL_CLOCKCTRL_MODE_MODE_Bypass } |
HSFLL clock control operating mode settings. More... | |
Functions | |
NRF_STATIC_INLINE uint32_t | nrf_hsfll_task_address_get (NRF_HSFLL_Type const *p_reg, nrf_hsfll_task_t task) |
Function for getting the address of the specified task. | |
NRF_STATIC_INLINE void | nrf_hsfll_task_trigger (NRF_HSFLL_Type *p_reg, nrf_hsfll_task_t task) |
Function for triggering the specified task. | |
NRF_STATIC_INLINE uint32_t | nrf_hsfll_event_address_get (NRF_HSFLL_Type const *p_reg, nrf_hsfll_event_t event) |
Function for retrieving the address of the specified event. | |
NRF_STATIC_INLINE void | nrf_hsfll_event_clear (NRF_HSFLL_Type *p_reg, nrf_hsfll_event_t event) |
Function for clearing the specified event. | |
NRF_STATIC_INLINE bool | nrf_hsfll_event_check (NRF_HSFLL_Type const *p_reg, nrf_hsfll_event_t event) |
Function for retrieving the state of the specified event. | |
NRF_STATIC_INLINE void | nrf_hsfll_status_clk_get (NRF_HSFLL_Type const *p_reg, nrf_hsfll_status_clk_t *p_status) |
Function for getting the HSFLL status. | |
NRF_STATIC_INLINE bool | nrf_hsfll_freqm_done_check (NRF_HSFLL_Type const *p_reg) |
Function for checking whether the HSFLL frequency measurement is completed. | |
NRF_STATIC_INLINE void | nrf_hsfll_freqm_error_get (NRF_HSFLL_Type const *p_reg, nrf_hsfll_freqm_error_t *p_error) |
Function for getting HSFLL frequency measurement errors. | |
NRF_STATIC_INLINE uint32_t | nrf_hsfll_freqm_meas_get (NRF_HSFLL_Type const *p_reg) |
Function for getting HSFLL frequency measurement. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_mode_set (NRF_HSFLL_Type *p_reg, nrf_hsfll_clkctrl_t const *p_clkctrl) |
Function for setting HSFLL clock control mode settings. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_mode_get (NRF_HSFLL_Type const *p_reg, nrf_hsfll_clkctrl_t *p_clkctrl) |
Function for getting HSFLL clock control mode settings. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_dithering_set (NRF_HSFLL_Type *p_reg, nrf_hsfll_dithering_t const *p_config) |
Function for setting HSFLL clock dithering configuration. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_dithering_get (NRF_HSFLL_Type const *p_reg, nrf_hsfll_dithering_t *p_config) |
Function for getting HSFLL clock dithering configuration. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_mult_set (NRF_HSFLL_Type *p_reg, uint32_t multiplier) |
Function for setting HSFLL frequency multiplier. | |
NRF_STATIC_INLINE uint32_t | nrf_hsfll_clkctrl_mult_get (NRF_HSFLL_Type const *p_reg) |
Function for getting HSFLL frequency multiplier. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_sleep_set (NRF_HSFLL_Type *p_reg, nrf_hsfll_sleep_t const *p_config) |
Function for setting HSFLL clock sleep configuration. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_sleep_get (NRF_HSFLL_Type const *p_reg, nrf_hsfll_sleep_t *p_config) |
Function for getting HSFLL clock sleep configuration. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_retainfinetrim_enable_set (NRF_HSFLL_Type *p_reg, bool retain) |
Function for enabling or disabling the retention of HSFLL fine trim control. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_overridelocked_enable_set (NRF_HSFLL_Type *p_reg, bool override) |
Function for enabling or disabling the override of the HSFLL LOCKED signal. | |
NRF_STATIC_INLINE void | nrf_hsfll_clkctrl_dither_init_set (NRF_HSFLL_Type *p_reg, uint32_t seed) |
Function for setting the configurable seed of HSFLL clock dithering. | |
NRF_STATIC_INLINE void | nrf_hsfll_mirror_lock_set (NRF_HSFLL_Type *p_reg, bool enable) |
Function for enabling or disabling lock for mirrored registers. | |
NRF_STATIC_INLINE void | nrf_hsfll_trim_set (NRF_HSFLL_Type *p_reg, nrf_hsfll_trim_t const *p_trim) |
Function to setup trims configuration. | |
NRF_STATIC_INLINE void | nrf_hsfll_trim_get (NRF_HSFLL_Type const *p_reg, nrf_hsfll_trim_t *p_trim) |
Function to getting trims configuration. | |
Hardware access layer for managing the High Speed Frequency Locked Loop (HSFLL).
enum nrf_hsfll_event_t |
enum nrf_hsfll_task_t |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_dither_init_set | ( | NRF_HSFLL_Type * | p_reg, |
uint32_t | seed | ||
) |
Function for setting the configurable seed of HSFLL clock dithering.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | seed | 32-bit initial value for the PRBS. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_dithering_get | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_dithering_t * | p_config | ||
) |
Function for getting HSFLL clock dithering configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_config | Pointer to the structure to be filled with HSFLL clock dithering configuration. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_dithering_set | ( | NRF_HSFLL_Type * | p_reg, |
nrf_hsfll_dithering_t const * | p_config | ||
) |
Function for setting HSFLL clock dithering configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_config | Pointer to the structure with new HSFLL clock dithering configuration. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_mode_get | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_clkctrl_t * | p_clkctrl | ||
) |
Function for getting HSFLL clock control mode settings.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_clkctrl | Pointer to the structure to be filled with HSFLL clock control settings. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_mode_set | ( | NRF_HSFLL_Type * | p_reg, |
nrf_hsfll_clkctrl_t const * | p_clkctrl | ||
) |
Function for setting HSFLL clock control mode settings.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_clkctrl | Pointer to the structure with new HSFLL clock control mode settings. |
NRF_STATIC_INLINE uint32_t nrf_hsfll_clkctrl_mult_get | ( | NRF_HSFLL_Type const * | p_reg | ) |
Function for getting HSFLL frequency multiplier.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_mult_set | ( | NRF_HSFLL_Type * | p_reg, |
uint32_t | multiplier | ||
) |
Function for setting HSFLL frequency multiplier.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | multiplier | Value of new multiplier. Valid multiplier range is from 4 to 25. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_overridelocked_enable_set | ( | NRF_HSFLL_Type * | p_reg, |
bool | override | ||
) |
Function for enabling or disabling the override of the HSFLL LOCKED signal.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | override | True if the override is to be enabled, false otherwise. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_retainfinetrim_enable_set | ( | NRF_HSFLL_Type * | p_reg, |
bool | retain | ||
) |
Function for enabling or disabling the retention of HSFLL fine trim control.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | retain | True if the fine trim control is to be retained when HSFLL goes to open-loop mode, false otherwise. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_sleep_get | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_sleep_t * | p_config | ||
) |
Function for getting HSFLL clock sleep configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_config | Pointer to the structure to be filled with HSFLL clock sleep configuration. |
NRF_STATIC_INLINE void nrf_hsfll_clkctrl_sleep_set | ( | NRF_HSFLL_Type * | p_reg, |
nrf_hsfll_sleep_t const * | p_config | ||
) |
Function for setting HSFLL clock sleep configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_config | Pointer to the structure with new HSFLL clock sleep configuration. |
NRF_STATIC_INLINE uint32_t nrf_hsfll_event_address_get | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_event_t | event | ||
) |
Function for retrieving the address of the specified event.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | HSFLL event. |
NRF_STATIC_INLINE bool nrf_hsfll_event_check | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_event_t | event | ||
) |
Function for retrieving the state of the specified event.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event to be checked. |
true | The event has been generated. |
false | The event has not been generated. |
NRF_STATIC_INLINE void nrf_hsfll_event_clear | ( | NRF_HSFLL_Type * | p_reg, |
nrf_hsfll_event_t | event | ||
) |
Function for clearing the specified event.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event to be cleared. |
NRF_STATIC_INLINE bool nrf_hsfll_freqm_done_check | ( | NRF_HSFLL_Type const * | p_reg | ) |
Function for checking whether the HSFLL frequency measurement is completed.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
true | The frequency measurement is completed. |
false | The frequency measurement is in progress. |
NRF_STATIC_INLINE void nrf_hsfll_freqm_error_get | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_freqm_error_t * | p_error | ||
) |
Function for getting HSFLL frequency measurement errors.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_error | Pointer to the structure to be filled with HSFLL frequency measurement errors. |
NRF_STATIC_INLINE uint32_t nrf_hsfll_freqm_meas_get | ( | NRF_HSFLL_Type const * | p_reg | ) |
Function for getting HSFLL frequency measurement.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_hsfll_mirror_lock_set | ( | NRF_HSFLL_Type * | p_reg, |
bool | enable | ||
) |
Function for enabling or disabling lock for mirrored registers.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | enable | True if the lock is to be enabled, false otherwise. |
NRF_STATIC_INLINE void nrf_hsfll_status_clk_get | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_status_clk_t * | p_status | ||
) |
Function for getting the HSFLL status.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_status | Pointer to the structure to be filled with the HSFLL status. |
NRF_STATIC_INLINE uint32_t nrf_hsfll_task_address_get | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_task_t | task | ||
) |
Function for getting the address of the specified task.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | HSFLL task. |
NRF_STATIC_INLINE void nrf_hsfll_task_trigger | ( | NRF_HSFLL_Type * | p_reg, |
nrf_hsfll_task_t | task | ||
) |
Function for triggering the specified task.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Task to be activated. |
NRF_STATIC_INLINE void nrf_hsfll_trim_get | ( | NRF_HSFLL_Type const * | p_reg, |
nrf_hsfll_trim_t * | p_trim | ||
) |
Function to getting trims configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_trim | Pointer to the structure to be filled with HSFLL trim configuration. |
NRF_STATIC_INLINE void nrf_hsfll_trim_set | ( | NRF_HSFLL_Type * | p_reg, |
nrf_hsfll_trim_t const * | p_trim | ||
) |
Function to setup trims configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_trim | Pointer to the structure with new HSFLL trim configuration. |