|
54 | 54 | #define HFXO_NODE DT_NODELABEL(hfxo)
|
55 | 55 |
|
56 | 56 | /* LFXO config from DT */
|
| 57 | +#if DT_NODE_HAS_STATUS_OKAY(LFXO_NODE) && defined(CONFIG_SOC_ENABLE_LFXO) |
57 | 58 | #if DT_ENUM_HAS_VALUE(LFXO_NODE, load_capacitors, external)
|
58 | 59 | #define LFXO_CAP NRF_OSCILLATORS_LFXO_CAP_EXTERNAL
|
59 | 60 | #elif DT_ENUM_HAS_VALUE(LFXO_NODE, load_capacitors, internal)
|
60 | 61 | #define LFXO_CAP (DT_ENUM_IDX(LFXO_NODE, load_capacitance_picofarad) + 1U)
|
61 |
| -#else |
| 62 | +#endif /*DT_ENUM_HAS_VALUE(LFXO_NODE, load_capacitors, external) */ |
| 63 | +#elif !DT_NODE_HAS_STATUS(LFXO_NODE, disabled) && defined(CONFIG_SOC_ENABLE_LFXO) |
62 | 64 | /* LFXO config from legacy Kconfig */
|
63 | 65 | #if defined(CONFIG_SOC_LFXO_CAP_INT_6PF)
|
64 | 66 | #define LFXO_CAP NRF_OSCILLATORS_LFXO_CAP_6PF
|
|
68 | 70 | #define LFXO_CAP NRF_OSCILLATORS_LFXO_CAP_9PF
|
69 | 71 | #else
|
70 | 72 | #define LFXO_CAP NRF_OSCILLATORS_LFXO_CAP_EXTERNAL
|
71 |
| -#endif |
72 |
| -#endif |
| 73 | +#endif /* defined(CONFIG_SOC_LFXO_CAP_INT_6PF) */ |
| 74 | +#endif /* DT_NODE_HAS_STATUS_OKAY(LFXO_NODE) */ |
73 | 75 |
|
74 | 76 | /* HFXO config from DT */
|
75 | 77 | #if DT_ENUM_HAS_VALUE(HFXO_NODE, load_capacitors, internal)
|
@@ -506,6 +508,14 @@ void soc_early_init_hook(void)
|
506 | 508 | nrf_gpio_pin_control_select(PIN_XL1, NRF_GPIO_PIN_SEL_PERIPHERAL);
|
507 | 509 | nrf_gpio_pin_control_select(PIN_XL2, NRF_GPIO_PIN_SEL_PERIPHERAL);
|
508 | 510 | #endif /* !defined(CONFIG_BUILD_WITH_TFM) */
|
| 511 | +#else |
| 512 | +#if !defined(CONFIG_BUILD_WITH_TFM) |
| 513 | + /* This can only be done from secure code. |
| 514 | + * Assign XL1/XL2 as GPIO to app core if LFXO is disabled. |
| 515 | + */ |
| 516 | + nrf_gpio_pin_control_select(PIN_XL1, NRF_GPIO_PIN_SEL_APP); |
| 517 | + nrf_gpio_pin_control_select(PIN_XL2, NRF_GPIO_PIN_SEL_APP); |
| 518 | +#endif /* !defined(CONFIG_BUILD_WITH_TFM) */ |
509 | 519 | #endif /* defined(LFXO_CAP) */
|
510 | 520 | #if defined(HFXO_CAP_VAL_X2)
|
511 | 521 | /* This register is only accessible from secure code. */
|
|
0 commit comments