nrfx 3.3
Macros | Enumerations | Functions
LRCCONF HAL

Hardware access layer for managing the Local Resource Controller Configuration (LRCCONF) peripheral. More...

Macros

#define NRF_LRCCONF_CLK_COUNT   LRCCONF_CLKSTAT_MaxCount
 Number of clocks supported by LRCCONF.
 
#define NRF_LRCCONF_AXI_WAITSTATES_ARRAY_SIZE   LRCCONF_AX2XWAITSTATES_MaxCount
 Size of AXI bridge waitstates array.
 

Enumerations

enum  nrf_lrcconf_task_t {
  NRF_LRCCONF_TASK_CLKSTART_0 = offsetof(NRF_LRCCONF_Type, TASKS_REQCLKSRC[0]) ,
  NRF_LRCCONF_TASK_CLKSTART_1 = offsetof(NRF_LRCCONF_Type, TASKS_REQCLKSRC[1]) ,
  NRF_LRCCONF_TASK_CLKSTART_2 = offsetof(NRF_LRCCONF_Type, TASKS_REQCLKSRC[2]) ,
  NRF_LRCCONF_TASK_CLKSTART_3 = offsetof(NRF_LRCCONF_Type, TASKS_REQCLKSRC[3]) ,
  NRF_LRCCONF_TASK_CLKSTART_4 = offsetof(NRF_LRCCONF_Type, TASKS_REQCLKSRC[4]) ,
  NRF_LRCCONF_TASK_CLKSTART_5 = offsetof(NRF_LRCCONF_Type, TASKS_REQCLKSRC[5]) ,
  NRF_LRCCONF_TASK_CLKSTART_6 = offsetof(NRF_LRCCONF_Type, TASKS_REQCLKSRC[6]) ,
  NRF_LRCCONF_TASK_CLKSTART_7 = offsetof(NRF_LRCCONF_Type, TASKS_REQCLKSRC[7]) ,
  NRF_LRCCONF_TASK_CLKSTOP_0 = offsetof(NRF_LRCCONF_Type, TASKS_STOPREQCLKSRC[0]) ,
  NRF_LRCCONF_TASK_CLKSTOP_1 = offsetof(NRF_LRCCONF_Type, TASKS_STOPREQCLKSRC[1]) ,
  NRF_LRCCONF_TASK_CLKSTOP_2 = offsetof(NRF_LRCCONF_Type, TASKS_STOPREQCLKSRC[2]) ,
  NRF_LRCCONF_TASK_CLKSTOP_3 = offsetof(NRF_LRCCONF_Type, TASKS_STOPREQCLKSRC[3]) ,
  NRF_LRCCONF_TASK_CLKSTOP_4 = offsetof(NRF_LRCCONF_Type, TASKS_STOPREQCLKSRC[4]) ,
  NRF_LRCCONF_TASK_CLKSTOP_5 = offsetof(NRF_LRCCONF_Type, TASKS_STOPREQCLKSRC[5]) ,
  NRF_LRCCONF_TASK_CLKSTOP_6 = offsetof(NRF_LRCCONF_Type, TASKS_STOPREQCLKSRC[6]) ,
  NRF_LRCCONF_TASK_CLKSTOP_7 = offsetof(NRF_LRCCONF_Type, TASKS_STOPREQCLKSRC[7]) ,
  NRF_LRCCONF_TASK_CONSTLAT_ENABLE = offsetof(NRF_LRCCONF_Type, TASKS_CONSTLAT.ENABLE) ,
  NRF_LRCCONF_TASK_CONSTLAT_DISABLE = offsetof(NRF_LRCCONF_Type, TASKS_CONSTLAT.DISABLE) ,
  NRF_LRCCONF_TASK_SYSTEMOFFNOTREADY = offsetof(NRF_LRCCONF_Type, TASKS_SYSTEMOFF.NOTREADY) ,
  NRF_LRCCONF_TASK_SYSTEMOFFREADY = offsetof(NRF_LRCCONF_Type, TASKS_SYSTEMOFF.READY)
}
 Tasks. More...
 
enum  nrf_lrcconf_event_t {
  NRF_LRCCONF_EVENT_CLKSTARTED_0 = offsetof(NRF_LRCCONF_Type, EVENTS_CLKSRCSTARTED[0]) ,
  NRF_LRCCONF_EVENT_CLKSTARTED_1 = offsetof(NRF_LRCCONF_Type, EVENTS_CLKSRCSTARTED[1]) ,
  NRF_LRCCONF_EVENT_CLKSTARTED_2 = offsetof(NRF_LRCCONF_Type, EVENTS_CLKSRCSTARTED[2]) ,
  NRF_LRCCONF_EVENT_CLKSTARTED_3 = offsetof(NRF_LRCCONF_Type, EVENTS_CLKSRCSTARTED[3]) ,
  NRF_LRCCONF_EVENT_CLKSTARTED_4 = offsetof(NRF_LRCCONF_Type, EVENTS_CLKSRCSTARTED[4]) ,
  NRF_LRCCONF_EVENT_CLKSTARTED_5 = offsetof(NRF_LRCCONF_Type, EVENTS_CLKSRCSTARTED[5]) ,
  NRF_LRCCONF_EVENT_CLKSTARTED_6 = offsetof(NRF_LRCCONF_Type, EVENTS_CLKSRCSTARTED[6]) ,
  NRF_LRCCONF_EVENT_CLKSTARTED_7 = offsetof(NRF_LRCCONF_Type, EVENTS_CLKSRCSTARTED[7])
}
 Events. More...
 
enum  nrf_lrcconf_clk_src_t {
  NRF_LRCCONF_CLK_SRC_OPEN_LOOP = LRCCONF_CLKSTAT_SRC_SRC_OpenLoop ,
  NRF_LRCCONF_CLK_SRC_CLOSED_LOOP = LRCCONF_CLKSTAT_SRC_SRC_ClosedLoop
}
 Clock sources. More...
 
enum  nrf_lrcconf_power_domain_mask_t {
  NRF_LRCCONF_POWER_MAIN = LRCCONF_POWERON_MAIN_Msk ,
  NRF_LRCCONF_POWER_DOMAIN_0 = LRCCONF_POWERON_ACTIVE0_Msk ,
  NRF_LRCCONF_POWER_DOMAIN_1 = LRCCONF_POWERON_ACTIVE1_Msk ,
  NRF_LRCCONF_POWER_DOMAIN_2 = LRCCONF_POWERON_ACTIVE2_Msk ,
  NRF_LRCCONF_POWER_DOMAIN_3 = LRCCONF_POWERON_ACTIVE3_Msk ,
  NRF_LRCCONF_POWER_DOMAIN_4 = LRCCONF_POWERON_ACTIVE4_Msk ,
  NRF_LRCCONF_POWER_DOMAIN_5 = LRCCONF_POWERON_ACTIVE5_Msk ,
  NRF_LRCCONF_POWER_DOMAIN_6 = LRCCONF_POWERON_ACTIVE6_Msk ,
  NRF_LRCCONF_POWER_DOMAIN_7 = LRCCONF_POWERON_ACTIVE7_Msk
}
 Power domain mask. More...
 

Functions

NRF_STATIC_INLINE void nrf_lrcconf_task_trigger (NRF_LRCCONF_Type *p_reg, nrf_lrcconf_task_t task)
 Function for starting a task.
 
NRF_STATIC_INLINE uint32_t nrf_lrcconf_task_address_get (NRF_LRCCONF_Type const *p_reg, nrf_lrcconf_task_t task)
 Function for returning the address of a task.
 
NRF_STATIC_INLINE uint32_t nrf_lrcconf_event_address_get (NRF_LRCCONF_Type const *p_reg, nrf_lrcconf_event_t event)
 Function for returning the address of an event.
 
NRF_STATIC_INLINE void nrf_lrcconf_event_clear (NRF_LRCCONF_Type *p_reg, nrf_lrcconf_event_t event)
 Function for clearing an event.
 
NRF_STATIC_INLINE bool nrf_lrcconf_event_check (NRF_LRCCONF_Type const *p_reg, nrf_lrcconf_event_t event)
 Function for retrieving the state of the specified event.
 
NRF_STATIC_INLINE nrf_lrcconf_task_t nrf_lrcconf_clkstart_task_get (uint8_t index)
 Function for getting CLKSTART task by its index.
 
NRF_STATIC_INLINE nrf_lrcconf_task_t nrf_lrcconf_clkstop_task_get (uint8_t index)
 Function for getting CLKSTOP task by its index.
 
NRF_STATIC_INLINE nrf_lrcconf_event_t nrf_lrcconf_clkstarted_event_get (uint8_t index)
 Function for getting CLKSTARTED event by its index.
 
NRF_STATIC_INLINE nrf_lrcconf_power_domain_mask_t nrf_lrcconf_power_domain_on_get (uint8_t index)
 Function for getting power domain on mask by its index.
 
NRF_STATIC_INLINE bool nrf_lrcconf_clock_run_status_check (NRF_LRCCONF_Type const *p_reg, uint8_t clock)
 Function for retrieving the status indicating whether TASK_CLKSTART task has been triggered.
 
NRF_STATIC_INLINE nrf_lrcconf_clk_src_t nrf_lrcconf_clock_source_get (NRF_LRCCONF_Type const *p_reg, uint8_t clock)
 Function for retrieving the source of the specified clock.
 
NRF_STATIC_INLINE void nrf_lrcconf_clock_always_run_force_set (NRF_LRCCONF_Type *p_reg, uint8_t clock, bool alwaysrun)
 Function for setting the specified clock to remain running.
 
NRF_STATIC_INLINE bool nrf_lrcconf_clock_always_run_check (NRF_LRCCONF_Type const *p_reg, uint8_t clock)
 Function for checking if the specified clock is configured to remain running.
 
NRF_STATIC_INLINE void nrf_lrcconf_clock_source_set (NRF_LRCCONF_Type *p_reg, uint8_t clock, nrf_lrcconf_clk_src_t source)
 Function for setting the source of the specified clock.
 
NRF_STATIC_INLINE bool nrf_lrcconf_constlatstat_check (NRF_LRCCONF_Type const *p_reg)
 Function for checking the status of constant latency.
 
NRF_STATIC_INLINE void nrf_lrcconf_poweron_force_set (NRF_LRCCONF_Type *p_reg, nrf_lrcconf_power_domain_mask_t domain_mask, bool alwayson)
 Function for setting the power domain to remain on.
 
NRF_STATIC_INLINE bool nrf_lrcconf_poweron_force_check (NRF_LRCCONF_Type const *p_reg, nrf_lrcconf_power_domain_mask_t domain)
 Function for checking if the power domain is configured to remain on.
 
NRF_STATIC_INLINE void nrf_lrcconf_retain_set (NRF_LRCCONF_Type *p_reg, nrf_lrcconf_power_domain_mask_t domain_mask, bool retain)
 Function for setting the power domain to be retained in System ON idle.
 
NRF_STATIC_INLINE bool nrf_lrcconf_retain_check (NRF_LRCCONF_Type const *p_reg, nrf_lrcconf_power_domain_mask_t domain)
 Function for checking if the power domain is configured to be retained in System ON idle.
 
NRF_STATIC_INLINE void nrf_lrcconf_axi_waitstates_set (NRF_LRCCONF_Type *p_reg, uint8_t domain, uint8_t waitstates_num)
 Function for setting the waitstates for the AXI bridge connection.
 
NRF_STATIC_INLINE uint8_t nrf_lrcconf_axi_waitstates_get (NRF_LRCCONF_Type const *p_reg, uint8_t domain)
 Function for getting the waitstates for the AXI bridge connection.
 

Detailed Description

Hardware access layer for managing the Local Resource Controller Configuration (LRCCONF) peripheral.

Enumeration Type Documentation

◆ nrf_lrcconf_clk_src_t

Clock sources.

Enumerator
NRF_LRCCONF_CLK_SRC_OPEN_LOOP 

Open loop mode.

NRF_LRCCONF_CLK_SRC_CLOSED_LOOP 

Closed loop mode.

◆ nrf_lrcconf_event_t

Events.

Enumerator
NRF_LRCCONF_EVENT_CLKSTARTED_0 

Clock 0 started.

NRF_LRCCONF_EVENT_CLKSTARTED_1 

Clock 1 started.

NRF_LRCCONF_EVENT_CLKSTARTED_2 

Clock 2 started.

NRF_LRCCONF_EVENT_CLKSTARTED_3 

Clock 3 started.

NRF_LRCCONF_EVENT_CLKSTARTED_4 

Clock 4 started.

NRF_LRCCONF_EVENT_CLKSTARTED_5 

Clock 5 started.

NRF_LRCCONF_EVENT_CLKSTARTED_6 

Clock 6 started.

NRF_LRCCONF_EVENT_CLKSTARTED_7 

Clock 7 started.

◆ nrf_lrcconf_power_domain_mask_t

Power domain mask.

Enumerator
NRF_LRCCONF_POWER_MAIN 

Mask for main power domain.

NRF_LRCCONF_POWER_DOMAIN_0 

Mask for power domain 0.

NRF_LRCCONF_POWER_DOMAIN_1 

Mask for power domain 1.

NRF_LRCCONF_POWER_DOMAIN_2 

Mask for power domain 2.

NRF_LRCCONF_POWER_DOMAIN_3 

Mask for power domain 3.

NRF_LRCCONF_POWER_DOMAIN_4 

Mask for power domain 4.

NRF_LRCCONF_POWER_DOMAIN_5 

Mask for power domain 5.

NRF_LRCCONF_POWER_DOMAIN_6 

Mask for power domain 6.

NRF_LRCCONF_POWER_DOMAIN_7 

Mask for power domain 7.

◆ nrf_lrcconf_task_t

Tasks.

Enumerator
NRF_LRCCONF_TASK_CLKSTART_0 

Request the clock source for clock 0.

NRF_LRCCONF_TASK_CLKSTART_1 

Request the clock source for clock 1.

NRF_LRCCONF_TASK_CLKSTART_2 

Request the clock source for clock 2.

NRF_LRCCONF_TASK_CLKSTART_3 

Request the clock source for clock 3.

NRF_LRCCONF_TASK_CLKSTART_4 

Request the clock source for clock 4.

NRF_LRCCONF_TASK_CLKSTART_5 

Request the clock source for clock 5.

NRF_LRCCONF_TASK_CLKSTART_6 

Request the clock source for clock 6.

NRF_LRCCONF_TASK_CLKSTART_7 

Request the clock source for clock 7.

NRF_LRCCONF_TASK_CLKSTOP_0 

Stop requesting the clock source for clock 0.

NRF_LRCCONF_TASK_CLKSTOP_1 

Stop requesting the clock source for clock 1.

NRF_LRCCONF_TASK_CLKSTOP_2 

Stop requesting the clock source for clock 2.

NRF_LRCCONF_TASK_CLKSTOP_3 

Stop requesting the clock source for clock 3.

NRF_LRCCONF_TASK_CLKSTOP_4 

Stop requesting the clock source for clock 4.

NRF_LRCCONF_TASK_CLKSTOP_5 

Stop requesting the clock source for clock 5.

NRF_LRCCONF_TASK_CLKSTOP_6 

Stop requesting the clock source for clock 6.

NRF_LRCCONF_TASK_CLKSTOP_7 

Stop requesting the clock source for clock 7.

NRF_LRCCONF_TASK_CONSTLAT_ENABLE 

Enable constant latency mode.

NRF_LRCCONF_TASK_CONSTLAT_DISABLE 

Disable constant latency mode.

NRF_LRCCONF_TASK_SYSTEMOFFNOTREADY 

Indicate being not ready to system off .

NRF_LRCCONF_TASK_SYSTEMOFFREADY 

Indicate being ready to system off .

Function Documentation

◆ nrf_lrcconf_axi_waitstates_get()

NRF_STATIC_INLINE uint8_t nrf_lrcconf_axi_waitstates_get ( NRF_LRCCONF_Type const *  p_reg,
uint8_t  domain 
)

Function for getting the waitstates for the AXI bridge connection.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]domainFunctional domain identifier.
Returns
Number of waitstates

◆ nrf_lrcconf_axi_waitstates_set()

NRF_STATIC_INLINE void nrf_lrcconf_axi_waitstates_set ( NRF_LRCCONF_Type *  p_reg,
uint8_t  domain,
uint8_t  waitstates_num 
)

Function for setting the waitstates for the AXI bridge connection.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]domainFunctional domain identifier.
[in]waitstates_numNumber of waitstates.

◆ nrf_lrcconf_clkstart_task_get()

NRF_STATIC_INLINE nrf_lrcconf_task_t nrf_lrcconf_clkstart_task_get ( uint8_t  index)

Function for getting CLKSTART task by its index.

Parameters
[in]indexIndex of the CLKSTART task.
Returns
CLKSTART task.

◆ nrf_lrcconf_clkstarted_event_get()

NRF_STATIC_INLINE nrf_lrcconf_event_t nrf_lrcconf_clkstarted_event_get ( uint8_t  index)

Function for getting CLKSTARTED event by its index.

Parameters
[in]indexIndex of the CLKSTARTED event.
Returns
CLKSTARTED event.

◆ nrf_lrcconf_clkstop_task_get()

NRF_STATIC_INLINE nrf_lrcconf_task_t nrf_lrcconf_clkstop_task_get ( uint8_t  index)

Function for getting CLKSTOP task by its index.

Parameters
[in]indexIndex of the CLKSTOP task.
Returns
CLKSTOP task.

◆ nrf_lrcconf_clock_always_run_check()

NRF_STATIC_INLINE bool nrf_lrcconf_clock_always_run_check ( NRF_LRCCONF_Type const *  p_reg,
uint8_t  clock 
)

Function for checking if the specified clock is configured to remain running.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]clockClock index.
Return values
trueThe clock is configured to remain on.
falseThe clock is not configured to remain on.

◆ nrf_lrcconf_clock_always_run_force_set()

NRF_STATIC_INLINE void nrf_lrcconf_clock_always_run_force_set ( NRF_LRCCONF_Type *  p_reg,
uint8_t  clock,
bool  alwaysrun 
)

Function for setting the specified clock to remain running.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]clockClock index.
[in]alwaysrunTrue if forcing the clock to remain on is to be enabled, false otherwise.

◆ nrf_lrcconf_clock_run_status_check()

NRF_STATIC_INLINE bool nrf_lrcconf_clock_run_status_check ( NRF_LRCCONF_Type const *  p_reg,
uint8_t  clock 
)

Function for retrieving the status indicating whether TASK_CLKSTART task has been triggered.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]clockClock index.
Return values
trueClock start task has been triggered.
falseClock start task has not been triggered.

◆ nrf_lrcconf_clock_source_get()

NRF_STATIC_INLINE nrf_lrcconf_clk_src_t nrf_lrcconf_clock_source_get ( NRF_LRCCONF_Type const *  p_reg,
uint8_t  clock 
)

Function for retrieving the source of the specified clock.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]clockClock index.
Returns
Clock source.

◆ nrf_lrcconf_clock_source_set()

NRF_STATIC_INLINE void nrf_lrcconf_clock_source_set ( NRF_LRCCONF_Type *  p_reg,
uint8_t  clock,
nrf_lrcconf_clk_src_t  source 
)

Function for setting the source of the specified clock.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]clockClock index.
[in]sourceClock source to be set.

◆ nrf_lrcconf_constlatstat_check()

NRF_STATIC_INLINE bool nrf_lrcconf_constlatstat_check ( NRF_LRCCONF_Type const *  p_reg)

Function for checking the status of constant latency.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
Return values
trueConstant latency enabled.
falseConstant latency disabled, low power enabled.

◆ nrf_lrcconf_event_address_get()

NRF_STATIC_INLINE uint32_t nrf_lrcconf_event_address_get ( NRF_LRCCONF_Type const *  p_reg,
nrf_lrcconf_event_t  event 
)

Function for returning the address of an event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventRequested event.
Returns
Address of the requested event register.

◆ nrf_lrcconf_event_check()

NRF_STATIC_INLINE bool nrf_lrcconf_event_check ( NRF_LRCCONF_Type const *  p_reg,
nrf_lrcconf_event_t  event 
)

Function for retrieving the state of the specified event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent to be checked.
Return values
trueThe event has been generated.
falseThe event has not been generated.

◆ nrf_lrcconf_event_clear()

NRF_STATIC_INLINE void nrf_lrcconf_event_clear ( NRF_LRCCONF_Type *  p_reg,
nrf_lrcconf_event_t  event 
)

Function for clearing an event.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]eventEvent to be cleared.

◆ nrf_lrcconf_power_domain_on_get()

NRF_STATIC_INLINE nrf_lrcconf_power_domain_mask_t nrf_lrcconf_power_domain_on_get ( uint8_t  index)

Function for getting power domain on mask by its index.

Parameters
[in]indexIndex of the domain.
Returns
Enum value for domain.

◆ nrf_lrcconf_poweron_force_check()

NRF_STATIC_INLINE bool nrf_lrcconf_poweron_force_check ( NRF_LRCCONF_Type const *  p_reg,
nrf_lrcconf_power_domain_mask_t  domain 
)

Function for checking if the power domain is configured to remain on.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]domainPower domain to be checked.
Return values
trueThe domain is configured to remain on.
falseThe domain is not configured to remain on.

◆ nrf_lrcconf_poweron_force_set()

NRF_STATIC_INLINE void nrf_lrcconf_poweron_force_set ( NRF_LRCCONF_Type *  p_reg,
nrf_lrcconf_power_domain_mask_t  domain_mask,
bool  alwayson 
)

Function for setting the power domain to remain on.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]domain_maskMask of power domains to remain on.
[in]alwaysonTrue if forcing the power domain to remain on is to be enabled, false otherwise.

◆ nrf_lrcconf_retain_check()

NRF_STATIC_INLINE bool nrf_lrcconf_retain_check ( NRF_LRCCONF_Type const *  p_reg,
nrf_lrcconf_power_domain_mask_t  domain 
)

Function for checking if the power domain is configured to be retained in System ON idle.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]domainPower domain to be checked.
Return values
trueThe domain is configured to be retained.
falseThe domain is not configured to be retained.

◆ nrf_lrcconf_retain_set()

NRF_STATIC_INLINE void nrf_lrcconf_retain_set ( NRF_LRCCONF_Type *  p_reg,
nrf_lrcconf_power_domain_mask_t  domain_mask,
bool  retain 
)

Function for setting the power domain to be retained in System ON idle.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]domain_maskMask of power domains to be retained.
[in]retainTrue if power domain retention is to be enabled, flase otherwise.

◆ nrf_lrcconf_task_address_get()

NRF_STATIC_INLINE uint32_t nrf_lrcconf_task_address_get ( NRF_LRCCONF_Type const *  p_reg,
nrf_lrcconf_task_t  task 
)

Function for returning the address of a task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskRequested task.
Returns
Address of the requested task register.

◆ nrf_lrcconf_task_trigger()

NRF_STATIC_INLINE void nrf_lrcconf_task_trigger ( NRF_LRCCONF_Type *  p_reg,
nrf_lrcconf_task_t  task 
)

Function for starting a task.

Parameters
[in]p_regPointer to the structure of registers of the peripheral.
[in]taskRequested task.

Documentation feedback | Developer Zone | Subscribe | Updated