Porting a Custom Board and Manufacturing Tool Firmware

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

Porting a Custom Board and Manufacturing Tool Firmware

1,619 Views
PaulDeMetrotion
Senior Contributor I

I have created recipes to create u-boot and Linux for a custom board based on the i.MX6DL processor. I am trying unsuccessfully to build the manufacturing tool firmware for this new device.

If I select the default board (imx6qsabresd) and execute 'bitbake fsl-image-mfgtool-initramfs', all firmware is built properly. If I select my custom board, I get build errors shown below. What am I missing in my custom board recipes that could cause this? I have done this same thing for other custom boards without any problems. 

pauldemet@yocto:~/fsl-arm-yocto-bsp-c428/build-mfgtool$ bitbake fsl-image-mfgtool-initramfs

Loading cache: 100% |######################################################################################| ETA:  00:00:00

Loaded 2830 entries from dependency cache.

NOTE: Resolving any missing task queue dependencies

 

Build Configuration:

BB_VERSION        = "1.28.0"

BUILD_SYS         = "x86_64-linux"

NATIVELSBSTRING   = "Ubuntu-14.04"

TARGET_SYS        = "arm-poky-linux-gnueabi"

MACHINE           = "imx6dlc428"

DISTRO            = "fsl-imx-x11"

DISTRO_VERSION    = "4.1.15-1.2.0"

TUNE_FEATURES     = "arm armv7a vfp neon callconvention-hard cortexa9"

TARGET_FPU        = "vfp-neon"

meta             

meta-yocto        = "HEAD:dd0ba9ea4a11ab15348d4fe3574e4b28784db82f"

meta-oe          

meta-multimedia   = "HEAD:ad6133a2e95f4b83b6b3ea413598e2cd5fb3fd90"

meta-fsl-arm      = "HEAD:35b8b9bd9863de208ab60e33b55f10ee43e2619b"

meta-fsl-arm-extra = "HEAD:e200df91b70da254461c59082ddd5db0a3c415a2"

meta-fsl-demos    = "HEAD:2231e946e7a94d096394f2b2477e8184c9bbde7b"

meta-bsp         

meta-sdk          = "HEAD:dfbc90ee74624ce3be636c8bd2a47114fa2b71aa"

meta-browser      = "HEAD:b6d46d69a261fe6bd7c1e9811dc2a9bbd0b79aeb"

meta-gnome       

meta-networking  

meta-python      

meta-ruby        

meta-filesystems 

meta-xfce         = "HEAD:ad6133a2e95f4b83b6b3ea413598e2cd5fb3fd90"

meta-qt5          = "HEAD:d5536e34ec985c82b621448ab4325e5cbba38560"

 

NOTE: Preparing RunQueue

NOTE: Executing SetScene Tasks

NOTE: Executing RunQueue Tasks

ERROR: oe_runmake failed

ERROR: Function failed: do_compile (log file is located at /home/pauldemet/fsl-arm-yocto-bsp-c428/build-mfgtool/tmp/work/imx6dlc428-poky-linux-gnueabi/mfgtool-linux-imx/4.1.15-r0/temp/log.do_compile.454)

ERROR: Logfile of failure stored in: /home/pauldemet/fsl-arm-yocto-bsp-c428/build-mfgtool/tmp/work/imx6dlc428-poky-linux-gnueabi/mfgtool-linux-imx/4.1.15-r0/temp/log.do_compile.454

Log data follows:

| DEBUG: Executing shell function do_compile

| NOTE: make -j 4 zImage CC=arm-poky-linux-gnueabi-gcc   -fuse-ld=bfd LD=arm-poky-linux-gnueabi-ld.bfd   LOADADDR=0x10008000

|   CHK     include/config/kernel.release

|   GEN     ./Makefile

|   CHK     include/generated/uapi/linux/version.h

|   CHK     include/generated/utsrelease.h

|   Using /home/pauldemet/fsl-arm-yocto-bsp-c428/build-mfgtool/tmp/work-shared/imx6dlc428/kernel-mfgtool-source as source for kernel

|   CC      scripts/mod/empty.o

|   CC      scripts/mod/devicetable-offsets.s

|   MKELF   scripts/mod/elfconfig.h

|   GEN     scripts/mod/devicetable-offsets.h

|   HOSTCC  scripts/mod/modpost.o

|   HOSTCC  scripts/mod/sumversion.o

|   HOSTCC  scripts/mod/file2alias.o

|   HOSTLD  scripts/mod/modpost

| make[3]: `include/generated/mach-types.h' is up to date.

|   CHK     include/generated/bounds.h

|   CHK     include/generated/asm-offsets.h

|   CALL    /home/pauldemet/fsl-arm-yocto-bsp-c428/build-mfgtool/tmp/work-shared/imx6dlc428/kernel-mfgtool-source/scripts/checksyscalls.sh

|   CHK     include/generated/compile.h

|   Kernel: arch/arm/boot/Image is ready

|   Kernel: arch/arm/boot/zImage is ready

| NOTE: make -j 4 imx6dl-c428.dtb

|   CC      scripts/mod/empty.o

|   CC      scripts/mod/devicetable-offsets.s

|   GEN     scripts/mod/devicetable-offsets.h

|   MKELF   scripts/mod/elfconfig.h

|   HOSTCC  scripts/mod/modpost.o

|   HOSTCC  scripts/mod/file2alias.o

|   HOSTCC  scripts/mod/sumversion.o

|   HOSTLD  scripts/mod/modpost

| make[3]: *** No rule to make target `arch/arm/boot/dts/imx6dl-c428.dtb'.  Stop.

| make[2]: *** [imx6dl-c428.dtb] Error 2

| make[1]: *** [sub-make] Error 2

| make: *** [__sub-make] Error 2

| WARNING: exit code 1 from a shell command.

| ERROR: oe_runmake failed

| ERROR: Function failed: do_compile (log file is located at /home/pauldemet/fsl-arm-yocto-bsp-c428/build-mfgtool/tmp/work/imx6dlc428-poky-linux-gnueabi/mfgtool-linux-imx/4.1.15-r0/temp/log.do_compile.454)

ERROR: Task 181 (/home/pauldemet/fsl-arm-yocto-bsp-c428/sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-kernel/linux/linux-imx-mfgtool_4.1.15.bb, do_compile) failed with exit code '1'

NOTE: Tasks Summary: Attempted 685 tasks of which 676 didn't need to be rerun and 1 failed.

Waiting for 0 running tasks to finish:

 

Summary: 1 task failed:

  /home/pauldemet/fsl-arm-yocto-bsp-c428/sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-kernel/linux/linux-imx-mfgtool_4.1.15.bb, do_compile

Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

0 Kudos
3 Replies

862 Views
Yuri
NXP Employee
NXP Employee

Hello,

 

  Is it possible to build at least minimal (non MFG) system with Your configuration ?

 

Have a great day,

Yuri

 

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

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

0 Kudos

862 Views
PaulDeMetrotion
Senior Contributor I

I can build fsl-image-gui with no problems. In my machine configuration file, I specify u-boot-c428dl and linux-c428dl. But with the manufacturing tool, it builds u-boot-mfgtool and linux-mfgtool. How can I integrate my custom recipes into the manufacturing tool build?

Here is the machine file:

require conf/machine/include/imx-base.inc
require conf/machine/include/tune-cortexa9.inc

SOC_FAMILY = "mx6:mx6dl:mx6q"

KERNEL_DEVICETREE = "imx6dl-c428.dtb"

PREFERRED_PROVIDER_u-boot_mx6dl = "u-boot-c428dl"
PREFERRED_VERSION_u-boot-c428dl ?= "2015.04"
PREFERRED_PROVIDER_virtual/kernel_mx6dl = "linux-c428dl"
PREFERRED_VERSION_linux-c428dl ?= "4.1.15"

UBOOT_CONFIG ??= "spinor"
UBOOT_CONFIG[sd] = "mx6dlc428_config,sdcard"
UBOOT_CONFIG[spinor] = "mx6dlc428_spinor_config"
UBOOT_CONFIG[mfgtool] = "mx6dlc428_config"

SERIAL_CONSOLE = "115200 ttymxc0"

MACHINE_FEATURES += " alsa apm ext2 keyboard pci rtc screen touchscreen serial usbgadget usbhost vfat"

0 Kudos

862 Views
Yuri
NXP Employee
NXP Employee

Hello,

  the following may be helpful.

Build Manufacturing Firmware 

No need to rebuild U-boot.

As for kernel, a manufacturing tool kernel is built using the imx_v7_mfg_defconfig,

while the default kernel is built by using the imx_v7_defconfig.

Regards,

Yuri.

0 Kudos