Own startup code before kernel initialisation


I'm not a good high-level programmer at all but have some experience in assembly programming. What I want to do is to add a private routine to an existing ARM kernel which should be executed before the kernel initialises. So far, I have used hexedit to squeeze in some operations right at the beginning of the kernel binary. This really worked because there were eight NOPs (mov r0, r0) at the beginning of the kernel which I simply overwrote with my code. Now I would like to do it the clean way. From what I have gathered in the net, this code should go to "FIXUP" which in the kernel source that I have is quite a big C-function that I don't understand at all. Now, my understanding of the environment at this point is quite limited (you may wonder why I am doing this, then. Well, I want to learn and I want to add a screen blanking routine to get rid of some junk that gets displayed during boot). So I wonder whether I can do a function call from the code in FIXUP to my own asm function which would allow me to write a nice asm routine outside the kernel src and link it in the right place. Calling a function would require a working stack, though, which I fear isn't available at this point in time. Or is it?

Thanks, Philipp.

Reply to
Loading thread data ...

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.