How can i set i.mx6 solo with mfgtool ?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How can i set i.mx6 solo with mfgtool ?

Jump to solution
1,921 Views
hanseunglee
Contributor III

Hello.

I was test i.mx6DL and i.mx6Q board.

Now, i will test use i.mx6SOLO but i can't write use MFGtool . Just message "No Device Connected".

please, view my set and reply.

My configure set below.

-----------------------------------------------------------------------------------------------------------

boot mode sw set  01000010(sd) or 11010110 (emmc).

cfg.ini below

[profiles]

chip = MX6DL Linux Update

[platform]

board = SabreSD

[LIST]

name = i.MX6SOLO-SABRESD-SD

-----------------------------------------------------------------------------------------------------------

In my case, i want to use i.mx6solo-sabresd-emmc or sd boot.

ucl2.xml set below

<LIST name="i.MX6SOLO-SABRESD-SD" desc="Choose SD as media"> 

    <CMD state="BootStrap" type="boot" body="BootStrap" file ="u-boot-mx6solo-sabresd.bin" >Loading U-boot</CMD>

    <CMD state="BootStrap" type="load" file="uImage" address="0x10800000"

        loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Loading Kernel.</CMD>

    <CMD state="BootStrap" type="load" file="initramfs.cpio.gz.uboot" address="0x10C00000"

        loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Loading Initramfs.</CMD>

    <CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD>

    <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/mmcblk1"> Partitioning...</CMD>

    <CMD state="Updater" type="push" body="send" file="files/u-boot-mx6solo-sabresd.bin">Sending u-boot.bin</CMD>

    <CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk1 bs=1k seek=1 skip=1 conv=fsync">write u-boot.bin to sd card</CMD>

    <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/mmcblk1 bs=1M seek=1 conv=fsync">write kernel image to sd card</CMD>

    <CMD state="Updater" type="push" body="$ mkfs.ext3 -j /dev/mmcblk1p1">Formatting rootfs partition</CMD>

    <CMD state="Updater" type="push" body="$ mkdir -p /mnt/mmcblk1p1"/>

    <CMD state="Updater" type="push" body="$ mount -t ext3 /dev/mmcblk1p1 /mnt/mmcblk1p1"/>

    <CMD state="Updater" type="push" body="pipe tar -jxv -C /mnt/mmcblk1p1" 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/mmcblk1p1">Unmounting rootfs partition</CMD>

    <CMD state="Updater" type="push" body="$ echo Update Complete!">Done</CMD>

<!--

    The below commands will trigger reboot

    <CMD type="push" body="!3">Done</CMD>

-->

</LIST>

<LIST name="i.MX6SOLO-SABRESD-eMMC" desc="Choose eMMC Linux as media">

    <CMD state="BootStrap" type="boot" body="BootStrap" file ="u-boot-mx6solo-sabresd.bin" >Loading U-boot</CMD>

    <CMD state="BootStrap" type="load" file="uImage" address="0x10800000"

        loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Loading Kernel.</CMD>

    <CMD state="BootStrap" type="load" file="initramfs.cpio.gz.uboot" address="0x10C00000"

        loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Loading Initramfs.</CMD>

    <CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD>

    

  <CMD state="Updater" type="push" body="$ dd if=/dev/zero of=/dev/mmcblk0 bs=512 seek=1536 count=16">clean up u-boot parameter</CMD>

  <CMD state="Updater" type="push" body="$ echo 0 > /sys/block/mmcblk0boot0/force_ro">access boot partition 1</CMD>

  <CMD state="Updater" type="push" body="send" file="files/u-boot-mx6dl-sabresd.bin">Sending U-Boot</CMD>

  <CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk0boot0 bs=512 seek=2 skip=2">write U-Boot to sd card</CMD>

  <CMD state="Updater" type="push" body="$ echo 1 > /sys/block/mmcblk0boot0/force_ro"> re-enable read-only access</CMD>

  <CMD state="Updater" type="push" body="$ echo 8 > /sys/devices/platform/sdhci-esdhc-imx.3/mmc_host/mmc0/mmc0:0001/boot_config">enable boot partion 1 to boot</CMD>

    <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>

    

    <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...</CMD>

    <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>

Labels (2)
0 Kudos
1 Solution
990 Views
igorpadykov
NXP Employee
NXP Employee

Hi Hanseung

message "No Device Connected" means that mfg tool can not

detect board, this may be hardware issue. Suggest to check

i.MX6 System Development User’s Guide Chapter 8 Avoiding Board Bring-up Problems

http://cache.freescale.com/files/32bit/doc/user_guide/IMX6DQ6SDLHDG.pdf

and check it connecting jtag.

Note, with new processor it is necessary to run ddr test, then mfg tools firmware should be rebuild.

i.MX6/7 DDR Stress Test Tool V2.51

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
2 Replies
990 Views
arunachalamrama
Contributor III

Hi Igor,

I am facing same issue when trying to flash eMMC using MFGTool on custom i.MX6 Solo board based on SABRE SD reference design.

Board boots from SD Card. Given below is extract from the SD Card boot:

SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1

Yocto build setup was done using flag: MACHINE=imx6solosabresd

Are following values correct for Solo?

HWalign=64

CPUs=2

DDR3 Calibration values are added to mx6dlsabresd.cfg file.

Should MMDC Core Control Register (MMDCx_MDCTL) register at address 0x021b 0000 bits [17:16] DSIZ be updated with 32-bit access mode (01b)?

Default value is 64-bit access mode (10b).

Please share your thoughts.

Regards,

Arun

0 Kudos
991 Views
igorpadykov
NXP Employee
NXP Employee

Hi Hanseung

message "No Device Connected" means that mfg tool can not

detect board, this may be hardware issue. Suggest to check

i.MX6 System Development User’s Guide Chapter 8 Avoiding Board Bring-up Problems

http://cache.freescale.com/files/32bit/doc/user_guide/IMX6DQ6SDLHDG.pdf

and check it connecting jtag.

Note, with new processor it is necessary to run ddr test, then mfg tools firmware should be rebuild.

i.MX6/7 DDR Stress Test Tool V2.51

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos