Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
Creation of the self-extracting compressed kernel image (vmlinuz)
-----------------------------------------------------------------

This can be slightly confusing because it's a process with many steps.

The kernel object built by the arch/etrax100/Makefile, vmlinux, is split
by that makefile into text and data binary files, vmlinux.text and
vmlinux.data.

Those files together with a ROM filesystem can be catted together and
burned into a flash or executed directly at the DRAM origin.

They can also be catted together and compressed with gzip, which is what
happens in this makefile. Together they make up piggy.img.

The decompressor is built into the file decompress.o. It is turned into
the binary file decompress.bin, which is catted together with piggy.img
into the file vmlinuz. It can be executed in an arbitrary place in flash.

Be careful - it assumes some things about free locations in DRAM. It
assumes the DRAM starts at 0x40000000 and that it is at least 8 MB,
so it puts its code at 0x40700000, and initial stack at 0x40800000.

-Bjorn