Hello,Stefan
>did you followed my advice to first enable the FPU in the kernel?
>Otherwise it is totally clear to not work at all, because -O3 compiledcode 
>make heavily use of the >FPU.

Thanks for your patient reply. I have tried to compile the hard-float genode 
toolchain by modifying the repos/tool/tool_chain like this:
-TARGET_NAME_arm        = arm-none-eabi
+TARGET_NAME_arm        = arm-none-eabihf
And I use tool_chain script to compile hard-float compiler by 
"./tool/tool_chain arm" command. Then , I followed your advice to enable the 
FPU in the kernel according to this patch[1]. But when I want to build the 
project by "make run/tz_vmm", the compiling stage seems completed, but there's 
error occurred in linking stage.The error message like this:


genode build completed
using 'hw_timer_drv' as 'timer'
using 'ld-hw.lib.so' as 'ld.lib.so'
core link address is 0x80000000
/usr/local/genode-gcc2/bin/../lib/gcc/arm-none-eabihf/6.3.0/../../../../arm-none-eabihf/bin/ld:
 error: var/run/tz_vmm.core uses VFP register arguments, 
/usr/local/genode-gcc2/bin/../lib/gcc/arm-none-eabihf/6.3.0/libgcc.a(_fixsfdi.o)
 does not



I am a little confused.  I think I have build the hard-float compiler and 
enabled the FPU in the kernel. Did I missed something? 
I also tried to change the flag "-mfloat-abi=hard" to "-mfloat-abi=softfp" in 
repos/base/mk/global.mk and repos/base/mk/spec/arm_v7a.mk, then the project can
be  build successfully but still stuck at "Starting kernel ..." at booting 
stage.


>I've compiled a hard-float compiler like advised to you, took that topic 
>branch, and recognized that for the i.MX53 one needs to set the
>-mfpu flag to neon. Then I could measure the performance gain on the i.MX53 
>Quickstart board. I've updated my topic branch to be
>ready-to-merge, and prepared a topic branch that uses hard-float neon FPU at 
>least on i.MX53 here:



Thank you very much  for providing such a patch to me. But since the patch you 
provided is based on  genode 18.08 and I am using 18.05 now, I can't use "git 
diff" command to see which files are modified. Because there are too many file 
changes. And it seems that the patch you provided can not be used by me 
directly. So, as I said before, I refer to this patch[1] to enable FPU in 
kernel.At beginning, I just modify the file that I think related to i.mx53 
,here's the list of  those file. Then, I also tried to modify all the file 
related to the patch[1] but the result have not changed . I know my questions  
are quite more and odd, please do not mind and thanks for your patience.



[1] 
https://github.com/skalk/genode/commit/cf02346cef59a6752c9a07494d812c8ada701517
[2] 
 repos/base-hw/lib/mk/spec/armv7/core-hw.inc
 repos/base-hw/src/bootstrap/spec/arm/crt0.s
 repos/base-hw/src/core/spec/arm/cpu_support.h
 repos/base-hw/src/core/spec/arm/exception_vector.s
 repos/base-hw/src/core/spec/arm/kernel/thread.cc
 repos/base-hw/src/core/spec/arm/vfpv3-d32.s
 repos/base/mk/spec/arm_v7a.mk




------------------
Best wishes
_______________________________________________
Genode users mailing list
[email protected]
https://lists.genode.org/listinfo/users

Reply via email to