[yocto] building for ZYNQ ZC702 SoC
Hi all, I am new to Yocto. I am trying to build an environment with arm-gcc integrated since the ZYNQ board has ARM Cortex A9 ducal core on it. Let me know if any one has tried something similar or some pointers on how i can proceed. -- *Anup Kini *Systems Engineer * -- * *Synapticon** * | Cyber-Physical System Solutions Direct: +49 7335 / 186 999 17 Fax: +49 7335 / 186 999 19 synapticon.com http://www.synapticon.com/ | @synapticon_cohttps://twitter.com/#!/synapticon_co Synapticon GmbH | Hohlbachweg 2 | 73344 Gruibingen, DE Secretary +49 7335 / 186 999 0 | General Manager: Nikolai Ensslen Registry Court Ulm HRB 725114 | USt-ID DE271647127 This message and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. Please notify the sender immediately if you have received this e-mail by mistake and delete it from your system. ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] building for ZYNQ ZC702 SoC
Hi Anup, Atleast two people on the yocto mailing list have successfully built the toolchain and rootfile system for the ZC702, Philip Balister and myself, using the latest yocto master. Here are a few steps: 01. Look up the Yocto Quick Start Guide to setup your Ubuntu 12.10 x86 64-bit host development environment. 02. Use Philip Balister's meta-zynq layer located here, and add it to your bblayer.conf file https://github.com/balister/meta-zynq $ gedit conf/bblayers.conf # LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf # changes incompatibly LCONF_VERSION = 5 BBPATH = ${TOPDIR} BBFILES ?= BBLAYERS ?= \ /tool/yocto/poky/meta \ /tool/yocto/poky/meta-yocto \ /tool/yocto/meta-openembedded/toolchain-layer \ /tool/yocto/meta-zynq \ 03. Updated your yocto local.conf file as follows: # # Xilinx target board configuration. # # Set the target machine details MACHINE ?= zynq-zc702 # Set Xilinx Platform Studio hardware project path XILINX_BSP_PATH ?= /project/xilinx-zc702 # Set target board XILINX_BOARD ?= zc702 04. Download the souces $ cd /tool/yocto/poky $ source oe-init-build-env build ### Shell environment set up for builds. ### You can now run 'bitbake target' Common targets are: core-image-minimal core-image-sato meta-toolchain meta-toolchain-sdk adt-installer meta-ide-support You can also run generated qemu images with a command like 'runqemu qemux86' $ bitbake -c fetchall core-image-minimal Build Configuration: BB_VERSION= 1.16.0 TARGET_ARCH = arm TARGET_OS = linux-gnueabi MACHINE = zynq-zc702 DISTRO= poky DISTRO_VERSION= 1.3+snapshot-20121025 TUNE_FEATURES = armv7a vfp neon cortexa9 TARGET_FPU= vfp-neon meta meta-yocto= master:33440ee70623394d06a4b214c2be10788cba6d08 toolchain-layer = master:55855cd569fbff7182974ca08b1de8435bf0f597 meta-zynq-balister = master-xilinx-zc702-gcc-4.7:d168cea411034d1f1530e4eacf6eb3ce4affd1c8 NOTE: Resolving any missing task queue dependencies NOTE: Preparing runqueue NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks 05. Build the toolchain $ cd /tool/yocto/poky $ source oe-init-build-env build $ bitbake meta-toolchain 06. Build the image $ bitbake core-image-minimal 07. Use Xilinx PlanAhead 14.3 software design too to create your hardware design. The only additional step you need to perform is to use the Xilinx PlanAhead software, to export you hardware to the Xilinx SDK, and use the SDK to generate and build the Zynq First Stage Bootloader (zynq_fsbl). After that, create a boot image by using the Xilinx tool menu option, and include the u-boot.elf, system.bit and zynq_fsbl.elf. Use the scripts in XAPP792 to download the kernel and bootable image to the target using XMD. Or rename the u-boot.bin file to BOOT.bin, copy the uImage generated from the yocto build, and it should all work. Best regards, Elvis Dowson On Dec 12, 2012, at 6:56 PM, Anup Kini ak...@synapticon.com wrote: Hi all, I am new to Yocto. I am trying to build an environment with arm-gcc integrated since the ZYNQ board has ARM Cortex A9 ducal core on it. Let me know if any one has tried something similar or some pointers on how i can proceed. -- Anup Kini Systems Engineer Synapticon | Cyber-Physical System Solutions Direct: +49 7335 / 186 999 17 Fax: +49 7335 / 186 999 19 synapticon.com | @synapticon_co Synapticon GmbH | Hohlbachweg 2 | 73344 Gruibingen, DE Secretary +49 7335 / 186 999 0 | General Manager: Nikolai Ensslen Registry Court Ulm HRB 725114 | USt-ID DE271647127 This message and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. Please notify the sender immediately if you have received this e-mail by mistake and delete it from your system. ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] building for ZYNQ ZC702 SoC
Hi Elvis, I could not find where the arm gcc was included in this build. I was checking the build process and took the gcc.4.4.6 while building the core-image-minimal. Hence i wanted to confirm if the arm-gcc can be integrated and steps to do it. On 12 December 2012 16:18, Elvis Dowson elvis.dow...@gmail.com wrote: Hi Anup, Atleast two people on the yocto mailing list have successfully built the toolchain and rootfile system for the ZC702, Philip Balister and myself, using the latest yocto master. Here are a few steps: 01. Look up the Yocto Quick Start Guide to setup your Ubuntu 12.10 x86 64-bit host development environment. 02. Use Philip Balister's meta-zynq layer located here, and add it to your bblayer.conf file https://github.com/balister/meta-zynq $ gedit conf/bblayers.conf # LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf # changes incompatibly LCONF_VERSION = 5 BBPATH = ${TOPDIR} BBFILES ?= BBLAYERS ?= \ /tool/yocto/poky/meta \ /tool/yocto/poky/meta-yocto \ /tool/yocto/meta-openembedded/toolchain-layer \ /tool/yocto/meta-zynq \ 03. Updated your yocto local.conf file as follows: # # Xilinx target board configuration. # # Set the target machine details MACHINE ?= zynq-zc702 # Set Xilinx Platform Studio hardware project path XILINX_BSP_PATH ?= /project/xilinx-zc702 # Set target board XILINX_BOARD ?= zc702 04. Download the souces $ cd /tool/yocto/poky $ source oe-init-build-env build ### Shell environment set up for builds. ### You can now run 'bitbake target' Common targets are: core-image-minimal core-image-sato meta-toolchain meta-toolchain-sdk adt-installer meta-ide-support You can also run generated qemu images with a command like 'runqemu qemux86' $ bitbake -c fetchall core-image-minimal Build Configuration: BB_VERSION= 1.16.0 TARGET_ARCH = arm TARGET_OS = linux-gnueabi MACHINE = zynq-zc702 DISTRO= poky DISTRO_VERSION= 1.3+snapshot-20121025 TUNE_FEATURES = armv7a vfp neon cortexa9 TARGET_FPU= vfp-neon meta meta-yocto= master:33440ee70623394d06a4b214c2be10788cba6d08 toolchain-layer = master:55855cd569fbff7182974ca08b1de8435bf0f597 meta-zynq-balister = master-xilinx-zc702-gcc-4.7:d168cea411034d1f1530e4eacf6eb3ce4affd1c8 NOTE: Resolving any missing task queue dependencies NOTE: Preparing runqueue NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks 05. Build the toolchain $ cd /tool/yocto/poky $ source oe-init-build-env build $ bitbake meta-toolchain 06. Build the image $ bitbake core-image-minimal 07. Use Xilinx PlanAhead 14.3 software design too to create your hardware design. The only additional step you need to perform is to use the Xilinx PlanAhead software, to export you hardware to the Xilinx SDK, and use the SDK to generate and build the Zynq First Stage Bootloader (zynq_fsbl). After that, create a boot image by using the Xilinx tool menu option, and include the u-boot.elf, system.bit and zynq_fsbl.elf. Use the scripts in XAPP792 to download the kernel and bootable image to the target using XMD. Or rename the u-boot.bin file to BOOT.bin, copy the uImage generated from the yocto build, and it should all work. Best regards, Elvis Dowson On Dec 12, 2012, at 6:56 PM, Anup Kini ak...@synapticon.com wrote: Hi all, I am new to Yocto. I am trying to build an environment with arm-gcc integrated since the ZYNQ board has ARM Cortex A9 ducal core on it. Let me know if any one has tried something similar or some pointers on how i can proceed. -- *Anup Kini *Systems Engineer * -- * *Synapticon** * | Cyber-Physical System Solutions Direct: +49 7335 / 186 999 17 Fax: +49 7335 / 186 999 19 synapticon.com http://www.synapticon.com/ | @synapticon_cohttps://twitter.com/#!/synapticon_co Synapticon GmbH | Hohlbachweg 2 | 73344 Gruibingen, DE Secretary +49 7335 / 186 999 0 | General Manager: Nikolai Ensslen Registry Court Ulm HRB 725114 | USt-ID DE271647127 This message and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. Please notify the sender immediately if you have received this e-mail by mistake and delete it from your system. ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto -- *Anup Kini *Systems Engineer * -- * *Synapticon** * | Cyber-Physical System Solutions Direct: +49 7335 / 186 999 17 Fax: +49 7335 / 186 999 19 synapticon.com http://www.synapticon.com/ | @synapticon_cohttps://twitter.com/#!/synapticon_co Synapticon GmbH | Hohlbachweg 2 | 73344
Re: [yocto] building for ZYNQ ZC702 SoC
Hi Anup, On Dec 12, 2012, at 7:32 PM, Anup Kini ak...@synapticon.com wrote: I could not find where the arm gcc was included in this build. I was checking the build process and took the gcc.4.4.6 while building the core-image-minimal. Hence i wanted to confirm if the arm-gcc can be integrated and steps to do it. Two things to keep in mind here: a. Yocto will generate a cross compiler for you. It will be called arm-poky-linux-gcc , and will be located in the poky/build/tmp/sysroots/x86_64-linux/usr/bin folder This won't appear in your path, unless you explicitly specify it. You can use this to build u-boot, the linux kernel and the root filesystem for the ZC702. b. The cross compiler generated from yocto has some issues building the Xilinx SDK sources, for compiling the bsp and fsbl sources. Hence, you can use the default xilinx supplied compiler, which is already setup with Xilinx SDK, to build the bsp and fsbl binaries. You only need the Xilinx supplied gcc toolchain for these tasks, as well as for bare-metal applications using StandAlone OS or XilKernel. For the rest, yocto gives you an easy way to build a fully working image for the ZC702. Best regards, Elvis Dowson ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto