Port-arm archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Problem booting Orange Pi One on NetBSD 10.0_BETA



On Wed, Jul 26, 2023 at 08:21:46AM -0400, Mouse wrote:
> >> Is there a "from zero" text anywhere on how these systems boot, how
> >> to set them up [...]
> 
> > The problem is that the low level booting is different per SoC.  If
> > there is a pkgsrc u-boot pkg for a SoC it comes with machine readable
> > instructions for "installboot" to place the boot loader binary at the
> > proper place of the SD card image.
> 
> I didn't write the text double-quoted above, but I easily could have,
> especially if I had such a machine.
> 
> Speaking personally, I don't like unexplained binary blobs, and at my
> current level of understanding that includes everything before the
> kernel starts, especially u-boot and dtb.  (This is actually one reason
> I haven't sought after any such machines.)
> 
> My questions would be things like: who creates these u-boots?  How?
> Why the dtb paradigm instead of normal hardware probing by the kernel?
> What, if anything, does u-boot do besides loading the dtb and loading
> and starting the kernel?  (For that matter, why the term "u-boot"?)
> 

I will answer from what I have gathered so far (if someone knows better,
please correct or make complements):

u-boot, contrary to what one could thing at first, is not Uefi
Bootloader: it was a "universal" bootloader but not targetting x86 
machines, already covered. In fact, later, it
evolved to implement a part of the UEFI protocol for booting purposes.

When it comes to ARM SoC, in fact the hardware makers do not provide
a "BIOS" or an UEFI software: the hardware is designed to give hand, in
a specific place via specific means to a bootloader and, in fact, to
u-boot.

The DTD comes as an evolution from Open Firmware Device Tree. It was
first a way to specify, in binary, a tree of hardware devices for
Open Firmware implementations. Then a FDT ("Flattened Device Tree") was
created in order to be readable without requiring an Open Firmware
implementation.
-- 
        Thierry Laronde <tlaronde +AT+ polynum +dot+ com>
                     http://www.kergis.com/
                    http://kertex.kergis.com/
Key fingerprint = 0FF7 E906 FBAF FE95 FD89  250D 52B1 AE95 6006 F40C


Home | Main Index | Thread Index | Old Index