Hello Yuri,
Thanks for the response, however, I'm still a bit confused.
In this mode special firmware release of Linux is loaded to i.MX6 memory.
Next, the firmware provides for host PC USB mass storage device for main system loading and flashing.
Are you saying here that the manufacturing version of Linux must be loaded into the device? With a custom board, the 'stock' versions that come with the tool will not work on our board due to different DDR3 manufacturer. We've already modified U-Boot (2013.10) to support the device. We do not use LTIB to build that firmware; it's done manually outside of LTIB. Are there guidelines somewhere that give instructions on how to build a manufacturing version of U-Boot outside of LTIB? I've followed the directions located in the documents that come with the Manufacturing Tool,Manufacturing Tool V2 Linux or Android Firmware Development Guide V2 specifically, but the tool always hangs when attempting to load (see log below) the U-Boot binary.
DLL version: 2.2.3
Tuesday, July 01, 2014 21:12:47 Start new logging
ModuleID[2] LevelID[10]: CMyExceptionHandler thread is running
ModuleID[2] LevelID[1]: new MxHidDeviceClass
ModuleID[2] LevelID[10]: new MxHidDevice[02122B58]
ModuleID[2] LevelID[10]: Device Manager thread is running
ModuleID[2] LevelID[10]: CmdOperation[0] device chagned and reset to state 0
ModuleID[2] LevelID[10]: ExecuteCommand--Boot[WndIndex:0], File is /path/to/existing/u-boot.bin
Another question that I have is is there a special format that MfgTool is expecting the U-Boot binaries to have? Can the mkimage generated u-boot.imx be downloaded by the manufacturing tool?
So, we have two OS(s) involved: firmware and main.
The firmware system should not be changed to avoid additional issues ; in this sense standard
(old) U-boot should be used for firmware generation (which is built under option “Build mfg firmware”).
As for main system, that is intended to be located on a target system – it is possible to try
new U-boot.
So what you're saying here is that two versions of firmware must be maintained to support manufacturing? The first version is going to be the manufacturing specific firmware (U-Boot and Linux kernel) and the second version is our custom firmware (modified U-Boot and kernel). This seems unnecessary to have to maintain 4 (2 U-Boot, 2 kernels) versions of firmware to manufacture a new device. Am I misinterpreting something?
The ultimate goal here is to able to just push a version of U-Boot onto our device and then use U-Boot to do the final provisioning of the hardware and load the kernel. We ultimately do not need most of the functionality of the MfgTool, we just need to be able to push our version of U-Boot onto our device. Is this not the purpose of the MfgTool? Can the tool not just simply push a modified version of U-Boot and then execute that version? (here's a simple version of the ucl2.xml I'm trying to use)
<CMD state="BootStrap" type="boot" body="Recovery" file="u-boot.bin" >Loading U-boot</CMD>
<CMD state="BootStrap" type="jump" > Jumping to U-Boot. </CMD>
As I understand it, the first command is suppose to push the binary to IRAM (not sure where exactly, as that's not documented) and the Jump command is suppose to execute what was just pushed into IRAM.