NXP MCUXpresso SDK implementation for pw_clock_tree. Main docs: https://pigweed.dev/pw_clock_tree_mcuxpresso.
Classes | |
class | pw::clock_tree::ClockMcuxpressoFro |
Class implementing an FRO clock source. More... | |
class | pw::clock_tree::ClockMcuxpressoLpOsc |
Class implementing the low power oscillator clock source. More... | |
class | pw::clock_tree::ClockMcuxpressoMclk< ElementType > |
class | pw::clock_tree::ClockMcuxpressoClkIn< ElementType > |
class | pw::clock_tree::ClockMcuxpressoFrg< ElementType > |
class | pw::clock_tree::ClockMcuxpressoSelector< ElementType > |
class | pw::clock_tree::ClockMcuxpressoDivider< ElementType > |
class | pw::clock_tree::ClockMcuxpressoAudioPll< ElementType > |
class | pw::clock_tree::ClockMcuxpressoSysPll< ElementType > |
class | pw::clock_tree::ClockMcuxpressoRtc< ElementType > |
class | pw::clock_tree::ClockMcuxpressoClockIp< ElementType > |
Functions | |
constexpr | pw::clock_tree::ClockMcuxpressoFro::ClockMcuxpressoFro (clock_fro_output_en_t fro_output) |
Constructor specifying the FRO divider output to manage. | |
Status | pw::clock_tree::ClockMcuxpressoFro::DoEnable () final |
Enable this FRO divider. | |
Status | pw::clock_tree::ClockMcuxpressoFro::DoDisable () final |
Disable this FRO divider. | |
Status | pw::clock_tree::ClockMcuxpressoLpOsc::DoEnable () final |
Enable low power oscillator. | |
Status | pw::clock_tree::ClockMcuxpressoLpOsc::DoDisable () final |
Disable low power oscillator. | |
constexpr | pw::clock_tree::ClockMcuxpressoMclk< ElementType >::ClockMcuxpressoMclk (ElementType &source, uint32_t frequency) |
Status | pw::clock_tree::ClockMcuxpressoMclk< ElementType >::DoEnable () final |
Set MCLK IN clock frequency. | |
Status | pw::clock_tree::ClockMcuxpressoMclk< ElementType >::DoDisable () final |
Set MCLK IN clock frequency to 0 Hz. | |
constexpr | pw::clock_tree::ClockMcuxpressoClkIn< ElementType >::ClockMcuxpressoClkIn (ElementType &source, uint32_t frequency) |
Status | pw::clock_tree::ClockMcuxpressoClkIn< ElementType >::DoEnable () final |
Set CLK IN clock frequency. | |
Status | pw::clock_tree::ClockMcuxpressoClkIn< ElementType >::DoDisable () final |
Set CLK IN clock frequency to 0 Hz. | |
constexpr | pw::clock_tree::ClockMcuxpressoFrg< ElementType >::ClockMcuxpressoFrg (ElementType &source, const clock_frg_clk_config_t &config) |
Constructor specifying the source clock and FRG configuration. | |
Status | pw::clock_tree::ClockMcuxpressoFrg< ElementType >::DoEnable () final |
Enable FRG configuration. | |
Status | pw::clock_tree::ClockMcuxpressoFrg< ElementType >::DoDisable () final |
Disable FRG configuration. | |
constexpr | pw::clock_tree::ClockMcuxpressoSelector< ElementType >::ClockMcuxpressoSelector (ElementType &source, clock_attach_id_t selector_enable, clock_attach_id_t selector_disable) |
Status | pw::clock_tree::ClockMcuxpressoSelector< ElementType >::DoEnable () final |
Enable selector. | |
Status | pw::clock_tree::ClockMcuxpressoSelector< ElementType >::DoDisable () final |
Disable selector. | |
constexpr | pw::clock_tree::ClockMcuxpressoDivider< ElementType >::ClockMcuxpressoDivider (ElementType &source, clock_div_name_t divider_name, uint32_t divider) |
Status | pw::clock_tree::ClockMcuxpressoDivider< ElementType >::DoEnable () final |
Set the divider configuration. | |
constexpr | pw::clock_tree::ClockMcuxpressoAudioPll< ElementType >::ClockMcuxpressoAudioPll (ElementType &source, const clock_audio_pll_config_t &config, uint8_t audio_pfd_divider) |
Constructor specifying the configuration for the enabled Audio PLL. | |
constexpr | pw::clock_tree::ClockMcuxpressoAudioPll< ElementType >::ClockMcuxpressoAudioPll (ElementType &source, audio_pll_src_t bypass_source) |
Constructor to place the Audio PLL into bypass mode. | |
Status | pw::clock_tree::ClockMcuxpressoAudioPll< ElementType >::DoEnable () override |
Status | pw::clock_tree::ClockMcuxpressoAudioPll< ElementType >::DoDisable () override |
Disables the audio PLL logic. | |
constexpr | pw::clock_tree::ClockMcuxpressoSysPll< ElementType >::ClockMcuxpressoSysPll (ElementType &source, const clock_sys_pll_config_t &config, uint8_t sys_pfd0_divider, uint8_t sys_pfd1_divider, uint8_t sys_pfd2_divider, uint8_t sys_pfd3_divider) |
Constructor specifying the configuration for the enabled Sys PLL. | |
constexpr | pw::clock_tree::ClockMcuxpressoSysPll< ElementType >::ClockMcuxpressoSysPll (ElementType &source, sys_pll_src_t bypass_source) |
Constructor to place the Sys PLL into bypass mode. | |
Status | pw::clock_tree::ClockMcuxpressoSysPll< ElementType >::DoEnable () override |
Status | pw::clock_tree::ClockMcuxpressoSysPll< ElementType >::DoDisable () override |
Disables the Sys PLL logic. | |
constexpr | pw::clock_tree::ClockMcuxpressoRtc< ElementType >::ClockMcuxpressoRtc (ElementType &source) |
Status | pw::clock_tree::ClockMcuxpressoRtc< ElementType >::DoEnable () final |
Enable 32 kHz RTC oscillator. | |
Status | pw::clock_tree::ClockMcuxpressoRtc< ElementType >::DoDisable () final |
Disable 32 kHz RTS oscillator. | |
constexpr | pw::clock_tree::ClockMcuxpressoClockIp< ElementType >::ClockMcuxpressoClockIp (ElementType &source, clock_ip_name_t clock) |
Status | pw::clock_tree::ClockMcuxpressoClockIp< ElementType >::DoEnable () final |
Enable the clock. | |
Status | pw::clock_tree::ClockMcuxpressoClockIp< ElementType >::DoDisable () final |
Disable the clock. | |
using pw::clock_tree::ClockMcuxpressoAudioPllNonBlocking = typedef ClockMcuxpressoAudioPll<ElementNonBlockingCannotFail> |
Alias for a non-blocking audio PLL clock tree element where updates cannot fail.
Alias for a blocking CLK IN pin clock tree element. This class should be used if the CLK IN pin clock source depends on another blocking clock tree element to enable the CLK IN pin clock source.
using pw::clock_tree::ClockMcuxpressoClkInNonBlocking = typedef ClockMcuxpressoClkIn<ElementNonBlockingCannotFail> |
Alias for a non-blocking CLK IN pin clock tree element where updates cannot fail.
using pw::clock_tree::ClockMcuxpressoClockIpBlocking = typedef ClockMcuxpressoClockIp<ElementBlocking> |
Alias for a blocking ClockIp clock tree element. This class should be used if the ClockIp clock source depends on another blocking clock tree element to enable the ClockIp clock source.
using pw::clock_tree::ClockMcuxpressoClockIpNonBlocking = typedef ClockMcuxpressoClockIp<ElementNonBlockingCannotFail> |
Alias for a non-blocking ClockIp clock tree element where updates cannot fail.
using pw::clock_tree::ClockMcuxpressoDividerNonBlocking = typedef ClockMcuxpressoDivider<ElementNonBlockingCannotFail> |
Alias for a non-blocking clock divider clock tree element where updates cannot fail.
Alias for a blocking MCLK IN clock tree element. This class should be used if the MCLK IN clock source depends on another blocking clock tree element to enable the MCLK IN clock source.
using pw::clock_tree::ClockMcuxpressoMclkNonBlocking = typedef ClockMcuxpressoMclk<ElementNonBlockingCannotFail> |
Alias for a non-blocking MCLK IN clock tree element where updates cannot fail.
using pw::clock_tree::ClockMcuxpressoRtcBlocking = typedef ClockMcuxpressoRtc<ElementBlocking> |
Alias for a blocking Rtc clock tree element. This class should be used if the Rtc clock source depends on another blocking clock tree element to enable the Rtc clock source.
using pw::clock_tree::ClockMcuxpressoRtcNonBlocking = typedef ClockMcuxpressoRtc<ElementNonBlockingCannotFail> |
Alias for a non-blocking Rtc clock tree element where updates cannot fail.
using pw::clock_tree::ClockMcuxpressoSelectorNonBlocking = typedef ClockMcuxpressoSelector<ElementNonBlockingCannotFail> |
Alias for a non-blocking clock selector clock tree element where updates cannot fail.
using pw::clock_tree::ClockMcuxpressoSysPllNonBlocking = typedef ClockMcuxpressoSysPll<ElementNonBlockingCannotFail> |
Alias for a non-blocking sys PLL clock tree element where updates cannot fail.
|
inlineconstexpr |
Constructor specifying the CLK IN pin clock frequency in Hz and the dependent clock tree element to enable the CLK IN pin clock source.
|
inlineconstexpr |
Constructor specifying the dependent clock tree element to enable the clock_ip_name_t
clock source.
|
inlineconstexpr |
Constructor specifying the source clock, the name of the divder and the divider setting.
|
inlineconstexpr |
Constructor specifying the MCLK IN clock frequency in Hz and the dependent clock tree element to enable the MCLK clock source.
|
inlineconstexpr |
Constructor specifying the dependent clock tree element to enable the Rtc clock source.
|
inlineconstexpr |
Constructor specifying the source clock and the selector value when the selector should get enabled, and the selector value when the selector should get disabled to save power.
|
inlinefinalprivatevirtual |
Disable this FRO divider.
Reimplemented from pw::clock_tree::Element.
|
inlinefinalprivatevirtual |
Disable low power oscillator.
Reimplemented from pw::clock_tree::Element.
|
inlinefinalprivatevirtual |
Enable this FRO divider.
Implements pw::clock_tree::Element.
|
inlinefinalprivatevirtual |
Enable low power oscillator.
Implements pw::clock_tree::Element.
|
inlineoverrideprivate |
Configures and enables the audio PLL if config_
is set, otherwise places the audio PLL in bypass mode.
|
inlineoverrideprivate |
Configures and enables the audio PLL if config_
is set, otherwise places the sys PLL in bypass mode.