[meta-xilinx] Differences between Yocto meta-xilinx and Xilinx meta-xilinx

SMITH Peter T peter.t.smith at alstom.com
Tue Nov 1 08:32:35 PDT 2016


Manu,

I have tried building "core-image-minimal" with meta-xilinx (branch rel-v2016.3 from Xilinx Git repo) and get a compilation error building ATF.
Log file is below. I used Krogoth branch of poky from Yocto git repo. Am I doing anything wrong here or have I uncovered a gremlin?

----

# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
POKY_BBLAYERS_CONF_VERSION = "2"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
  /yocto/peter/Yocto/poky/meta \
  /yocto/peter/Yocto/poky/meta-poky \
  /yocto/peter/Yocto/poky/meta-yocto-bsp \
  /yocto/peter/Xilinx/meta-xilinx \
  "
----

DEBUG: Executing shell function do_compile
NOTE: make -j 4 PLAT=zynqmp RESET_TO_BL31=1 bl31
  DEPS    build/zynqmp/release/bl31/cdns_console.d
  DEPS    build/zynqmp/release/bl31/bl31.ld.d
  DEPS    build/zynqmp/release/bl31/zynqmp_helpers.d
  DEPS    build/zynqmp/release/bl31/arm_helpers.d
  DEPS    build/zynqmp/release/bl31/console.d
  DEPS    build/zynqmp/release/bl31/platform_helpers.d
  DEPS    build/zynqmp/release/bl31/misc_helpers.d
  DEPS    build/zynqmp/release/bl31/cache_helpers.d
  DEPS    build/zynqmp/release/bl31/debug.d
  DEPS    build/zynqmp/release/bl31/psci_helpers.d
  DEPS    build/zynqmp/release/bl31/psci_entry.d
  DEPS    build/zynqmp/release/bl31/spinlock.d
  DEPS    build/zynqmp/release/bl31/cpu_helpers.d
  DEPS    build/zynqmp/release/bl31/context.d
  DEPS    build/zynqmp/release/bl31/crash_reporting.d
  DEPS    build/zynqmp/release/bl31/runtime_exceptions.d
  DEPS    build/zynqmp/release/bl31/cpu_data.d
  DEPS    build/zynqmp/release/bl31/bl31_entrypoint.d
  DEPS    build/zynqmp/release/bl31/platform_mp_stack.d
  DEPS    build/zynqmp/release/bl31/cortex_a53.d
  DEPS    build/zynqmp/release/bl31/aem_generic.d
  DEPS    build/zynqmp/release/bl31/zynqmp_common.d
  DEPS    build/zynqmp/release/bl31/plat_common.d
  DEPS    build/zynqmp/release/bl31/plat_gicv2.d
  DEPS    build/zynqmp/release/bl31/arm_gicv2.d
  DEPS    build/zynqmp/release/bl31/arm_cci.d
  DEPS    build/zynqmp/release/bl31/arm_common.d
  DEPS    build/zynqmp/release/bl31/gicv2_main.d
  DEPS    build/zynqmp/release/bl31/gicv2_helpers.d
  DEPS    build/zynqmp/release/bl31/gic_common.d
  DEPS    build/zynqmp/release/bl31/xlat_tables.d
  DEPS    build/zynqmp/release/bl31/xlat_tables_common.d
  DEPS    build/zynqmp/release/bl31/subr_prf.d
  DEPS    build/zynqmp/release/bl31/strncmp.d
  DEPS    build/zynqmp/release/bl31/strlen.d
  DEPS    build/zynqmp/release/bl31/strcmp.d
  DEPS    build/zynqmp/release/bl31/strchr.d
  DEPS    build/zynqmp/release/bl31/sscanf.d
  DEPS    build/zynqmp/release/bl31/puts.d
  DEPS    build/zynqmp/release/bl31/putchar.d
  DEPS    build/zynqmp/release/bl31/printf.d
  DEPS    build/zynqmp/release/bl31/mem.d
  DEPS    build/zynqmp/release/bl31/exit.d
  DEPS    build/zynqmp/release/bl31/assert.d
  DEPS    build/zynqmp/release/bl31/abort.d
  DEPS    build/zynqmp/release/bl31/tf_printf.d
  DEPS    build/zynqmp/release/bl31/bl_common.d
  DEPS    build/zynqmp/release/bl31/bakery_lock_coherent.d
  DEPS    build/zynqmp/release/bl31/psci_system_off.d
  DEPS    build/zynqmp/release/bl31/psci_setup.d
  DEPS    build/zynqmp/release/bl31/psci_main.d
  DEPS    build/zynqmp/release/bl31/psci_common.d
  DEPS    build/zynqmp/release/bl31/psci_suspend.d
  DEPS    build/zynqmp/release/bl31/psci_on.d
  DEPS    build/zynqmp/release/bl31/psci_off.d
  DEPS    build/zynqmp/release/bl31/std_svc_setup.d
  DEPS    build/zynqmp/release/bl31/context_mgmt.d
  DEPS    build/zynqmp/release/bl31/bl31_context_mgmt.d
  DEPS    build/zynqmp/release/bl31/bl31_arch_setup.d
  DEPS    build/zynqmp/release/bl31/interrupt_mgmt.d
  DEPS    build/zynqmp/release/bl31/runtime_svc.d
  DEPS    build/zynqmp/release/bl31/cpu_data_array.d
  DEPS    build/zynqmp/release/bl31/bl31_main.d
  DEPS    build/zynqmp/release/bl31/pm_client.d
  DEPS    build/zynqmp/release/bl31/pm_ipi.d
  DEPS    build/zynqmp/release/bl31/pm_api_sys.d
  DEPS    build/zynqmp/release/bl31/pm_svc_main.d
  DEPS    build/zynqmp/release/bl31/sip_svc_setup.d
  DEPS    build/zynqmp/release/bl31/plat_topology.d
  DEPS    build/zynqmp/release/bl31/plat_startup.d
  DEPS    build/zynqmp/release/bl31/plat_zynqmp.d
  DEPS    build/zynqmp/release/bl31/plat_psci.d
  DEPS    build/zynqmp/release/bl31/bl31_zynqmp_setup.d
  DEPS    build/zynqmp/release/bl31/plat_psci_common.d
  DEPS    build/zynqmp/release/bl31/cci.d
  CC      drivers/arm/cci/cci.c
  CC      plat/common/aarch64/plat_psci_common.c
  CC      plat/xilinx/zynqmp/bl31_zynqmp_setup.c
  CC      plat/xilinx/zynqmp/plat_psci.c
  CC      plat/xilinx/zynqmp/plat_zynqmp.c
  CC      plat/xilinx/zynqmp/plat_startup.c
  CC      plat/xilinx/zynqmp/plat_topology.c
  CC      plat/xilinx/zynqmp/sip_svc_setup.c
  CC      plat/xilinx/zynqmp/pm_service/pm_svc_main.c
  CC      plat/xilinx/zynqmp/pm_service/pm_api_sys.c
  CC      plat/xilinx/zynqmp/pm_service/pm_ipi.c
  CC      plat/xilinx/zynqmp/pm_service/pm_client.c
  CC      bl31/bl31_main.c
  CC      bl31/cpu_data_array.c
  CC      bl31/runtime_svc.c
  CC      bl31/interrupt_mgmt.c
  CC      bl31/aarch64/bl31_arch_setup.c
  CC      bl31/bl31_context_mgmt.c
bl31/bl31_context_mgmt.c: In function 'cm_get_context_by_mpidr':
bl31/bl31_context_mgmt.c:105:2: warning: 'platform_get_core_pos' is deprecated [-Wdeprecated-declarations]
  return cm_get_context_by_index(platform_get_core_pos(mpidr), security_state);
  ^
In file included from bl31/bl31_context_mgmt.c:36:0:
include/plat/common/platform.h:284:14: note: declared here
 unsigned int platform_get_core_pos(unsigned long mpidr) __deprecated;
              ^
bl31/bl31_context_mgmt.c: In function 'cm_set_context_by_mpidr':
bl31/bl31_context_mgmt.c:116:2: warning: 'platform_get_core_pos' is deprecated [-Wdeprecated-declarations]
  cm_set_context_by_index(platform_get_core_pos(mpidr),
  ^
In file included from bl31/bl31_context_mgmt.c:36:0:
include/plat/common/platform.h:284:14: note: declared here
 unsigned int platform_get_core_pos(unsigned long mpidr) __deprecated;
              ^
bl31/bl31_context_mgmt.c: In function 'cm_init_context':
bl31/bl31_context_mgmt.c:131:3: warning: 'platform_get_core_pos' is deprecated [-Wdeprecated-declarations]
   cm_init_context_by_index(platform_get_core_pos(mpidr), ep);
   ^
In file included from bl31/bl31_context_mgmt.c:36:0:
include/plat/common/platform.h:284:14: note: declared here
 unsigned int platform_get_core_pos(unsigned long mpidr) __deprecated;
              ^
  CC      common/context_mgmt.c
  CC      services/std_svc/std_svc_setup.c
  CC      services/std_svc/psci/psci_off.c
  CC      services/std_svc/psci/psci_on.c
  CC      services/std_svc/psci/psci_suspend.c
  CC      services/std_svc/psci/psci_common.c
  CC      services/std_svc/psci/psci_main.c
  CC      services/std_svc/psci/psci_setup.c
  CC      services/std_svc/psci/psci_system_off.c
  CC      lib/locks/bakery/bakery_lock_coherent.c
  CC      common/tf_printf.c
  CC      common/bl_common.c
  CC      lib/stdlib/abort.c
  CC      lib/stdlib/assert.c
  CC      lib/stdlib/exit.c
  CC      lib/stdlib/mem.c
  CC      lib/stdlib/printf.c
  CC      lib/stdlib/putchar.c
  CC      lib/stdlib/puts.c
  CC      lib/stdlib/sscanf.c
  CC      lib/stdlib/strchr.c
  CC      lib/stdlib/strcmp.c
  CC      lib/stdlib/strlen.c
  CC      lib/stdlib/strncmp.c
  CC      lib/stdlib/subr_prf.c
  CC      lib/xlat_tables/xlat_tables_common.c
  CC      lib/xlat_tables/aarch64/xlat_tables.c
  CC      drivers/arm/gic/common/gic_common.c
  CC      drivers/arm/gic/v2/gicv2_main.c
  CC      drivers/arm/gic/v2/gicv2_helpers.c
  CC      plat/arm/common/aarch64/arm_common.c
  CC      plat/arm/common/arm_cci.c
  CC      plat/arm/common/arm_gicv2.c
  CC      plat/common/plat_gicv2.c
  CC      plat/common/aarch64/plat_common.c
  CC      plat/xilinx/zynqmp/aarch64/zynqmp_common.c
  AS      lib/cpus/aarch64/aem_generic.S
plat/common/aarch64/plat_common.c: In function 'plat_get_syscnt_freq2':
plat/common/aarch64/plat_common.c:84:2: warning: 'plat_get_syscnt_freq' is deprecated [-Wdeprecated-declarations]
  unsigned long long freq = plat_get_syscnt_freq();
  ^
In file included from plat/common/aarch64/plat_common.c:32:0:
include/plat/common/platform.h:62:20: note: declared here
 unsigned long long plat_get_syscnt_freq(void) __deprecated;
                    ^
  AS      lib/cpus/aarch64/cortex_a53.S
  AS      plat/common/aarch64/platform_mp_stack.S
  AS      bl31/aarch64/bl31_entrypoint.S
  AS      bl31/aarch64/cpu_data.S
  AS      bl31/aarch64/runtime_exceptions.S
  AS      bl31/aarch64/crash_reporting.S
  AS      common/aarch64/context.S
  AS      lib/cpus/aarch64/cpu_helpers.S
bl31/aarch64/runtime_exceptions.S: Assembler messages:
bl31/aarch64/runtime_exceptions.S:177: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:186: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:191: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:196: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:212: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:216: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:220: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:224: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:240: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:249: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:253: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:257: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:273: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:282: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:286: Error: non-constant expression in ".if" statement
bl31/aarch64/runtime_exceptions.S:290: Error: non-constant expression in ".if" statement
make: *** [build/zynqmp/release/bl31/runtime_exceptions.o] Error 1
make: *** Waiting for unfinished jobs....
ERROR: oe_runmake failed
ERROR: Function failed: do_compile (log file is located at /yocto/peter/Xilinx/ZCU102/tmp/work/aarch64-poky-linux/arm-trusted-firmware/1.2+xilinx+gitAUTOINC+a9e3716615-r0/temp/log.do_compile.16263)

Peter

-----Original Message-----
From: SMITH Peter T
Sent: 01 November 2016 09:45
To: 'Manjukumar Harthikote Matha'; meta-xilinx at yoctoproject.org
Subject: RE: [meta-xilinx] Differences between Yocto meta-xilinx and Xilinx meta-xilinx

Thanks, that's super clear now.

-----Original Message-----
From: meta-xilinx-bounces at yoctoproject.org [mailto:meta-xilinx-bounces at yoctoproject.org] On Behalf Of Manjukumar Harthikote Matha
Sent: 01 November 2016 01:00
To: meta-xilinx at yoctoproject.org
Subject: Re: [meta-xilinx] Differences between Yocto meta-xilinx and Xilinx meta-xilinx

Hi Peter,

On 10/31/2016 08:23 AM, SMITH Peter T wrote:
> Hi all, hopefully somebody can explain to me the difference between
> the Xilinx and Yocto hosted meta-xilinx layers. As of today there are
> significant differences between the two repositories. To illustrate,
> Xilinx appear to have released a lot of stuff tagged with 2016.3 over
> the weekend which does not yet exist in the Yocto hosted repo. Is it
> just a time delay thing?
v2016.3 and other release branches on github are aligned with Xilinx tools release. Each release branch is based on previous stable Yocto release (2016.3 is based on krogoth). We also dont support few things like yocto kernel, u-boot spl etc since these branches are used for Xilinx tools release.

These branches will not make it to yoctoproject.org, instead we upstream the work done in each release branch to the master of meta-xilinx.

Which repo should I base my development work
> on? I am developing for US+ MPSoC.
>
If you are using Xilinx tools (toolchain, xsct, etc), then it is recommended that you stick with Xilinx release branches. If you plan to use complete opensource YP (meaning Yocto toolchain, kernel etc), then use master or any stable previous Yocto branch. Note that MPSoC may not work with Yocto kernel

Hope this helps

Thanks
Manju
--
_______________________________________________
meta-xilinx mailing list
meta-xilinx at yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-xilinx

________________________________
CONFIDENTIALITY : This e-mail and any attachments are confidential and may be privileged. If you are not a named recipient, please notify the sender immediately and do not disclose the contents to another person, use it for any purpose or store or copy the information in any medium.



More information about the meta-xilinx mailing list