MFG firmware which built from latest source codes(L3.0.35_4.1.0_130816_source) can not work well

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

MFG firmware which built from latest source codes(L3.0.35_4.1.0_130816_source) can not work well

Jump to solution
3,017 Views
cody
Contributor II

MFG firmware which built from latest source codes(L3.0.35_4.1.0_130816_source) can  not  work well.

MFG firmware is  built  accprding  to the  "i.MX_6Solo6DualLite_SABRE-SDP_Linux_User's_Guide.pdf".

And  initramfs.cpio.gz.uboot    uImage   u-boot.bin  were  built.

And  I  put  them  in  D:\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Profiles\MX6DL Linux Update\OS Firmware

after  that  ,

I  try  the  MFG tools  to   burn   the  image to the  demo  board  which  name  "mx6dl-sdp". but  it  stop  in loading  uboot.

the  following  is the MfgTool.log:

DLL version: 2.2.3

Tuesday, March 25, 2014 15:29:46   Start new logging

ModuleID[2] LevelID[10]: CMyExceptionHandler thread is running

ModuleID[2] LevelID[1]: new MxHidDeviceClass

ModuleID[2] LevelID[10]: DeviceTypeDisk--_devices size: 0

ModuleID[2] LevelID[10]: Device Manager thread is running

ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - DEVICE_ARRIVAL_EVT(\\?\USB#Vid_15a2&Pid_0061#5&1094e68&0&2#{a5dcbf10-6530-11d2-901f-00c04fb951ed})

ModuleID[2] LevelID[10]: DeviceManager::DevChangeWnd::OnDeviceChange() - end

ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_ARRIVAL_EVT(\\?\USB#Vid_15a2&Pid_0061#5&1094e68&0&2#{a5dcbf10-6530-11d2-901f-00c04fb951ed})

ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_Current, _devices.size: 0

ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--index: 0

ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--devPath: \\?\hid#vid_04b3&pid_310c#6&22b7a6b0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}

ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--index: 1

ModuleID[2] LevelID[1]: DeviceClass::FindDeviceByUsbPath() - DeviceListType_New--devPath: \\?\hid#vid_15a2&pid_0061#6&2e593ba&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}

ModuleID[2] LevelID[10]: new MxHidDevice[00C2CE88]

ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_New, devInstPathToFind: USB\VID_15A2&PID_0061\5&1094E68&0&2, _deviceInstanceID: USB\VID_15A2&PID_0061\5&1094E68&0&2

ModuleID[2] LevelID[10]: DeviceClass::FindDeviceByUsbPath--DeviceListType_New, Find the device, Port: 2

ModuleID[2] LevelID[10]: DeviceClass::AddUsbDevice() successful USB#VID_15A2&PID_0061#5&1094E68&0&2#{A5DCBF10-6530-11D2-901F-00C04FB951ED} add to current list, retrycount: 0

ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_ARRIVAL_EVT,[MxHidDeviceClass] vid_15a2&pid_0061, Hub:8-Port:2

ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - DEVICE_ARRIVAL_EVT, Notify

ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, Volume Arrive/Remove or Device Arrive/Remove

ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, m_p_usb_port is not NULL, so only refresh

ModuleID[2] LevelID[10]: CmdOpreation[0]--OnDeviceChangeNotify, Volume/Device Arrive

ModuleID[2] LevelID[1]: CmdOpreation[0]--set m_hDeviceArriveEvent.

ModuleID[2] LevelID[10]: CmdOpreation[0]--WaitforEvents device arrive1

ModuleID[2] LevelID[10]: CmdOperation[0] device chagned and reset to state 0

ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex:0], File is D:\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Profiles\MX6DL Linux Update\OS Firmware\u-boot-mx6dl-sabresd.bin

ModuleID[2] LevelID[10]: ExecuteCommand--Load[WndIndex:0], File is D:\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Profiles\MX6DL Linux Update\OS Firmware\uImage, address is 0x10800000

ModuleID[2] LevelID[10]: PortMgrDlg(0)--Command Load excute successfully, retry count: 0

ModuleID[2] LevelID[10]: ExecuteCommand--Load[WndIndex:0], File is D:\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Profiles\MX6DL Linux Update\OS Firmware\initramfs.cpio.gz.uboot, address is 0x10C00000

ModuleID[2] LevelID[10]: PortMgrDlg(0)--Command Load excute successfully, retry count: 0

ModuleID[2] LevelID[10]: ExecuteCommand--Jump[WndIndex:0]

ModuleID[2] LevelID[10]: *********MxHidDevice[00C2CE88] Jump to Ramkernel successfully!**********

ModuleID[2] LevelID[10]: CmdOperation[0], current state command has been finished and the last command is successful, so SetEvent(hDevCanDeleteEvent)

ModuleID[2] LevelID[10]: CmdOperation[0] device chagned and reset to state 0

ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex:0], File is D:\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Profiles\MX6DL Linux Update\OS Firmware\u-boot-mx6dl-sabresd.bin

Labels (2)
0 Kudos
1 Solution
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

It is strange. I recommend you to download image to your board without your built initramfs.spio.gz.uboot, uImage and u-boot.bin for MFG. If succeed , this failed is caused by the MFG firmware. So you can to rebuild them again. About build Manufacturing Firmware you can refer to this document I attached to you "Manufacturing Tool V2 Linux or Android Firmware Development Guide V2".

Best Regards

Dan


View solution in original post

0 Kudos
16 Replies
2,168 Views
cody
Contributor II

And  initramfs.cpio.gz.uboot    uImage   u-boot.bin  were  built.

I  change  the  name of   u-boot.bin   from     u-boot.bin   to   u-boot-mx6dl-sabresd.bin.

and  I  have  not change the  code  in  L3.0.35_4.1.0_130816_source.

0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

As you have built initramfs.spio.gz.uboot, uImage and u-boot.bin for MFG. You can rename the u-boot.bin and uImage to what you want. Please note that they should align with the files name assigned in the ucl2.xml operation list. You'd better have a check first.

Best Regards

Dan


0 Kudos
2,168 Views
cody
Contributor II

Dan Wang :

     The   name  of  the  initramfs.spio.gz.uboot, uImage and u-boot.bin   is  all  right.

     if  the  name  of  that all   is  not  right   ,the  MFG  CAN NOT  work  at all.


I  change  the  name of   u-boot.bin   from     u-boot.bin   to   u-boot-mx6dl-sabresd.bin   according   to  the  ucl2.xml operation list.


the  following  is the ucl2.xml operation list  which   we  used:


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

    <CMD state="BootStrap" type="boot" body="BootStrap" file ="u-boot-mx6dl-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>

0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

From your settings of ucl2.xcl for your board, there is no problem. What about you configurations for cfg.ini? It should be as below.

[profiles]

chip = MX6DL Linux Update

[platform]

board = SabreSD

[LIST]

name =i.MX6DL-SABRESD-eMMC

0 Kudos
2,168 Views
cody
Contributor II

my   cfg.ini   is  the  same  with  yours.

[profiles]

chip = MX6DL Linux Update

[platform]

board = SabreSD

[LIST]

name = i.MX6DL-SABRESD-eMMC

0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

Have you solved your problem?

Best Regards

Dan

0 Kudos
2,168 Views
cody
Contributor II

Dear   Dan Wang :

              The  problem  is still  there.

        I  am   trying  to read  the  code now,to  see   if  there  is  something wrong with  it.

0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

I want to confirm which board are you using?

Best Regards

Dan

0 Kudos
2,168 Views
cody
Contributor II

the  demo  board  which  name  "mx6dl-sdp"

0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

Does it work now?

Best Regards

Dan

0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

Does it work now?

Best Regards

Dan

0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

I wonder if you have test downloading succeed with the default MFG firmware under Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Profiles\MX6DL Linux Update\OS Firmware? If yes, it must be the problem of your building MFG firmware.

Best Regards

Dan

0 Kudos
2,168 Views
cody
Contributor II

yes. it must be the problem of building MFG firmware.

0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody

I think you can use the default MFG firmware under Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Mfgtools-Rel-4.1.0_130816_MX6DL_UPDATER\Profiles\MX6DL Linux Update\OS Firmware first. You can have a try. If you want to built them yourself, you can refer to the document Manufacturing Tool V2 Linux or Android Firmware Development Guide V2.docx I have attached for you. Hope this can help you~~

Have a nice day

Best Regards

Dan

2,169 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

It is strange. I recommend you to download image to your board without your built initramfs.spio.gz.uboot, uImage and u-boot.bin for MFG. If succeed , this failed is caused by the MFG firmware. So you can to rebuild them again. About build Manufacturing Firmware you can refer to this document I attached to you "Manufacturing Tool V2 Linux or Android Firmware Development Guide V2".

Best Regards

Dan


0 Kudos
2,168 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi cody,

Are you using freescale's board or you design it yourself?

Best Regards

Dan

0 Kudos