Can somebody provide some insight into a manufacturing tool issue I am facing. We have a new revision of a custom device based on the i.MX6Q processor. The previous revision worked and I was able to program our flash device. Here is the relevant data. After the file storage gadget is loaded the UUC protocol is not being loaded like before.
Here is the console output when it worked:
g_file_storage gadget: high speed config #1
uuc 0.4 [built Apr 25 2013 00:52:55]
UTP: Waiting for device to appear
UTP: file/device node /dev/utp already exists
cpu_id is 0
UTP: received command '$ flash_erase /dev/mtd0 0 0'
UTP: executing "flash_erase /dev/mtd0 0 0"
Erasing 64 Kibyte @ 30000 -- 100 % complete
Here is the output now:
g_file_storage gadget: high speed config #1
EXT3-fs: barriers not enabled
kjournald starting. Commit interval 5 seconds
The bottom of the MfgTool log output is here. Do you have any idea what could be wrong with the communication channel?
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 1
ModuleID[2] LevelID[10]: ExecuteCommand--Push[WndIndex:0], Body is $ flash_erase /dev/mtd0 0 0
ModuleID[2] LevelID[1]: PortMgrDlg(0)--MxHidDevice--Command Push(no file) excute failed
ModuleID[2] LevelID[10]: CmdOperation[0], current command executed failed, so SetEvent(hDevCanDeleteEvent)
ModuleID[2] LevelID[10]: CCmdOpreation[0] thread is Closed
ModuleID[2] LevelID[10]: CCmdOpreation thread is Closed
ModuleID[2] LevelID[10]: DeviceManager::OnMsgDeviceEvent() - EVENT_KILL
ModuleID[2] LevelID[10]: CMyExceptionHandler::OnMsgExceptionEvent() - KillExceptionHandlerThread
ModuleID[2] LevelID[10]: Exception Handler thread is closed
ModuleID[2] LevelID[1]: delete MxHidDeviceClass
ModuleID[2] LevelID[10]: Device Manager thread is closed
Some additional information that may be pertinent.
The only difference between the two MFG kernels is eight IOMUX settings were changed but nothing else was required. I have been tweaking the kernel for the past few months but have not changed anything within this section.
Another thing I should mention. Within my ucl2.xml the following command is where the process fails.
<CMD state="Updater" type="push" body="$ flash_erase /dev/mtd0 0 0">Erasing Boot partition</CMD>
If I execute the flash_erase command at the console prompt, it runs fine. So the kernel can handle the requested command. It appears that the UUC protocol is no longer being loaded.
Paul
This discussion is closed since no activity. If you still need help, please feel free to reply with an update to this discussion, or create another discussion.
Thanks,
Yixing
Paul
Had your issue got resolved? If yes, we are going to close the discussion in 3 days. If you still need help please feel free to contact Freescale.
Thanks,
Yixing
When you rebuilt kernel with new IOMUX settings, did you make two separate LTIB installs and builds - one for Linux kernel that is loaded during normal operation and the other for updater firmware kernel? These two have slightly separate configurations, and there's also different LTIB settings when building two different setups.