Hi Jags,
I have 2 suggestions for your questions:
(1)i want to put all the images to SPI NOR(u-boot.imx, uImage, .dtb, and file system, NOR size if 16 MB)
The size of file system is much larger than that of u-boot.imx and uImage, Generally speaking, the 16MB nor size is not enough, so please check your file system.
(2)Can anyone please give me directions for how to use mfgtool to flash all the images to spi nor?
In our sabre AI board, SPI Nor flash is supported, you can download MFG Tools , open ucl2.xml, you can find some lists in this file, these lists are configurations of MFG Tools, for example , see following list:
<LIST name="MX6Q-Sabreauto-SPI_NOR & SD card" desc="Choose SPI-NOR/SD as media">
<CMD state="BootStrap" type="boot" body="BootStrap" file ="u-boot-mx6q-sabreauto-spi-nor.bin" >Loading uboot.</CMD>
<CMD state="BootStrap" type="load" file="uImage" address="0x10800000"
loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Doing Kernel.</CMD>
<CMD state="BootStrap" type="load" file="initramfs.cpio.gz.uboot" address="0x10C00000"
loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Doing Initramfs.</CMD>
<CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD>
<!--burn the uboot to SPI-NOR: -->
<CMD state="Updater" type="push" body="$ flash_erase /dev/mtd0 0 0">Erasing Boot partition</CMD>
<CMD state="Updater" type="push" body="send" file="files/u-boot-mx6q-sabreauto-spi-nor.bin">Sending U-Boot</CMD>
<CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mtd0 bs=512">write U-Boot to SPI-NOR</CMD>
<!-- partitioning the SD card: -->
<CMD state="Updater" type="push" body="send" file="mksdcard.sh.tar">Sending partition shell</CMD>
<CMD state="Updater" type="push" body="$ tar xf $FILE "> Partitioning...</CMD>
<CMD state="Updater" type="push" body="$ sh mksdcard.sh /dev/mmcblk0"> Partitioning SD card now...</CMD>
<!-- burn the kernel: -->
<CMD state="Updater" type="push" body="send" file="files/uImage">Sending kernel uImage</CMD>
<CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk0 bs=1M seek=1 conv=fsync">write kernel image to sd card</CMD>
<!-- burn the rootfs: -->
- <CMD state="Updater" type="push" body="$ mkfs.ext3 -j /dev/mmcblk0p1">Formatting rootfs partition</CMD>
<CMD state="Updater" type="push" body="$ mkdir -p /mnt/mmcblk0p1"/>
<CMD state="Updater" type="push" body="$ mount -t ext3 /dev/mmcblk0p1 /mnt/mmcblk0p1"/>
<CMD state="Updater" type="push" body="pipe tar -jxv -C /mnt/mmcblk0p1" file="files/rootfs.tar.bz2">Sending and writting rootfs</CMD>
<CMD state="Updater" type="push" body="frf">Finishing rootfs write</CMD>
<CMD state="Updater" type="push" body="$ umount /mnt/mmcblk0p1">Unmounting rootfs partition</CMD>
<CMD state="Updater" type="push" body="$ echo Update Complete!">Done</CMD>
</LIST>
If you want to use this list to burn images into flashes on board, you can open cfg.ini file and modify list's name:
[profiles]
chip = MX6Q Linux Update
[platform]
board = SabreSD
[LIST]
name = MX6Q-Sabreauto-SPI_NOR & SD card
Regards,
Weidong