zephyr/kernel
Daniel DeGrasse 6023d6a142 arch: common: fix copy for ramfunc region during XIP init
ramfunc region is copied into RAM from FLASH region during XIP init. We
copy from the loadaddr of the region, and were previously loading to the
symbol __ramfunc_start. This is incorrect when using an MPU with
alignment requirements, as the __ramfunc_start symbol may have padding
placed before it in the region. The __ramfunc_start symbol still needs
to be aligned in order to be used by the MPU though, so define a new
symbol __ramfunc_region_start, and use that symbol when copying the
__ramfunc region from FLASH to RAM.

Fixes #75296

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-11-06 10:19:08 -08:00
..
include kernel: Begin abstracting out _sched_spinlock 2024-10-21 18:38:00 -05:00
paging
CMakeLists.txt
Kconfig Revert "kernel: banner: Expose tainted builds" 2024-10-29 14:17:21 -05:00
Kconfig.device
Kconfig.init
Kconfig.mem_domain
Kconfig.obj_core
Kconfig.smp
Kconfig.vm
atomic_c.c
banner.c
busy_wait.c
compiler_stack_protect.c
condvar.c
cpu_mask.c
device.c
dynamic.c
dynamic_disabled.c
errno.c
events.c
fatal.c
float.c
futex.c
idle.c
init.c
init_static.c
ipi.c
irq_offload.c
kheap.c
mailbox.c
main_weak.c
mem_domain.c
mem_slab.c
mempool.c
mmu.c
msg_q.c
mutex.c
nothread.c
obj_core.c
pipes.c
poll.c
priority_queues.c
queue.c
sched.c kernel: inline z_unpend_first_thread() 2024-10-21 18:38:00 -05:00
sem.c
smp.c
spinlock_validate.c
stack.c
system_work_q.c
thread.c
thread_monitor.c
timeout.c
timer.c
timeslicing.c
usage.c
userspace.c
userspace_handler.c
version.c
work.c
xip.c arch: common: fix copy for ramfunc region during XIP init 2024-11-06 10:19:08 -08:00