Re: Want to run L4Re on Raspberry PI.

Adam Lackorzynski <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.devel
Message-ID <[email protected]>
Hi,

you need to have the mkimage tool available, which is typically
available through the u-boot-tools package (or similar).

For the other error, please disable Virtualization support in the Fiasco
configuration. The raspberry pi does not support hardware-assisted
virtualization.


Adam

On Wed May 29, 2019 at 21:27:35 +0000, Lei Zhou wrote:
> Another error I'm running into is at last step to generate bootable uimage.
> 
> $make E=hello uimage MODULE_SEARCH_PATH="${PWD}/../../kernel/fiasco/build-ukernel-pi3" PLATFORM_TYPE=rpi_b
> 
> I have two questions:
>    1.   What RAM_BASE should I pass in make cmdline? or leave it as is?
>    2.  Seems missing mkimage tool in the src tree.  I used repomgr pulling all the source automatically. What did I miss here?
> 
> ------------------------------------------------------------------------------------------------------------------------------------------------
> make[1]: Entering directory '/home/lezhou/workspace/l4re/src/l4'
> =========== Updating RAM_BASE for platform rpi_b to 0x0 =========
>   ... Regenerating RAM_BASE settings
>   [sigma0] ==> Linking sigma0
>   [sigma0] ==> sigma0 built
>   [sigma0] ==> Installing sigma0 to local build-tree
>   [moe] ==> Linking moe
>   [moe] ==> moe built
>   [moe] ==> Installing moe to local build-tree
> /home/lezhou/workspace/l4re/src/l4/pkg/bootstrap/server/src/Make.rules:263: *** mkimage(mkimage) host tool missing, cannot build bootstrap.uimage/itb.  Stop.
> ../../../../mk/binary.inc:149: recipe for target '/home/lezhou/workspace/l4re/src/l4/build-pi3/pkg/bootstrap/server/src/OBJ-arm64_armv8a' failed
> make[2]: *** [/home/lezhou/workspace/l4re/src/l4/build-pi3/pkg/bootstrap/server/src/OBJ-arm64_armv8a] Error 2
> Makefile:537: recipe for target 'uimage' failed
> make[1]: *** [uimage] Error 2
> make[1]: Leaving directory '/home/lezhou/workspace/l4re/src/l4'
> Makefile:6: recipe for target 'do-all-make-goals' failed
> make: *** [do-all-make-goals] Error 2
> -------------------------------------------------------------------------------------------------------------------------------------------------------------
> 
> Thanks,
> Lei
> 
> ________________________________________
> From: Lei Zhou
> Sent: Wednesday, May 29, 2019 4:39 PM
> To: Paul Boddie; [email protected]
> Subject: RE: Want to run L4Re on Raspberry PI.
> 
> When I cross compiled Fiasco for Raspberry PI3 B,   running into this compiling error as below.
> 
> Here are what I did:
>   1. use Linaro cross compiler
>   2. // cross compiling for Rpi 3b+
>       $make BUILDDIR=build-rpi3-ukernel
>       $make O=build-rpi3-ukernel config    // pick aarch64, broadcom 2837, and rpi 3b
>       $make O=build-rpi3-ukernel -j4
> 
> Compiling error:
> ========================
>   ... Making arm_control-arm-bcm283x.o
>   ... Making irq_handler-arm-bcm283x.o
>   ... Making uart_console.o
>   ... Making vgic.o
>   ==> Linking tcboffset.bin
>   ... Making jdb.o
> In file included from auto/vgic.cc:4:0:
> /home/lezhou/workspace/l4re/src/kernel/fiasco/src/kern/arm/vgic.cpp: In constructor ‘Gic_h_init::Gic_h_init(Cpu_number)’:
> /home/lezhou/workspace/l4re/src/kernel/fiasco/src/kern/arm/vgic.cpp:153:59: error: ‘Gic_h_phys_base’ is not a member of ‘Mem_layout’
>          Gic_h::gic.construct(Kmem::mmio_remap(Mem_layout::Gic_h_phys_base));
>                                                            ^~~~~~~~~~~~~~~
> /home/lezhou/workspace/l4re/src/kernel/fiasco/src/Makerules.global:118: recipe for target 'vgic.o' failed   <<<====== compiling error
> make[2]: *** [vgic.o] Error 1
> make[2]: *** Waiting for unfinished jobs....
> make[2]: Leaving directory '/home/lezhou/workspace/l4re/src/kernel/fiasco/build-ukernel-pi3'
> /home/lezhou/workspace/l4re/src/kernel/fiasco/src/Makefile:153: recipe for target 'all' failed
> ======================================================================
> 
> Any inputs would be appreciated!
> Lei
> 
> 
> 
> 
> 
> 
> ________________________________________
> From: l4-hackers [[email protected]] on behalf of Paul Boddie [[email protected]]
> Sent: Wednesday, May 29, 2019 12:27 PM
> To: [email protected]
> Subject: Re: Want to run L4Re on Raspberry PI.
> 
> On Wednesday 29. May 2019 15.20.01 Matthias Lange wrote:
> >
> > The issue we have with "standard" cross toolchains is the libgcc they are
> > shipping. It is compiled for ARMv7 and contains instructions that are
> > unknown / illegal on ARMv6k. The mean thing is, that our build system tells
> > GCC via "-march=armv6zk" what code to generate but then links the wrong
> > libgcc.
> 
> Some of these compiler configuration issues are awkward. My problem was that
> although there are switches for hard- and soft-float, appropriate libgcc
> variants need to be available, and the Debian toolchains do not provide them
> all. I actually don't remember if there is a need for completely separate
> compilers, but I would hope not (and yet not be surprised if it were the
> case).
> 
> Of course, it is one thing to be able to avoid certain instructions in one's
> own code, quite another to have to deal with library code liberally using
> "illegal" instructions. I got quite far with bare metal code, even targeting
> microcontrollers like the PIC32 with the MIPS compilers, for instance.
> 
> So, the Buildroot compiler it had to be.
> 
> Paul
> 
> P.S. I have a selfish interest in following this as I could imagine also
> trying out L4Re on the Raspberry Pi at some point. I guess that the
> framebuffer isn't currently supported though.
> 
> _______________________________________________
> l4-hackers mailing list
> [email protected]
> https://urldefense.proofpoint.com/v2/url?u=http-3A__os.inf.tu-2Ddresden.de_mailman_listinfo_l4-2Dhackers&d=DwICAg&c=yzoHOc_ZK-sxl-kfGNSEvlJYanssXN3q-lhj0sp26wE&r=zgPsMwBitHoKyTzLULGKGmtjlsV9d0M7_KqUo-WYeMg&m=vqZXpvfEEZ7z6RZEDVADwPfdEix-IUsRqmPyFjOvJPE&s=w8hR33cVIdhYq3wImBvqgZ_YvczANsxjDZ_7ZRZCrP8&e=
> 
> _______________________________________________
> l4-hackers mailing list
> [email protected]
> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers

Adam
-- 
Adam                 [email protected]
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/

_______________________________________________
l4-hackers mailing list
[email protected]
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.