Hi Simon,
On Fri, Nov 06, 2020 at 08:50:16AM +0100, Simon Himmelbauer wrote:
Hi Stefan,
My first suspicion would be that u-boot and Fiasco.OC are using different UART settings, e.g., the baudrate might be different. With which baudrate do you connect to the serial line? I would expect Fiasco.OC to use 115200.
You could also try to find the place in Fiasco.OC/bootstrap where the UART gets configured, and comment out any hardware access there, to verify/falsify my idea. The UART is already configured properly by u-boot, so Fiasco.OC should be able to send characters successfully over serial line.
Thanks, I will try this once I have slightly more time. Noteworthy, the UART is indeed configured to 115200.
I have also tried to directly launch the image from the Pi to compare the output on a regular HDMI-screen. However, in this case, I receive no output at all after booting the image in uboot so I am not sure whether the source of the error is really the UART.
I do not understand what you mean with: "directly launch the image from the Pi". What did you do in contrast to reading the image from sd-card?
I wouldn't wonder if the HDMI output keeps blank when booting some scenario. Or is the image you try to boot known to work interactively with a graphical user-interface? Anyway, without having at least a serial line output, it will be impossible to find potential problems here.
I can remember in the back of my head that there are _two_ UART devices Pl011 and some SoC specific miniuart. Maybe Fiasco.OC and u-boot use different once?
If you do not think it is UART-related, you have to inspect whether the binary you load is correctly copied to the right memory location, and the bootelf command addresses that same location.
We typically, do not use 'bootelf' in u-boot, but bootm instead. In that case, you should add '--include image/uboot' to the RUN_OPT variable in your Genode build environment, e.g., in 'etc/build.conf'. The resulting uImage will reside in 'var/run/[run-script-name]/uImage' in your build-directory.
Regards Stefan
Best regards, Simon
On 05.11.20 12:00, users-request@lists.genode.org wrote:
Send users mailing list submissions to users@lists.genode.org
To subscribe or unsubscribe via the World Wide Web, visit https://lists.genode.org/listinfo/users or, via email, send a message with subject or body 'help' to users-request@lists.genode.org
You can reach the person managing the list at users-owner@lists.genode.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of users digest..."
Today's Topics:
1. Re: Running Genode on a Raspberry Pi 3 (Stefan Kalkowski) 2. Re: partial free/split for ds (Christian Helmuth) 3. Re: partial free/split for ds (Alexander Tormasov)
Message: 1 Date: Wed, 4 Nov 2020 13:10:40 +0100 From: Stefan Kalkowski stefan.kalkowski@genode-labs.com To: Genode users mailing list users@lists.genode.org Subject: Re: Running Genode on a Raspberry Pi 3 Message-ID: 20201104121040.43fbqvh3yju4mwp3@genode-labs.com Content-Type: text/plain; charset=utf-8
Hello Simon,
On Wed, Nov 04, 2020 at 11:54:01AM +0100, Simon Himmelbauer wrote:
Hi Genodians,
I am trying to get a Genode image using the Fiasco.OC-kernel running on an RPi 3. I created an arm_v8a build directory and accordingly set the KERNEL and BOARD variable. I also compiled a u-boot image from the upstream repository.
When I attempt to boot the image from the u-boot prompt, I receive the output below with no further reaction. I am still on Genode 19.05 because of a few modifications so I unless there is no other solution, I would like to avoid upgrading to a newer version.
I also tried to run a few L4Re images provided here [0] with the same result, so the problem might not even be specific to Genode.
Does anyone else have experiences with running on an RPi 3? Is there anything I am missing here?
My first suspicion would be that u-boot and Fiasco.OC are using different UART settings, e.g., the baudrate might be different. With which baudrate do you connect to the serial line? I would expect Fiasco.OC to use 115200.
You could also try to find the place in Fiasco.OC/bootstrap where the UART gets configured, and comment out any hardware access there, to verify/falsify my idea. The UART is already configured properly by u-boot, so Fiasco.OC should be able to send characters successfully over serial line.
Regards Stefan
Best regards,
Simon
[0] https://l4re.org/download/snapshots/pre-built-images/arm64/
U-Boot 2021.01-rc1-00243-g7a8ac9df5d (Nov 04 2020 - 01:56:08 +0100)
DRAM: 948 MiB RPI 3 Model B (0xa22082) MMC: mmc@7e202000: 0, sdhci@7e300000: 1 Loading Environment from FAT... *** Warning - bad CRC, using default environment
In: serial Out: vidconsole Err: vidconsole Net: No ethernet found. starting USB... Bus usb@7e980000: USB DWC2 scanning bus usb@7e980000 for devices... 3 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found Hit any key to stop autoboot: 0 U-Boot> fatload mmc 0 $loadaddr image.elf 3208480 bytes read in 137 ms (22.3 MiB/s) U-Boot> bootelf ## Starting application at 0x01000000 ^��Z��%��XE��TmyAEDMe�@�*`)5��R[qP��� �����?�RQ@���VRY��5� �R A!��y=AA!y5YE)�}AG@A�Ţ�A����ӉR
Genode users mailing list users@lists.genode.org https://lists.genode.org/listinfo/users
Genode users mailing list users@lists.genode.org https://lists.genode.org/listinfo/users