专注嵌入式系统移植20年~
分类: 嵌入式
2015-12-04 10:54:46
OVERVIEW
本人使用的开发板为讯为Exynos 4412的pop精英板,若使用其他型号开发板,请适当调整参数。
在开始移植前请参考用户手册自行搭建编译环境,由于uboot.bin不会更改,所以仍使用讯为官方给的u-boot文件:u-boot-iTop-4412.bin。
STEP
进入Linux内核源码文件夹,我们在config_for_ubuntu_hdmi配置文件上进行更改,修改内核选项:
点击(此处)折叠或打开
更改的地方有两处:
首先,我需要把文件系统放在tf卡中,所以修改Boot Option为
点击(此处)折叠或打开
其次,添加系统串口输出支持,
点击(此处)折叠或打开
这里如果不添加这几个选项,系统将找不到串口的设备描述符,且持续输出错误信息:
点击(此处)折叠或打开
修改完成后,在Ubuntu命令行中执行下面的命令:
点击(此处)折叠或打开
编译完成后,在源码文件夹“arch” –>“arm” –>“boot” 文件夹下会生成镜像文件 “zImage”。
下载mkcard.sh,将TF卡接入Ubuntu系统,输入Linux命令:
点击(此处)折叠或打开
可以看到TF卡的设备描述符为/dev/sdb,使用mkcard.sh将TF卡分区:
点击(此处)折叠或打开
再次查看分区表,可以发现TF已经被分成了两个分区。在Ubuntu系统中新建两个目录,并将TF卡的两个分区挂载上去:
点击(此处)折叠或打开
在TF卡的第一分区中新建文件夹sdupdate,并将刚刚编译好的内核文件zImage拷贝进去:
点击(此处)折叠或打开
从镜像网站()下载arm的gentoo stage3的压缩包,如stage3-armv7a-20151117.tar.bz2(不需要hardfloat)。在Ubuntu系统下解压到TF卡的4G分区中,命令如下:
点击(此处)折叠或打开
修改文件系统的配置项:
点击(此处)折叠或打开
修改/boot 的格式为vfat,并注释掉最后一行/dev/fd0。
点击(此处)折叠或打开
输入密码2次,系统会给出一个加密后的字符串”xxxx”,复制该字符串,打开文件/mnt/p2/etc/shadow,将root所在行替换成如下形式:
点击(此处)折叠或打开
“xxxx”是你刚刚复制的字符串,“14698”是一个固定值。
点击(此处)折叠或打开
将s0所在行修改如下:
点击(此处)折叠或打开
启动开发板,进入u-boot阶段,在超级终端或minicom中输入下面的命令:
点击(此处)折叠或打开
点击(此处)折叠或打开
Gentoo系统,重启后就可以在开发板上运行起来了。