Hi,
I am having troubles using MFGTools for an i.MX6sll EVK.
Context:
I have two eval board :
- IMX6SLL EVK REV A1
- IMX6SLL EVK REV A
I tried :
Windows binaries does not works inside a VM (crash when the USB device is plug), so I used a physical machine.
On Linux, with a binary built from Git, I needed to patch MfgToolLib/DeviceManager.cpp to correct a segfault in DevChange_callback() as g_devClasses[DeviceClass::DeviceTypeMsc] is not allocated but used.
The problem:
Running mfgtools.exe, the right board is detected and I can "start" update. There is "Loading U-boot" displayed and nothing happen. The log seems normal and ends with :
ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex:0], File is C:\...\firmware\u-boot-imx6sllevk_sd.imx
On Linux, same behavior but I got more information :
ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex:0], File is .../firmware/u-boot-imx6sllevk_sd.imx
ModuleID[2] LevelID[1]: RunPlugIn(): TransData(0x877FF400, 0x5FC00,0x6B933010) failed.
ModuleID[2] LevelID[1]: PortMgrDlg(0)--MxHidDevice--Command Boot excute failed
As I am able to debug on Linux, I checked that :
- RunDCD() succeed in MxHidDevice::RunPlugIn
- In TransData(), the SendCmd() for ROM_KERNEL_CMD_WR_FILE succeed
- SendData() fails because libusb_control_transfer() fails in Write() with values : ret=-7, size=1025
I suspected DCD data does not works for the i.MX6SLL-EVL REVA, so I tried :
- u-boot-imx6sllevk_sd.imx
- u-boot-imx6sllevk_epdc.imx
- u-boot-mfgtool-2017.03-r0.imx
How did you test MFGTools with the EVK ? Have you experienced a similar problem ?
Regards,
Vincent