zephyr: Link MicroPython with the Zephyr kernel library.

Unlike most other Zephyr libraries, libkernel.a is not built as a
whole-archive.

This change also fixes a linker error observed on nucleo_wb55rg while
preparing an upgrade to Zephyr v3.5.0, caused by an undefined reference
to `z_impl_k_busy_wait'.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
pull/13328/head
Maureen Helm 2024-01-02 14:21:37 -06:00
rodzic 3d0b6276f3
commit 4e54bf7186
2 zmienionych plików z 1 dodań i 4 usunięć

Wyświetl plik

@ -109,6 +109,7 @@ zephyr_library_compile_definitions(
)
zephyr_library_sources(${MICROPY_SOURCE_QSTR})
zephyr_library_link_libraries(kernel)
add_dependencies(${MICROPY_TARGET} zephyr_generated_headers)

Wyświetl plik

@ -36,8 +36,4 @@ void main(void) {
zephyr_getchar_init();
#endif
real_main();
// This is needed so the linker includes k_timer_init, z_impl_k_timer_start
// and z_impl_k_timer_stop, as used by libmicropython.a.
k_timer_start(NULL, K_MSEC(0), K_MSEC(0));
}