Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
nxp-fmeas.h File Reference

INPUTMUX connection cookies for the NXP BASIC FREQME (fmeas) inputs. More...

Go to the source code of this file.

Macros

#define NXP_FMEAS_PMUX_ID   0x700U
 FMEASURE destination mux id in the INPUTMUX PMUX encoding.
#define NXP_FMEAS_PMUX_SHIFT   20U
 Shift applied to NXP_FMEAS_PMUX_ID within an INPUTMUX cookie.
#define NXP_FMEAS_CONNECTION(sel)
 Build an INPUTMUX FMEASURE cookie from a per-source selector sel.
#define NXP_FMEAS_RT6XX_XTALIN   NXP_FMEAS_CONNECTION(0)
 RT6xx FREQME source: crystal oscillator input (XTALIN).
#define NXP_FMEAS_RT6XX_SFRO   NXP_FMEAS_CONNECTION(1)
 RT6xx FREQME source: slow internal FRO (SFRO).
#define NXP_FMEAS_RT6XX_FFRO   NXP_FMEAS_CONNECTION(2)
 RT6xx FREQME source: fast internal FRO (FFRO).
#define NXP_FMEAS_RT6XX_LPOSC   NXP_FMEAS_CONNECTION(3)
 RT6xx FREQME source: low-power oscillator (LPOSC).
#define NXP_FMEAS_RT6XX_RTC_32KHZ   NXP_FMEAS_CONNECTION(4)
 RT6xx FREQME source: 32 kHz RTC oscillator.
#define NXP_FMEAS_RT6XX_MAIN_SYS_CLK   NXP_FMEAS_CONNECTION(5)
 RT6xx FREQME source: main system clock.
#define NXP_FMEAS_RT6XX_FREQME_GPIO_CLK   NXP_FMEAS_CONNECTION(6)
 RT6xx FREQME source: external clock routed via GPIO (FREQME_GPIO_CLK).
#define NXP_FMEAS_RT5XX_XTALIN   NXP_FMEAS_CONNECTION(0)
 RT5xx FREQME source: crystal oscillator input (XTALIN).
#define NXP_FMEAS_RT5XX_FRO_12M   NXP_FMEAS_CONNECTION(1)
 RT5xx FREQME source: 12 MHz FRO.
#define NXP_FMEAS_RT5XX_FRO_192M   NXP_FMEAS_CONNECTION(2)
 RT5xx FREQME source: 192 MHz FRO.
#define NXP_FMEAS_RT5XX_LPOSC   NXP_FMEAS_CONNECTION(3)
 RT5xx FREQME source: low-power oscillator (LPOSC).
#define NXP_FMEAS_RT5XX_OSC_32KHZ   NXP_FMEAS_CONNECTION(4)
 RT5xx FREQME source: 32 kHz oscillator.
#define NXP_FMEAS_RT5XX_MAIN_SYS_CLK   NXP_FMEAS_CONNECTION(5)
 RT5xx FREQME source: main system clock.
#define NXP_FMEAS_RT5XX_FREQME_GPIO_CLK   NXP_FMEAS_CONNECTION(6)
 RT5xx FREQME source: external clock routed via GPIO (FREQME_GPIO_CLK).
#define NXP_FMEAS_RT5XX_CLOCK_OUT   NXP_FMEAS_CONNECTION(11)
 RT5xx FREQME source: CLKOUT.
#define NXP_FMEAS_RW6XX_SYSOSC   NXP_FMEAS_CONNECTION(0)
 RW6xx FREQME source: system oscillator (SYSOSC).
#define NXP_FMEAS_RW6XX_SFRO   NXP_FMEAS_CONNECTION(1)
 RW6xx FREQME source: slow internal FRO (SFRO).
#define NXP_FMEAS_RW6XX_FFRO   NXP_FMEAS_CONNECTION(2)
 RW6xx FREQME source: fast internal FRO (FFRO).
#define NXP_FMEAS_RW6XX_LPOSC   NXP_FMEAS_CONNECTION(3)
 RW6xx FREQME source: low-power oscillator (LPOSC).
#define NXP_FMEAS_RW6XX_XTAL_32K   NXP_FMEAS_CONNECTION(4)
 RW6xx FREQME source: 32 kHz crystal.
#define NXP_FMEAS_RW6XX_C0_FR_HCLK   NXP_FMEAS_CONNECTION(5)
 RW6xx FREQME source: CPU0 free-running HCLK (main system clock).
#define NXP_FMEAS_RW6XX_FREQME_GPIO_CLK   NXP_FMEAS_CONNECTION(6)
 RW6xx FREQME source: external clock routed via GPIO (FREQME_GPIO_CLK).

Detailed Description

INPUTMUX connection cookies for the NXP BASIC FREQME (fmeas) inputs.

These mirror the kINPUTMUX_<source>ToFreqmeas enumerators in each SoC's fsl_inputmux_connections.h.

A cookie encodes the FMEASURE destination mux id (0x700) shifted by the INPUTMUX PMUX_SHIFT (20) OR'ed with the per-source selector value.

In the devicetree, cookies are used as the "connection" specifier in "mux-states = <&inputmux channel connection>" inside "reference-sources" and "target-sources" child nodes. The channel cell selects the FMEASURE_CH_SEL slot (0 = reference, 1 = target); the same connection cookie is valid for either channel.

The connection cookie is also the runtime clock_monitor_set_source() selector for both reference and target sources.

Macro Definition Documentation

◆ NXP_FMEAS_CONNECTION

#define NXP_FMEAS_CONNECTION ( sel)
Value:
(((sel) & ((1U << NXP_FMEAS_PMUX_SHIFT) - 1U)) | \
#define NXP_FMEAS_PMUX_ID
FMEASURE destination mux id in the INPUTMUX PMUX encoding.
Definition nxp-fmeas.h:31
#define NXP_FMEAS_PMUX_SHIFT
Shift applied to NXP_FMEAS_PMUX_ID within an INPUTMUX cookie.
Definition nxp-fmeas.h:33

Build an INPUTMUX FMEASURE cookie from a per-source selector sel.

◆ NXP_FMEAS_PMUX_ID

#define NXP_FMEAS_PMUX_ID   0x700U

FMEASURE destination mux id in the INPUTMUX PMUX encoding.

◆ NXP_FMEAS_PMUX_SHIFT

#define NXP_FMEAS_PMUX_SHIFT   20U

Shift applied to NXP_FMEAS_PMUX_ID within an INPUTMUX cookie.

◆ NXP_FMEAS_RT5XX_CLOCK_OUT

#define NXP_FMEAS_RT5XX_CLOCK_OUT   NXP_FMEAS_CONNECTION(11)

RT5xx FREQME source: CLKOUT.

◆ NXP_FMEAS_RT5XX_FREQME_GPIO_CLK

#define NXP_FMEAS_RT5XX_FREQME_GPIO_CLK   NXP_FMEAS_CONNECTION(6)

RT5xx FREQME source: external clock routed via GPIO (FREQME_GPIO_CLK).

◆ NXP_FMEAS_RT5XX_FRO_12M

#define NXP_FMEAS_RT5XX_FRO_12M   NXP_FMEAS_CONNECTION(1)

RT5xx FREQME source: 12 MHz FRO.

◆ NXP_FMEAS_RT5XX_FRO_192M

#define NXP_FMEAS_RT5XX_FRO_192M   NXP_FMEAS_CONNECTION(2)

RT5xx FREQME source: 192 MHz FRO.

◆ NXP_FMEAS_RT5XX_LPOSC

#define NXP_FMEAS_RT5XX_LPOSC   NXP_FMEAS_CONNECTION(3)

RT5xx FREQME source: low-power oscillator (LPOSC).

◆ NXP_FMEAS_RT5XX_MAIN_SYS_CLK

#define NXP_FMEAS_RT5XX_MAIN_SYS_CLK   NXP_FMEAS_CONNECTION(5)

RT5xx FREQME source: main system clock.

◆ NXP_FMEAS_RT5XX_OSC_32KHZ

#define NXP_FMEAS_RT5XX_OSC_32KHZ   NXP_FMEAS_CONNECTION(4)

RT5xx FREQME source: 32 kHz oscillator.

◆ NXP_FMEAS_RT5XX_XTALIN

#define NXP_FMEAS_RT5XX_XTALIN   NXP_FMEAS_CONNECTION(0)

RT5xx FREQME source: crystal oscillator input (XTALIN).

◆ NXP_FMEAS_RT6XX_FFRO

#define NXP_FMEAS_RT6XX_FFRO   NXP_FMEAS_CONNECTION(2)

RT6xx FREQME source: fast internal FRO (FFRO).

◆ NXP_FMEAS_RT6XX_FREQME_GPIO_CLK

#define NXP_FMEAS_RT6XX_FREQME_GPIO_CLK   NXP_FMEAS_CONNECTION(6)

RT6xx FREQME source: external clock routed via GPIO (FREQME_GPIO_CLK).

◆ NXP_FMEAS_RT6XX_LPOSC

#define NXP_FMEAS_RT6XX_LPOSC   NXP_FMEAS_CONNECTION(3)

RT6xx FREQME source: low-power oscillator (LPOSC).

◆ NXP_FMEAS_RT6XX_MAIN_SYS_CLK

#define NXP_FMEAS_RT6XX_MAIN_SYS_CLK   NXP_FMEAS_CONNECTION(5)

RT6xx FREQME source: main system clock.

◆ NXP_FMEAS_RT6XX_RTC_32KHZ

#define NXP_FMEAS_RT6XX_RTC_32KHZ   NXP_FMEAS_CONNECTION(4)

RT6xx FREQME source: 32 kHz RTC oscillator.

◆ NXP_FMEAS_RT6XX_SFRO

#define NXP_FMEAS_RT6XX_SFRO   NXP_FMEAS_CONNECTION(1)

RT6xx FREQME source: slow internal FRO (SFRO).

◆ NXP_FMEAS_RT6XX_XTALIN

#define NXP_FMEAS_RT6XX_XTALIN   NXP_FMEAS_CONNECTION(0)

RT6xx FREQME source: crystal oscillator input (XTALIN).

◆ NXP_FMEAS_RW6XX_C0_FR_HCLK

#define NXP_FMEAS_RW6XX_C0_FR_HCLK   NXP_FMEAS_CONNECTION(5)

RW6xx FREQME source: CPU0 free-running HCLK (main system clock).

◆ NXP_FMEAS_RW6XX_FFRO

#define NXP_FMEAS_RW6XX_FFRO   NXP_FMEAS_CONNECTION(2)

RW6xx FREQME source: fast internal FRO (FFRO).

◆ NXP_FMEAS_RW6XX_FREQME_GPIO_CLK

#define NXP_FMEAS_RW6XX_FREQME_GPIO_CLK   NXP_FMEAS_CONNECTION(6)

RW6xx FREQME source: external clock routed via GPIO (FREQME_GPIO_CLK).

◆ NXP_FMEAS_RW6XX_LPOSC

#define NXP_FMEAS_RW6XX_LPOSC   NXP_FMEAS_CONNECTION(3)

RW6xx FREQME source: low-power oscillator (LPOSC).

◆ NXP_FMEAS_RW6XX_SFRO

#define NXP_FMEAS_RW6XX_SFRO   NXP_FMEAS_CONNECTION(1)

RW6xx FREQME source: slow internal FRO (SFRO).

◆ NXP_FMEAS_RW6XX_SYSOSC

#define NXP_FMEAS_RW6XX_SYSOSC   NXP_FMEAS_CONNECTION(0)

RW6xx FREQME source: system oscillator (SYSOSC).

◆ NXP_FMEAS_RW6XX_XTAL_32K

#define NXP_FMEAS_RW6XX_XTAL_32K   NXP_FMEAS_CONNECTION(4)

RW6xx FREQME source: 32 kHz crystal.