e42f58ec94
The `ARCH` init level was added to solve a specific problem, call init code (SYS_INIT/devices) before `z_cstart` in the `intel_adsp` platform. The documentation claims it runs before `z_cstart`, but this is only true if the SoC/arch takes care of calling: ```c z_sys_init_run_level(_SYS_INIT_LEVEL_ARCH); ``` Which is only true for `intel_adsp` nowadays. So in practice, we now have a platform specific init level. This patch proposes to do things in a slightly different way. First, level name is renamed to `EARLY`, to emphasize it runs in the early stage of the boot process. Then, it is handled by the Kernel (inside `z_cstart()` before calling `arch_kernel_init()`). This means that any platform can now use this level. For `intel_adsp`, there should be no changes, other than `gcov_static_init()` will be called before (I assume this will allow to obtain coverage for code called in EARLY?). Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no> |
||
---|---|---|
.. | ||
app | ||
bintools | ||
compiler | ||
emu | ||
flash | ||
ide | ||
linker | ||
linker_script | ||
makefile_exports | ||
modules | ||
reports | ||
toolchain | ||
usage | ||
util | ||
cfb.cmake | ||
extra_flags.cmake | ||
gcc-m-cpu.cmake | ||
gcc-m-fpu.cmake | ||
gen_version_h.cmake | ||
hex.cmake | ||
kobj.cmake | ||
mcuboot.cmake | ||
package_helper.cmake | ||
pristine.cmake | ||
target_toolchain_flags.cmake | ||
verify-toolchain.cmake |