linux-4.1.4中已经有mini2440的驱动程序,所以移植工作比较少.
1. 分区表的修改
arch/arm/mach-s3c24xx/mach-mini2440.c中修改为分区表mini2440_default_nand_part使得分区于移植u-boot的分区定义一致,如下:
0 - 0x100000 1M u-boot
0x100000 - 0x140000 256K u-boot环境参数
0x140000 - 0x540000 4M linux内核
0x540000 - 最后 文件系统
2. 修改配置文件
cp arch/arm/configs/s3c2410_defconfig arch/arm/configs/s3c2440_defconfig
s3c2410_defconfig事实上已经包含了S3C24xx的一系列的信息. 因此,直接配置即可.
3. 执行make s3c2440_defconfig
4. 生成内核
make zImage
注意:也可以拷贝mkimage到/usr/local/bin,在执行make uImage. 这里手动将zImag转化为uImage
5. 制作uImage
mkimage -n 'linux-4.1.4' -A arm -O linux -T kernel -C none -a 0x30008000 -e 0x30008000 -d zImage uImage
6. 然后烧写内核并启动,在Uncompressing Linux... done, booting the kernel."卡死"
修改uboot的CONFIG_BOOTARGS参数为"console=ttySAC0,115200 mtdparts=nandflash0:1M(uboot)ro,256K(env),5M(kernel)ro,-(rootfs) root=/dev/mtdblock3 rw rootfstype=jffs2"
或这手动在u-boot命令中改一下.
1. 分区表的修改
arch/arm/mach-s3c24xx/mach-mini2440.c中修改为分区表mini2440_default_nand_part使得分区于移植u-boot的分区定义一致,如下:
0 - 0x100000 1M u-boot
0x100000 - 0x140000 256K u-boot环境参数
0x140000 - 0x540000 4M linux内核
0x540000 - 最后 文件系统
2. 修改配置文件
cp arch/arm/configs/s3c2410_defconfig arch/arm/configs/s3c2440_defconfig
s3c2410_defconfig事实上已经包含了S3C24xx的一系列的信息. 因此,直接配置即可.
3. 执行make s3c2440_defconfig
4. 生成内核
make zImage
注意:也可以拷贝mkimage到/usr/local/bin,在执行make uImage. 这里手动将zImag转化为uImage
5. 制作uImage
mkimage -n 'linux-4.1.4' -A arm -O linux -T kernel -C none -a 0x30008000 -e 0x30008000 -d zImage uImage
6. 然后烧写内核并启动,在Uncompressing Linux... done, booting the kernel."卡死"
修改uboot的CONFIG_BOOTARGS参数为"console=ttySAC0,115200 mtdparts=nandflash0:1M(uboot)ro,256K(env),5M(kernel)ro,-(rootfs) root=/dev/mtdblock3 rw rootfstype=jffs2"
或这手动在u-boot命令中改一下.