Commit Graph
100 Commits
Author SHA1 Message Date
robertmh 9f3af64471 run autogen.sh ... 2008-11-07 19:12:11 +00:00
robertmh 651c29b79e 2008-11-07 Robert Millan <rmh@aybabtu.com>
Modularize at_keyboard.mod:

            * conf/i386.rmk (pkglib_MODULES): Add `at_keyboard.mod'.
            (at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS)
            (at_keyboard_mod_LDFLAGS): New variables.

            Actual terminal split:

            * include/grub/term.h (struct grub_term): Split in ...
            (struct grub_term_input): ... this, and ...
            (struct grub_term_output): ... this.  Update all users.
            (grub_term_set_current): Split in ...
            (grub_term_set_current_input): ... this, and ...
            (grub_term_set_current_output): ... this.
            (grub_term_get_current): Split in ...
            (grub_term_get_current_input): ... this, and ...
            (grub_term_get_current_output): ... this.
            (grub_term_register): Split in ...
            (grub_term_register_input): ... this, and ...
            (grub_term_register_output): ... this.
            (grub_term_unregister): Split in ...
            (grub_term_unregister_input): ... this, and ...
            (grub_term_unregister_output): ... this.
            (grub_term_iterate): Split in ...
            (grub_term_iterate_input): ... this, and ...
            (grub_term_iterate_output): ... this.

            * kern/term.c (grub_term_list): Split in ...
            (grub_term_list_input): ... this, and ...
            (grub_term_list_output): ... this.  Update all users.
            (grub_cur_term): Split in ...
            (grub_cur_term_input): ... this, and ...
            (grub_cur_term_output): ... this.  Update all users.
            (grub_term_set_current): Split in ...
            (grub_term_set_current_input): ... this, and ...
            (grub_term_set_current_output): ... this.
            (grub_term_get_current): Split in ...
            (grub_term_get_current_input): ... this, and ...
            (grub_term_get_current_output): ... this.
            (grub_term_register): Split in ...
            (grub_term_register_input): ... this, and ...
            (grub_term_register_output): ... this.
            (grub_term_unregister): Split in ...
            (grub_term_unregister_input): ... this, and ...
            (grub_term_unregister_output): ... this.
            (grub_term_iterate): Split in ...
            (grub_term_iterate_input): ... this, and ...
            (grub_term_iterate_output): ... this.

            * kern/misc.c (grub_abort): Split use of grub_term_get_current() into
            a check for input and one for output (and only attempt to get keys
            from user when input works).

            * util/grub-probe.c (grub_term_get_current): Split in ...
            (grub_term_get_current_input): ... this, and ...
            (grub_term_get_current_output): ... this.
            * util/grub-fstest.c: Likewise.
            * util/i386/pc/grub-setup.c: Likewise.
            * util/grub-editenv.c: Likewise.

            Portability adjustments:

            * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Remove
            `term/i386/pc/at_keyboard.c'.
            * kern/ieee1275/init.c [__i386__] (grub_machine_init): Remove call to
            grub_keyboard_controller_init() (now handled by terminal .init).
            * kern/i386/coreboot/init.c (grub_machine_init): Add call to
            grub_at_keyboard_init().
            * include/grub/i386/ieee1275/console.h (grub_keyboard_controller_init)
            (grub_console_checkkey, grub_console_getkey): Remove (now provided by
            at_keyboard.mod via input terminal interface).
            * include/grub/i386/coreboot/console.h: Convert into a stub for
            `<grub/i386/pc/console.h>'.

            Migrate full terminals to new API:

            * term/efi/console.c (grub_console_term): Split into ...
            (grub_console_term_input): ... this, and ...
            (grub_console_term_output): ... this.  Update all users.
            * term/ieee1275/ofconsole.c: Remove __i386__ hack.
            (grub_ofconsole_init): Split into ...
            (grub_ofconsole_init_input): ... this, and ...
            (grub_ofconsole_init_output): ... this.
            (grub_ofconsole_term): Split into ...
            (grub_ofconsole_term_input): ... this, and ...
            (grub_ofconsole_term_output): ... this.  Update all users.
            * term/i386/pc/serial.c (grub_serial_term): Split into ...
            (grub_serial_term_input): ... this, and ...
            (grub_serial_term_output): ... this.  Update all users.
            * term/i386/pc/console.c (grub_console_term): Split into ...
            (grub_console_term_input): ... this, and ...
            (grub_console_term_output): ... this.  Update all users.
            (grub_console_term_input): Only enable it on PC/BIOS platform.
            (grub_console_init): Remove grub_keyboard_controller_init() call.

            Migrate input terminals to new API:

            * term/i386/pc/at_keyboard.c: Replace `cpu' and `machine' with
            `i386' and `i386/pc' to enable build on x86_64 (this driver is
            i386-specific anyway).
            (grub_console_checkkey): Rename to ...
            (grub_at_keyboard_checkkey): ... this.  Static-ize.  Update all
            users.
            (grub_keyboard_controller_orig): New variable.
            (grub_console_getkey): Rename to ...
            (grub_at_keyboard_getkey): ... this.  Static-ize.  Update all
            users.
            (grub_keyboard_controller_init): Static-ize.  Save original
            controller value so that it can be restored ...
            (grub_keyboard_controller_fini): ... here (new function).
            (grub_at_keyboard_term): New structure.
            (GRUB_MOD_INIT(at_keyboard), GRUB_MOD_FINI(at_keyboard)): New
            functions.

            Migrate output terminals to new API:

            * term/i386/pc/vga.c (grub_vga_term): Change type to
            `struct  grub_term_output'.  Remove `.checkkey' and `.getkey'
            members.  Update all users.
            * term/gfxterm.c (grub_video_term): Change type to
            `struct  grub_term_output'.  Remove `.checkkey' and `.getkey'
            members.  Update all users.
            * include/grub/i386/pc/console.h (grub_console_checkkey)
            (grub_console_getkey): Do not export (no longer needed by gfxterm,
            etc).

            Migrate `terminal' command and userland tools to new API:

            * commands/terminal.c (grub_cmd_terminal): Split into ...
            (grub_cmd_terminal_input): ... this, and ...
            (grub_cmd_terminal_output): ... this.
            (GRUB_MOD_INIT(terminal)): Split `terminal' command in two commands:
            `terminal_input' and `terminal_output'.
            * util/grub.d/00_header.in: Adjust `terminal' calls to new
            `terminal_input' / `terminal_output' API.
            * util/grub-mkconfig.in: Export ${GRUB_TERMINAL_INPUT} and
            ${GRUB_TERMINAL_OUTPUT} instead of ${GRUB_TERMINAL} (and if user
            provided ${GRUB_TERMINAL}, convert it).
2008-11-07 19:11:39 +00:00
robertmh 96e5d876a4 2008-11-04 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_freebsd.in: New file.  Generate grub configuration
        for FreeBSD.
        * conf/common.rmk (grub-mkconfig_SCRIPTS): Add 10_freebsd.
2008-11-04 15:20:35 +00:00
robertmh 926b98230e 2008-11-01 Robert Millan <rmh@aybabtu.com>
* Makefile.in (CPPFLAGS): Fix builddir=. assumption.
        (TARGET_CPPFLAGS): Likewise.
        * genmk.rb (mod_src): Fix builddir=. and srcdir=. assumptions.
2008-11-01 17:44:47 +00:00
robertmh 1432e95890 2008-11-01 Carles Pina i Estany <carles@pina.cat>
* normal/menu.c (run_menu): Add Previous and Next Page keys in menu.
2008-11-01 12:42:27 +00:00
robertmh de4fa71c6c 2008-10-29 Guillem Jover <guillem.jover@nokia.com>
* disk/lvm.c (grub_lvm_scan_device): Fix error recovery by delaying the
        addition of objects until the code is not going to be able to fail.
2008-10-29 19:24:11 +00:00
robertmh b727944702 2008-10-29 Guillem Jover <guillem.jover@nokia.com>
* disk/lvm.c (grub_lvm_scan_device): Fix possible NULL value handling
        (add a missing NULL check, and correct them by moving the pointer
        operations after the actual check).
2008-10-29 19:22:13 +00:00
robertmh 7ab28c2157 2008-10-29 Robert Millan <rmh@aybabtu.com>
* util/i386/pc/grub-install.in: Handle empty string as output from
        make_system_path_relative_to_its_root().
2008-10-29 19:14:12 +00:00
robertmh 1b7748eb13 2008-10-05 Hans Lambermont <hans@lambermont.dyndns.org>
* disk/lvm.c (grub_lvm_scan_device): Allocate buffer space for the
        circular metadata worst case scenario. If the metadata is circular
        then copy the wrap in place.
        * include/grub/lvm.h: Add GRUB_LVM_MDA_HEADER_SIZE, from the LVM2
        project lib/format_text/layout.h
        Circular metadata bug found and patch debugged by Jan Derk Gerlings.
2008-10-05 10:51:23 +00:00
robertmh 556ce6ac48 2008-09-28 Robert Millan <rmh@aybabtu.com>
* fs/iso9660.c (struct grub_iso9660_primary_voldesc): Rename `created'
        to `modified'.  Add the real `created' field.
        (grub_iso9660_uuid): Use `modified' rather than `created' for
        constructing the UUID.
2008-09-28 15:22:28 +00:00
robertmh add6f17a17 2008-09-25 Robert Millan <rmh@aybabtu.com>
* util/grub-mkdevicemap.c (make_device_map): Actually replace all
        instances of grub_util_get_disk_name() (see previous commit).
2008-09-25 14:40:59 +00:00
robertmh 0e981d36bb Forgot to remove files / run autogen.sh 2008-09-25 14:17:43 +00:00
robertmh d2a367b86f 2008-09-25 Robert Millan <rmh@aybabtu.com>
* conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Remove
        `util/i386/get_disk_name.c'.
        * conf/i386-efi.rmk: Likewise.
        * conf/x86_64-efi.rmk: Likewise.
        * conf/i386-coreboot.rmk: Likewise.
        * conf/i386-ieee1275.rmk: Likewise.
        * conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Remove
        `util/ieee1275/get_disk_name.c'.
        * include/grub/util/misc.h (grub_util_get_disk_name): Remove.
        * util/ieee1275/get_disk_name.c: Remove file.
        * util/i386/get_disk_name.c: Remove file.
        * util/grub-mkdevicemap.c (make_device_map): Back to hardcoding
        "hd%d" for device.map entries, rather than using
        grub_util_get_disk_name().
2008-09-25 14:15:24 +00:00
robertmh b0c301f78f 2008-09-24 Carles Pina i Estany <carles@pina.cat>
* disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Fix `unused parameter'
        warning.
        * commands/i386/pc/pxecmd.c (dmraid_nvidia): Likewise.
2008-09-24 16:38:58 +00:00
robertmh 5a0042794d 2008-09-24 Carles Pina i Estany <carles@pina.cat>
* include/grub/i386/pc/console.h (GRUB_TERM_NPAGE):
        Changed to 0x5100.
        (GRUB_TERM_PPAGE): Changed to 0x4900.
2008-09-24 10:22:18 +00:00
robertmh 397093d331 2008-09-24 Robert Millan <rmh@aybabtu.com>
* include/grub/powerpc/ieee1275/console.h (GRUB_CONSOLE_KEY_*): Remove
        macros (they were i386-pc specific).
        * include/grub/sparc64/ieee1275/console.h: Likewise.
        * include/grub/efi/console.h: Likewise.
2008-09-24 10:17:56 +00:00
robertmh 89d5ffcfd1 2008-09-08 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Skip
        segments when their filesz is zero (grub_file_read() interprets
        zero-size as "read untill EOF", which results in memory corruption).
        Use `lowest_segment' rather than 0 for calculating the current
        segment load address.
2008-09-08 19:10:16 +00:00
robertmh 40da438f10 2008-09-08 Robert Millan <rmh@aybabtu.com>
* util/hostdisk.c (open_device): Replace a grub_util_info() call
        with grub_dprintf("hostdisk", ...), as it was so verbose that it
        clobbered useful information.
2008-09-08 14:00:29 +00:00
robertmh ddbf5556a7 2008-09-08 Robert Millan <rmh@aybabtu.com>
* include/grub/util/biosdisk.h: Move to ...
        * include/grub/util/hostdisk.h: ... here.  Update all users.
        * util/biosdisk.c: Move to ...
        * util/hostdisk.c: ... here.  Update all users.
2008-09-08 13:52:30 +00:00
robertmh 783d0f484f 2008-09-07 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c (mmap_addr, mmap_length): Remove
        variables.
        (grub_multiboot): Move `mbi' allocation upwards, so that mmap address
        and length can be stored directly in the `mbi->mmap_addr' and
        `mbi->mmap_length' struct fields.
2008-09-07 17:13:00 +00:00
robertmh 548e2ea57c 2008-09-07 Robert Millan <rmh@aybabtu.com>
* conf/i386.rmk: New file.  Provides declaration for building
        `cpuid.mod'.
        * conf/i386-pc.rmk (pkglib_MODULES): Remove `cpuid.mod'.
        (cpuid_mod_SOURCES, cpuid_mod_CFLAGS, cpuid_mod_LDFLAGS): Remove
        variables.
        Include `conf/i386.mk'.
        * conf/i386-efi.rmk: Likewise.
        * conf/x86_64-efi.rmk: Likewise.
        * conf/i386-coreboot.rmk: Likewise.
        * conf/i386-ieee1275.rmk: Likewise.
2008-09-07 16:09:21 +00:00
robertmh 9124f65de0 2008-09-03 Robert Millan <rmh@aybabtu.com>
* disk/scsi.c (grub_scsi_open): Remove size limit when printing
        `disk->total_sectors'.
2008-09-03 10:52:07 +00:00
robertmh 93d5cbf809 2008-08-31 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c (grub_get_multiboot_mmap_len): Fix
        declaration.
        (grub_multiboot): Fix a few warnings.
2008-08-31 20:43:03 +00:00
robertmh 21751d508a 2008-08-31 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c: Update comment not to say that
        boot_device support is unimplemented.
2008-08-31 19:25:41 +00:00
robertmh e27a75c58f 2008-08-31 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c: Update comment not to say that a.out
        or memory map support are unimplemented.
2008-08-31 19:12:02 +00:00
robertmh 64d2d53c6b 2008-08-31 Colin D Bennett <colin@gibibit.com>
* util/i386/pc/grub-mkrescue.in: Support multiple overlay directories.
2008-08-31 16:28:32 +00:00
robertmh 4cebd25a85 2008-08-30 Robert Millan <rmh@aybabtu.com>
* kern/i386/pc/startup.S (multiboot_header): Force 4-byte alignment
        as required by Multiboot spec (it was already 4-byte aligned, but
        only by chance).
2008-08-30 17:51:24 +00:00
robertmh 1c282483bf 2008-08-28 Robert Millan <rmh@aybabtu.com>
* util/biosdisk.c (find_grub_drive): Declare missing `i' variable.
2008-08-28 19:08:21 +00:00
robertmh 678e849cd3 2008-08-28 Robert Millan <rmh@aybabtu.com>
Change find_grub_drive() syntax so it doesn't prevent it from
        detecting NULL names as errors.

        * util/biosdisk.c (find_grub_drive): Move free slot search code
        from here ...
        (find_free_slot): ... to here.
        (read_device_map): Use find_free_slot() to search for free slots.
2008-08-28 14:36:18 +00:00
robertmh c07ae501cb 2008-08-26 Robert Millan <rmh@aybabtu.com>
* util/biosdisk.c (grub_util_biosdisk_open, open_device)
        (grub_util_biosdisk_get_grub_dev): Make error messages a bit more
        descriptive.
2008-08-26 19:09:07 +00:00
robertmh 8415f2617c 2008-08-23 Robert Millan <rmh@aybabtu.com>
* util/getroot.c (find_root_device): Skip anything that starts with
        a dot, not just directories.  This avoids things like /dev/.tmp.md0.
2008-08-23 12:19:43 +00:00
robertmh c9baafe713 2008-08-21 Robert Millan <rmh@aybabtu.com>
* loader/i386/linux.c: New file.  Implements generic 32-bit Linux
        loader.
        * conf/i386-coreboot.rmk (_linux_mod_SOURCES): Replace
        `loader/i386/pc/linux.c' with `loader/i386/linux.c'.
2008-08-21 13:18:07 +00:00
robertmh e290bef2e1 2008-08-20 Carles Pina i Estany <carles@pina.cat>
* menu/normal.c (run_menu): Replace hardcoded numbers with macros
        (16 for GRUB_TERM_UP and 14 for GRUB_TERM_DOWN)
2008-08-20 10:07:56 +00:00
robertmh f9dbfc961e 2008-08-19 Robert Millan <rmh@aybabtu.com>
* term/gfxterm.c (DEFAULT_CURSOR_COLOR): Remove.
        (struct grub_virtual_screen): Remove `cursor_color'.
        (grub_virtual_screen_setup): Remove `virtual_screen.cursor_color'
        initialization.
        (write_cursor): Use `virtual_screen.fg_color' to draw cursor.
2008-08-19 19:20:33 +00:00
robertmh dd6bd6abb9 2008-08-18 Robert Millan <rmh@aybabtu.com>
Unify (identical) linux_normal.c files.
        * loader/i386/efi/linux_normal.c: Move from here ...
        * loader/linux_normal.c: ... to here.  Update all users.
        * loader/i386/pc/linux_normal.c: Delete.  Update all users.
        * loader/i386/ieee1275/linux_normal.c: Likewise.
2008-08-18 13:46:31 +00:00
robertmh 7f42f83e87 2008-08-18 Robert Millan <rmh@aybabtu.com>
* include/grub/i386/linux.h (LINUX_LOADER_ID_LILO)
        (LINUX_LOADER_ID_LOADLIN, LINUX_LOADER_ID_BOOTSECT)
        (LINUX_LOADER_ID_SYSLINUX, LINUX_LOADER_ID_ETHERBOOT)
        (LINUX_LOADER_ID_ELILO, LINUX_LOADER_ID_GRUB, LINUX_LOADER_ID_UBOOT)
        (LINUX_LOADER_ID_XEN, LINUX_LOADER_ID_GUJIN, LINUX_LOADER_ID_QEMU):
        New macros.
        (GRUB_LINUX_CL_OFFSET, GRUB_LINUX_CL_END_OFFSET): Move from here ...
        * loader/i386/pc/linux.c (GRUB_LINUX_CL_OFFSET)
        (GRUB_LINUX_CL_END_OFFSET): ... to here.
        * loader/i386/efi/linux.c (GRUB_EFI_CL_OFFSET): Rename to ...
        (GRUB_LINUX_CL_OFFSET): ... this.  Update all users.
        (GRUB_EFI_CL_END_OFFSET): Rename to ...
        (GRUB_LINUX_CL_END_OFFSET): ... this.  Update all users.
        (grub_rescue_cmd_linux): Macroify `type_of_loader' initialization.
        Initialize `params->video_cursor_x' and `params->video_cursor_y'
        portably using grub_getxy().
        Replace `-EFI' with `-bzImage' in boot message.
2008-08-18 13:01:01 +00:00
robertmh 38487ddbd2 2008-08-17 Robert Millan <rmh@aybabtu.com>
* include/grub/x86_64/kernel.h: New file (<grub/i386/kernel.h> stub).
2008-08-17 20:28:00 +00:00
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
robertmh 1082b929e3 2008-08-16 Robert Millan <rmh@aybabtu.com>
* disk/raid.c (grub_raid_init): Handle/report errors set by
        grub_device_iterate().
        * disk/lvm.c (grub_lvm_init): Likewise.
2008-08-16 12:52:34 +00:00
robertmh 0e9242da3a oops, missed the changelog entry 2008-08-14 19:05:28 +00:00
robertmh eba0ce9f97 2008-08-14 Robert Millan <rmh@aybabtu.com>
* conf/common.rmk (bin_UTILITIES): Add `grub-mkelfimage'.
        (grub_mkelfimage_SOURCES): New variable.
        (util/elf/grub-mkimage.c_DEPENDENCIES): Likewise.

        * conf/i386-coreboot.rmk (bin_UTILITIES, grub_mkimage_SOURCES)
        (grub_mkimage_LDFLAGS, util/elf/grub-mkimage.c_DEPENDENCIES): Remove.
        * conf/powerpc-ieee1275.rmk: Likewise.
        * conf/i386-ieee1275.rmk: Likewise.

        * kern/ieee1275/init.c: Include `<grub/cpu/kernel.h>'.
        * kern/i386/coreboot/init.c: Likewise.

        * kern/i386/ieee1275/startup.S: Replace `<grub/machine/kernel.h>'
        with `<grub/cpu/kernel.h>'.
        (GRUB_KERNEL_MACHINE_PREFIX, GRUB_KERNEL_MACHINE_DATA_END): Renamed
        to ...
        (GRUB_KERNEL_CPU_PREFIX, GRUB_KERNEL_CPU_DATA_END): ... this.
        * kern/i386/coreboot/startup.S: Likewise.

        * include/grub/powerpc/ieee1275/kernel.h (GRUB_MOD_ALIGN)
        (GRUB_MOD_GAP): Remove.
        * include/grub/powerpc/kernel.h: New file.
        * include/grub/i386/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_PREFIX)
        (GRUB_KERNEL_MACHINE_DATA_END): Remove.
        * include/grub/i386/kernel.h: New file.
        * include/grub/i386/coreboot/kernel.h (GRUB_MOD_ALIGN)
        (GRUB_MOD_GAP, GRUB_KERNEL_MACHINE_PREFIX)
        (GRUB_KERNEL_MACHINE_DATA_END): Remove.

        * util/ieee1275/grub-install.in (grub_mkimage): Initialize to use
        `grub-mkelfimage'.
        Use --directory when invoking grub_mkimage.

        * util/elf/grub-mkimage.c: Include `<grub/cpu/kernel.h>'.
        (add_segments): Replace GRUB_KERNEL_MACHINE_DATA_END and
        GRUB_KERNEL_MACHINE_PREFIX with GRUB_KERNEL_CPU_DATA_END
        and GRUB_KERNEL_CPU_PREFIX.
2008-08-14 18:59:33 +00:00
robertmh 7161f0e02b 2008-08-13 Robert Millan <rmh@aybabtu.com>
* docs/grub.cfg: Remove `/dev/' prefix in GNU/Hurd boot entry.
2008-08-13 16:59:12 +00:00
robertmh a196752277 2008-08-13 Robert Millan <rmh@aybabtu.com>
* docs/grub.cfg: Use the native device name for the example GNU/Hurd
        boot entry.
2008-08-13 16:55:06 +00:00
robertmh 371458b576 2008-08-12 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Move part
        of the relocation code from here ...
        (grub_multiboot): ... to here.
        (forward_relocator, backward_relocator): Move from here ...
        * kern/i386/loader.S (grub_multiboot_forward_relocator)
        (grub_multiboot_backward_relocator): ... to here.
        (grub_multiboot_real_boot): Use %edx for entry offset.  Put Multiboot
        magic in %eax.  Use %ebp for jumping (so %edx is not trashed).
        * include/grub/i386/loader.h (grub_multiboot_forward_relocator)
        (grub_multiboot_forward_relocator_end)
        (grub_multiboot_backward_relocator)
        (grub_multiboot_backward_relocator_end): New variables.
2008-08-12 15:40:26 +00:00
robertmh 20024ab021 2008-08-11 Robert Millan <rmh@aybabtu.com>
* kern/i386/linuxbios/startup.S: Move from here ...
        * kern/i386/coreboot/startup.S: ... to here.

        * kern/i386/linuxbios/init.c: Move from here ...
        * kern/i386/coreboot/init.c: ... to here.

        * kern/i386/linuxbios/table.c: Move from here ...
        * kern/i386/coreboot/mmap.c: ... to here.

        * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Update moved files.
2008-08-11 14:57:39 +00:00
robertmh e352e9cde3 2008-08-11 Robert Millan <rmh@aybabtu.com>
* kern/device.c (grub_device_open): Do not handle grub_disk_open()
        errors.  Leave it to the upper layer to handle them.
2008-08-11 10:33:14 +00:00
robertmh 042bd419da 2008-08-08 Robert Millan <rmh@aybabtu.com>
* kern/disk.c: Replace `<grub/machine/time.h>' with `<grub/time.h>'.
        (grub_last_time): Change type to grub_uint64_t.
        (grub_disk_open): Migrate code from to using grub_get_time_ms().
        (grub_disk_close): Likewise.

        * normal/menu.c: Replace `<grub/machine/time.h>' with `<grub/time.h>'.
        (run_menu): Migrate code from to using grub_get_time_ms().

        * util/misc.c (grub_get_time_ms): New function.
2008-08-07 23:48:13 +00:00
robertmh 1a6cac8921 Migrate .cvsignore to svn:ignore property 2008-08-07 14:34:19 +00:00
robertmh 16106770b3 Add 10_windows.in to DISTLIST. 2008-08-07 10:49:06 +00:00
robertmh 057bc4acaf 2008-08-06 Robert Millan <rmh@aybabtu.com>
* conf/i386-coreboot.rmk (kernel_elf_ASFLAGS): New variable.
        * kern/i386/tsc.c: Include `<grub/i386/pit.h>'.
2008-08-06 12:27:28 +00:00
robertmh a55d42e0e0 2008-08-06 Robert Millan <rmh@aybabtu.com>
* conf/i386-coreboot.rmk (pkglib_MODULES): Add `reboot.mod' and
        `halt.mod'.
        (reboot_mod_SOURCES, reboot_mod_CFLAGS, reboot_mod_LDFLAGS)
        (halt_mod_SOURCES, halt_mod_CFLAGS, halt_mod_LDFLAGS): New variables.

        * kern/i386/halt.c: New file.
        * kern/i386/reboot.c: Likewise.
        * include/grub/i386/reboot.h: Likewise.
        * include/grub/i386/halt.h: Likewise.

        * commands/halt.c [! GRUB_MACHINE_IEEE1275 ! GRUB_MACHINE_EFI]:
        Include `<grub/cpu/halt.h>'.
        * commands/reboot.c [! GRUB_MACHINE_IEEE1275 ! GRUB_MACHINE_EFI]
        [! GRUB_MACHINE_PCBIOS]: Include `<grub/cpu/reboot.h>'.

        * term/i386/pc/at_keyboard.c: Include `<grub/cpu/at_keyboard.h>'.
        (SHIFT_L, SHIFT_R, CTRL, ALT, CAPS_LOCK, KEYBOARD_REG_DATA)
        (KEYBOARD_REG_STATUS, KEYBOARD_COMMAND_ISREADY, KEYBOARD_COMMAND_READ)
        (KEYBOARD_COMMAND_WRITE, KEYBOARD_COMMAND_REBOOT)
        (KEYBOARD_SCANCODE_SET1, KEYBOARD_ISMAKE, KEYBOARD_ISREADY)
        (KEYBOARD_SCANCODE, OLPC_UP, OLPC_DOWN, OLPC_LEFT, OLPC_RIGHT): Move
        from here ...
        * include/grub/i386/at_keyboard.h: ... to here.
2008-08-06 00:20:04 +00:00
robertmh 24371d2620 2008-08-05 Robert Millan <rmh@aybabtu.com>
* conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/pit.c'.
        * conf/i386-efi.rmk (kernel_mod_SOURCES): Likewise.
        * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Likewise. Also add
        `kern/i386/tsc.c', `kern/generic/rtc_get_time_ms.c' and
        `kern/generic/millisleep.c'.

        * kern/i386/tsc.c (calibrate_tsc): Rewrite using grub_pit_wait()
        instead of grub_get_rtc().
        (grub_tsc_init): Initialize `tsc_boot_time'.

        * kern/i386/linuxbios/init.c (grub_millisleep): Remove stub.
        (grub_machine_init): Use grub_tsc_init() rather than
        installing an RTC-based handler via grub_install_get_time_ms().

        * kern/i386/pit.c: New file.
        * include/grub/i386/pit.h: Likewise.
2008-08-05 20:24:00 +00:00
robertmh 5e15ee3d38 2008-08-04 Robert Millan <rmh@aybabtu.com>
* conf/i386-coreboot.rmk (COMMON_ASFLAGS, COMMON_CFLAGS)
        (COMMON_LDFLAGS): Harmonize with i386-pc version (fixes a code
        corruption problem).
2008-08-04 11:38:45 +00:00
robertmh a9053f8f5d 2008-08-04 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Fix misc
        warnings introduced in my last commit.
2008-08-04 09:30:36 +00:00
robertmh 2960a0c228 Add a few new files. 2008-08-03 20:28:36 +00:00
robertmh dd19c7d795 2008-08-03 Robert Millan <rmh@aybabtu.com>
Make PCI available on all i386 architectures.

        * include/grub/i386/pc/pci.h: Move from here ...
        * include/grub/i386/pci.h: ... to here.

        * include/grub/i386/pc/pci.h: Remove.
        * include/grub/i386/efi/pci.h: Remove.
        * include/grub/x86_64/efi/pci.h: Remove.

        * include/grub/pci.h: Replace `<grub/machine/pci.h>' with
        `<grub/cpu/pci.h>'.

        * conf/i386-coreboot.rmk (pkglib_MODULES): Add `pci' and `lspci'.
        (pci_mod_SOURCES, pci_mod_CFLAGS, pci_mod_LDFLAGS, lspci_mod_SOURCES)
        (lspci_mod_CFLAGS, lspci_mod_LDFLAGS): New variables.

        * conf/i386-ieee1275.rmk: Likewise.
2008-08-03 18:14:07 +00:00
robertmh e14a6184ba 2008-08-03 Robert Millan <rmh@aybabtu.com>
* term/i386/pc/vga_text.c (CRTC_CURSOR_DISABLE): New macro.
        (grub_console_setcursor): Make it possible to set cursor off.
2008-08-03 17:09:21 +00:00
robertmh 52768e37c2 2008-08-03 Robert Millan <rmh@aybabtu.com>
* util/grub.d/00_header.in: Be platform-agnostic.  Probe for existence
        of modules instead of assuming which platform provides what.
        * util/update-grub.in: Likewise.
2008-08-03 16:38:40 +00:00
robertmh 2d52f57f10 2008-08-03 Robert Millan <rmh@aybabtu.com>
* kern/i386/pc/init.c (make_install_device): Check for `grub_prefix'
        instead of `grub_install_dos_part' to determine whether a drive needs
        to be prepended to prefix (`grub_install_dos_part' is not reliable,
        because it can be overriden when loading GRUB via Multiboot).
2008-08-02 23:24:34 +00:00
robertmh 2a5cd121da 2008-08-02 Robert Millan <rmh@aybabtu.com>
* util/i386/pc/grub-install.in: Remove trailing slash from prefix.
2008-08-02 20:30:19 +00:00
robertmh 93808428ce 2008-08-02 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Add a pair
        of informational grub_dprintf() calls.
2008-08-02 15:51:12 +00:00
robertmh 3bd0a12aca 2008-08-02 Robert Millan <rmh@aybabtu.com>
* disk/memdisk.c (memdisk_size): Don't initialize.
        (GRUB_MOD_INIT(memdisk)): Find memdisk using grub_module_iterate().

        * include/grub/i386/pc/kernel.h
        (GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE): Remove macro.
        (GRUB_KERNEL_MACHINE_PREFIX, GRUB_KERNEL_MACHINE_DATA_END): Shift.
        (grub_memdisk_image_size, grub_arch_memdisk_addr)
        (grub_arch_memdisk_size): Remove.

        * include/grub/kernel.h (struct grub_module_header): Remove `offset'
        field (was only used to transfer a constant).  Add `type' field to
        support multiple module types.
        (grub_module_iterate): New function.

        * kern/device.c (grub_device_open): Do not hide error messages
        when grub_disk_open() fails.  Use grub_print_error() instead.

        * kern/i386/pc/init.c (grub_arch_modules_addr)
        (grub_arch_memdisk_size): Remove functions.
        (grub_arch_modules_addr): Return the module address in high memory
        (now that it isn't copied anymore).

        * kern/i386/pc/startup.S (grub_memdisk_image_size): Remove variable.
        (codestart): Don't add grub_memdisk_image_size to %ecx in LZMA
        decompression routine (grub_total_module_size already includes that
        now).  Don't copy modules back to low memory.

        * kern/main.c: Include `<grub/mm.h>'.
        (grub_load_modules): Split out (and use) ...
        (grub_module_iterate): ... this function, which iterates through
        module objects and runs a hook.
        Comment out grub_mm_init_region() call, as it would cause non-ELF
        modules to be overwritten.

        * util/i386/pc/grub-mkimage.c (generate_image): Instead of appending
        the memdisk image in its own region, make it part of the module list.
        * util/elf/grub-mkimage.c (options): Add "memdisk"|'m' option.
        (main): Parse --memdisk|-m option, and pass user-provided path as
        parameter to generate_image().
        (add_segments): Pass `memdisk_path' down to load_modules().
        (load_modules): Embed memdisk image in module section when requested.
        * util/i386/efi/grub-mkimage.c (make_mods_section): Initialize
        `header.type' instead of `header.offset'.

        * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add `memdisk.mod'.
        (memdisk_mod_SOURCES, memdisk_mod_CFLAGS)
        (memdisk_mod_LDFLAGS): New variables.
        * conf/i386-coreboot.rmk: Likewise.
        * conf/i386-ieee1275.rmk: Likewise.
2008-08-02 12:17:44 +00:00
robertmh a927cc7383 2008-08-02 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c (playground, forward_relocator)
        (backward_relocator): New variables.  Used to allocate and relocate
        the payload, respectively.
        (grub_multiboot_load_elf32): Load into heap instead of requested
        address, install the appropiate relocator code in each bound of
        the payload, and set the entry point such that
        grub_multiboot_real_boot() will jump to one of them.

        * kern/i386/loader.S (grub_multiboot_payload_size)
        (grub_multiboot_payload_orig, grub_multiboot_payload_dest)
        (grub_multiboot_payload_entry_offset): New variables.
        (grub_multiboot_real_boot): Set cpu context to what the relocator
        expects, and jump to the relocator instead of the payload.

        * include/grub/i386/loader.h (grub_multiboot_payload_size)
        (grub_multiboot_payload_orig, grub_multiboot_payload_dest)
        (grub_multiboot_payload_entry_offset): Export.
2008-08-02 12:12:14 +00:00
robertmh cdfb3d2273 2008-08-01 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_linux.in: Use prepare_grub_to_access_device() from
        within menuentries, not before them.
        util/grub.d/10_hurd.in: Likewise.
2008-08-01 12:56:56 +00:00
robertmh 3d8383e7a5 2008-07-31 Robert Millan <rmh@aybabtu.com>
* loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): When loading
        ELF segments, use a macro for arbitrarily accessing any of them instead
        of preparing a pointer that allows access to one at a time.
        (grub_multiboot_load_elf64): Likewise.
2008-07-31 20:48:40 +00:00
robertmh edb3d5c272 Add missing copyright years for recent changes 2008-07-31 19:33:23 +00:00
robertmh 59198b722c 2008-07-30 Robert Millan <rmh@aybabtu.com>
* include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_DATA_END):
        Increase from 0x50 to 0x60.
        * util/i386/pc/grub-install.in: Detect cross-disk installs, and
        use UUIDs to identify the root drive for them.  If that's not
        possible, abort.
        * util/i386/pc/grub-setup.c (setup): Do not special-case, or even
        check, for cross-disk installs.
2008-07-30 10:44:38 +00:00
robertmh ae88bca301 2008-07-30 Robert Millan <rmh@aybabtu.com>
* kern/ieee1275/init.c (grub_machine_set_prefix): If `grub_prefix'
        is non-empty, use it to set the `prefix' environment variable instead
        of the usual approach.
        * kern/i386/linuxbios/init.c (make_install_device): Remove function.
        (grub_machine_set_prefix): Use `grub_prefix' to set the `prefix'
        environment variable instead of dummy make_install_device().

        * kern/i386/ieee1275/startup.S: Include `<grub/machine/kernel.h>'.
        (start): Insert a data section, with `grub_prefix' variable.
        * kern/i386/linuxbios/startup.S: Likewise.

        * include/grub/powerpc/ieee1275/kernel.h [!ASM_FILE] (grub_prefix):
        New variable reference.
        * include/grub/i386/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_PREFIX):
        New macro.  Defines offset of `grub_prefix' within startup.S (relative
        to `start').
        (GRUB_KERNEL_MACHINE_DATA_END): New macro.  Defines the end of data
        section within startup.S (relative to `start').
        * include/grub/i386/coreboot/kernel.h: Likewise.

        * util/elf/grub-mkimage.c (add_segments): Receive `prefix' parameter.
        Overwrite grub_prefix with its contents, at the beginning of the
        first segment.
        (main): Understand -p|--prefix.
2008-07-30 10:42:11 +00:00
robertmh 14f41dd1ed 2008-07-30 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_hurd.in: Source /grub/update-grub_lib.
2008-07-30 00:21:35 +00:00
robertmh 4ca049a365 2008-07-30 Robert Millan <rmh@aybabtu.com>
* term/i386/pc/vga_text.c (grub_console_cls): Use
        grub_console_gotoxy() to go back to beginning of the screen.
        Found by Patrick Georgi <patrick.georgi@coresystems.de>
2008-07-29 23:29:03 +00:00
robertmh 41694fd019 2008-07-28 Robert Millan <rmh@aybabtu.com>
* partmap/apple.c (GRUB_APPLE_HEADER_MAGIC): New macro.
        (struct grub_apple_header): New struct.  Describes the layout of
        the partmap header.
        (apple_partition_map_iterate): Check the header magic as well as the
        partition magic (which was already being checked).
2008-07-28 22:37:32 +00:00
robertmh 93cce01644 2008-07-28 Robert Millan <rmh@aybabtu.com>
* disk/raid.c (grub_raid_scan_device): Do not abort when two disks
        with the same number are found, just use issue a warning with
        grub_dprintf(), as this error has been reported to be non-fatal.
2008-07-28 09:25:37 +00:00
robertmh cd1df915ea 2008-07-27 Robert Millan <rmh@aybabtu.com>
* disk/ata.c (grub_ata_dumpinfo): Use grub_dprintf() for debugging
        information.
2008-07-27 20:57:43 +00:00
robertmh 47f908abba add grub/term.h like ChangeLog says.. 2008-07-27 15:44:37 +00:00
robertmh 2c76932c4b forgot to checkin last commit 2008-07-27 15:41:43 +00:00
robertmh 8749e9e524 2008-07-27 Felix Zielcke <fzielcke@z-51.de>
* commands/help.c: Include <grub/term.h>.
        (TERM_WIDTH): Removed.  Updated all users.
2008-07-27 13:04:02 +00:00
robertmh 9051607e1e 2008-07-25 Robert Millan <rmh@aybabtu.com>
* util/getroot.c (find_root_device): Skip devices that match
        /dev/dm-[0-9].  This lets the real device be found for any type of
        abstraction (LVM, EVMS, RAID..).
        (grub_guess_root_device): Do not traverse /dev/mapper (for LVM)
        and /dev/evms (for EVMS) before traversing /dev.  If a /dev/dm-[0-9]
        device is found first, find_root_device() will now skip it.
2008-07-25 19:05:06 +00:00
robertmh 12ccdb75a9 2008-07-23 Robert Millan <rmh@aybabtu.com>
* Makefile.in (UNICODE_ARROWS, UNICODE_LINES): New variables (they
        define the codes for arrows and lines used for the menu).
        (ascii.pff): Generate fonts for $(UNICODE_ARROWS) and $(UNICODE_LINES)
        as well.

        * util/update-grub_lib.in (font_path): Prefer ascii.pff over complete
        fonts, because the latter are too slow.
2008-07-22 22:23:45 +00:00
robertmh 546f966aa5 2008-07-17 Robert Millan <rmh@aybabtu.com>
Partial LinuxBIOS -> Coreboot rename.

        * conf/i386-linuxbios.rmk: Renamed to ...
        * conf/i386-coreboot.rmk: ... this.
        * Makefile.in (RMKFILES): s/i386-linuxbios.rmk/i386-coreboot.rmk/g.
        * configure.ac: Accept coreboot as input platform (but maintain
        compatibility with linuxbios).
        * include/grub/i386/linuxbios: Renamed to ...
        * include/grub/i386/coreboot: ... this.
2008-07-17 15:05:12 +00:00
robertmh 9a745147b8 2008-07-12 Robert Millan <rmh@aybabtu.com>
* util/i386/pc/grub-mkrescue.in: s/grub-install/grub-mkrescue/g.
2008-07-12 15:40:50 +00:00
robertmh d49a4cf6a7 2008-07-11 Robert Millan <rmh@aybabtu.com>
* util/grub.d/40_custom.in: New file. Example on how to add custom
        entries to /etc/grub.d.
        * conf/common.rmk (%, update-grub_SCRIPTS, CLEANFILES): Install
        40_custom (implicitly, by merging all the grub.d rules).
2008-07-11 20:09:14 +00:00
robertmh 8516d2a8e1 2008-07-04 Robert Millan <rmh@aybabtu.com>
This fixes a performance issue when pc & gpt partmap iterators
        didn't abort iteration even after our hook found what it was
        looking for (often causing expensive probes of non-existant drives).

        Some callers relied on previous buggy behaviour, since they would
        rise an error when their own hooks caused early abortion of its
        iteration.

        * kern/device.c (grub_device_open): Improve error message.
        * disk/lvm.c (grub_lvm_open): Likewise.
        * disk/raid.c (grub_raid_open): Likewise.

        * partmap/pc.c (pc_partition_map_iterate): Abort parent iteration
        when hook requests it, independently of grub_errno.
        (pc_partition_map_probe): Do not fail when find_func() caused
        early abortion of pc_partition_map_iterate().

        * partmap/gpt.c (gpt_partition_map_iterate): Abort parent iteration
        when hook requests it, independently of grub_errno.
        (gpt_partition_map_probe): Do not fail when find_func() caused
        early abortion of gpt_partition_map_iterate().

        * kern/partition.c (grub_partition_iterate): Abort parent iteration
        when hook requests it, independently of grub_errno.  Do not fail when
        part_map_iterate_hook() caused early abortion of p->iterate().

        * util/biosdisk.c (grub_util_biosdisk_get_grub_dev): Do not fail
        when grub_partition_iterate() returned with non-zero.
2008-07-03 22:56:43 +00:00
robertmh 5444088da6 2008-06-29 Robert Millan <rmh@aybabtu.com>
* fs/xfs.c (GRUB_XFS_FSB_TO_BLOCK): New macro.  Maps filesystem
        block to disk block.
        (grub_xfs_read_block): Use GRUB_XFS_FSB_TO_BLOCK() on result.
        Patch from Niels B\303\266hm <bitbucket@arcor.de>
2008-06-29 21:33:38 +00:00
robertmh 674835c830 2008-06-29 Robert Millan <rmh@aybabtu.com>
* util/update-grub_lib.in (font_path): Search for fonts in
        /boot/grub first, which is more likely to be readable (we aren't
        deciding where fonts live, just looking for them).
2008-06-29 14:29:48 +00:00
robertmh aebe3d13bb 2008-06-26 Robert Millan <rmh@aybabtu.com>
* disk/fs_uuid.c: New file.
        * conf/common.rmk (pkglib_MODULES): Add `fs_uuid.mod'.
        (fs_uuid_mod_SOURCES, fs_uuid_mod_CFLAGS)
        (fs_uuid_mod_LDFLAGS): New variables.
        * include/grub/disk.h (grub_disk_dev_id): Add
        `GRUB_DISK_DEVICE_UUID_ID'.
        * kern/disk.c (grub_disk_dev_iterate): Allow disk devices not to
        implement iterate().
2008-06-26 14:26:07 +00:00
robertmh 37aaf354c9 2008-06-26 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_linux.in: Avoid passing UUIDs to Linux when either
        "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" does not exist, or when a
        Linux image includes no initrd.
2008-06-26 07:03:26 +00:00
robertmh 25ff262a6c 2008-06-21 Javier Mart\303\255n <lordhabbit@gmail.com>
* util/i386/pc/grub-setup.c (setup): Remove literal "core.img" in a
        call to resolve the core image location that effectively appended the
        name twice.
2008-06-21 14:21:03 +00:00
robertmh 76a2bd44b3 2008-06-21 Robert Millan <rmh@aybabtu.com>
* util/grub.d/00_header.in: Move last prepare_grub_to_access_device()
        call from here ...

        * util/grub.d/10_hurd.in: ... to here ...
        * util/grub.d/10_linux.in: ... and here.
2008-06-21 13:51:19 +00:00
robertmh 650e1c79b9 2008-06-19 Robert Millan <rmh@aybabtu.com>
* kern/main.c (grub_main): Export `prefix' variable inmediately
        after it has been set by grub_machine_set_prefix().
2008-06-19 20:08:57 +00:00
robertmh 6ce63911ab 2008-06-19 Robert Millan <rmh@aybabtu.com>
* commands/search.c (search_label, search_fs_uuid, search_file): Print
        search result when not saving to variable, not the other way around.
        When saving to variable, abort iteration as soon as a match is found.
2008-06-19 13:09:16 +00:00
robertmh 73940cec58 2008-06-19 Robert Millan <rmh@aybabtu.com>
* util/update-grub_lib.in (prepare_grub_to_access_device): Remove
        check for partition that provides /boot/grub.  Its logic is flawed,
        as it prevents prepare_grub_to_access_device() from being called
        multiple times.
2008-06-19 12:31:42 +00:00
robertmh 3c62a39d26 2008-06-19 Robert Millan <rmh@aybabtu.com>
* util/update-grub_lib.in (prepare_grub_to_access_device): Issue
        "insmod" command directly when abstraction modules are needed,
        instead of reliing on GRUB_PRELOAD_MODULES (which had no effect
        since it had already been processed).
2008-06-19 12:29:44 +00:00
robertmh 7847c51e22 2008-06-18 Robert Millan <rmh@aybabtu.com>
* util/i386/pc/grub-install.in: If the drive is LVM or RAID, prepend
        it in prefix.

        * util/i386/pc/grub-setup.c (main): Don't handle prefix at all.  Set
        `must_embed' to 1 when root_dev is a RAID device.  When dest_dev is
        a RAID device, run setup() for all members independently on whether
        LVM abstraction is being used.
        (setup): Don't handle prefix at all; let grub-mkimage take care of it.
        If grub-mkimage has set `*install_dos_part == -2', don't override this
        value.
        Perform *install_dos_part adjustments independently on whether
        we're embedding or not.
        Clarify error message when image is too big for embedding.
        Remove duplicate *install_dos_part stanza.
2008-06-18 17:35:26 +00:00
robertmh b23e5644cf 2008-06-17 Robert Millan <rmh@aybabtu.com>
* term/ieee1275/ofconsole.c (fgcolor, bgcolor): Remove variables.
        (grub_ofconsole_normal_color, grub_ofconsole_highlight_color): New
        variables.
        (grub_ofconsole_setcolor, grub_ofconsole_getcolor): Load/store
        values in grub_ofconsole_normal_color and
        grub_ofconsole_highlight_color (they're not directly related to
        background and foreground).
        (grub_ofconsole_setcolorstate): Extract background and foreground
        from grub_ofconsole_normal_color and grub_ofconsole_highlight_color.
2008-06-17 15:27:14 +00:00
robertmh 0aac2f79b7 2008-06-17 Robert Millan <rmh@aybabtu.com>
* util/update-grub_lib.in (prepare_grub_to_access_device): Use
        /boot/grub for the check in last commit, not /boot (they could be
        different partitions).
2008-06-17 13:35:04 +00:00
robertmh 3cca7ef3b6 2008-06-16 Robert Millan <rmh@aybabtu.com>
* util/update-grub_lib.in (prepare_grub_to_access_device): If we were
        asked to setup access for the same partition that provides /boot,
        don't bother using UUIDs since our root already has the value we
        want.
2008-06-16 22:08:03 +00:00
robertmh 347396d87f 2008-06-16 Robert Millan <rmh@aybabtu.com>
* util/biosdisk.c (convert_system_partition_to_system_disk): Detect
        I2O devices.
        Patch from Sven Mueller <sven@debian.org>.
2008-06-16 20:45:21 +00:00
robertmh 991477f8a7 2008-06-16 Robert Millan <rmh@aybabtu.com>
* util/update-grub.in: Check for $EUID instead of $UID.
        Reported by Vincent Zweije.
2008-06-16 20:29:55 +00:00
robertmh 50465dd603 2008-06-15 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_linux.in: Use the underliing device for loop-AES
        devices.
        Reported by Max Vozeler.
2008-06-15 20:15:57 +00:00
robertmh a920728493 2008-06-15 Robert Millan <rmh@aybabtu.com>
* util/i386/pc/grub-mkimage.c (generate_image): If we included a drive
        in our prefix, set install_{dos,bsd}_part = -2 to indicate this can be
        skipped later.
        (main): If a memdisk was requested, add "(memdisk)" drive explicitly to
        the beginning of the prefix.

        * kern/i386/pc/init.c (make_install_device): Remove memdisk check.
        It is assumed that if we have a memdisk, grub-mkimage has set
        grub_prefix to include the "(memdisk)" drive in it.
2008-06-15 18:21:16 +00:00