详细如下:
fdisk [-uc] [-b sectorsize] [-C cyls] [-H heads] [-S sects] device
-b sectorsize
Specify the sector size of the disk. Valid values are 512, 1024, 2048 or 4096. (Recent kernels know the sector size. Use this only on old kernels or to override the kernel's ideas.) Since util-linux-2.17, fdisk differentiates between logical and physical sector size. This option changes both sector sizes to sectorsize.
-c[=mode]
Specify the compatiblity mode, 'dos' or 'nondos'. The default is non-DOS mode. For backward compatibility, it is possible to use the option without the <mode>argument -- then the default is used. Note that the optional <mode>argument cannot be separated from the -c option by a space, the correct form is for example '-c=dos'.
-C cyls
Specify the number of cylinders of the disk. I have no idea why anybody would want to do so.
-H heads
Specify the number of heads of the disk. (Not the physical number, of course, but the number used for partition tables.) Reasonable values are 255 and 16.
-S sects
Specify the number of sectors per track of the disk. (Not the physical number, of course, but the number used for partition tables.) A reasonable value is 63.
首先你要看你用芯片型号,有的分区不是在内核里划分的,而是用最小化系统,划好后再将bootload,kernenl,fs烧到对应区。有的是在内核里分区,但一般是nandflash。如果你对内核很熟,可以自己添加对应分区,修改好以后加载文件系统就ok了1,vivado硬件配置,要选择EMMC代表的SD12,编译petalinux:执行petalinux-config。(1)选择Subsystem AUTO Hardware Setting->Advanced bootable images storage settings ->boot image settings选择primary flash,这里是将BOOT.bin设置为从qspi flash启动(2)选择Subsystem AUTO Hardware Setting->Advanced bootable images storage settings ->kernel image settings选择primary sd,进入后我们看到这里实际就是设置image.ub的存放区域。(3)选择Image Packaging Configuration,设置启动启动文件系统所在位置;在设置启动方式的时候,如下两张图这样设置读取根文件系统的位置/dev/mmcblk1p2。(4)设置你的驱动然后编译,依次执行:petalinux-config -c kernel;petalinux-config -c rootfs;petalinux-build;petalinux-package --boot --fsbl ./images/linux/zynq_fsbl.elf --fpga --u-boot --force;3,做之前先分区(把EMMC分区),先做一个SD卡启动的petalinux文件, petalinux系统在zynq上面启动起来以后就进行如下分区:即是mmcblk1分为mmcblk1p1和mmcblk1p2 具体步骤如下: (1) 把EMMC进行分区,执行命令: fdisk /dev/mmcblk1 (2)使用n命令,添加一个新的分区Command (m for help): nCommand action e extended p primary partition (1-4)选择p,添加主分区,(3)选择分区号,选择1,Partition number (1-4): 1// 选择分区号First cylinder (1-238592, default 1): Using default value 1 // 选择分区的第一个柱面,选择1Last cylinder or +size or +sizeM or +sizeK (1-238592, default 238592): Using default value 238592 // 选择最后一个柱面注意:1-238592,first要选第一个数,last要选择的比238592小,其中1024就是表示1M(4)使用t命令,设置分区格式 Command (m for help): t Selected partition 1Hex code (type L to list codes): bChanged system type of partition 1 to b (Win95 FAT32)(5)使用w命令,保存配置,必须保存配置Command (m for help): wThe partition table has been altered.Calling ioctl() to re-read partition table(6)使用对应文件系统工具对分析进行格式化(只能在debian里面才能识别命令)mkfs.fat /dev/mmcblk1p1 设置为fat32格式mkfs.ext4 /dev/mmcblk1p2设置为ext4格式注意:执行完w命令然后才算分区成功,执行完mkfs命令才算格设置内存属性成功。以上分区完成后,可以使用p命令,显示分区信息;也可以使用用d命令表示删除分区Command (m for help): pDisk /dev/mmcblk0: 7818 MB, 7818182656 bytes4 heads, 16 sectors/track, 238592 cylindersUnits = cylinders of 64 * 512 = 32768 bytesDevice Boot Start End Blocks Id System/dev/mmcblk0p1 1 238592 7634936 83 Linux(7)执行这句:mkdosfs -F 32 /dev/mmcblk0p1当然,可以重复上述步骤,多分几个区,用来存放不同的状态:FLASH要要用来存放BOOT.bin第一个分区用来存放image.ub或者设备树(比如uImage和devicetree.dtb)等文件;--可以设置为128MB第二个分区用来存放用户数据(比如可执行程序);可以设置为2048MB第三个分区用来存放程序执行需要的库文件(opencv的库,qtcreator库,相机库,视频编码解码库等);剩余的1个多GB4,把系统同步到ext4里面先把sd卡里面系统挂载进来 :mount /dev/mmcblk0p2 /mnt 再把刚刚弄好的系统挂进来: mount /dev/mmcblk1p2 /tmp ,然后cd /mnt然后进入把SD卡里面的系统同步到emmc里面:rsync -av ./* /tmp ,时间有点久,直到结束为止。(要是不用SD卡也可以挂载U盘,解压,然后进行系统同步到EMMC所挂载的地方/tmp)5,然后将BOOT.BIN和image.ub烧录到QSPI-FLASH中首先擦除QSPI-FLASH:flash_eraseall /dev/mtd0 存放BOOT.bin到flash : flashcp BOOT.bin /dev/mtd0 此处若是将image.ub写入emmc的FAT分区中(不存放到flash中),先使用mount挂载eMMC的FAT分区,然后将image.ub使用cp指令拷贝进 /mnt/mmcFat即可,也就是把uImage 拷贝到 /dev/mmcblk1p1; 进入uImage所在目录,然后执行 cp uImage /tmp;也就是把uImage存放到了 /dev/mmcblk1p1里面。6,最后断电拔出SD卡,将拨码开关设置为flash启动,就能看到petalinux启动起来;7,报错及其解决办法————————————————版权声明:本文为CSDN博主「寒听雪落」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/wangjie36/article/details/104740448/欢迎分享,转载请注明来源:内存溢出
评论列表(0条)