本文目录
1.uboot网口设置
2.内核创建MTD分区,Jffs2文件系统制作
3.内核支持jffs2
4.内核挂载jffs2
首先支持spi nor flash
https://blog.csdn.net/qq_43145360/article/details/125520066?spm=1001.2014.3001.5502
打印空格问题需要修改的文件路径,后面会遇到
//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 980uimage
run bootcmd
内核创建MTD分区参考文章
https://blog.csdn.net/qq_43145360/article/details/125573572?spm=1001.2014.3001.5502
内核启动后效果:

Busybox制作根文件系统可参考文章
参考文章
https://blog.csdn.net/weixin_38387929/article/details/108538631?spm=1001.2014.3001.5506
需要用到mtd-util的mkfs.jffs2 和rootfs/生成rootfs.jffs2
制作jffs2镜像可参考文章
https://blog.csdn.net/itismine/article/details/4775824?spm=1001.2014.3001.5506
编译后可启动在/dev/ram0分区内cramfs格式的文件系统
可把生成的rootfs.jff2放在rootfs/tmp/中,编进内核镜像
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
使用uboot 引导启动内核后,进入tmp中,
使用dd命令生成全是ff的,大小和mtdblock2相同的文件,也放在tmp中,编进内核,
参考文章
https://www.jianshu.com/p/398fb66d06b2
使用重定向cat 擦除mtdblock2分区
cat fftxt > /dev/mtdblock2
使用cat 将rootfs.jff2写入mtdblock2分区
cat rootfs.jffs2 > /dev/mtdblock2
mount -a
mdev -s
看到proc文件夹下有设备后
使用mount 挂载/dev/block2分区
mount -t jffs2 /dev/mtdblock2 /mnt
cd /mnt
ls
可看到挂载的文件系统
目前已调试到这,关于cramfs和jffs2,我认为这样子是先启动一个小的文件系统(ram),进去之后再用mount 挂载