Stefan Reinauer wrote:
Ah! In this case I think the file needs to be in rom uncompressed all the time because we want to read cmos options before ram is up.
Good to know.
So the program will not live at the address it asked for?
It will - terminology is a bit unforgiving here, as the final memory layout is called "ELF Image", just like the file as generated by the linker.
Anyway: The proposal is to decompress the ELF image (the file generated by the linker) a second time, if the default location where it is compressed to collides with the memory used by the payload. When doing it the second time, all information is available to avoid another collision.
If it gets your trouble done for the moment, please move it, until we really figured the ELF stuff out.
Moving it only helps if we decide on a memory layout. I need a place where I can decompress the ELF image to - either dynamically using a method like the one above or fixed, and reserved for that purpose.
As for my "trouble of the moment", I can just go on uncompressing the payload to 0x80000 (which I hardcoded) and move on with grub. That's not a permanent solution, though.
Regards, Patrick Georgi