On 24/06/11 01:42, Vladimir 'φ-coder/phcoder' Serbinenko wrote: > On 17.06.2011 18:11, Pierre-Nicolas Clauss wrote: >> Hi folks, >> >> I subscribed to this list in order to share with you a humble >> contribution of mine to grub. >> >> As an OS developer enthusiastic, I needed to load a file to memory at >> a given specific address.
I also have such a requirement - I am developing U-Boot for x86 systems and I have real trouble getting documentation for the SDRAM initialisation code. I figured I could leave that to BIOS for the time being and use GRUB to load my U-Boot image into memory. This way, I do not have to flash the BIOS chip until very late in the development cycle. > While such a functionality would be a toy for loader developpers, it's > completely useless for the end users. If the user has to know any single > address or any single address figures in grub.cfg it's automatically a > bad design. Also while it would be possible to write a loader in scripts > using such kind of commands it's simply a wrong place for it. Loaders > have to be written in C. Also people who really need such kind of > functionality (devs) can quickly add such a kludge to the loader they > are currently developping. As for the user the syntax has to be sth like > loader_name <file> <args> Well, I now have GRUB2 installed on a USB pen drive and have it run memtestx86+. So from here I would like it to be a simple matter of copying the U-Boot binary onto the USB pen drive and adding an entry in the grub.cfg file - But I need the 'raw image loader' module to do this > This allows for a much higher flexibility, portability and future-proof. >> No command in grub 1.99 was fitting my needs (as my file as no >> semantic known to grub: it's not a module, it's not an initrd, it's >> not a multiboot kernel either), so I developed my own module. >> > What is it then? I'm willing to consider adding new loading as long as > they are sane and make sense. I think a command like: exec_file file load_address [execute_address] would fit my needs perfectly. The U-Boot images are raw (not ELF) with a 32-bit entry point at the first byte of the file but this may change (I may put the version string at the start of the file) so the optional execute_address could come in handy. Regards, Graeme _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel