TIP: Click on subject to list as thread! ANSI
echo: rberrypi
to: ANOTHER DAVE
from: THEO MARKETTOS
date: 2017-07-19 11:52:00
subject: Re: Dreaming of the next

Another Dave  wrote:
> The main bugbear seems to be the boot process from the SD card.
> Apparently the beaglebone can be booted using free software (Das U-Boot)
> whereas the Pi SD boot software is closed source. I haven't got a
> beaglebone so I can't really help there.

I don't know what you need the source to: the ARM-side boot process is quite
simple.  The file that you said was the 'kernel' in config.txt is loaded
into RAM and execution is started.  It's basically the Linux boot process.
All the heavy lifting is done by the GPU.

This is a bit old, but gives the basic idea of the Linux-ARM boot:
http://www.simtec.co.uk/products/SWLINUX/files/booting_article.html
(not Pi specific; device tree is now used instead of ATAGS)

For querying locations of things (eg the framebuffer), you can use the
mailbox property interface:
https://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface

> 3D acceleration is not an issue because, as you say, Minix is purely
> educational and doesn't need it.

Arguably this is more friendly to an educational OS, because the GPU does
all the SoC bringup (setting up power rails, clocks, configuring memory
controllers, etc).  You can get started running your OS in a much more
pleasant environment than traditional bare-metal SoC bringup (which
typically requires JTAG to see what's going on, and lots of head
scratching).

One advantage for learning is that the GPU can already drive the SD card so,
if your 'kernel' includes a ramdisc image, the GPU will load it all
together.  That means you don't need to deal with writing an SDHCI driver
until further down the line because you can either run from ramdisc or mount
a USB stick as root filesystem.  Though you will have to deal with USB
fairly soon if you want a keyboard, unless a serial console is sufficient.

Synopsys dwcusb and SDHCI are the most complex peripherals on the Pi, that
need fairly large software stacks to deal with.  The GPU is mostly
abstracted so the interface is a lot nicer, as long as you're not expecting
2D/3D offload.

Theo

--- SoupGate-Win32 v1.05
* Origin: Agency HUB, Dunedin - New Zealand | FidoUsenet Gateway (3:770/3)

SOURCE: echomail via QWK@docsplace.org

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.