/branches/arm/boot/arch/arm32/loader/main.c |
---|
68,6 → 68,7 |
release, revision, timestamp); |
} |
/** Copies all images (kernel + user tasks) to #KERNEL_VIRTUAL_ADDRESS and jumps there. */ |
void bootstrap(void) |
{ |
/branches/arm/boot/arch/arm32/loader/asm.h |
---|
48,6 → 48,14 |
#define memcpy(dst, src, cnt) __builtin_memcpy((dst), (src), (cnt)) |
/** Called when the CPU is switched on. |
* |
* This function is placed to the 0x0 address where ARM CPU starts execution. |
* Jumps to the #bootstrap only. |
*/ |
extern void start(void); |
/** Jumps to the kernel entry point. |
* |
* @param entry Kernel entry point address. |
54,7 → 62,7 |
* @param bootinfo Structure holding information about loaded tasks. |
* @param bootinfo_size Size of the bootinfo structure. |
*/ |
void jump_to_kernel(void *entry, void *bootinfo, unsigned int bootinfo_size) __attribute__((noreturn)); |
extern void jump_to_kernel(void *entry, void *bootinfo, unsigned int bootinfo_size) __attribute__((noreturn)); |
#endif |
/branches/arm/boot/arch/arm32/loader/main.h |
---|
68,11 → 68,6 |
} bootinfo_t; |
/** Called when the CPU is switched on. |
* |
* Implemented in assembly. Jumps to the #bootstrap only. |
*/ |
extern void start(void); |
extern void bootstrap(void); |
/branches/arm/boot/arch/arm32/loader/mm.c |
---|
81,8 → 81,7 |
} |
/** Starts the MMU - initializes page table and enables paging. |
*/ |
/** Starts the MMU - initializes page table and enables paging. */ |
void mmu_start() { |
init_page_table(); |
set_ptl0_address(page_table); |
/branches/arm/boot/arch/arm32/loader/pack |
---|
128,6 → 128,7 |
echo " |
#define COMPONENTS $COUNT |
/** Initializes array of components. */ |
static void init_components(component_t components[]) |
{ |
$DATA |