Xavier Pegenaute xpegenaute@telepolis.es writes:
Hi,
any one can help me with this ?
I was thinking that after crt0.S in ROMBASE (0x80000 for Matsonic) copy the LinuxBios (the payload) into DRAM (RAMBASE 0x4000 for Matsonic) follow the code to hardwaremain() initialitizing all hardware and arrive in write_tables that prepare the memory to let information about the hardware to the next O.S., and now we can choose between:
- We want start an ELF binary (not payload) that is in DoC (p.e.) after
LinuxBios. Then we execute elfboot() that look inside the ROM for the next code starting with a valid ELF header, build the segments, copy the segments and give the control to the program.
No problem in this case, i think.
Sounds like standard use.
- We want start a Linux Kernel that is recorded (neither payload) after
LinuxBios binary in DoC (p.e.), then we execute linuxbiosmain() and in the end of this function we make a long jump to 0x90000.
Linuxbiosmain() is deprecated code and it always jumps to 0x100000 1MB. Anything is not done. And everyone is encouraged not to use linuxbiosmain for new deployments.
Here, i don't see what function in linuxbiosmain() copy the code of Kernel to DRAM.Any one know it ?
It is the gunzip part. But please don't use that.
Eric