Genode on Odroid-XU4

Yevgeny Lavrov ylavrov13 at ...9...
Fri Jan 20 05:01:03 CET 2017


Thanks for the support. Unfortunately, I must switch platforms. Would it be
possible to repeat the same steps on i.MX6 Sabre Lite?

On Thu, Jan 5, 2017 at 3:07 AM, Stefan Kalkowski <
stefan.kalkowski at ...1...> wrote:

> Hello,
>
> On 01/04/2017 10:46 PM, Yevgeny Lavrov wrote:
> > Thanks, Stefan :) Now I see some output. I've checked minicom settings
> > for UART, and it is was set to: 115200 8N1. Changing settings there
> > didn't help, so I went the suggested alternative path and out commented
> > the 'Exynos_uart_base' constructor's body. Now I get:
> >
> > kernel initialized
> > prefetch abort
> > pc : [<800494e0>] lr : [<0000001a>]
> > sp : be75af38   ip : 800023e4    fp : be8651a4
> > r10: be8ab408  r9 : 00000000    r8 : be75af30
> > r7 : 800c4000   r6 : 80111028    r5 : 00000000    r4 : 80095ce8
> > r3 : ffff03f4       r2 : 00000000    r1 : 80111028    r0 : 800023e4
> > Flags: nzCv IRQs off FIQs off Mode HYP_32
> > Resetting CPU ...
> > emmc resetting ...
> > resetting ...
> >
> > I assume that this is the desired output.
> > Having this initial step completed, now I have two questions: What does
> > this output tell me, and where can I go from here?
>
> The "kernel initialized" message is desired output, but then you see
> that the exception vector that was setup by u-boot is entered
> ("prefetch-abort"), which means Genode's HW kernel tries to execute an
> address that is not valid in its page-table.
>
> You can check whether the address 0x800494e0 is a valid .text address in
> the core binary. You can find the unstripped core binary under
> var/run/<run-script-name>.core in your build directory.
>
> I'm afraid at that point you have to start to debug the problem using
> either a JTAG debugger, or by instrumenting the kernel/core code via
> "log" messages around the corresponding problem point.
>
> Regards
> Stefan
>
> >
> > Thanks
> >
> > On Wed, Jan 4, 2017 at 2:50 AM, Stefan Kalkowski
> > <stefan.kalkowski at ...1...
> > <mailto:stefan.kalkowski at ...1...>> wrote:
> >
> >     Hi Yevgeny,
> >
> >     congratulations for the first successful steps. Obviously the UART
> >     configuration is not proper. One potential problem can be the UART
> >     reference clock setting, original value:
> >
> >       repos/base/include/spec/odroid_xu/drivers/board_base.h:31:
> >
> >     The reference clock's value is used to calculate the settings for the
> >     appropriated baudrate. Are you using the baudrate 115200 in your UART
> >     terminal? Because this is the baudrate the kernel configures the
> UART to
> >     use.
> >
> >     Alternatively, you can skip re-configuration of the UART device by
> >     uncommenting the 'Exynos_uart_base' constructor's body, here:
> >
> >       repos/base/include/spec/exynos/drivers/uart_base.h:213
> >
> >     Thereby, you leave the UART settings like u-boot configured it.
> >
> >     Regards
> >     Stefan
> >
> >     On 01/04/2017 01:18 AM, Yevgeny Lavrov wrote:
> >     > Hello
> >     >
> >     > I've followed all the steps suggested above. There were no problems
> >     > interacting with Linux system on test board via UART cable. It
> looks
> >     > like Network boot and fastboot (Odroid-XU4 doesn't have USB otg
> port)
> >     > are not supported by Odroid-XU4. After creating hw_odroid_xu build
> >     > directory, adding suggested RUN_OPT to build.conf file and
> executing
> >     > make run/log I end up with the following output:
> >     >
> >     > spawn fastboot -s usb:2-1.8 boot var/run/log/uImage
> >     > < waiting for device >
> >     > Loading timed out
> >     > Load step failed, retry.
> >     > spawn fastboot -s usb:2-1.8 boot var/run/log/uImage
> >     > < waiting for device >
> >     >
> >     > So it appears that fastboot can't find the device. Running *$ sudo
> >     > fastboot devices -l* returned no results. Probably the reason for
> this
> >     > is that I'm connected to Odroid via UART cable.
> >     > So I gave it another try, using fatload option.
> >     >
> >     > 1. Copied *uImage* &*image.elf* from *<build-dir>/var/run/log/*
> >     over to
> >     > the first partition of my MicroSD card
> >     > 2. Connected to Odroid via UART cable, powered it on and
> >     interrupted the
> >     > boot sequence
> >     >
> >     > then:
> >     > Exynos5422 # fatload mmc 0 0x48000000 uImage
> >     > there are pending interrupts 0x00000001
> >     > reading uImage
> >     >
> >     > 540242 bytes read
> >     > Exynos5422 # bootm 0x48000000
> >     >
> >     > Result:
> >     >
> >     > ## Booting kernel from Legacy Image at 48000000 ...
> >     >   Image Name:
> >     >   Image Type: ARM Linux Kernel Image (gzip compressed)
> >     >   Data Size: 540178 Bytes = 527.5 KiB
> >     >   Load Address: 80000000
> >     >   Entry Point: 80000000
> >     >   Verifying Checksum ... OK
> >     >   Uncompressing Kernel Image ... OK
> >     >   Starting kernel ...
> >     >   7ၷ`�##������@�����������7ٷ`�##��������@�����##��@...470... at ...467...`
> >     >   `hqioh~�#@@@��@...470... at ...468...``````a�~�##��@...470...@��oi��gp@@��@...470... at ...469...```fg�h#
> @��@...470...@��
> >     >   pnia�h##�a`v@��p��h`p@@�q at ...470...#
> >     >
> >     > image.elf gave me the same output.
> >     >
> >     > Any suggestions on what goes wrong and which way to move next?
> >     >
> >     > Regards
> >     >
> >     >
> >     >
> >     > On Thu, Dec 1, 2016 at 5:08 AM, Stefan Kalkowski
> >     > <stefan.kalkowski at ...1...
> >     <mailto:stefan.kalkowski at ...1...>
> >     > <mailto:stefan.kalkowski at ...1...
> >     <mailto:stefan.kalkowski at ...1...>>> wrote:
> >     >
> >     >     sorry, I just recognized the SoCs are not fully equal. The
> >     first Odroid
> >     >     XU, which we are using is Exynos 5410, and your board uses
> >     Exynos 5422.
> >     >     Anyway, I would follow the same approach. Additionally, you
> >     can compare
> >     >     memory settings and I/O memory settings of the UART within
> >     device-tree
> >     >     specifications of the two boards:
> >     >
> >     >
> >     >
> >      https://raw.githubusercontent.com/torvalds/linux/master/
> arch/arm/boot/dts/exynos5410-odroidxu.dts
> >     <https://raw.githubusercontent.com/torvalds/linux/master/arch/
> arm/boot/dts/exynos5410-odroidxu.dts>
> >     >
> >      <https://raw.githubusercontent.com/torvalds/linux/master/arch/
> arm/boot/dts/exynos5410-odroidxu.dts
> >     <https://raw.githubusercontent.com/torvalds/linux/master/arch/
> arm/boot/dts/exynos5410-odroidxu.dts>>
> >     >
> >     >     and:
> >     >
> >     >
> >     >
> >      https://raw.githubusercontent.com/torvalds/linux/master/
> arch/arm/boot/dts/exynos5422-odroidxu4.dts
> >     <https://raw.githubusercontent.com/torvalds/linux/master/arch/
> arm/boot/dts/exynos5422-odroidxu4.dts>
> >     >
> >      <https://raw.githubusercontent.com/torvalds/linux/master/arch/
> arm/boot/dts/exynos5422-odroidxu4.dts
> >     <https://raw.githubusercontent.com/torvalds/linux/master/arch/
> arm/boot/dts/exynos5422-odroidxu4.dts>>
> >     >
> >     >     Regards
> >     >     Stefan
> >     >
> >     >
> >     >     On 12/01/2016 10:42 AM, Stefan Kalkowski wrote:
> >     >     > Hello Yevgeny Lavrov,
> >     >     >
> >     >     > there is basic support for the Odroid XU regarding Genode's
> >     own kernel
> >     >     > (base-hw). I assume you will be able to start various
> >     scenarios that
> >     >     > only use CPU, Timers and UART on the Odroid XU4 as well,
> >     because they
> >     >     > use the same SoC.
> >     >     >
> >     >     > I would start with connecting a UART cable via the GPIO
> >     ports to your
> >     >     > home computer, and test whether you can interact with a
> >     Linux system
> >     >     > running on top of your test board. After that, you might
> >     play with
> >     >     > u-boot until you can successfully boot over network, e.g., a
> >     Linux
> >     >     > kernel. Possibly, you cannot even network boot on Odroid
> >     XU4, but have
> >     >     > to use fastboot (via USB) instead.
> >     >     >
> >     >     > Finally, you start your Genode development by creating a
> >     >     'hw_odroid_xu'
> >     >     > build directory, add some RUN_OPT variables to the
> >     'etc/build.conf' to
> >     >     > automatically load the setup and interact with the test
> board,
> >     >     > corresponding to the method you are using (either network
> >     boot or
> >     >     > fastboot). Here is some example for the Odroid variant we
> >     are testing
> >     >     > nightly:
> >     >     >
> >     >     >   RUN_OPT += --include image/uboot
> >     >     >   RUN_OPT += --include load/fastboot
> >     >     >   RUN_OPT += --load-fastboot-device 'usb:2-1.8'
> >     >     >   RUN_OPT += --include log/serial
> >     >     >
> >     >     > Then you can start some very basic example, like:
> >     >     >
> >     >     >   make run/log
> >     >     >
> >     >     > and wait, whether you get some output, and if the test
> succeeds.
> >     >     >
> >     >     > For a general introduction to the build environment and
> >     run-script
> >     >     > automatisms, have a look at the Genode foundations:
> >     >     >
> >     >     >
> >     https://genode.org/documentation/genode-foundations-16-05.pdf
> >     <https://genode.org/documentation/genode-foundations-16-05.pdf>
> >     >     <https://genode.org/documentation/genode-foundations-16-05.pdf
> >     <https://genode.org/documentation/genode-foundations-16-05.pdf>>
> >     >     >
> >     >     > In general, it is a good idea to first skim through this
> >     document.
> >     >     >
> >     >     > Best regards,
> >     >     > Stefan
> >     >     >
> >     >     > On 12/01/2016 09:12 AM, Yevgeny Lavrov wrote:
> >     >     >> Greetings
> >     >     >>
> >     >     >> I would like to try Genode on Odroid-XU4. I aware that
> >     there's no
> >     >     >> support available for this ARM device yet. However, I want
> to
> >     >     give it a
> >     >     >> try, but I don't know where to start. Can you please point
> >     me in the
> >     >     >> right direction so I can find the information that I'll
> >     need to get
> >     >     >> started this task?
> >     >     >>
> >     >     >> Thanks
> >     >     >>
> >     >     >>
> >     >     >>
> >     >
> >      ------------------------------------------------------------
> ------------------
> >     >     >>
> >     >     >>
> >     >     >>
> >     >     >> _______________________________________________
> >     >     >> genode-main mailing list
> >     >     >> genode-main at lists.sourceforge.net
> >     <mailto:genode-main at lists.sourceforge.net>
> >     >     <mailto:genode-main at lists.sourceforge.net
> >     <mailto:genode-main at lists.sourceforge.net>>
> >     >     >> https://lists.sourceforge.net/lists/listinfo/genode-main
> >     <https://lists.sourceforge.net/lists/listinfo/genode-main>
> >     >     <https://lists.sourceforge.net/lists/listinfo/genode-main
> >     <https://lists.sourceforge.net/lists/listinfo/genode-main>>
> >     >     >>
> >     >     >
> >     >
> >     >     --
> >     >     Stefan Kalkowski
> >     >     Genode Labs
> >     >
> >     >     https://github.com/skalk · http://genode.org/
> >     >
> >     >     ------------------------------------------------------------
> ------------------
> >     >     _______________________________________________
> >     >     genode-main mailing list
> >     >     genode-main at lists.sourceforge.net
> >     <mailto:genode-main at lists.sourceforge.net>
> >     >     <mailto:genode-main at lists.sourceforge.net
> >     <mailto:genode-main at lists.sourceforge.net>>
> >     >     https://lists.sourceforge.net/lists/listinfo/genode-main
> >     <https://lists.sourceforge.net/lists/listinfo/genode-main>
> >     >     <https://lists.sourceforge.net/lists/listinfo/genode-main
> >     <https://lists.sourceforge.net/lists/listinfo/genode-main>>
> >     >
> >     >
> >     >
> >     >
> >     >
> >     ------------------------------------------------------------
> ------------------
> >     > Check out the vibrant tech community on one of the world's most
> >     > engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> >     >
> >     >
> >     >
> >     > _______________________________________________
> >     > genode-main mailing list
> >     > genode-main at lists.sourceforge.net
> >     <mailto:genode-main at lists.sourceforge.net>
> >     > https://lists.sourceforge.net/lists/listinfo/genode-main
> >     <https://lists.sourceforge.net/lists/listinfo/genode-main>
> >     >
> >
> >     --
> >     Stefan Kalkowski
> >     Genode Labs
> >
> >     https://github.com/skalk · http://genode.org/
> >
> >     ------------------------------------------------------------
> ------------------
> >     Check out the vibrant tech community on one of the world's most
> >     engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> >     _______________________________________________
> >     genode-main mailing list
> >     genode-main at lists.sourceforge.net
> >     <mailto:genode-main at lists.sourceforge.net>
> >     https://lists.sourceforge.net/lists/listinfo/genode-main
> >     <https://lists.sourceforge.net/lists/listinfo/genode-main>
> >
> >
> >
> >
> > ------------------------------------------------------------
> ------------------
> > Check out the vibrant tech community on one of the world's most
> > engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> >
> >
> >
> > _______________________________________________
> > genode-main mailing list
> > genode-main at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/genode-main
> >
>
> --
> Stefan Kalkowski
> Genode Labs
>
> https://github.com/skalk · http://genode.org/
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> genode-main mailing list
> genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20170119/5c238a7f/attachment.html>


More information about the users mailing list