MFGTool for custom i.MX6SL board

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

MFGTool for custom i.MX6SL board

4,841 Views
sepljo
Contributor II

I'm working on a custom i.MX6SL board and want to know how to customize MFGtool to flash Android images onto it.

So far, I've been working on the i.MX6SL EVK and have used the MFGtool to flash Android images using the "SDCard-Android-IMX6SL-EVK" profile in the default ucl2.xml supplied by Freescale. I see that the MFGtool first loads several files into RAM, namely firmware/u-boot-imx6slevk_sd.imx, firmware/zImage, firmware/fsl-image-mfgtool-initramfs-imx6qdlsolo.cpio.gz.u-boot, firmware/zImage-imx6sl-evk.dtb. It then jumps to the u-boot and starts executing it. As I understand, this is a minimal linux system that is then used to load the Android images onto the boot media. Is this correct?

Do I have to modify/rebuild the above minimal linux system images for our custom board? What other changes do I need to make to flash Android images onto the custom board?

Labels (2)
10 Replies

1,679 Views
sepljo
Contributor II

Bumping this thread.

0 Kudos

1,679 Views
igorpadykov
NXP Employee
NXP Employee

Hi Joyce

yes your understanding is correct, these images should be rebuild for custom board to

take account for new ddr settings and differencies from reference board (MFG Tool is built for

specific reference board). For changes one can refer to presentation below

The Yocto Project™ and Linux® Software Development for i.MX Application Processors

Best regards

igor

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

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

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

1,679 Views
sepljo
Contributor II

Hi Igor,

Thank you for replying.

I see you've mentioned the following changes:

1) Rebuilding the initial linux image: Has Freescale released the sources for generating this? If yes, could you please tell me where I can download it?

2) Rebuilding MFGtool - why is this needed? Can I not use the same MFGtool I currently use (mfgtool for kk_4_4_3)?

3) Other changes to the rest of the system - Do you have a guide specific to Android development on imx processors?

Thank you once again.

Regards,

Joyce

0 Kudos

1,679 Views
BiyongSUN
NXP Employee
NXP Employee

Hi Joyce,

The only thing you need to do it to update the uboot and kernel in the mfg tool as we called firmware.

In the KK4.4.3 :

uboot is shared the same image for the normal boot uboot and mfg tool firmware uboot.

and the kernel is to use the  imx_v7_mfg_defconfig.

Make sure you have change the uboot and kernel for your board. such as iomux in uboot and iomux in kernel(in dts file)

1,679 Views
sepljo
Contributor II

Hi Biyong,

Thank you for your valuable input. I decided to try to generate uboot& kernel for mfgtool to run on MX6SLEVK. The aim of this experiment is to find out the steps which are needed to generate uboot& kernel images for a standard board before attempting on my custom board.

As per your reply, I rebuilt the u-boot and kernel for mfgtool, following instructions supplied in Manufacturing Tool V2 Linux or Android Firmware Development Guide V2.pdf. However, when I use these images in MFGtool, everything goes fine until the following message and the console is just stuck there (MFGtool reports "No device connected" and no device is shown in Windows Device Manager)

Console output:

Starting UTP

uuc 0.5 [built Jan  5 2015 14:47:13]

UTP: Waiting for device to appear

UTP: file/device node /dev/utp already exists

cpu_id is 0

As per my understanding, once Linux is started, the board must present itself as "USB mass storage device" with VID=0x066F & PID=0x37FF to Windows machine. At this point, MFGtool can then start issuing "Updater" commands. Which is not happening in my case.

Can Freescale please answer how exactly we can customise a u-boot and kernel images for mfgtool? I'm attaching my config files here, can you please have a look if I've missed something? Going through the forums, I've seen that many people have faced similar issues but there is no resolution on this yet, so your answer will help many others in the same boat as me.

1,679 Views
BiyongSUN
NXP Employee
NXP Employee

Have you changed the device tree for your board?

0 Kudos

1,679 Views
sepljo
Contributor II

Hi Biyong,

Since I am currently working on MX6SLEVK, I am using the default dtb file which came with the MFGtools zImage-imx6sl-evk.dtb. Do I need to modify the dts and rebuild the dtb specifically to work with MFGTool? if yes, what changes do I need to make? Having separate dts for MFGtool and normal operation doesn't seem to make sense to me as it is the same hardware...

When I work on my custom board, I will definitely need to change the dts file to match the on-board hardware.

Thanks,

Joyce

0 Kudos

1,679 Views
BiyongSUN
NXP Employee
NXP Employee

Joyce,

Yes.

Cause the iomux is in the device tree now. In the device tree technology, called pinctl.

0 Kudos

1,679 Views
igorpadykov
NXP Employee
NXP Employee

Hi Joyce

1. p.72 presentation shows how to build mfg tools

bitbake fsl-image-manufacturing

Form yocto tutorial one can know how to obtain sources

Freescale Yocto Project main page

2. Mfg Tools was built for fsl reference boards, if you use own board

it may differ from reference board (for example different memory).

So it should be rebuilt. If you exactly copied reference board one

can use mfg tools files without changes (though still it is not guaranteed

that it will work fine, due to fact that custom board materials can slightly

differ from reference board).

3. I am not aware of such documents

Best regards

igor

1,679 Views
sepljo
Contributor II

Hi Igor,

Thank you for your reply. I'm using Android on my custom board, so would prefer to have a single way of building images for it. Thus, I'm not planning to use Yocto at this point.

Thank you once again!

Regards,

Joyce

0 Kudos