grub2/include/grub/i386/pc
robertmh deceb3ecd3 2008-08-17 Robert Millan <rmh@aybabtu.com>
* conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/pc/mmap.c'.

        * include/grub/i386/pc/init.h (GRUB_MACHINE_MEMORY_AVAILABLE)
        (GRUB_MACHINE_MEMORY_RESERVED): New macros.
        (grub_machine_mmap_iterate): New function declaration.
        * include/grub/multiboot.h (struct grub_multiboot_mmap_entry): New
        structure.
        (GRUB_MMAP_MEMORY_AVAILABLE, GRUB_MMAP_MEMORY_RESERVED): New
        macros.

        * kern/i386/pc/init.c (grub_machine_init): Replace hardcoded region
        type check value with `GRUB_MACHINE_MEMORY_AVAILABLE'.
        Move e820 parsing from here ...
        * kern/i386/pc/mmap.c: New file.
        (grub_machine_mmap_iterate): ... to here.

        * include/grub/i386/coreboot/memory.h: Remove `<grub/err.h>'.
        (GRUB_LINUXBIOS_MEMORY_AVAILABLE): Rename (for consistency) to ...
        (GRUB_MACHINE_MEMORY_AVAILABLE): ... this.  Update all users.
        (grub_available_iterate): Redeclare to return `void', and redeclare
        its hook to use grub_uint64_t as addr and size parameters, and rename
        to ...
        (grub_machine_mmap_iterate): ... this.  Update all users.

        * kern/i386/coreboot/mmap.c (grub_mmap_iterate): Simplify parser loop
        to make it more readable.  Rename to ...
        (grub_machine_mmap_iterate): ... this.

        * loader/i386/pc/multiboot.c (mmap_addr, mmap_length): New variables.
        (grub_get_multiboot_mmap_len, grub_fill_multiboot_mmap): New functions.
        (grub_multiboot): Allocate an extra region after the payload, and fill
        it with a Multiboot memory map.  Adjust a.out loader to calculate size
        with the extra space.
        (grub_multiboot_load_elf32): Adjust elf32 loader to calculate size
        with the extra space.
2008-08-17 16:32:18 +00:00
..
biosdisk.h 2008-03-24 Bean <bean123ch@gmail.com> 2008-03-24 04:13:37 +00:00
boot.h 2008-02-03 Yoshinori K. Okuji <okuji@enbug.org> 2008-02-03 18:56:08 +00:00
chainloader.h 2007-07-22 Yoshinori K. Okuji <okuji@enbug.org> 2007-07-21 23:32:33 +00:00
console.h 2007-07-22 Yoshinori K. Okuji <okuji@enbug.org> 2007-07-21 23:32:33 +00:00
init.h 2008-08-17 Robert Millan <rmh@aybabtu.com> 2008-08-17 16:32:18 +00:00
kernel.h 2008-08-02 Robert Millan <rmh@aybabtu.com> 2008-08-02 12:17:44 +00:00
loader.h 2007-10-17 Robert Millan <rmh@aybabtu.com> 2007-10-17 09:38:55 +00:00
machine.h 2007-11-10 Robert Millan <rmh@aybabtu.com> 2007-11-10 20:23:14 +00:00
memory.h 2008-04-25 Bean <bean123ch@gmail.com> 2008-04-25 19:41:51 +00:00
pxe.h 2008-08-05 Bean <bean123ch@gmail.com> 2008-08-05 15:15:59 +00:00
serial.h 2007-07-22 Yoshinori K. Okuji <okuji@enbug.org> 2007-07-21 23:32:33 +00:00
time.h 2007-10-22 Robert Millan <rmh@aybabtu.com> 2007-10-22 19:59:33 +00:00
vbe.h 2008-01-01 Vesa Jaaskelainen <chaac@nic.fi> 2008-01-01 12:02:07 +00:00
vbeblit.h 2007-07-22 Yoshinori K. Okuji <okuji@enbug.org> 2007-07-21 23:32:33 +00:00
vbefill.h 2007-07-22 Yoshinori K. Okuji <okuji@enbug.org> 2007-07-21 23:32:33 +00:00
vbeutil.h 2007-07-22 Yoshinori K. Okuji <okuji@enbug.org> 2007-07-21 23:32:33 +00:00
vga.h 2008-01-21 Robert Millan <rmh@aybabtu.com> 2008-01-21 15:48:27 +00:00