Everything Else

Device Tree Blob, PowerPC has changed the game-rule, again

So, one of the more challenging (I don't want to say very annoying, but it's so) aspects of porting Linux (and U-Boot) to your new board is the recent (>=2.6.25) requirement for a "device tree blob".

DTB is also referred to as a flat device tree, device tree binary, or simply device tree.

At the beginning it was a piece of cake: easy life, everything worked out of the shell. There was an elf-loader, able to understand the entry point, where the ram begins, ends, where it should place things, the load-point. And it was so fab, since the job was done silently.

Then they wanted to improve, because life could be boring without imprecations, so they wanted to introduce the so called "new native image format", mainly used by U-Boot-new-world, still used in embedded.

The first dot uImage (now it's called U-Boot-old-world) didn't add anything, any boot code, any table code. It just wraped a compressed kernel (objcopy -o binary kernel.elf) in the uImage data structure. It was easy, like a piece of cake, and I personally loved it.

But they wanted to "improve", so the next generation started requiring a version of U-Boot that was able to pass a device tree to the kernel at boot, and it was the beginning of the end. Everything is still broken since then.

Porting a new kernel to an old board is a challenge.

[code]
# tftp $load_addr T211-RC2.uImage
# bootm
## Booting image at 00800000 ...
Image Name: experiment#211, kernel-v4.9.16-RC2
Created: 2017-05-08 9:01:17 UTC
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 2262336 Bytes = 2.2 MB
Load Address: 00500000
Entry Point: 005000a4
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Memory
Head Full of Snow. Lemon Scented You
Do not double post.

The only difference between this post and the other, that I can see, is that this one here is unfinished.

You do have the possibility of editing posts, so why create a second new post instead?

Locking.
The Bandito wrote: In a few years, no doubt, you'll be able to buy a computer,
software and operating system that will match the capabilities
of your current Amiga at about the price you paid for the
Amiga way back when. But you can smile to yourself, knowing
that you were touching the future years before the rest of
the world. And that other computers and operating systems
will do with brute force what the Amiga did years before with
grace, elegance and style.


Eroteme.ch - my end of the internet...