Skip to content

Commit 6450eaa

Browse files
Hi-Im-Davidnashif
authored andcommitted
drivers: nrf_auxpll: Add CHECK_DTS_BINDING_VS_MDK macro
Macro added to compare the devicetree bindings against values in the MDK to clean up code and check out-div bindings. Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
1 parent 2a395ba commit 6450eaa

File tree

1 file changed

+18
-10
lines changed

1 file changed

+18
-10
lines changed

drivers/clock_control/clock_control_nrf_auxpll.c

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,24 @@
2020

2121

2222
/* Check dt-bindings match MDK frequency division definitions*/
23-
BUILD_ASSERT(NRF_AUXPLL_FREQ_DIV_MIN == NRF_AUXPLL_FREQUENCY_DIV_MIN,
24-
"Different AUXPLL_FREQ_DIV_MIN definition in MDK and devicetree binding");
25-
BUILD_ASSERT(NRF_AUXPLL_FREQ_DIV_AUDIO_44K1 == NRF_AUXPLL_FREQUENCY_AUDIO_44K1,
26-
"Different AUXPLL_FREQ_DIV_AUDIO_44K1 definition in MDK and devicetree binding");
27-
BUILD_ASSERT(NRF_AUXPLL_FREQ_DIV_USB24M == NRF_AUXPLL_FREQUENCY_USB_24M,
28-
"Different AUXPLL_FREQ_DIV_USB24M definition in MDK and devicetree binding");
29-
BUILD_ASSERT(NRF_AUXPLL_FREQ_DIV_AUDIO_48K == NRF_AUXPLL_FREQUENCY_AUDIO_48K,
30-
"Different AUXPLL_FREQ_DIV_AUDIO_48K definition in MDK and devicetree binding");
31-
BUILD_ASSERT(NRF_AUXPLL_FREQ_DIV_MAX == NRF_AUXPLL_FREQUENCY_DIV_MAX,
32-
"Different AUXPLL_FREQ_DIV_MAX definition in MDK and devicetree binding");
23+
#define CHECK_DTS_BINDING_VS_MDK(dt, mdk) \
24+
BUILD_ASSERT((mdk) == (dt), \
25+
"Different " #mdk " definition in MDK and devicetree binding")
26+
27+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_FREQ_DIV_MIN, NRF_AUXPLL_FREQUENCY_DIV_MIN);
28+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_FREQ_DIV_AUDIO_44K1, NRF_AUXPLL_FREQUENCY_AUDIO_44K1);
29+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_FREQ_DIV_USB24M, NRF_AUXPLL_FREQUENCY_USB_24M);
30+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_FREQ_DIV_AUDIO_48K, NRF_AUXPLL_FREQUENCY_AUDIO_48K);
31+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_FREQ_DIV_MAX, NRF_AUXPLL_FREQUENCY_DIV_MAX);
32+
33+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_OUT_DIV_1, NRF_AUXPLL_CTRL_OUTSEL_DIV_1);
34+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_OUT_DIV_2, NRF_AUXPLL_CTRL_OUTSEL_DIV_2);
35+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_OUT_DIV_3, NRF_AUXPLL_CTRL_OUTSEL_DIV_3);
36+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_OUT_DIV_4, NRF_AUXPLL_CTRL_OUTSEL_DIV_4);
37+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_OUT_DIV_6, NRF_AUXPLL_CTRL_OUTSEL_DIV_6);
38+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_OUT_DIV_8, NRF_AUXPLL_CTRL_OUTSEL_DIV_8);
39+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_OUT_DIV_12, NRF_AUXPLL_CTRL_OUTSEL_DIV_12);
40+
CHECK_DTS_BINDING_VS_MDK(NRF_AUXPLL_OUT_DIV_16, NRF_AUXPLL_CTRL_OUTSEL_DIV_16);
3341

3442
/* maximum lock time in us, >10x time observed experimentally */
3543
#define AUXPLL_LOCK_TIME_MAX_US 20000

0 commit comments

Comments
 (0)