Repository navigation
Fix compile errors when building SOF, from Zephyr, as a sample application - #7533
Conversation
Update parameter type for asrc_initialise() to match those from header file. This fixes "error: conflicting types for 'asrc_initialise'". Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
Update parameter type for _xt_atomic_compare_exchange_4() to match xthal_compare_and_set() from xtensa/hal.h This fixes "error: passing argument 1 of 'xthal_compare_and_set' from incompatible pointer type" Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
| int _xt_atomic_compare_exchange_4(int *address, int32_t test_value, int32_t set_value); | ||
|
|
||
| int _xt_atomic_compare_exchange_4(int32_t *address, int32_t test_value, int32_t set_value) | ||
| int _xt_atomic_compare_exchange_4(int *address, int32_t test_value, int32_t set_value) |
There was a problem hiding this comment.
interesting, I don't see this file being built with Zephyr? And I don't see this function called anywhere. How are you building?
There was a problem hiding this comment.
The NXP config has select ATOMIC_OPERATIONS_BUILTIN.
The Intel config has select ATOMIC_OPERATIONS_BUILTIN if "$(ZEPHYR_TOOLCHAIN_VARIANT)" != "xcc" (note: probably should extend to also cover xt-clang?)
Files are in zephyr/soc/xtensa/{intel,nxp}_adsp/*/Kconfig.series
There was a problem hiding this comment.
interesting, I don't see this file being built with Zephyr? And I don't see this function called anywhere. How are you building?
Directly from zephyr folder:
nxa06898@lsv15040:~/data/zephyrproject/zephyr$ west build -p always -b nxp_adsp_imx8m ../modules/audio/sof/ -- -DTOOLCHAIN=/opt/zephyr-sdk-0.15.2/xtensa-nxp_imx8m_adsp_zephyr-elf/bin/xtensa-nxp_imx8m_adsp_zephyr-elf -DINIT_CONFIG=imx8m_defconfig
There was a problem hiding this comment.
I only see atomics.c being built in src/arch/xtensa/hal/CMakeLists.txt and AFAIK that file isn't used in Zephyr builds, so I'm confused...
There was a problem hiding this comment.
interesting, I don't see this file being built with Zephyr? And I don't see this function called anywhere. How are you building?
Directly from zephyr folder:
nxa06898@lsv15040:~/data/zephyrproject/zephyr$ west build -p always -b nxp_adsp_imx8m ../modules/audio/sof/ -- -DTOOLCHAIN=/opt/zephyr-sdk-0.15.2/xtensa-nxp_imx8m_adsp_zephyr-elf/bin/xtensa-nxp_imx8m_adsp_zephyr-elf -DINIT_CONFIG=imx8m_defconfig
@iuliana-prodan this looks wrong to me. You should build modules/audio/sof/app, not modules/audio/sof
There was a problem hiding this comment.
Ah, so it can use the correct CMakeFiles.txt and related files. Yeah makes sense, she was using the CMakeFiles.txt for Xtos within the Zephyr build.
The fix still felt sketchy.
There was a problem hiding this comment.
@lyakh you're right! Compiling modules/audio/sof/app is fine, no warnings/errors thrown.
But, these fixes seems reasonable to me, since we need to have the same parameters in header and source.
When building SOF, in Zephyr, as a sample application I got the following errors:
This PR fixes the above issues.