要在OMAP3530上运行Linux,首先要知道如何启动OMAP3530,并且将MLO,XDLR,UBOOT,UImage以及文件系统等镜像程序下载到OMAP3530的芯片中去。 OMAP3530提供了两种启动方式,NAND FLASH启动和SD卡启动。对于第一次烧写程序,在没有JTAG的情况下,我们采用了SD卡启动的方式较为方便。 Linux下的SD启动和WINCE下的SD卡启动大为不同。启动WINCE的SD卡直接用FAT32格式化就可以了,而启动Linux的SD卡需要格式化分区成两个区:FAT32区和EXT3文件系统区(Linux)。第一个分区作为系统引导区,包含了MLO(引导XDLR),XLDR(引导UBOOT),UBOOT(引导UImage Linux系统镜像)UImage,RamDisk;第二个分区用于存放文件系统。所以不仅要在Windows下格式化,还要在Linux下格式化分区。 1)言归正传,首先在Windows下使用FAT32格式化整个SD卡,SD卡的大小尽量大些,我用的512MB。(请不要使用快速格式化) 2)启动Linux,卸载掉Windows下的SD卡。在Linux下加载,最好是用读卡器(虚拟机下)。加载成功后,可以看到你的SD卡。 3)查看文件系统信息和SD卡的挂载点输入命令: dmesg|tail输入命令:df -h从上面的信息来看,该SD的文件系统是 /dev/sdb1和/dev/sdb2,挂载点为/media/LABEL1和/media/LABEL2。这里的参数会根据你的自身系统环境而定,产生细节的不同。比如你的显示是 /dev/sdc1, 挂载点位 /media/disk等等。 4)卸载SD卡在格式化SD卡之前需要卸载SD卡,输入命令:umount /media/LABEL1和umount /media/LABEL2,或者直接在图形化界面中卸载。 5)格式化SD卡输入命令:sudo fdisk /dev/sdb(如果你的文件系统显示为 /dev/sdc,就替换为/dev/sdc)。 6)输入选项m,列出命令列表 7) 输入命令p,参看SD卡的具体信息从上面的信息看,当前的SD卡总共有501MB,501219328bytes,255个heads,63个sectors/track,60个cylindes并且有两个分区(这是我之前分好的,这些信息会根据自己的情况而定)。 8) 删除所有的SD卡分区输入命令 d 9) 如果SD卡不是255 heads,63 sectors/track,按照以下步骤建立扇区。输入命令扩展命令x,然后输入m,输出扩展命令列表。然后输入命令 h,改变heads = 255接着输入命令 s,改变sectors/track = 63输入命令 c,计算出cylinders = (SD卡的字节数目)/255/63/512 = 501219328bytes/255/63/512 = 60.936445689,这里取整数60.输入命令 r,返回普通命令页面。输入命令 p,显示SD卡信息 10)建立两个分区FAT32和EXT3,按照如下图示输入,首先建立第一个分区,其中空白区命令表示ENTER键改变分区的系统ID,输入命令t,并且选择第一分区,输入分区类型码c(FAT32)。激活第一分区的bootable标志,输入命令a,选择第一分区建立第二个分区,按照如下图示:到此,FAT32和EXT3分区建立完毕,输入命令p,输出分区信息: 11)输入命令w,将分区信息写入到SD卡并推出格式化菜单 12)按照图示输入以下命令格式化两个分区到此创建Linux的启动SD卡完成,需要注意的一点是,有时需要重新再Windows下再次使用FAT32格式化第一个引导分区LABEL1,才能成功引导Linux。(请不要使用快速格式化)
(以上内容不代表本站观点。) --------------------------------- |