Hi Kofi,
Yes i am using master branch to build sel4 kernel. the issue because of
wrong config variable used in autoconf.h file which caused this issue.
After fixing the correct config the build going ahead and failed with below
reason saying unrecognized the command line option '-marm'.
Do you have any idea what would be the problem to cause this issue ?. Also
tried with different toolchain but the result remain same.
~/sel4KER/seL4$ make TOOLPREFIX=aarch64-linux-gnu- SEL4_ARCH=aarch64
PLAT=tx1 ARMV=armv8-a CPU=cortex-a53 ARCH=arm
[TOUCH] sources_list_updated
[CPP_GEN] kernel_all.c
[BF_GEN] arch/object/structures_gen.h
[BF_GEN] plat/machine/hardware_gen.h
[BF_GEN] 64/mode/api/shared_types_gen.h
[CPP] kernel_all.c_pp
[CC] kernel_final.s
aarch64-linux-gnu-gcc: error: unrecognized command line option ‘-marm’
make: *** [kernel_final.s] Error 1
rm plat/machine/hardware_gen.h arch/object/structures_gen.h
64/mode/api/shared_types_gen.h
Regards,
Munees
On Tue, Oct 10, 2017 at 4:45 AM,
Munees,
Could you give me more information such as, which project you're trying to build? Is it seL4test? Which revisions of the repositories are you trying to build here? Are they all git "master" branches? Sorry but I can't intuit much from what I see there, and we have most of the master branches in regression so it's unlikely the build is broken on master.
-- Kofi Doku Atuah Kernel engineer DATA61 | CSIRO
------------------------------ *From:* Muneeswaran Rajendran
*Sent:* 06 October 2017 18:45 *To:* Atuah, Kofi Doku (Data61, Kensington NSW) *Cc:* devel@sel4.systems *Subject:* Re: [seL4] does seL4 support NVIDIA Jetson Tx2 board ? Hi kofidoku,
Thanks for detailed input. I try to build seL4 for tx1 platform there was compilation error autoconf.h missing in the include folder.
drwxrwxr-x 2 spanidea spanidea 4096 Oct 6 11:46 tk1 drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 am335x drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 apq8064 -rw-rw-r-- 1 spanidea spanidea 992 Sep 5 07:28 arm_verified.cmake drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 exynos4 drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 exynos5 drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 hikey drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 imx31 drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 imx6 drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 imx7 drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 omap3 drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 pc99 drwxrwxr-x 2 spanidea spanidea 4096 Sep 5 07:28 zynq7000
I have created the tx1 folder and copy the tk1/autoconf.h file into it.
drwxrwxr-x 2 spanidea spanidea 4096 Oct 6 12:27 tx1
Later the compilation failed with below error messages
[MKDIR] arch/object [PBF_GEN] arch/object/structures.pbf [PBF_GEN] plat/machine/hardware.pbf [PBF_GEN] 32/mode/api/shared_types.pbf [BF_GEN] arch/object/structures_gen.h [BF_GEN] plat/machine/hardware_gen.h [BF_GEN] 32/mode/api/shared_types_gen.h [CPP] src/arch/arm/armv/armv8-a/32/machine_asm.s_pp [AS] src/arch/arm/armv/armv8-a/32/machine_asm.o [CPP] src/arch/arm/32/head.s_pp [AS] src/arch/arm/32/head.o [CPP] src/arch/arm/32/traps.s_pp [AS] src/arch/arm/32/traps.o [CPP] src/arch/arm/32/hyp_traps.s_pp [AS] src/arch/arm/32/hyp_traps.o [CPP_GEN] kernel_all.c [CPP] kernel_all.c_pp src/arch/arm/object/vcpu.c:109:2: error: #error GIC_PL400_VCPUCTRL_PPTR must be defined for virtual memory access to the gic virtual cpu interface control make: *** [kernel_all.c_pp] Error 1 rm 32/mode/api/shared_types_gen.h src/arch/arm/32/traps.s_pp plat/machine/hardware_gen.h src/arch/arm/32/head.s_pp src/arch/arm/armv/armv8-a/32/machine_asm.s_pp src/arch/arm/32/hyp_traps.s_pp arch/object/structures_gen.h
the macro 'GIC_PL400_VCPUCTRL_PPTR' was not defined in the 'include/plat/tx1/plat/machine/devices.h' hence compilation failed. But this macro was defined in tk1 include file.
can you please share the correct autoconf file for tx1 platform to build seL4 kernal.
Regards, Munees
On Fri, Oct 6, 2017 at 12:20 PM,
wrote: Hey Munes and Ashok,
To my knowledge, seL4 supports the TX1 SoC, but not the TX2 explicitly.
If the TX1 and TX2 behave similarly, then there's probably a lot of code that can be shared between them. I can't comment on whether or not they are similar enough though.
That said, to help you begin the search to find out, you can look through the code we currently have for the TK1 and TX1. So the way the codebase is organized for the TK1 and TX1 right now, the common drivers for both of them are in libplatsupport/src/mach/nvidia (https://github.com/seL4/util_ libs/tree/master/libplatsupport/src/mach/nvidia).
We personally have, internally, 3 boards for which the TK1 and TX1 SoCs are common: (1) Colorado TK1-SOM. (2) Nvidia Jetson TK1 (3) Some TX1-based board which I don't know much about off the top of my head.
The two TK1 platforms use the same "plat" code in libplatsupport/src/plat/tk1: https://github.com/seL4/util_li bs/tree/master/libplatsupport/src/plat/tk1 And I see a TX1 platform folder here as well, though I'm not familiar with it myself (and frankly the files are empty anyway): https://github.com/seL4/util_libs/tree/master/libplatsupport/src/plat/tx1
-- Kofi Doku Atuah Kernel engineer DATA61 | CSIRO
_______________________________________________ Devel mailing list Devel@sel4.systems https://sel4.systems/lists/listinfo/devel
_______________________________________________ Devel mailing list Devel@sel4.systems https://sel4.systems/lists/listinfo/devel