Data storing
Hello!
I need to make some checks (search for particular BIOS version) in the very start of the kernel. I need to store this data (zero page is pretty good for this, I think) and access it from arch/i386/boot/setup.S, arch/i386/boot/compressed/misc.c and in some other places. Can somebody suggest me good place to put check procedure and how to pass data?
Best regards,
Andrew.
Quoted 10 lines · Andrew Kirilenko
Hello!
I need to make some checks (search for particular BIOS version) in the very start of the kernel. I need to store this data (zero page is pretty good for this, I think) and access it from
arch/i386/boot/setup.S,arch/i386/boot/compressed/misc.cand in some other places. Can somebody suggest me good place to put check procedure and how to pass data?Best regards,
Andrew.
I use 0x000001f0 (absolute) for relocating virtual disk code for booting embedded systems. After Linux is up, the code remains untouched. This might be a good location because the BIOS doesn't use it during POST/boot and Linux (currently) leaves it alone. Of course, this doesn't mean that somebody will not destroy this area in the future (probably to spite you and me!!!).
Cheers,
Dick Johnson
Penguin : Linux version 2.4.20 on an i686 machine (797.90 BogoMips). Why is the government concerned about the lunatic fringe? Think about it.
Hello!
Quoted 6 lines
Quoted 5 lines
I need to make some checks (search for particular BIOS version) in the very start of the kernel. I need to store this data (zero page is pretty good for this, I think) and access it from
arch/i386/boot/setup.S,arch/i386/boot/compressed/misc.cand in some other places. Can somebody suggest me good place to put check procedure and how to pass data?
Quoted 6 lines
I use
0x000001f0(absolute) for relocating virtual disk code for booting embedded systems. After Linux is up, the code remains untouched. This might be a good location because the BIOS doesn't use it during POST/boot and Linux (currently) leaves it alone. Of course, this doesn't mean that somebody will not destroy this area in the future (probably to spite you and me!!!).
Yes, I know about this area, as I wrote (Documentation/i386/zero-page.txt). And I even know how to pass parameter from zero-page into kernel space (setup.c). But I need to use this parm, I fetched, in both setup.S and misc.c (see below). And I don't have any ideas about execute order of setup.S, misc.c and setup.c.
Best regards,
Andrew.
On Wed, 23 Apr 2003 15:28:08 +0300 Andrew Kirilenko <[email protected]> wrote:
| > > I need to make some checks (search for particular BIOS version) in the | > > very start of the kernel. I need to store this data (zero page is pretty | > > good for this, I think) and access it from arch/i386/boot/setup.S, | > > arch/i386/boot/compressed/misc.c and in some other places. Can somebody | > > suggest me good place to put check procedure and how to pass data? | > | > I use 0x000001f0 (absolute) for relocating virtual disk code | > for booting embedded systems. After Linux is up, the code remains | > untouched. This might be a good location because the BIOS doesn't | > use it during POST/boot and Linux (currently) leaves it alone. | > Of course, this doesn't mean that somebody will not destroy this | > area in the future (probably to spite you and me!!!). | | Yes, I know about this area, as I wrote (Documentation/i386/zero-page.txt). | And I even know how to pass parameter from zero-page into kernel space | (setup.c). But I need to use this parm, I fetched, in both setup.S and misc.c | (see below). And I don't have any ideas about execute order of setup.S, | misc.c and setup.c.
Hi,
Some of this early boot info can be found in my (somewhat old) "Linux 2.4.x Initialization for IA-32", located at
http://www.xenotime.net/linux/linit/lin240_init_x86.html
--
~Randy