Why is QorIQ sdk base on yocto?

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

Why is QorIQ sdk base on yocto?

1,711 Views
phenixyan
Contributor II

The compiling time is too long and the image file is too large. Even it can't work under vm environment.

I just need a crosstool , a u-boot source, a linux kernel source, so why should I suffer the complicated procedures. 

Tags (1)
5 Replies

1,184 Views
jhering_ruegen
Contributor II

as an alternative for yocto, we use BUILDROOT

https://buildroot.org/ 

and for the kernel (64 bit)

t1040rdb_defconfig

snip

.....

BR2_powerpc64=y
BR2_powerpc_e5500=y
BR2_OPTIMIZE_2=y
BR2_KERNEL_HEADERS_4_1=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.freescale.com/ppc/sdk/linux.git"
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="fsl-sdk-v2.0-1609"
BR2_LINUX_KERNEL_DEFCONFIG="corenet64_fmanv3l_smp"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="fsl/t1040rdb"
BR2_TARGET_ROOTFS_CPIO=y
BR2_TARGET_ROOTFS_CPIO_UIMAGE=y

.....

use for example U-Boot (T1040RDB)

t1040rdb-ub_defconfig

snip

...

BR2_powerpc=y
BR2_powerpc_e500mc=y
BR2_POWERPC_SOFT_FLOAT=y
BR2_KERNEL_MIRROR="https://www.kernel.org/pub"
BR2_GNU_MIRROR="http://ftp.gnu.org/pub/gnu"
# BR2_COMPILER_PARANOID_UNSAFE_PATH is not set
BR2_KERNEL_HEADERS_4_4=y
BR2_BINUTILS_VERSION_2_24_X=y
# BR2_TARGET_GENERIC_GETTY is not set
# BR2_ENABLE_LOCALE_PURGE is not set
# BR2_TARGET_ROOTFS_TAR is not set
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="T1040RDB_SDCARD"
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="git://git.freescale.com/ppc/sdk/u-boot.git"
BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="fsl-sdk-v2.0-1609"
BR2_TARGET_UBOOT_SPL=y

...

greetings from Germanys biggest island Rügen

Jörg

0 Kudos

1,184 Views
bpe
NXP Employee
NXP Employee

If you need just sources of u-Boot and Linux plus the toolchain,
you can do the following:

1. Install the SDK and prepare for build as specified here:

https://freescale.sdlproducts.com/LiveContent/content/en-US/QorIQ_SDK/GUID-C4A38716-7009-43DD-A9D3-1...

This adds about 3.5G to your HDD.

2. Unpack u-Boot and Linux:

bitbake -c patch u-boot
bitbake -c patch virtual/kernel

Details can be found here:

https://freescale.sdlproducts.com/LiveContent/content/en-US/QorIQ_SDK/GUID-EF575BC2-3BF1-49DE-A690-6...

https://freescale.sdlproducts.com/LiveContent/content/en-US/QorIQ_SDK/GUID-8C4D9C9C-BC81-488D-B2E8-B...

Sources will consume another 1G or so.

3. Build the toolchain as described here:

https://freescale.sdlproducts.com/LiveContent/content/en-US/QorIQ_SDK/GUID-16DBC8E2-9A18-4867-9BE1-1...

This step is  time- and disk- consuming (grows your SDK directory to
21 G) because Yocto builds everything from sources.

If there is not enough space or it is too slow, another solution is to take
the toolchains in binary from CodeWarrior for your architecture:

http://www.nxp.com/products/software-and-tools/software-development-tools/codewarrior-development-to...


Have a great day,
Platon

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

1,184 Views
pro-supportengi
NXP Employee
NXP Employee

As a quick reply, Yocto layers provide easy customization for custom boards.  Also performance using the cash is fast and yocto incrementally builds by default allowing build time to be reduced. Three commands are needed to build the entire SDK and allows for custom bitbake such as full, core, etc. giving a wide range of flexibility that a customer can use to customize for their particular yocto layer.  Also as updates are made available, yocto fetches, patches, and builds automatically based on the recipes in sources making NXP updates convenient and customers can customize recipes as needed for their yocto layer and custom board as well as for their own updates.  The yocto learning curve can be a concern, but NXP does provide training for this if needed.

0 Kudos

1,184 Views
phenixyan
Contributor II

It sounds good. But maybe not everyone needs it. Most commercial companies have their own software architecture(not based on yocto of course), what they need is just integrating the bsp source code into their own system, but not the whole huge yocto image.

In order to generate the sdk source code, I tried to bitbake fsl-image-minimal.  But it still in 'Parsing recipes' stage after dozens of hours. Too depressing!

0 Kudos

1,184 Views
pro-supportengi
NXP Employee
NXP Employee

With a Dell Latitude E7440 with Ubuntu 14.04 LTS it takes less than 30 min. to build a minimal configuration, and typically less than this.

One can always extract the compressed files in the download directory as needed and integrate the source code into your system.  NXP has a large number of products and yocto provides the flexibility necessary to integrate and build these products.  But it may be easier to obtain a system that builds quickly and create a yocto layer. Many companies are moving to Yocto for the reasons mentioned.

0 Kudos