README.initrd ============= Here are some hints on using initrd to run isapnp before the kernel initialises its drivers. Initrd allows a kernel to execute scripts and programs before mounting the final root device. Using isapnp during this phase would allow the root device to be a PnP device, but the device drivers would still have to be compiled as modules. It is a copy (reproduced with permission) of an email Markus Gutschke sent me in reply to a comment he made on the pnp-list. The comment was ------------------------------------------------------------------ > Until PNP has been fully integrated into the kernel, you can use > isapnptools for configuring your devices. This also works for the boot > device. The trick is using a initial RAM disk that start isapnptools > before proceeding with the regular boot strapping. Read > "/usr/src/linux/Documentation/initrd.txt" for further information. ------------------------------------------------------------------ I haven't had chance to try it out yet, but it may help someone.. ------------------------------------------------------------------ Date: Mon, 6 Jan 1997 22:08:11 +0100 From: Markus Gutschke To: Peter Fox Subject: Re: Using initrd for isapnptools Hi Peter, > Thanks for this hint. I would like to add this to the README, do > you have a real example ? So far, I still do not have any PNP hardware. I always intended to get new hardware that I assumed would be PNP, but it then turned out to be legacy hardware. So I cannot provide a real-life example. > I am now the proud owner of a network card, and thus intend to > expand the README for the module approach (which works for me), > I shall also have a go at the initrd approach, though it looks > potentially more complicated. I installed an initrd a while ago, when I added initrd support to my "etherboot" BOOT-Prom software. It actually is very simple if you know what you are doing. I found out, that the easiest way to get started, is: - get hold of "yard" (yet another rescue disk). It allows you to build a small customized rescue disk. - using "yard" build a bare-bones system and keep removing all unneeded parts. Actually, you do not need much more than "/linuxrc", "/dev/zero" and possibly a few other entries in "/dev". Some libraries in "/lib" (probably "libc.so" and possibly "libm.so") unless you link everything statically. The linux loader "/lib/ld.so". A copy of all of the programs that you call from "/linuxrc" (including "/bin/sh" if "/linuxrc" is a shell script). Possibly a mount point for the "/proc" filesystem. - when the rescue disk works, use the image to convert is into an initrd. Good luck, Markus