在Exynos4412上使用SD卡烧写Linux

简介: 在Exynos4412上使用SD卡烧写Linux

由于我的这块4412开发板没办法使用dnw和fastboot,于是我选择了将uboo,kernel及rootfs放在SD卡中。


网上关于Exynos4412的uboot和移植教程很多,所以这里不细讲。这是所使用的已移植成功的


uboot-2015.04Github-uboot-2015.4

Linux-4.1.36Github-kernel-4.1.36


欢迎fork!!!


Rootfs使用Buildroot-2018.05编译生成,参考我的另一篇博文:Buildroot使用


一、SD卡分区



方法1:Linux下进行分区


①将读卡器挂接到虚拟机,使用如下指令找到自己盘符,例如我的是/dev/sdc

cat /proc/partitions


②对SD卡进行分区,fdisk /dev/sdc,回车输入n,p,1输入起始扇区和结束扇区,完成了添加第一个分区,该分区占用的空间为SD卡第2048~10240扇区共4M,用来存放kernel image。继续按照上述步骤添加第二个分区,添加完成后执行w保存退出fdisk。输入mkfs -t ext2 /dev/sdc2将第二个分区格式化成ext2,ext3或者ext4,分区结束继续 cat /proc/partitions,可以看到三个sdc,分别是/dev/sdc,/dev/sdc1,/dev/sdc2


方法2:Windows下进行分区

使用DiskGenius进行分区


二、编译擦入Uboot



在Uboot根文件目录下执行 make -j4生成原始的uboot.bin,但是还要经过三星官方的加密之后的uboot.bin才可以被板上固化的BL1所启动(这一点以后细讲)。执行./build.sh生成最终的image.bin,再执行sudo ./mkuboot /dev/sdc擦入SD卡。


三、编译擦入Kernel



在Kernel根目录下执行make uImage -j4;make dtbs生成内核映像和dtb文件。sudo ./burnimage.sh擦入/dev/sdc,或许你会有疑问,会不会把之前擦入的booloader映像擦除,事实上这是不会的,因为在burnimage.sh文件中


image.png


dd命令默认一个block是512bytes,seek=4096的意思是写入的时候从未格式化的地址上偏移4096个block,也就是2M的内存。


四、移入Rootfs



Rootfs的生成参考我的另一篇博文:Buildroot使用


只能通过以下命令挂载的方式进行写入操作。


sudo mount -t ext2 /dev/sdc2 /opt/
sudo cp -r  /home/book/Desktop/buildroot-2018.05/output/target/* /opt/
sudo umount /opt


相关文章
|
6月前
|
存储 安全 Linux
linux系统中u-boot命令的EMMC和SD卡操作命令分析
linux系统中u-boot命令的EMMC和SD卡操作命令分析
603 1
|
2月前
|
Linux
用QEMU模拟运行uboot从SD卡启动Linux
用QEMU模拟运行uboot从SD卡启动Linux
|
存储 Linux 内存技术
嵌入式Linux系列第16篇:使用SD卡
嵌入式Linux系列第16篇:使用SD卡
|
Linux
Linux中U盘和SD卡加载卸载命令
U盘挂载命令U盘插入的时候会显示启动信息,启动信息中sda: sda1指U盘的设备名为sda1dev设备目录下有一个sda1设备文件,此设备文件就是我们插入的U盘,我们将这个设备文件挂载到Linux系统的/mnt/udisk1这个目录下,这样我们即可以通过访问/mnt/udisk1目录来读写U盘,挂...
1852 0
|
Linux 开发工具
arm Linux 如何自动检测并mount SD卡,以及如何得知已经mount
一、土八路做法: SD 卡一旦插入系统,内核会自动在/dev/下创建设备文件:sdcard。 但有时可能时用户在拨出卡前并没有umount的话,第二次插卡进去后系统创建的就不是sdcard设备文件了,而是mmcblk0, mmcblk1p1, mmcblk2p1, 或mmcblk3p1.所以只需用if ( fopen("/dev/sdcard", "r") == NULL ) 来检测SD卡是否已经被内核捉到。
3021 0
|
Linux 内存技术 芯片
|
Linux
用SD卡下载uboot、linux内核和文件系统
1、 移植mtd-utils: a) 下载utd-utils 下载地址为ftp://ftp.infradead.org/pub/mtd-utils/b) 交叉编译mtd-utilsi   修改Makefile   CROSS=arm-linux-ii  makeiii 查看下mtd-utils-1.0.0目录下是否生成了咱们所需要大工具    (flashcp,nandwrite......等)。
1652 0
|
Ubuntu Unix Linux
linux(ubuntu)下分区和格式化sd卡
我的手机sd卡需要分成两个分区,在windowxp下面死活搞不成。主要的问题是,window只认识sd卡的第一个分区。有人用修改驱动程序,让windows把sd卡认成日立的microdisk,分区和格式化也可以完成。
2594 0