关于linux内核入口和入口参数

    技术2022-05-20  77

    boot_linux_from_flash

    //启动内核entry(0, machtype, tags);

     

    //对应kernel/arch/arm/boot/compressed/head.S中的代码如下start:  .type start,#function  .rept 8  mov r0, r0  .endr

      b 1f  .word 0x016f2818  @ Magic numbers to help the loader  .word start   @ absolute load/run zImage address  .word _edata   @ zImage end address1:  mov r7, r1   @ save architecture ID  mov r8, r2   @ save atags pointer   bootloader: 关于启动TAGS /* ATAG_MEM */ *ptr++ = 4; *ptr++ = 0x54410002; *ptr++ = SDRAM_SIZE; *ptr++ = SDRAM_ADDR;  kernel:Setup.c (kernel/arch/arm/kernel) static int __init parse_tag_mem32(const struct tag *tag){ return arm_add_memory(tag->u.mem.start, tag->u.mem.size);}

    __tagtable(ATAG_MEM, parse_tag_mem32);


    最新回复(0)