本文目录
1.uboot网口设置
2.内核创建MTD分区,Jffs2文件系统制作
3.内核支持jffs2
4.内核挂载jffs2
首先支持spi nor flash /qq_43145360/article/details/12556?spm=1001..3001.5502
1.uboot网口设置
打印空格问题需要修改的文件路径,后面会遇到//Net:board_r.c 659//修改nuc980 emac drivers/net/nuc980_eth.c 255
最终效果:
1)修改include/configs/nuc980_evb.h
修改成:
2)修改include/env_default.h
default_enviroment中新增CONFIG_ETHADDR
3)修改uboot配置支持网口
打开 network device support
修改Command line interface
->Network commands
去掉前三个,不然无法使用tftp。支持ping
4)编译下载
打印出env
用网线使板子和电脑在同一网段,打开tftp工具,使用tftp下载内核镜像
tftp 0xa0000 980uimagerun bootcmd
2.内核创建MTD分区,Jffs2文件系统制作
内核创建MTD分区参考文章
/qq_43145360/article/details/125573572?spm=1001..3001.5502
内核启动后效果:
Busybox制作根文件系统可参考文章
参考文章/weixin_38387929/article/details/108538631?spm=1001..3001.5506
需要用到mtd-util的mkfs.jffs2 和rootfs/生成rootfs.jffs2
制作jffs2镜像可参考文章
/itismine/article/details/4775824?spm=1001..3001.5506
编译后可启动在/dev/ram0分区内cramfs格式的文件系统
可把生成的rootfs.jff2放在rootfs/tmp/中,编进内核镜像
3.内核支持jffs2
File systems --->Miscellaneous filesystems ---><*> YAFFS2 file system support[*] Autoselect yaffs2 format配置语言选项Native Language support --->(iso8859-1) Default NLS Option<*> Codepage 437(United States, Canada)<*> Simplified Chinese charset(CP936, GB2312)<*> NLS ISO8859-1 (Latin 1; Western European Language)<*> NLS UTF-8
4.内核挂载jffs2
使用uboot 引导启动内核后,进入tmp中,
使用dd命令生成全是ff的,大小和mtdblock2相同的文件,也放在tmp中,编进内核,
参考文章
/p/398fb66d06b2
使用重定向cat 擦除mtdblock2分区cat fftxt > /dev/mtdblock2使用cat 将rootfs.jff2写入mtdblock2分区cat rootfs.jffs2 > /dev/mtdblock2mount -amdev -s看到proc文件夹下有设备后使用mount 挂载/dev/block2分区mount -t jffs2 /dev/mtdblock2 /mntcd /mntls可看到挂载的文件系统
目前已调试到这,关于cramfs和jffs2,我认为这样子是先启动一个小的文件系统(ram),进去之后再用mount 挂载