Linux之kernal分析与启动20160610

时间:2023-03-08 21:00:17
Linux之kernal分析与启动20160610

说一下LINUX内核的分析与启动:

一. 内核启动流程,据此配置内核(机器ID)

1.1 修改Makefile

1.2 选择默认配置 : make s3c2410_defconfig

1.3 make uImage

步骤1:

在UBOOT里:

set machid 16a   // smdk2440  mach-smdk2440.c

set machid 7CF   // mini2440  mach-mini2440.c

步骤2:

arch\arm\mach-s3c24xx\mach-smdk2440.c

s3c24xx_init_clocks(16934400);

改为

s3c24xx_init_clocks(12000000);

步骤3:

配置/编译: make s3c2410_defconfig 或 make mini2440_defconfig

make uImage

步骤4:

在uboot里:set bootargs console=ttySAC0,115200 .....

uboot的默认MACH ID:

gd->bd->bi_arch_number = MACH_TYPE_SMDK2410;  // 193

如果s = getenv("machid");成功,则使用它

否则使用默认的

set machid 16a   // smdk2440  mach-smdk2440.c

set machid 7CF   // mini2440  mach-mini2440.c

nfs 32000000 192.168.1.123:/work/nfs_root/uImage_new

bootm 32000000、

附笔者的学习笔记,字写的不好勿怪,将就看吧:

1.内核编译:

Linux之kernal分析与启动20160610

2.内核配置

Linux之kernal分析与启动20160610

3.Makefile分析:

Linux之kernal分析与启动20160610

Linux之kernal分析与启动20160610

4.内核启动流程分析:

Linux之kernal分析与启动20160610

Linux之kernal分析与启动20160610