In ARM Linux , at exactly which point mmu is enabled. ie , in which file (assembly file or paging_init() in arch/arm/kernel/setup.c)
Does ARM linux have support to run without paging.
Thanks in advance.
Have a look at this(dead) and this pages on ARM Linux booting process. They're probably somewhat out of date but should be pretty close.
__enable_mmu
function.Actually if you are working on embedded system using Linux on ARM systems, then generally in the bootloader there is no MMU and when bootloader switches to Kernel then in arch/arm/boot/compressed/head.S, we set up MMU in __setup_mmu
function.
First page tables are created which are used for page translation and then we start with MMU setup.
I don't know the answer to the first question offhand. I would have browse sources.
The ELDK I am using on a custom ARM board does not have paging, and Linux works just fine.