Commit graph

567 commits

Author SHA1 Message Date
Vladimir 'phcoder' Serbinenko
3d1933fb20 Fix compilation on x86_64-efi 2009-11-27 10:57:52 +01:00
Vladimir 'phcoder' Serbinenko
159194989d Ported xnu to relocator framework 2009-11-27 09:42:50 +01:00
Vladimir 'phcoder' Serbinenko
105b69abbd merged relocators into mips 2009-11-26 21:42:31 +01:00
Vladimir 'phcoder' Serbinenko
53e08cc54c Merged mainstream into newuuid 2009-11-25 23:50:54 +01:00
Vladimir 'phcoder' Serbinenko
636813f768 Split relocators from mips branch 2009-11-25 23:39:59 +01:00
Vladimir 'phcoder' Serbinenko
bde358ac91 merged with mainline 2009-11-25 23:17:32 +01:00
Vladimir 'phcoder' Serbinenko
0e8489094a mainstream merged into pci 2009-11-25 15:15:30 +01:00
Carles Pina i Estany
4a8572e9d8 2009-11-24 Carles Pina i Estany <carles@pina.cat>
* conf/i386-coreboot.rmk (kernel_img_HEADERS): Add i18n.h.
	* conf/i386-efi.rmk: Likewise.
	* conf/i386-ieee1275.rmk: Likewise.
	* conf/i386-pc.rmk: Likewise.
	* conf/powerpc-ieee1275.rmk: Likewise.
	* conf/sparc64-ieee1275.rmk: Likewise.
	* conf/x86_64-efi.rmk: Likewise.
	* gettext/gettex.c: Include <grub/i18n.h>.
	* include/grub/misc.h (grub_gettext_dummy, grub_gettext): Move from
 	  here ...
	* include/grub/i18n.h: ... to here
	* include/grub/i18n.h: ... to here.
	* kern/misc.c: Include <grub/i18n.h>
	(grub_gettext_dummy): Move above user.
2009-11-24 21:42:14 +00:00
Felix Zielcke
4501250b6c 2009-11-24 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkrelpath.c: New file.
	* conf/common.rmk (bin_UTILITIES): Add grub-mkrelpath.
	(grub_mkrelpath_SOURCES): New variable.
	* include/grub/util/misc.h: New function prototype.
	* util/misc.c (make_system_path_relative_to_its_root): New function.

	* util/grub-mkconfig_lib.in (bindir): New variable.
	(grub_mkrelpath): Likewise.
	(make_system_path_relative_to_its_root): Use grub-mkrelpath.

	* util/probe.c (probe): Make the file path relative to its root.
	Change a info message to use the GRUB path.  Enable again the
	check if we can read the file with GRUB facilities.

	* util/i386/pc/grub-setup.c (setup): Make core.img path relative
	to its root.
2009-11-24 15:00:25 +01:00
Carles Pina i Estany
b58fc33c4f Merging with trunk 2009-11-23 20:34:42 +00:00
Vladimir 'phcoder' Serbinenko
4996893238 definition fixes 2009-11-23 21:15:44 +01:00
Robert Millan
f84b481b35 Cheery-pick grub-emu split from experimental (rev 1361)
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>

        * configure.ac: Detect all `emu' platforms.  Define
        GRUB_MACHINE_* macros in TARGET_CFLAGS.  Remove
        --enable-grub-emu logic.  Disable include/grub/machine
        symlink on `emu' platforms.

        * genkernsyms.sh.in: Use @TARGET_CFLAGS@ during symbol generation.
        * gensymlist.sh.in: Likewise.

        * include/grub/i386/coreboot/machine.h: Remove file.
        * include/grub/i386/efi/machine.h: Likewise.
        * include/grub/i386/ieee1275/machine.h: Likewise.
        * include/grub/i386/pc/machine.h: Likewise.
        * include/grub/i386/qemu/machine.h: Likewise.
        * include/grub/powerpc/ieee1275/machine.h: Likewise.
        * include/grub/sparc64/ieee1275/machine.h: Likewise.
        * include/grub/x86_64/efi/machine.h: Likewise.

        * commands/acpi.c: Remove `<grub/machine/machine.h>'.
        * commands/halt.c: Likewise.
        * commands/reboot.c: Likewise.
        * include/grub/autoefi.h: Likewise.
        * include/grub/i386/at_keyboard.h: Likewise.
        * include/grub/i386/kernel.h: Likewise.
        * include/grub/i386/loader.h: Likewise.
        * include/grub/i386/pc/memory.h: Likewise.
        * kern/dl.c: Likewise.
        * kern/i386/coreboot/init.c: Likewise.
        * loader/i386/bsd.c: Likewise.
        * loader/i386/linux.c: Likewise.
        * loader/multiboot_loader.c: Likewise.
        * term/i386/pc/serial.c: Likewise.
        * term/usb_keyboard.c: Likewise.

        * include/grub/time.h [!GRUB_MACHINE_EMU]: Remove
        `<grub/machine/machine.h>'
        [!GRUB_MACHINE_EMU] (GRUB_TICKS_PER_SECOND): New macro.
        * util/misc.c: Remove `<grub/machine/machine.h>' and
        `<grub/machine/time.h>'.

        * Makefile.in (enable_grub_emu): Remove variable.
        Include $(srcdir)/conf/any-emu.mk for the `emu' platform.

        * conf/any-emu.rmk: New file.
        * conf/common.rmk (grub_emu_init.lst, grub_emu_init.h)
        (grub_emu_init.c): Move from here ...
        * conf/any-emu.rmk: ... to here.

        * conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-emu'.
        (grub_emu_SOURCES, grub_emu_LDFLAGS): Move from here ...
        * conf/any-emu.rmk: ... to here.
2009-11-23 15:31:54 +00:00
Robert Millan
4efeab03dc 2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/parser.h (grub_parser_register): Document need
        of `name' parameter.
        * normal/main.c (grub_normal_read_line): Simplify prompt string.
        * script/sh/main.c (grub_sh_parser, GRUB_MOD_INIT(sh)): Rename
        "sh" to "grub".
2009-11-23 15:23:55 +00:00
Robert Millan
ea1dd8bf0a 2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
* Makefile.in ($(srcdir)/po/$(PACKAGE).pot): Pass --keyword=N_ to
        `$(XGETTEXT)'.
        * include/grub/i18n.h (N_): New macro.
        * util/mkisofs/mkisofs.h: Likewise.
        * util/mkisofs/mkisofs.c (ld_options): Wrap all translatable strings
        around N_().
        (usage): Use gettext() to translate help strings when printing them.
2009-11-23 13:18:07 +00:00
Vladimir 'phcoder' Serbinenko
5acc2aba78 merged mainline into PCI 2009-11-23 11:15:24 +01:00
Carles Pina i Estany
e5fb78c684 This commit is the same than gettext08.patch (see mailing list) 2009-11-22 12:50:46 +00:00
Carles Pina i Estany
0648f857ea Different changes following Robert's email 20091121230904.GA29740@thorin 2009-11-22 11:49:54 +00:00
Vladimir 'phcoder' Serbinenko
5afcd00788 merge mainstream into mips 2009-11-21 21:45:32 +01:00
Vladimir 'phcoder' Serbinenko
6abdf8e20d Fix for native miscompilation 2009-11-21 17:33:52 +01:00
Carles Pina i Estany
44883dfbd5 2009-11-19 Carles Pina i Estany <carles@pina.cat>
* include/grb/i18n_grub.h: same than i18n.h but for Grub Kernel.
	* include/grub/misc.h: includes i18n_grub.h.
	* normal/menu_text.c: gettize more strings.
	* po/POTFILES: Update with new file.
	* po/ca.po: New strings.
2009-11-19 21:43:09 +00:00
Carles Pina i Estany
fbc5e89710 Syncs with trunk 2009-11-19 21:18:38 +00:00
Felix Zielcke
b2f1e32746 2009-11-19 Felix Zielcke <fzielcke@z-51.de>
* include/grub/x86_64/io.h: New file.
2009-11-19 09:33:56 +01:00
Robert Millan
769ae37bfd Merge my gettext branch (gettext support in build system for GRUB utilities) 2009-11-17 20:23:06 +00:00
Robert Millan
9a90f817a0 Move i18n declarations to their own file. 2009-11-17 09:52:08 +00:00
Robert Millan
83bdecaf2a 2009-11-16 Robert Millan <rmh.grub@aybabtu.com>
Relicense multiboot.h, with RMS' blessing.

        * include/multiboot.h: Change to X11 license.
2009-11-15 23:22:45 +00:00
Carles Pina i Estany
203ffbfa31 Adds gettext support in Grub. Building system needs to be improved and maybe userland utilites improved.
YYYY-MM-DD  Carles Pina i Estany <carles@pina.cat>

	* Makefile.in: Add uptrans target to help to update .pot file
	* conf/common.rmk: Add grub-gettext_lib target, dependency and SOURCES, CFLAGS, LDFLAGS
	* kern/misc.c: Define grub_gettext symbol and add implement grub_gettext_dummy function
	* po/TODO: Temporary file with instructions of what Makefile.in will do
	* po/ca.po: Catalan translation stub
	* include/grub/misc.h: Define macro _(char *s). Declare grub_gettext_dummy and grub_gettext
	* gettext/gettext.c: New file with gettext implementation
	* normal/menu.c (print_message): add _( ) to some strings
	* util/grub.d/10_linux.in: include grub-gettext_lib file. For the Linux menuentry, call eval_gettext
	* util/grub.d/00_header.in: add locale_prefix and gettext locale detection and setting up the access to the mo directory
	* util/grub-mkconfig_lib.in: add get_locale_lang
	* util/grub-gettext_lib.in: new file
2009-11-13 20:39:33 +00:00
Robert Millan
8d0edf4abd 2009-11-13 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/multiboot.h (struct grub_multiboot_header): Move
        from here ...
        * include/multiboot.h (struct multiboot_header): ... to here.  Update
        all users.
        * include/grub/multiboot.h (struct grub_multiboot_info): Move
        from here ...
        * include/multiboot.h (struct multiboot_info): ... to here.  Update
        all users.
        * include/grub/multiboot.h (struct grub_multiboot_mmap_entry): Move
        from here ...
        * include/multiboot.h (struct multiboot_mmap_entry): ... to here.
        Update all users.
        * include/grub/multiboot.h (struct grub_mod_list): Move
        from here ...
        * include/multiboot.h (struct multiboot_mod_list): ... to here.
        Update all users.
2009-11-13 13:34:51 +00:00
Robert Millan
6944770e0c 2009-11-13 Robert Millan <rmh.grub@aybabtu.com>
* include/multiboot2.h (multiboot_word): Rename from this ...
        (multiboot2_word): ... to this.  Update all users.
        (multiboot_header): Rename from this ...
        (multiboot2_header): ... to this.  Update all users.
        (multiboot_tag_header): Rename from this ...
        (multiboot2_tag_header): ... to this.  Update all users.
        (multiboot_tag_start): Rename from this ...
        (multiboot2_tag_start): ... to this.  Update all users.
        (multiboot_tag_name): Rename from this ...
        (multiboot2_tag_name): ... to this.  Update all users.
        (multiboot_tag_module): Rename from this ...
        (multiboot2_tag_module): ... to this.  Update all users.
        (multiboot_tag_memory): Rename from this ...
        (multiboot2_tag_memory): ... to this.  Update all users.
        (multiboot_tag_unused): Rename from this ...
        (multiboot2_tag_unused): ... to this.  Update all users.
        (multiboot_tag_end): Rename from this ...
        (multiboot2_tag_end): ... to this.  Update all users.
2009-11-13 13:30:55 +00:00
Felix Zielcke
f4c62ed6ed Merge trunk 2009-11-13 14:15:36 +01:00
Vladimir 'phcoder' Serbinenko
77546cfd8f Restored missing headers 2009-11-09 22:07:57 +01:00
Vladimir 'phcoder' Serbinenko
99145bdc4b Merged with mainline 2009-11-09 21:58:49 +01:00
Vladimir 'phcoder' Serbinenko
da547ac323 merged with mainstream 2009-11-09 21:16:25 +01:00
Vladimir 'phcoder' Serbinenko
1d3c6f1de7 Manually reimported XNU branch 2009-11-09 18:43:53 +01:00
Vladimir 'phcoder' Serbinenko
3f02806841 Merged with trunk 2009-11-09 18:18:01 +01:00
Robert Millan
325f503783 2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/list.h (struct grub_named_list): Remove `const'
        qualifier from `name'.
        (struct grub_prio_list): Likewise.
2009-11-09 14:25:03 +00:00
Robert Millan
c02a733496 Add a few files that were lost during transition from svn. 2009-11-08 16:57:31 +00:00
Felix Zielcke
50ceeb7cb5 2009-11-04 Felix Zielcke <fzielcke@z-51.de>
* util//grub-mkconfig_lib.in (bindir): New variable.
	(grub_mkrelpath): Likewise.
	Properly set path variable.  Use ${grub_mkrelpath} instead of
	calling it directly.

2009-11-02  Felix Zielcke  <fzielcke@z-51.de>

	* util/probe.c (probe): Make the file path relative to its root.
	Change a info message to use the GRUB path.  Enable again the
	check if we can read the file with GRUB facilities.

2009-11-01  Felix Zielcke  <fzielcke@z-51.de>

	* util/grub-mkrelpath.c: New file.
	* conf/common.rmk (bin_UTILITIES): Add grub-mkrelpath.
	(grub_mkrelpath_SOURCES): New variable.
	* include/grub/util/misc.h: New function prototype.
	* util/misc.c (make_system_path_relative_to_its_root): New function.

	* util/grub-mkconfig_lib.in (make_system_path_relative_to_its_root):
	Use grub-mkrelpath.
2009-11-08 01:49:15 +01:00
Vladimir 'phcoder' Serbinenko
b0979f1191 Cleaned up CS5536 ATA compat support 2009-11-06 22:50:44 +01:00
Vladimir 'phcoder' Serbinenko
02602a7002 Cleaned __gnu_local_gp handling 2009-11-06 17:37:31 +01:00
Vladimir 'phcoder' Serbinenko
cc32314161 Removed memset declaration 2009-11-03 00:05:41 +01:00
Vladimir 'phcoder' Serbinenko
811c0d8b5c missing kbd files 2009-11-03 00:00:59 +01:00
Vladimir 'phcoder' Serbinenko
1b4595cebf AT keyboard support for Yeeloong 2009-11-02 23:57:09 +01:00
Vladimir 'phcoder' Serbinenko
810d8224cd PCI cleanup 2009-11-02 23:42:07 +01:00
Vladimir 'phcoder' Serbinenko
6174923799 merged with upstream 2009-11-02 23:29:51 +01:00
robertmh
95b9239e13 2009-10-28 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/misc.h: Stop checking for APPLE_CC.
2009-10-28 22:55:27 +00:00
robertmh
083d16798e 2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
* gensymlist.sh.in (COMPILE_TIME_ASSERT): Copy macro declaration
        from here ...
        * include/grub/misc.h (COMPILE_TIME_ASSERT): ... to here.
2009-10-26 18:04:37 +00:00
robertmh
042484d78e 2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/fs.h [GRUB_UTIL] (struct grub_fs): Add
        `reserved_first_sector' member.
        * fs/ext2.c [GRUB_UTIL] (grub_ext2_fs): Initialize
        `reserved_first_sector' to 1.
        * fs/fat.c [GRUB_UTIL] (grub_fat_fs): Likewise.
        * fs/ntfs.c [GRUB_UTIL] (grub_ntfs_fs): Likewise.
        * fs/hfsplus.c [GRUB_UTIL] (grub_hfsplus_fs): Likewise.
        * util/i386/pc/grub-setup.c (setup): Add safety check that probes for
        filesystems which begin at first sector.
        (options): New option --skip-fs-probe.   
        (main): Handle --skip-fs-probe and pass it to setup().
2009-10-25 15:23:48 +00:00
robertmh
d64448a72c 2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/misc.h: Fix wrong evaluation of APPLE_CC.
        (memset): Fix function prototype.
2009-10-25 15:14:25 +00:00
robertmh
346e7fbedb 2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
* configure.ac: Check for `__ashldi3', `__ashrdi3', `__lshrdi3',
        `__trampoline_setup' and `__ucmpdi2'.
        * include/grub/powerpc/libgcc.h: Only export symbols for functions
        that libgcc provides.
2009-10-24 23:26:53 +00:00
robertmh
cdb308b0e1 2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/powerpc/libgcc.h (memset): Remove function prototype.
        * include/grub/sparc64/libgcc.h (memset): Likewise.
        * include/grub/misc.h (memset, memcmp): New function prototypes.
2009-10-24 23:26:42 +00:00
phcoder
a9b7a540bd font preload 2009-10-24 12:44:42 +02:00
phcoder
f0628ef04f additional "machines" 2009-10-23 18:21:15 +02:00
phcoder
270bd79ca7 kernel constants updated 2009-10-23 18:20:52 +02:00
phcoder
061282ed11 bonito impl. I/O cleanup 2009-10-22 17:10:54 +02:00
phcoder
0f8d98dad2 Merge branch 'pci' into mips 2009-10-22 14:32:09 +02:00
phcoder
1e4f46c162 fixed pci base address 2009-10-19 18:08:44 +02:00
phcoder
82b1f15b6b declaration fix 2009-10-19 13:06:16 +02:00
phcoder
e145631831 pci for yeeloong 2009-10-19 13:03:38 +02:00
phcoder
b78f2e6e10 Merge branch 'mainline' into mips 2009-10-18 16:12:53 +02:00
phcoder
4a1eefb623 Revert "simplify mipsel handling"
This reverts commit 3451c43f4938a20aee5a2c0d0fa17c29e40b989b.

Conflicts:

	configure.ac
2009-10-18 15:06:47 +02:00
phcoder
a9a6948ac3 grub as flash for qemu-gdium 2009-10-18 15:04:14 +02:00
phcoder
ad17a401d6 new image format for mips. Asm part 2009-10-18 14:10:31 +02:00
phcoder
1c2cdb26d3 yeeloong headers 2009-10-18 12:04:20 +02:00
phcoder
cba2cae2f5 simplified serial 2009-10-18 11:49:09 +02:00
phcoder
d71b572aea empty loader.h added 2009-10-18 00:25:22 +02:00
phcoder
fdb3c3acb0 simplify mipsel handling 2009-10-18 00:22:15 +02:00
phcoder
81a642e8e2 linux.c 2009-10-16 17:40:59 +02:00
phcoder
6b5886ba66 2009-10-15 Vladimir Serbinenko <phcoder@gmail.com>
Revert 2009-06-10  Pavel Roskin  <proski@gnu.org>

	* configure.ac: Put checks for __bswapsi2 and __bswapdi2.
	* include/grub/powerpc/libgcc.h: Don't use weak attribute for all
	exports.
	* include/grub/sparc64/libgcc.h: Likewise.  Use
	preprocessor conditionals.
2009-10-15 11:55:06 +00:00
phcoder
459fed4b98 pciaccess 2009-10-14 18:17:18 +02:00
phcoder
325c8258e7 lspci works in grub-emu 2009-10-14 10:36:37 +02:00
phcoder
3affd0ece8 libpci initial stuff 2009-10-14 10:11:59 +02:00
phcoder
023593d766 relocator dor mips 2009-10-11 23:00:22 +02:00
phcoder
6cb9ffbd75 Merge branch 'relocator' into mips 2009-10-11 22:21:28 +02:00
phcoder
1540a08402 various fixes. MIPSsim support 2009-10-11 18:18:18 +02:00
phcoder
50739170db seems to work now. A lot is still missing though 2009-10-11 14:18:58 +02:00
phcoder
ffa9860a86 various fixes 2009-10-11 02:07:52 +02:00
phcoder
7d4cfd00ee Merge branch 'serial' into mips 2009-10-10 20:59:33 +02:00
phcoder
f651d13a18 split serial 2009-10-10 20:59:18 +02:00
phcoder
33dc6f74d2 bugfixes. Merge MIPS and MIPSel 2009-10-10 14:19:50 +02:00
phcoder
9a54aa14f8 Merge branch 'mainline' into mipsel 2009-10-10 13:47:58 +02:00
phcoder
de75aa3d67 Hello from mipsel 2009-10-10 13:30:14 +02:00
robertmh
86564c267a 2009-10-09 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/i386/cpuid.h: Add header protection.
2009-10-09 18:23:48 +00:00
robertmh
5c936493d3 2009-10-09 Robert Millan <rmh.grub@aybabtu.com>
Fail gracefuly when attempting to load 64-bit kFreeBSD on IA32 CPU.

        * include/grub/i386/cpuid.h: New file.
        * commands/i386/cpuid.c: Include `<grub/i386/cpuid.h>'.
        (has_longmode): Rename to ...
        (grub_cpuid_has_longmode): ... this.  Update all users.  Remove
        `static' attribute.
        * loader/i386/bsd.c: Include `<grub/i386/cpuid.h>'.
        (grub_bsd_load_elf): Fail if load of 64-bit kernel was requested
        on a CPU that doesn't implement AMD64 instruction set.
2009-10-09 17:57:02 +00:00
phcoder
e27fbc80e4 kernel.img compiles on mipsel-qemu-r4k 2009-10-09 19:50:31 +02:00
robertmh
6b9b6276d4 2009-09-24 Pavel Roskin <proski@gnu.org>
* include/grub/kernel.h (struct grub_module_header): Remove
        `grub_module_header_types'.  Make `type' unsigned.  Make `size'
        32-bit on all platforms.
        * util/elf/grub-mkimage.c (load_modules): Treat `type' as an
        8-bit field.  Use grub_host_to_target32() for `size'.
        * util/i386/efi/grub-mkimage.c (make_mods_section): Likewise.
        * util/i386/pc/grub-mkimage.c (generate_image): Likewise.
        * util/sparc64/ieee1275/grub-mkimage.c (generate_image): Likewise.
2009-09-24 13:40:40 +00:00
robertmh
74c958b180 2009-09-24 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/i386/at_keyboard.h (KEYBOARD_ISREADY): Negate
        return value.
        * term/i386/pc/at_keyboard.c (grub_keyboard_getkey): Negate
        KEYBOARD_ISREADY check.
        (grub_at_keyboard_checkkey): Rename to ...
        (grub_at_keyboard_getkey_noblock): ... this.  Update all users.
        Remove gratuitous cast.
2009-09-24 13:15:51 +00:00
phcoder
8f2e29a2a3 Merge branch 'mainline' into relocator 2009-09-20 19:38:16 +02:00
cjwatson
cda2a409b3 2009-09-11 Colin Watson <cjwatson@ubuntu.com>
* include/grub/ntfs.h (struct grub_fshelp_node): Change `size'
	to grub_uint64_t.
	* fs/ntfs.c (init_file): Understand 64-bit sizes for
	non-resident files.
2009-09-11 14:26:12 +00:00
phcoder
12d6fc8461 EFI support 2009-09-03 19:19:59 +02:00
phcoder
8a10b2c632 now hangs at maxDec 2009-09-02 13:34:40 +02:00
phcoder
72db7c22f3 crashing snow64 2009-09-02 02:52:10 +02:00
phcoder
965632c10f snow32 support. 2009-08-30 14:26:41 +02:00
phcoder
64bf71d0b1 2009-08-28 Vladimir Serbinenko <phcoder@gmail.com>
* include/grub/i386/xnu.h: Add license header.
	include grub/err.h explicitly.
2009-08-29 12:57:38 +00:00
phcoder
e7c69859a2 2009-08-28 Vladimir Serbinenko <phcoder@gmail.com>
1-bit optimised blitters.

	* include/grub/fbblit.h (grub_video_fbblit_replace_32bit_1bit): New
	prototype.
	(grub_video_fbblit_replace_24bit_1bit): Likewise.
	(grub_video_fbblit_replace_16bit_1bit): Likewise.
	(grub_video_fbblit_replace_8bit_1bit): Likewise.
	(grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
	(grub_video_fbblit_blend_XXX888_1bit): Likewise.
	(grub_video_fbblit_blend_XXX565_1bit): Likewise.
	* video/fb/fbblit.c (grub_video_fbblit_replace_32bit_1bit): New
	function.
	(grub_video_fbblit_replace_24bit_1bit): Likewise.
	(grub_video_fbblit_replace_16bit_1bit): Likewise.
	(grub_video_fbblit_replace_8bit_1bit): Likewise.
	(grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
	(grub_video_fbblit_blend_XXX888_1bit): Likewise.
	(grub_video_fbblit_blend_XXX565_1bit): Likewise.
	* video/fb/video_fb.c (common_blitter): Use 1-bit optimised blitters
	when possible.
	* video/video.c (grub_video_get_blit_format): Return
	GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED if bpp = 1.
2009-08-28 13:54:20 +00:00
cjwatson
4cbe67e509 2009-08-28 Colin Watson <cjwatson@ubuntu.com>
2009-08-28  Robert Millan  <rmh.grub@aybabtu.com>

	Add `getkeystatus' terminal method.  Add a new `keystatus' command
	to query it.

	* include/grub/term.h (GRUB_TERM_STATUS_SHIFT,
	GRUB_TERM_STATUS_CTRL, GRUB_TERM_STATUS_ALT): Definitions for
	modifier key bitmasks.
	(struct grub_term_input): Add `getkeystatus' member.
	(grub_getkeystatus): Add prototype.
	* kern/term.c (grub_getkeystatus): New function.

	* include/grub/i386/pc/memory.h
	(GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR): New macro.
	(struct grub_machine_bios_data_area): Define necessary parts of BIOS
	Data Area layout.
	* term/i386/pc/console.c (grub_console_getkeystatus): New function.
	(grub_console_term_input): Set `getkeystatus' member.
	* term/usb_keyboard.c (grub_usb_hid): Macroify HID protocol
	constants.
	(grub_usb_keyboard_getreport): Likewise.
	(grub_usb_keyboard_checkkey): Likewise.
	(grub_usb_keyboard_getkeystatus): New function.
	(grub_usb_keyboard_term): Set `getkeystatus' member.

	* commands/keystatus.c: New file.
	* conf/common.rmk (pkglib_MODULES): Add keystatus.mod.
	(keystatus_mod_SOURCES): New variable.
	(keystatus_mod_CFLAGS): Likewise.
	(keystatus_mod_LDFLAGS): Likewise.
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add
	commands/keystatus.c.
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
	* DISTLIST: Add commands/keystatus.c.
2009-08-28 13:20:34 +00:00
phcoder
552bf6c568 2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
NetBSD memory map support.

	* include/grub/i386/bsd.h (NETBSD_BTINFO_MEMMAP): New definition.
	(grub_netbsd_btinfo_mmap_header): New structure.
	(grub_netbsd_btinfo_mmap_entry): Likewise.
	* loader/i386/bsd.c (grub_netbsd_boot): Pass memory map.
2009-08-26 00:32:57 +00:00
phcoder
e7e1f93ff6 2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
Authentication support.

	* commands/password.c: New file.
	* conf/common.rmk (pkglib_MODULES): Add password.mod.
	(password_mod_SOURCES): New variable.
	(password_mod_CFLAGS): Likewise.
	(password_mod_LDFLAGS): Likewise.
	(normal_mod_SOURCES): Add normal/auth.c.
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add commands/password.c and
	normal/auth.c.
	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
	* include/grub/auth.h: New file.
	* include/grub/err.h (grub_err_t): New enum value
	GRUB_ERR_ACCESS_DENIED.
	* include/grub/menu.h (grub_menu_entry): New fields 'restricted' and
	'users'.
	* include/grub/normal.h (grub_cmdline_get): New argument 'history'.
	* normal/cmdline.c (grub_cmdline_get): New argument 'history'. All
	users updated.
	* normal/auth.c: New file.
	* normal/main.c (grub_normal_add_menu_entry): Handle --users option.
	(grub_cmdline_run): Don't allow to go to command line without
	authentication.
	* normal/menu.c (grub_menu_execute_entry): Handle restricted entries.
	* normal/menu_entry.c (grub_menu_entry_run): Don't allow editing
	menuentry without superuser rights.
	* normal/menu_viewer.c (grub_menu_viewer_show_menu): Don't exit if
	user isn't a superuser.
2009-08-24 23:55:06 +00:00
phcoder
70f1161d13 2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
Save space by inlining misc.c functions.

	* kern/misc.c (grub_iswordseparator): Made static.
	* kern/misc.c (grub_strcat): Moved from here ...
	* include/grub/misc.h (grub_strcat): ... here. Inlined.
	* kern/misc.c (grub_strncat): Moved from here ...
	* include/grub/misc.h (grub_strncat): ... here. Inlined.
	* kern/misc.c (grub_strcasecmp): Moved from here ...
	* include/grub/misc.h (grub_strcasecmp): ... here. Inlined.
	* kern/misc.c (grub_strncasecmp): Moved from here ...
	* include/grub/misc.h (grub_strncasecmp): ... here. Inlined.
	* kern/misc.c (grub_isalpha): Moved from here ...
	* include/grub/misc.h (grub_isalpha): ... here. Inlined.
	* kern/misc.c (grub_isdigit): Moved from here ...
	* include/grub/misc.h (grub_isdigit): ... here. Inlined.
	* kern/misc.c (grub_isgraph): Moved from here ...
	* include/grub/misc.h (grub_isgraph): ... here. Inlined.
	* kern/misc.c (grub_tolower): Moved from here ...
	* include/grub/misc.h (grub_tolower): ... here. Inlined.
2009-08-24 19:40:40 +00:00
phcoder
dd103c4e04 2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
Fix OpenBSD and NetBSD support.

	* include/grub/i386/bsd.h (GRUB_BSD_TEMP_BUFFER): Change to resolve
	memory address conflict.
	(OPENBSD_MMAP_ACPI): New definition.
	(OPENBSD_MMAP_NVS): Likewise.
	* loader/i386/bsd.c (grub_openbsd_boot): Support OPENBSD_MMAP_ACPI
	and OPENBSD_MMAP_NVS.
	Add memory map terminator
	Explicit cast when calling grub_unix_real_boot.
	(grub_nebsd_boot): Explicit cast when calling grub_unix_real_boot.
2009-08-24 13:20:24 +00:00
phcoder
f5ae9f745f 2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
Support --no-smp and --no-acpi for NetBSD.

	* include/grub/i386/bsd.h (NETBSD_AB_NOSMP): New definition.
	(NETBSD_AB_NOACPI): Likewise.
	* loader/i386/bsd.c (netbsd_opts): New entries no-smp and no-acpi.
	(netbsd_flags): Add NETBSD_AB_NOSMP, NETBSD_AB_NOACPI.
2009-08-24 12:55:19 +00:00