[seL4] Status of supporting Beaglebone?

Kun Cheng chengkunck at gmail.com
Fri Feb 6 22:40:01 EST 2015


Hi Adrian,

Thank you so much for the detailed reply and suggestions.

It should do me a great favor. Thanks again for the help.

Best regards,

Kun Cheng


2015-02-06 11:53 GMT+08:00 Adrian Danis <Adrian.Danis at nicta.com.au>:
> Hi Kun,
>
> My suggestion would be to look at the other platforms and see what sort
> of things they are defining. In this case with clock.h you should be
> able to create a blank set of clock definitions by going
> enum clk_id {
>     NCLOCKS = 0
> };
>
> enum clock_gate {
>     NCLKGATES = 0
> };
> I suspect it's going to be a bit of a game of wack-a-mole with various
> bits of clock, timer and serial code. All the raw code should exist and
> everything should just be interface and wrapper code changes, so if you
> look at what the other platforms do and follow the same pattern then it
> should work.
>
> As far as platforms we are using. The main platforms we are using are
> the i.MX6 Sabre Lite, Odroid-XU and we are starting to want to use the
> Odroid-XU3
>
> Adrian
>
>
> On 06/02/15 12:37, Kun Cheng wrote:
>>
>> Thank you, Adrian.
>>
>> Currently I'm still trying to find a way to make sel4 run on bb black,
>> I don't want to waste my $42, LOL.
>>
>> My problem is the broken code in dm.c seems easy to fix but I've no
>> idea about the missing header clock.h in
>> stage/arm/am335x/include/platsupport/plat, which is included in
>> stage/arm/am335x/include/platsupport/clock.h .
>>
>> And what board do you use right now? Currently I get some spare money,
>> I'd like to hear your advice.
>>
>> Thanks very much.
>>
>> Best regards,
>>
>> Kun Cheng
>>
>>
>> 2015-02-06 7:09 GMT+08:00 Adrian Danis <Adrian.Danis at nicta.com.au>:
>>>
>>> Hi Kun,
>>>
>>> Beaglebone was a platform that has been used internally in the past,
>>> which is why you have found several bits of code laying around for it.
>>> However we stopped using it some time ago, which is why we did not put
>>> it on the list of supported architectures http://sel4.systems/FAQ/#hw,
>>> and so it is of no surprise that the code is broken. The build errors
>>> look like various refactors and other changes that were probably blindly
>>> applied to the platform, but never actually compiled or run.
>>>
>>> Unfortunately this is not a platform we have time to actively work on
>>> and keep up to date. If you are able to get it compiling and running
>>> then we would gladly accept the changes.
>>>
>>> Adrian
>>>
>>>
>>> On 04/02/15 14:03, Kun Cheng wrote:
>>>>
>>>> Hi guys,
>>>>
>>>> I happened to find out that beaglebone was listed in the menuconfig.
>>>> After that I immediately bought a Beaglebone black (Yeah I know
>>>> beaglebone is different from bb black, but it might succeed. LOL.) and
>>>> tried to build a image for my bb black . But I found code errors
>>>> during compilation.
>>>>
>>>> I use arm-none-eabi tool chains and the gcc version is 4.8.
>>>>
>>>> Errors occurred in
>>>>
>>>> sel4test/libs/libplatsupport/src/clock.c which includes
>>>> platsupport/plat/clock.h but it doesn't exist
>>>>
>>>> sel4test/libs/libplatsupport/src/plat/am335x/dm.c has several coding
>>>> mistakes, like:
>>>>
>>>> in function dm_stop_timer() the 'timer' is undeclared
>>>> in function dm_periodic() dm is undeclared
>>>> in function dm_get_timer()
>>>>             timer->properties.upcounter = false; but 'false' is
>>>> undeclared
>>>>             timer->properties.bitwidth = 32; should probably be
>>>>             timer->properties.bit_width = 32;
>>>>
>>>>             and timer->start = dm_timer_start;
>>>>                    timer->stop = dm_timer_stop;
>>>>             should probably be:
>>>>                    timer->start = dm_start_timer;
>>>>                    timer->stop = dm_stop_timer;
>>>>
>>>> also I got a redundant redeclaration of 'ki_end' in
>>>> sel4test/kernel/src/plat/am335x/machine/hardware.c
>>>>
>>>> which the compiler thought the previous declaration of ki_end was in :
>>>> sel4test/kernel/src/arch/arm/kernel/boot.c
>>>>
>>>> So I am just wandering if beaglebone support is still under
>>>> development? If any of you run sel4 successfully on beaglebone black,
>>>> please give me some instructions. Currently I removed building
>>>> platform independent libraries from menuconfig and the compilation
>>>> went well. But I don't think it's a good idea.
>>>>
>>>> And I also find the cross tool chains which is recommend for Debian
>>>> Wheezy on the http://sel4.systems/Download/DebianToolChain.pml seems
>>>> to be not working well for compiling beagle configs. I got cc1 options
>>>> error during compiling which is due to that  some of the options are
>>>> supported by gcc 4.5 or later while the recommended one is based on
>>>> gcc 4.4.
>>>>
>>>>
>>>>
>>>> Best regards,
>>>>
>>>> Kun Cheng
>>>>
>>>> _______________________________________________
>>>> Devel mailing list
>>>> Devel at sel4.systems
>>>> https://sel4.systems/lists/listinfo/devel
>>>
>>>
>>>
>>> ________________________________
>>>
>>> The information in this e-mail may be confidential and subject to legal
>>> professional privilege and/or copyright. National ICT Australia Limited
>>> accepts no liability for any damage caused by this email or its
>>> attachments.
>
>
>
> ________________________________
>
> The information in this e-mail may be confidential and subject to legal
> professional privilege and/or copyright. National ICT Australia Limited
> accepts no liability for any damage caused by this email or its attachments.



More information about the Devel mailing list