Commit graph

859 commits

Author SHA1 Message Date
Vladimir 'phcoder' Serbinenko
0d90e8a6fb 2010-01-15 Vladimir Serbinenko <phcoder@gmail.com>
Video driver ids.

	* include/grub/video.h (grub_video_driver_id): New type.
	(grub_video_adapter): New member 'id'. All users updated.
	(grub_video_get_driver_id): New proto.
	* video/video.c (grub_video_get_driver_id): New function.
2010-01-15 16:11:18 +01:00
Robert Millan
0a46429a55 2010-01-14 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/i386/loader.h (grub_linux16_boot): Renamed to ...
	(grub_linux16_real_boot): ... this.
	* kern/i386/loader.S: Likewise.
	* loader/i386/pc/linux.c: Include `<grub/video.h>' and `<grub/mm.h>'.
	(grub_linux16_boot): New function.  Switches to text mode and calls
	grub_linux16_real_boot().
	
	* loader/i386/bsd.c: Include `<grub/video.h>'.
	(grub_freebsd_boot, grub_openbsd_boot, grub_netbsd_boot): Switch to
	text mode before calling grub_unix_real_boot().
	
	* loader/i386/multiboot.c: Include `<grub/video.h>'.
	(grub_multiboot_boot): Switch to text mode before calling
	grub_relocator32_boot().
	
	* loader/i386/pc/chainloader.c: Include `<grub/video.h>'.
	(grub_chainloader_boot): Switch to text mode before calling
	grub_chainloader_real_boot().
2010-01-14 21:08:31 +00:00
BVK Chaitanya
96f60752d1 merge trunk 2010-01-14 18:45:19 +05:30
BVK Chaitanya
0b8891c276 removed unnecessary grub_test_* wrappers 2010-01-14 17:17:51 +05:30
BVK Chaitanya
528aeaeabb merge trunk 2010-01-12 11:02:49 +05:30
BVK Chaitanya
350285caae removed unnecessary EXPORT_* macro usage 2010-01-12 09:23:24 +05:30
Vladimir 'phcoder' Serbinenko
cd0514794a MAnipulate mbi in abstract way 2010-01-10 18:58:18 +01:00
Vladimir 'phcoder' Serbinenko
85a2cf749f merge mainline into mips 2010-01-10 13:34:48 +01:00
Robert Millan
822873a7da Eliminate grub_term_register_{input,output}_active. Default terminals are
automatically activated because they're the only terminal that has been loaded.

This solution is temporary.  In the future, all terminals should auto-enable,
but this is non-trivial due to resource conflict, and it shouldn't prevent
merge in trunk.
2010-01-09 23:42:17 +01:00
Robert Millan
75cc5b682e Merge from trunk 2010-01-09 23:22:48 +01:00
BVK Chaitanya
5cc318eb35 replaced __func__ with simpler __FUNCTION__ macro 2010-01-08 22:06:46 +05:30
BVK Chaitanya
169b1cd2d8 added functional tests to make-check 2010-01-08 16:35:32 +05:30
BVK Chaitanya
6fc804ffbb unit testing framework 2010-01-08 15:19:10 +05:30
Robert Millan
bc8b32b3ec 2010-01-07 Robert Millan <rmh.grub@aybabtu.com>
Reset Multiboot 2 support.  New loader implements the draft in
	/branches/multiboot2 and shares as much code as possible with the
	production Multiboot 1 implementation.
	
	* loader/ieee1275/multiboot2.c: Remove file.  Update all users.
	* loader/multiboot2.c: Likewise.
	* loader/i386/multiboot_helper.S: Likewise.
	* include/multiboot2.h: Replace with latest version from the draft
	in /branches/multiboot2.
	
	* conf/i386-coreboot.rmk (multiboot_mod_SOURCES): Remove
	`loader/i386/multiboot_helper.S', `loader/i386/pc/multiboot2.c'
	and `loader/multiboot2.c'.
	(pkglib_MODULES): Add `multiboot2.mod'.
	(multiboot2_mod_SOURCES): New variable.
	(multiboot2_mod_LDFLAGS): Likewise.
	(multiboot2_mod_CFLAGS): Likewise.  Define `GRUB_USE_MULTIBOOT2'.
	
	* conf/i386-pc.rmk: Likewise.
	
	* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Remove `multiboot.mod'.
	(multiboot_mod_SOURCES): Remove variable.
	(multiboot_mod_LDFLAGS): Likewise.
	(multiboot_mod_CFLAGS): Likewise.
	
	* include/grub/multiboot.h [GRUB_USE_MULTIBOOT2]: Include
	`<multiboot2.h>' instead of `<multiboot.h>'.
	[GRUB_USE_MULTIBOOT2] (MULTIBOOT_BOOTLOADER_MAGIC)
	(MULTIBOOT_HEADER_MAGIC): New macros.
	
	* loader/multiboot_loader.c (module_version_status): Remove variable.
	(find_multi_boot2_header): Remove function.
	(grub_cmd_multiboot_loader): Remove Multiboot 2 / Multiboot 1 selection
	logic.  Always check for the Multiboot version we're compiling for.
	(grub_cmd_module_loader): Likewise.
	[GRUB_USE_MULTIBOOT2] (GRUB_MOD_INIT(multiboot)): Register `multiboot2'
	command instead of `multiboot'.
2010-01-07 21:05:25 +00:00
Vladimir 'phcoder' Serbinenko
44fcb2bc59 merge mainline into multiterm 2010-01-07 21:34:43 +01:00
Robert Millan
5d2c52b8ca 2010-01-07 Robert Millan <rmh.grub@aybabtu.com>
* include/multiboot.h (MULTIBOOT_UNSUPPORTED): Moved from here ...
	* loader/i386/multiboot.c (UNSUPPORTED_FLAGS): ... to here.  Update
	all users.
2010-01-07 19:55:16 +00:00
Vladimir 'phcoder' Serbinenko
607a3701db 2010-01-07 Vladimir Serbinenko <phcoder@gmail.com>
Merge crypto branch.

	* Makefile.in (pkglib_DATA):  Add crypto.lst.
	(crypto.lst): New target.
	* commands/hashsum.c: New file.
	* commands/password.c (check_password): Use grub_crypto_memcmp.
	* commands/password_pbkdf2.c: New file.
	* commands/xnu_uuid.c: Remove MD5. Use GRUB_MD_MD5.
	* conf/any-emu.rmk (grub_emu_SOURCES): Add lib/crypto.c,
	normal/crypto.c and lib/libgcrypt-grub/cipher/md5.c.
	(grub_emu_CFLAGS): Add -Wno-missing-field-initializers -Wno-error
	-I$(srcdir)/lib/libgcrypt_wrap.
	* conf/common.rmk (normal_mod_SOURCES): Add normal/crypto.c.
	(pkglib_MODULES): Add crypto.mod, hashsum.mod, pbkdf2.mod and
	password_pbkdf2.mod.
	(crypto_mod_SOURCES): New variable.
	(crypto_mod_CFLAGS): Likewise.
	(crypto_mod_LDFLAGS): Likewise.
	(hashsum_mod_SOURCES): New variable.
	(hashsum_mod_CFLAGS): Likewise.
	(hashsum_mod_LDFLAGS): Likewise.
	(pbkdf2_mod_SOURCES): New variable.
	(pbkdf2_mod_CFLAGS): Likewise.
	(pbkdf2_mod_LDFLAGS): Likewise.
	(password_pbkdf2_mod_SOURCES): New variable.
	(password_pbkdf2_mod_CFLAGS): Likewise.
	(password_pbkdf2_mod_LDFLAGS): Likewise.
	(bin_UTILITIES): Add grub-mkpasswd-pbkdf2.
	(grub_mkpasswd_pbkdf2_SOURCES): New variable.
	(grub_mkpasswd_pbkdf2_CFLAGS): Likewise.
	Include conf/gcry.rmk.
	* include/grub/auth.h: Rewritten.
	* include/grub/crypto.h: New file.
	* include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_LUKS_ID.
	* include/grub/normal.h (read_crypto_list): New prototype.
	* lib/crypto.c: New file.
	* lib/libgcrypt_wrap/cipher_wrap.h: Likewise.
	* lib/pbkdf2.c: Likewise.
	* normal/auth.c (grub_auth_strcmp): Removed.
	(grub_iswordseparator): Likewise.
	(grub_auth_strword): Likewise.
	(is_authenticated): Use grub_strword.
	(grub_auth_check_authentication): Use grub_strcmp, grub_password_get
	and grub_strword. Pass entered password to authentication callback.
	* normal/crypto.c: New file.
	* normal/main.c: Call read_crypto_list.
	* util/grub-mkpasswd-pbkdf2.c: New file.
	* util/import_gcry.py: Generate crypto.lst. Add hash blocklen.
2010-01-07 01:13:01 +01:00
Vladimir 'phcoder' Serbinenko
4d253049d5 Fix non-clearing of timeout. Template support for timeout text. 2010-01-06 01:42:21 +01:00
Vladimir 'phcoder' Serbinenko
27708b75ca Merge gfxmenu into gfxmenu+multiterm 2010-01-05 19:38:50 +01:00
Vladimir 'phcoder' Serbinenko
b9da170080 Preliminary support for mixed percent and linear declarations 2010-01-05 19:38:11 +01:00
Vladimir 'phcoder' Serbinenko
e6e86df1de Merge multiterm into gfxmenu+multiterm 2010-01-05 16:34:10 +01:00
Vladimir 'phcoder' Serbinenko
519634516f Merge mainline into multiterm 2010-01-05 16:27:41 +01:00
Vladimir 'phcoder' Serbinenko
52c2d97f26 2010-01-04 Vladimir Serbinenko <phcoder@gmail.com>
* include/grub/efi/api.h (GRUB_EFI_PIWG_DEVICE_PATH_SUBTYPE):
	New constant.
	(grub_efi_piwg_device_path): New structure
	(grub_efi_piwg_device_path_t): New type.
	* loader/efi/appleloader.c (piwg_full_device_path): New structure.
	(devpath_1): Transform to a structure. All users updated.
	(devpath_2): Likewise.
	(devpath_3): Likewise.
	(devpath_4): Likewise.
	(devpath_5): Likewise.
2010-01-04 14:59:06 +01:00
Robert Millan
3a73dcb6f5 2010-01-03 Robert Millan <rmh.grub@aybabtu.com>
* boot/i386/pc/diskboot.S: Fix inaccurate comment.
	
	* util/i386/pc/grub-setup.c: Include `<assert.h>'.
	(struct boot_blocklist): Move from here ...
	* include/grub/i386/pc/boot.h [ASM_FILE]
	(struct grub_boot_blocklist): ... to here.  Update all users.
	(setup): Only initialize `start' member of `first_block'
	structure.  Add assert() calls to verify the other members.
	
	* util/i386/pc/grub-mkimage.c: Include `<assert.h>'.
	(generate_image): Fix broken blocklist length initialization.
	Add assert() call to verify blocklist `segment' field.
2010-01-03 22:34:03 +00:00
Robert Millan
58bc8bd5b1 2010-01-03 Robert Millan <rmh.grub@aybabtu.com>
* boot/i386/pc/boot.S: Update copyright year.
	* boot/i386/pc/cdboot.S: Likewise.
	* boot/i386/pc/diskboot.S: Likewise.
	* boot/i386/pc/lnxboot.S: Likewise.
	* boot/i386/pc/pxeboot.S: Likewise.
	* bus/pci.c: Likewise.
	* commands/cmp.c: Likewise.
	* commands/help.c: Likewise.
	* commands/hexdump.c: Likewise.
	* commands/i386/pc/halt.c: Likewise.
	* commands/i386/pc/play.c: Likewise.
	* commands/i386/pc/vbeinfo.c: Likewise.
	* commands/ls.c: Likewise.
	* commands/test.c: Likewise.
	* disk/dmraid_nvidia.c: Likewise.
	* disk/i386/pc/biosdisk.c: Likewise.
	* disk/ieee1275/nand.c: Likewise.
	* disk/ieee1275/ofdisk.c: Likewise.
	* disk/lvm.c: Likewise.
	* disk/raid.c: Likewise.
	* disk/raid6_recover.c: Likewise.
	* disk/scsi.c: Likewise.
	* fs/affs.c: Likewise.
	* fs/cpio.c: Likewise.
	* fs/ext2.c: Likewise.
	* fs/hfs.c: Likewise.
	* fs/iso9660.c: Likewise.
	* fs/ntfs.c: Likewise.
	* fs/sfs.c: Likewise.
	* fs/udf.c: Likewise.
	* fs/ufs.c: Likewise.
	* fs/xfs.c: Likewise.
	* gencmdlist.sh: Likewise.
	* genmk.rb: Likewise.
	* include/grub/disk.h: Likewise.
	* include/grub/efi/api.h: Likewise.
	* include/grub/efi/efi.h: Likewise.
	* include/grub/efi/pe32.h: Likewise.
	* include/grub/elf.h: Likewise.
	* include/grub/fs.h: Likewise.
	* include/grub/i386/at_keyboard.h: Likewise.
	* include/grub/i386/pc/memory.h: Likewise.
	* include/grub/i386/pc/vbe.h: Likewise.
	* include/grub/i386/pci.h: Likewise.
	* include/grub/i386/tsc.h: Likewise.
	* include/grub/ieee1275/ieee1275.h: Likewise.
	* include/grub/ntfs.h: Likewise.
	* include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
	* include/grub/sparc64/libgcc.h: Likewise.
	* include/grub/symbol.h: Likewise.
	* include/grub/types.h: Likewise.
	* include/multiboot2.h: Likewise.
	* io/gzio.c: Likewise.
	* kern/device.c: Likewise.
	* kern/disk.c: Likewise.
	* kern/efi/efi.c: Likewise.
	* kern/efi/mm.c: Likewise.
	* kern/elf.c: Likewise.
	* kern/file.c: Likewise.
	* kern/i386/dl.c: Likewise.
	* kern/i386/pc/init.c: Likewise.
	* kern/i386/pc/startup.S: Likewise.
	* kern/ieee1275/ieee1275.c: Likewise.
	* kern/ieee1275/init.c: Likewise.
	* kern/main.c: Likewise.
	* kern/mm.c: Likewise.
	* kern/powerpc/dl.c: Likewise.
	* kern/sparc64/dl.c: Likewise.
	* kern/x86_64/dl.c: Likewise.
	* lib/hexdump.c: Likewise.
	* loader/efi/appleloader.c: Likewise.
	* loader/i386/ieee1275/linux.c: Likewise.
	* loader/i386/pc/chainloader.c: Likewise.
	* loader/i386/pc/linux.c: Likewise.
	* loader/i386/pc/multiboot2.c: Likewise.
	* loader/ieee1275/multiboot2.c: Likewise.
	* loader/multiboot2.c: Likewise.
	* loader/multiboot_loader.c: Likewise.
	* loader/powerpc/ieee1275/linux.c: Likewise.
	* normal/completion.c: Likewise.
	* normal/menu_entry.c: Likewise.
	* partmap/apple.c: Likewise.
	* util/grub.d/10_hurd.in: Likewise.
	* util/hostfs.c: Likewise.
	* video/readers/png.c: Likewise.
2010-01-03 22:05:07 +00:00
Colin Watson
e2d70b5cea 2010-01-03 Colin Watson <cjwatson@ubuntu.com>
* include/grub/misc.h (GNUC_PREREQ): New macro.
	(ATTRIBUTE_ERROR): New macro.
	* include/grub/list.h (grub_bad_type_cast_real): Use
	ATTRIBUTE_ERROR.
2010-01-03 21:50:53 +00:00
Yves Blusseau
2f1a3acf75 2009-01-01 Yves Blusseau <yves.blusseau@zetam.org>
* configure.ac: check external intl library
	* Makefile.in: add compiler and linker flags to properly compile with
	intl library
	* include/grub/i18n.h: add a check to disable NLS
	* util/misc.c (grub_util_init_nls): new function
	* include/grub/util/misc.h: likewise
	* util/elf/grub-mkimage.c: use the new function below to initialize NLS
	* util/grub-editenv.c: likewise
	* util/grub-emu.c: likewise
	* util/grub-fstest.c: likewise
	* util/grub-mkdevicemap.c: likewise
	* util/grub-mkfont.c: likewise
	* util/grub-mkrelpath.c: likewise
	* util/grub-probe.c: likewise
	* util/i386/pc/grub-mkimage.c: likewise
	* util/i386/pc/grub-setup.c: likewise
	* util/sparc64/ieee1275/grub-mkimage.c: likewise
	* util/sparc64/ieee1275/grub-ofpathname.c: likewise
	* util/sparc64/ieee1275/grub-setup.c: likewise
	* util/mkisofs/mkisofs.h: add a check to disable NLS
	* util/mkisofs/mkisofs.c: likewise
2010-01-01 21:32:30 +01:00
carles
3393790450 2010-01-01 Carles Pina i Estany <carles@pina.cat>
* commands/help.c: Include `grub/mm.h' and `grub/normal.h'.
	(grub_cmd_help): Print the cmd->name before the cmd->summary. Cut the
	string using string width.
	* normal/menu_text.c (grub_print_message_indented): Use
	grub_print_spaces and not print_spaces.
	(print_timeout): Likewise.
	(print_spaces): Move to...
	* include/grub/term.h: ... here. Change the name to grub_print_spaces.
2010-01-01 18:58:00 +01:00
Vladimir 'phcoder' Serbinenko
33433555f3 2009-12-31 BVK Chaitanya <bvk.groups@gmail.com>
* include/grub/list.h (grub_assert_fail): Removed.
	(grub_bad_type_cast_real): New function.
	(grub_bad_type_cast): New macro.
	(GRUB_AS_LIST): Use grub_bad_type_cast.
	(GRUB_AS_LIST_P): Likewise.
	(GRUB_AS_NAMED_LIST): Likewise.
	(GRUB_AS_NAMED_LIST_P): Likewise.
	(GRUB_AS_PRIO_LIST): Likewise.
	(GRUB_AS_PRIO_LIST_P): Likewise.
	* include/grub/handler.h (GRUB_AS_HANDLER): Likewise.
2009-12-31 15:03:09 +01:00
Vladimir 'phcoder' Serbinenko
16c8e9fd66 Reimport hotkey support 2009-12-29 23:01:12 +01:00
Vladimir 'phcoder' Serbinenko
5fab62c06e merge gfxmenu into gfxmenu+mulitterm 2009-12-29 17:33:35 +01:00
Vladimir 'phcoder' Serbinenko
9a17588459 Initial support for scalable gfxmenu 2009-12-29 17:31:02 +01:00
Vladimir 'phcoder' Serbinenko
8b442f3f4c asprintf and snprintf support 2009-12-29 10:04:06 +01:00
Vladimir 'phcoder' Serbinenko
742e1f7e72 merge mainline into mips 2009-12-28 01:05:47 +01:00
Vladimir 'phcoder' Serbinenko
e20d3e608c merge multiterm into gfxmenu+multiterm 2009-12-26 16:42:55 +01:00
Vladimir 'phcoder' Serbinenko
d3ee2d201e Various fixes to make gfxmenu work smoothly in multioutput environment 2009-12-26 16:41:54 +01:00
Vladimir 'phcoder' Serbinenko
27a8ee52b4 Remove menu init hooks. They are useless 2009-12-26 16:39:16 +01:00
Vladimir 'phcoder' Serbinenko
9b1209ba15 Cache loaded theme 2009-12-26 02:37:01 +01:00
Vladimir 'phcoder' Serbinenko
bee140683a Initial effort for gfxmenu on multiterm branch 2009-12-26 01:49:57 +01:00
Robert Millan
d94000ed13 Merge from trunk 2009-12-25 22:29:47 +00:00
Vladimir 'phcoder' Serbinenko
9c288be27a 2009-12-25 Vladimir Serbinenko <phcoder@gmail.com>
Use search command for preliminar UUID search.

	* commands/search.c: Split into ...
	* commands/search_wrap.c: ...this
	* commands/search.c: ...and this.
	* commands/search_file.c: New file.
	* commands/search_label.c: New file.
	* commands/search_uuid.c: New file.
	* conf/any-emu.rmk (grub_emu_SOURCES): Remove commands/search.c.
	Add commands/search_wrap.c, commands/search_file.c,
	commands/search_label.c and commands/search_uuid.c.
	* conf/common.rmk (pkglib_MODULES): Remove fs_uuid.mod and fs_file.mod.
	(search_mod_SOURCES): Set to commands/search_wrap.c.
	(pkglib_MODULES): Add search_fs_file.mod, search_fs_uuid.mod and
	search_label.mod.
	(search_fs_file_mod_SOURCES): New variable.
	(search_fs_file_mod_CFLAGS): Likewise.
	(search_fs_file_mod_LDFLAGS): Likewise.
	(search_label_mod_SOURCES): Likewise.
	(search_label_mod_CFLAGS): Likewise.
	(search_label_mod_LDFLAGS): Likewise.
	(search_fs_uuid_mod_SOURCES): New variable.
	(search_fs_uuid_mod_CFLAGS): Likewise.
	(search_fs_uuid_mod_LDFLAGS): Likewise.
	(fs_file_mod_SOURCES): Removed.
	(fs_file_mod_CFLAGS): Likewise.
	(fs_file_mod_LDFLAGS): Likewise.
	(fs_uuid_mod_SOURCES): Removed.
	(fs_uuid_mod_CFLAGS): Likewise.
	(fs_uuid_mod_LDFLAGS): Likewise.
	* conf/sparc64-ieee1275.rmk (grub_install_SOURCES):
	Set to util/grub-install.in.
	* disk/fs_file.c: Removed.
	* disk/fs_uuid.c: Likewise.
	* include/grub/search.h: New file.
	* util/grub-install.in: Handle sparc64.
	Create and use load.cfg.
	* util/sparc64/ieee1275/grub-install.in: Removed.
2009-12-25 23:06:52 +01:00
Vladimir 'phcoder' Serbinenko
7ebaa2b4ff 2009-12-25 Vladimir Serbinenko <phcoder@gmail.com>
Support for (pxe[:server[:gateway]]) syntax and
	use environment variable for PXE.

	* commands/i386/pc/pxecmd.c (options): Removed.
	(print_ip): Removed.
	(grub_cmd_pxe): Removed
	(grub_cmd_pxe_unload): New function.
	* fs/i386/pc/pxe.c (grub_pxe_disk_data): New structure.
	(grub_pxe_your_ip): Made static.
	(grub_pxe_default_server_ip): Likewise.
	(grub_pxe_default_gateway_ip): Likewise.
	(grub_pxe_blksize): Likewise.
	(parse_ip): New function.
	(grub_pxe_open): Support server and gateway specification.
	(grub_pxe_close): Free disk->data.
	(grub_pxefs_open): Use disk->data.
	(grub_pxefs_read): Likewise.
	(grub_env_write_readonly): New function.
	(set_mac_env): Likewise.
	(set_env_limn_ro): Likewise.
	(parse_dhcp_vendor): Likewise.
	(grub_pxe_detect): Set the environment variables.
	(set_ip_env): New function.
	(write_ip_env): Likewise.
	(grub_env_write_pxe_default_server): Likewise.
	(grub_env_write_pxe_default_gateway): Likewise.
	(grub_env_write_pxe_blocksize): Likewise.
	(GRUB_MOD_INIT(pxe)): Set environment variables.
	* include/grub/i386/pc/pxe.h (grub_pxe_mac_addr): Rename to ...
	(grub_pxe_mac_addr_t): ... this. All users updated.
	(grub_pxe_your_ip): Removed.
	(grub_pxe_server_ip): Likewise.
	(grub_pxe_gateway_ip): Likewise.
	(grub_pxe_blksize): Likewise.
2009-12-25 22:01:06 +01:00
Robert Millan
2281552630 2009-12-25 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/i386/at_keyboard.h (NUM_LOCK, SCROLL_LOCK): New macros.
	* term/i386/pc/at_keyboard.c (KEYBOARD_STATUS_NUM_LOCK)
	(KEYBOARD_LED_SCROLL, KEYBOARD_LED_NUM, KEYBOARD_LED_CAPS): New macros.
	(led_status): New variable.
	(keyboard_controller_led): New function.
	(grub_at_keyboard_getkey_noblock): Handle num lock and scroll lock,
	update led status for caps lock, num lock and scroll lock.
2009-12-25 20:33:41 +00:00
Vladimir 'phcoder' Serbinenko
9f293ab0df merge mainline into gfxmenu 2009-12-25 21:32:46 +01:00
Vladimir 'phcoder' Serbinenko
6066889c88 normal_exit command 2009-12-25 16:28:31 +01:00
Robert Millan
427d6aa453 Merge my local branch 2009-12-25 12:43:20 +01:00
Vladimir 'phcoder' Serbinenko
33c1ed4c8d terminal modules autoloading 2009-12-25 03:37:20 +01:00
Vladimir 'phcoder' Serbinenko
fa533ebb5c Various fixes to make multiterm work 2009-12-25 01:13:21 +01:00
Vladimir 'phcoder' Serbinenko
840f2e6e08 Remove NEED_INIT. 2009-12-25 00:12:36 +01:00
carles
7fd0baee0f 2009-12-24 Carles Pina i Estany <carles@pina.cat>
* bus/usb/usbhub.c: Fix capitalization, fullstop and newlines in
	grub_errno calls.
	* commands/acpi.c: Likewise.
	* commands/blocklist.c: Likewise.
	* commands/efi/loadbios.c: Likewise.
	* commands/i386/pc/drivemap.c: Likewise.
	* commands/loadenv.c: Likewise.
	* commands/memrw.c: Likewise.
	* commands/password.c: Likewise.
	* commands/videotest.c: Likewise.
	* disk/ata.c: Likewise.
	* disk/ata_pthru.c: Likewise.
	* disk/dmraid_nvidia.c: Likewise.
	* disk/ieee1275/nand.c: Likewise.
	* disk/ieee1275/ofdisk.c: Likewise.
	* disk/loopback.c: Likewise.
	* disk/lvm.c: Likewise.
	* disk/mdraid_linux.c: Likewise.
	* disk/raid.c: Likewise.
	* disk/raid6_recover.c: Likewise.
	* disk/scsi.c: Likewise.
	* efiemu/main.c: Likewise.
	* efiemu/mm.c: Likewise.
	* efiemu/pnvram.c: Likewise.
	* efiemu/symbols.c: Likewise.
	* font/font.c: Likewise.
	* fs/cpio.c: Likewise.
	* fs/hfsplus.c: Likewise.
	* fs/iso9660.c: Likewise.
	* fs/jfs.c: Likewise.
	* fs/minix.c: Likewise.
	* fs/ntfs.c: Likewise.
	* fs/ntfscomp.c: Likewise.
	* fs/reiserfs.c: Likewise.
	* fs/ufs.c: Likewise.
	* fs/xfs.c: Likewise.
	* gettext/gettext.c: Likewise.
	* include/grub/auth.h: Likewise.
	* kern/elf.c: Likewise.
	* kern/file.c: Likewise.
	* kern/ieee1275/init.c: Likewise.
	* kern/ieee1275/mmap.c: Likewise.
	* kern/ieee1275/openfw.c: Likewise.
	* kern/powerpc/dl.c: Likewise.
	* kern/sparc64/dl.c: Likewise.
	* lib/arg.c: Likewise.
	* loader/i386/bsd.c: Likewise.
	* loader/i386/bsdXX.c: Likewise.
	* loader/i386/efi/linux.c: Likewise.
	* loader/i386/efi/xnu.c: Likewise.
	* loader/i386/ieee1275/linux.c: Likewise.
	* loader/i386/linux.c: Likewise.
	* loader/i386/multiboot.c: Likewise.
	* loader/i386/pc/linux.c: Likewise.
	* loader/i386/pc/multiboot2.c: Likewise.
	* loader/i386/xnu.c: Likewise.
	* loader/ieee1275/multiboot2.c: Likewise.
	* loader/macho.c: Likewise.
	* loader/machoXX.c: Likewise.
	* loader/multiboot2.c: Likewise.
	* loader/multiboot_loader.c: Likewise.
	* loader/powerpc/ieee1275/linux.c: Likewise.
	* loader/sparc64/ieee1275/linux.c: Likewise.
	* loader/xnu.c: Likewise.
	* loader/xnu_resume.c: Likewise.
	* mmap/i386/pc/mmap.c: Likewise.
	* normal/menu_viewer.c: Likewise.
	* partmap/acorn.c: Likewise.
	* partmap/amiga.c: Likewise.
	* partmap/apple.c: Likewise.
	* script/lexer.c: Likewise.
	* term/gfxterm.c: Likewise.
	* term/i386/pc/serial.c: Likewise.
	* term/i386/pc/vga.c: Likewise.
	* term/ieee1275/ofconsole.c: Likewise.
	* term/terminfo.c: Likewise.
	* video/bitmap.c: Likewise.
	* video/efi_gop.c: Likewise.
	* video/efi_uga.c: Likewise.
	* video/fb/video_fb.c: Likewise.
	* video/i386/pc/vbe.c: Likewise.
	* video/readers/tga.c: Likewise.
	* video/video.c: Likewise.
2009-12-24 23:53:05 +01:00
Vladimir 'phcoder' Serbinenko
9f0cd916a4 Restrict terminfo to serial 2009-12-24 23:20:43 +01:00
Vladimir 'phcoder' Serbinenko
0aa6339849 Working multi-terminal 2009-12-24 21:54:37 +01:00
Vladimir 'phcoder' Serbinenko
3be7f8de12 FORALL_ACTIVE_TERM_OUTPUTS macro 2009-12-24 17:51:43 +01:00
Robert Millan
8eca55a6eb Imported nyu's multi-input 2009-12-24 17:08:14 +01:00
Vladimir 'phcoder' Serbinenko
2e71383172 Core changes hopefully finished 2009-12-24 15:34:33 +01:00
Robert Millan
d14d33704e 2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
* include/multiboot.h: Indentation fixes.
2009-12-24 14:19:22 +00:00
Robert Millan
eeed10b4dd 2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
* include/multiboot.h (struct multiboot_aout_symbol_table)
	(struct multiboot_elf_section_header_table): New structure
	declarations (stolen from GRUB Legacy).
	(struct multiboot_info): Replace opaque `syms' with a.out and ELF
	table information.
	
	(multiboot_aout_symbol_table_t, multiboot_elf_section_header_table_t)
	(multiboot_info_t, multiboot_memory_map_t, multiboot_module_t): New
	type aliases.
2009-12-24 14:15:32 +00:00
Robert Millan
681c70ab14 2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
* include/multiboot.h: Make comments src2texi-friendly.
2009-12-24 14:11:14 +00:00
Robert Millan
e4d47d8d64 2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
For consistency with [multiboot]/docs/boot.S.
	
	* include/multiboot.h (MULTIBOOT_MAGIC): Rename from this ...
	(MULTIBOOT_HEADER_MAGIC): ... to this.  Update all users.
	(MULTIBOOT_MAGIC2): Rename from this ...
	(MULTIBOOT_BOOTLOADER_MAGIC): ... to this.  Update all users.
2009-12-24 14:09:06 +00:00
Robert Millan
a0b70bda6c 2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
* include/multiboot.h: Remove `<grub/types.h>'.
	(multiboot_uint16_t, multiboot_uint32_t, multiboot_uint64_t): New
	types.  Update all users.
2009-12-24 14:03:22 +00:00
Vladimir 'phcoder' Serbinenko
e48625a306 merge crypto into multiout 2009-12-24 00:38:41 +01:00
Vladimir 'phcoder' Serbinenko
f4c623e170 Work on multi-out terminal 2009-12-24 00:37:11 +01:00
Vladimir 'phcoder' Serbinenko
a2e77ce455 merge mainline into crypto 2009-12-23 20:34:26 +01:00
Felix Zielcke
a2c1332b70 2009-12-23 Felix Zielcke <fzielcke@z-51.de>
* commands/i386/pc/drivemap.c: Remove all trailing whitespace.
	* commands/lspci.c: Likewise.
	* commands/probe.c: Likewise.
	* commands/xnu_uuid.c: Likewise.
	* conf/i386-coreboot.rmk: Likewise.
	* 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.
	* fs/i386/pc/pxe.c: Likewise.
	* gettext/gettext.c: Likewise.
	* include/grub/efi/graphics_output.h: Likewise.
	* include/grub/i386/pc/memory.h: Likewise.
	* kern/env.c: Likewise.
	* kern/i386/qemu/startup.S: Likewise.
	* lib/i386/pc/biosnum.c: Likewise.
	* lib/i386/relocator.c: Likewise.
	* lib/i386/relocator_asm.S: Likewise.
	* lib/relocator.c: Likewise.
	* loader/i386/bsd.c: Likewise.
	* loader/i386/multiboot.c: Likewise.
	* loader/i386/pc/chainloader.c: Likewise.
	* loader/i386/xnu.c: Likewise.
	* loader/xnu.c: Likewise.
	* normal/main.c: Likewise.
	* normal/menu_text.c: Likewise.
	* util/getroot.c: Likewise.
	* util/grub-mkconfig_lib.in: Likewise.
	* util/grub.d/00_header.in: Likewise.
	* util/i386/pc/grub-mkimage.c: Likewise.
	* util/mkisofs/eltorito.c: Likewise.
	* util/mkisofs/exclude.h: Likewise.
	* util/mkisofs/hash.c: Likewise.
	* util/mkisofs/iso9660.h: Likewise.
	* util/mkisofs/joliet.c: Likewise.
	* util/mkisofs/mkisofs.c: Likewise.
	* util/mkisofs/mkisofs.h: Likewise.
	* util/mkisofs/multi.c: Likewise.
	* util/mkisofs/name.c: Likewise.
	* util/mkisofs/rock.c: Likewise.
	* util/mkisofs/tree.c: Likewise.
	* util/mkisofs/write.c: Likewise.
	* video/efi_gop.c: Likewise.
2009-12-23 17:41:32 +01:00
Vladimir 'phcoder' Serbinenko
7316783f35 Crypto module autoloading 2009-12-23 17:33:35 +01:00
Vladimir 'phcoder' Serbinenko
fbb8a88714 Byte-addressable PCI config space 2009-12-22 15:09:25 +01:00
Vladimir 'phcoder' Serbinenko
ba136b293a merge mainline into crypto 2009-12-22 14:28:39 +01:00
Vladimir 'phcoder' Serbinenko
0866ec655e merge mainline to newenv 2009-12-22 14:14:28 +01:00
Vladimir 'phcoder' Serbinenko
2a2869b584 merge mainline into efigfx 2009-12-22 13:34:01 +01:00
carles
7f39d92f8d 2009-12-20 Carles Pina i Estany <carles@pina.cat>
* include/grub/auth.h: Include `<grub/i18n.h>'.
	(GRUB_GET_PASSWORD): Gettextizze string.
	* include/grub/normal.h (STANDARD_MARGIN): New macro, moved from
	menu_text.c.
	(grub_utf8_to_ucs4_alloc): Fix indentation.
	(grub_print_ucs4): Likewise.
	(grub_getstringwidth): Likewise.
	(print_message_indented): New declaration.
	* normal/auth.c: Include `<grub/i18n.h>'.
	(grub_auth_check_authentication): Gettexttize string.
	* normal/cmdline.c: Include `<grub/i18n.h>'.
	(grub_cmdline_get): Gettextizze.
	* normal/color.c: Include `<grub/i18n.h>'.
	(grub_parse_color_name_pair): Gettexttize strings.
	* normal/main.c (grub_normal_reader_init): Cleanup gettexttized
	string (use `print_message_indented').
	* normal/menu_text.c (STANDARD_MARGIN): Moved from here to
	`include/grub/normal.h'.
	(print_message_indented): Renamed to ...
	(grub_print_message_indented): ... this. Remove `static' qualifer (now
	used in normal/main.c).
	(print_message): Use `grub_print_message_indented' instead of
	`print_message_indented'.
	(print_timeout): Likewise.
	* normal/misc.c: Include `<grub/term.h>' and `<grub/i18n.h>'.
	(grub_normal_print_device_info): Gettexttize strings.
	* po/POTFILES: Add `auth.c', `color.c' and `misc.c'.
2009-12-20 23:32:15 +00:00
Vladimir 'phcoder' Serbinenko
8140d50bdc PXE environment variables 2009-12-20 20:05:53 +01:00
Vladimir 'phcoder' Serbinenko
902a478aab merge trunk into newenv 2009-12-20 14:20:37 +01:00
Vladimir 'phcoder' Serbinenko
e0a6ca52f2 2009-12-19 Vladimir Serbinenko <phcoder@gmail.com>
* include/grub/types.h (UNUSED): Removed since it conflicts with
	NetBSD headers. All users changed to direct __attribute__ ((unused)).
	Reported by Grégoire Sutre.
2009-12-20 14:09:16 +01:00
Vladimir 'phcoder' Serbinenko
2fbcbbc389 Save 314 bytes on not handling contexts in core 2009-12-20 02:52:39 +01:00
carles
b99518d1ce 2009-12-19 Carles Pina i Estany <carles@pina.cat>
* include/grub/normal.h (grub_utf8_to_ucs4): New declaration.
	(grub_print_ucs4_alloc): Likewise.
	(grub_getstringwidth): Likewise.
	* normal/main.c (grub_normal_init_page): Gettextize version string.
	* normal/menu_text.c (grub_utf8_to_ucs4_alloc): New definition.
	(getstringwidth): Renamed to ...
	(grub_getstringwidth): ... this. Remove `static' qualifier (now used
	in normal/main.c).  Use `grub_utf8_to_ucs4_alloc'.
	(grub_print_ucs4): Remove `static' qualifer (now used in
	normal/main.c).
	* po/POTFILES: Add normal/main.c.
2009-12-19 23:00:30 +00:00
Vladimir 'phcoder' Serbinenko
0d48a435a0 2009-12-19 Vladimir Serbinenko <phcoder@gmail.com>
* include/grub/types.h (UNUSED): Removed since it conflicts with
	NetBSD headers. All users changed to direct __attribute__ ((unused)).
	Reported by Grégoire Sutre.
2009-12-19 21:30:00 +01:00
Vladimir 'phcoder' Serbinenko
7ea73643f5 merge mtrunk into xnu 2009-12-18 03:57:32 +01:00
Vladimir 'phcoder' Serbinenko
b044bf0351 use video subsystem on EFI 2009-12-16 19:04:58 +01:00
Vladimir 'phcoder' Serbinenko
45da21ff5a merge mainline into videomask 2009-12-16 17:52:17 +01:00
Vladimir 'phcoder' Serbinenko
c179ebe4ee 2009-12-16 Vladimir Serbinenko <phcoder@gmail.com>
UUID support for HFS.

	* fs/hfs.c (grub_hfs_uuid): New function.
	(grub_hfs_fs): New value .uuid.
	* include/grub/hfs.h (grub_hfs_sblock): New field 'num_serial'.
2009-12-16 15:40:31 +01:00
Carles Pina i Estany
c4a3e41a72 2009-12-13 Carles Pina i Estany <carles@pina.cat>
* include/grub/misc.h (grub_puts): New declaration.
	(grub_puts_): Likewise.
	* kern/mis.c (grub_puts): New definition.
	(grub_puts_): Likewise.
2009-12-13 19:51:08 +00:00
Robert Millan
648fb15b29 Merge from trunk 2009-12-13 18:41:21 +00:00
Robert Millan
b50b77b9a8 Merge relocator branch 2009-12-13 18:37:44 +00:00
Vladimir 'phcoder' Serbinenko
4d902d3715 merge from trunk 2009-12-12 02:38:30 +01:00
Vladimir 'phcoder' Serbinenko
b66948bd88 setjmp on mips 2009-12-12 02:33:41 +01:00
Robert Millan
37ba589a4e Merge from trunk 2009-12-12 00:07:45 +00:00
Robert Millan
cbf73baaae Indentation fix & missing copyright year. 2009-12-11 23:10:57 +00:00
Robert Millan
dfec2d96f9 Merge from trunk 2009-12-11 21:20:00 +00:00
Robert Millan
838114b687 Merge from trunk 2009-12-11 21:15:58 +00:00
Vladimir 'phcoder' Serbinenko
d4af2a73dc datetime for yeeloong 2009-12-11 22:14:09 +01:00
Robert Millan
2a3aa4d570 Merge pciaccess branch 2009-12-11 21:12:57 +00:00
Robert Millan
febfc12c6e 2009-12-10 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/mips/libgcc.h: Only export symbols for functions
        that libgcc provides.
2009-12-10 22:38:54 +00:00
Vladimir 'phcoder' Serbinenko
2e59983c82 2009-12-10 Vladimir Serbinenko <phcoder@gmail.com>
Eliminate NTFS 4Gib barrier.

	* fs/ntfs.c (read_attr): Use grub_disk_addr_t and grub_size_t.
	(read_run_data): Likewise.
	(grub_ntfs_read_run_list): Likewise.
	(grub_ntfs_read_block): Likewise.
	(grub_ntfs_iterate_dir): Likewise.
	(read_mft): Likewise.
	(read_data): Likewise.
	Use COM_LOG_LEN.
	* fs/ntfscomp.c (read_block): Cast ctx->target_vcn & 0xF to unsigned
	to avoid 64-bit division
	* include/grub/ntfs.h (COM_LOG_LEN): New definition.
	(grub_ntfs_rlst): Use grub_disk_addr_t.
2009-12-10 14:45:00 +01:00
Vladimir 'phcoder' Serbinenko
d114e89ca8 Add clock 2009-12-09 17:58:48 +01:00
Carles Pina i Estany
e3069ec1a5 2009-12-08 Carles Pina i Estany <carles@pina.cat>
* include/grub/misc.h (grub_printf_): New declaration.
	* kern/misc.c (grub_printf_): New definition.
	* normal/main.c (grub_normal_reader_init): Use `grub_printf_' and `N_'
	instead of `grub_printf' and `_'.
	* normal/menu_entry.c (store_completion): Likewise.
	(run): Likewise.
	(grub_menu_entry_run): Likewise.
	* normal/menu_text.c (grub_wait_after_message): Likewise.
	(notify_booting): Likewise.
	(notify_fallback): Likewise.
	(notify_execution_failure): Likewise.
2009-12-08 00:08:52 +00:00
Colin Watson
d6ceebf1d9 2009-12-07 Colin Watson <cjwatson@ubuntu.com>
* configure.ac: Check for vasprintf.
	* util/misc.c (asprintf): Move allocation from here ...
	(vasprintf): ... to here.  New function.
	(xasprintf): New function.
	* include/grub/util/misc.h (vasprintf, xasprintf): Add
	prototypes.
	* util/getroot.c (grub_util_get_grub_dev): Use xasprintf.
	* util/grub-mkfont.c (write_font): Likewise.
	* util/grub-probe.c (probe): Likewise.
	* util/hostdisk.c (make_device_name): Likewise.
2009-12-07 16:46:24 +00:00
Vladimir 'phcoder' Serbinenko
0f355bc6b3 add memory routines 2009-12-07 16:16:10 +01:00
Vladimir 'phcoder' Serbinenko
d5b44e501d retrieve firmware arguments 2009-12-07 02:09:39 +01:00
Vladimir 'phcoder' Serbinenko
b391bdb2f2 Use dedicated simple password retriever for size of future crypto disks modules and simplify entering passwords routines 2009-12-06 20:11:50 +01:00
Vladimir 'phcoder' Serbinenko
7d624c2949 merge mainline into crypto 2009-12-05 16:34:27 +01:00
Vladimir 'phcoder' Serbinenko
9d1fafb96e Move include/grub/cipher_wrap.h to lib/libgcrypt_wrap/cipher_wrap.h 2009-12-05 16:33:39 +01:00
Robert Millan
c4282e6cb3 Remove mips/reboot.h. 2009-12-04 00:05:48 +00:00
Robert Millan
69ac6c405a Merge from trunk 2009-12-04 00:04:41 +00:00
Robert Millan
6b8474f8e8 2009-12-04 Robert Millan <rmh.grub@aybabtu.com>
* commands/halt.c: Replace misc arch-specific headers with
        `<grub/misc.h>'.
        * commands/reboot.c: Likewise.
        * commands/i386/pc/halt.c: Replace `<grub/machine/init.h>' with
        `<grub/misc.h>'.
        * conf/i386-coreboot.rmk (kernel_img_HEADERS): Remove `cpu/reboot.h'.
        (halt_mod_SOURCES): Move `kern/i386/halt.c' from here ...
        (kernel_img_SOURCES): ... to here.

        * include/grub/efi/efi.h (grub_reboot, grub_halt): Remove prototypes.
        * include/grub/i386/pc/init.h: Likewise.
        * include/grub/powerpc/ieee1275/kernel.h: Likewise.
        * include/grub/sparc64/ieee1275/kernel.h: Likewise.

        * include/grub/misc.h (grub_reboot, grub_halt): New prototypes.

        * include/grub/i386/halt.h: Remove.
        * include/grub/i386/reboot.h: Likewise.

        * kern/i386/halt.c: Remove `<grub/cpu/halt.h>'.
2009-12-03 23:07:29 +00:00
Robert Millan
5239348f18 2009-12-02 Robert Millan <rmh.grub@aybabtu.com>
Use the same reboot approach on i386 coreboot and qemu as we do on
        BIOS.

        * conf/i386-coreboot.rmk (kernel_img_HEADERS): Add `cpu/reboot.h'.
        (reboot_mod_SOURCES): Remove `kern/i386/reboot.c'.
        * kern/i386/reboot.c: Remove.
        * include/grub/i386/reboot.h (grub_reboot): Export function.
        * kern/i386/pc/startup.S (grub_reboot): Move from here ...
        * kern/i386/realmode.S (grub_reboot): ... to here.  Jump to
        0xf000:0xfff0 instead of 0xffff:0x0000.
        [!GRUB_MACHINE_PCBIOS] (prot_to_real): Do not restore interrupts.
        * kern/i386/qemu/startup.S: Include `"../realmode.S"'.
2009-12-02 22:48:02 +00:00
Vladimir 'phcoder' Serbinenko
035a008c13 Remove leftover 2009-12-02 11:44:29 +01:00
Vladimir 'phcoder' Serbinenko
537ee0a5f1 Merge relocators into mips 2009-12-02 09:55:04 +01:00
Vladimir 'phcoder' Serbinenko
4f41a23d4e merge mainline into mips 2009-12-02 09:51:36 +01:00
Vladimir 'phcoder' Serbinenko
7b5f334bc0 Rename qemu-r4k to qemu-mips 2009-12-02 08:49:36 +01:00
Vladimir 'phcoder' Serbinenko
e6b9873356 Remove qemu-mipssim 2009-12-02 08:40:51 +01:00
Vladimir 'phcoder' Serbinenko
3e5c7dc3d8 Fix qemu-r4k 2009-12-02 08:39:17 +01:00
Vladimir 'phcoder' Serbinenko
e45f7848e6 merged mainline into pci 2009-11-30 16:39:59 +01:00
Vladimir 'phcoder' Serbinenko
9ec25583a9 Merge bmpidx into gfxmenu 2009-11-29 15:25:13 +01:00
Vladimir 'phcoder' Serbinenko
f704cae368 Fix declarations of previous commit 2009-11-28 00:46:09 +01:00
Vladimir 'phcoder' Serbinenko
1708050b6f GOP support
Also-By: Bean Lee <>
2009-11-28 00:15:04 +01:00
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
Robert Millan
e4612999e6 Merge from trunk. 2009-11-25 21:34:53 +00: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
Vladimir 'phcoder' Serbinenko
947fa16c8b Important speedup by not redrawing too much 2009-11-24 07:17:18 +01:00
Vladimir 'phcoder' Serbinenko
59f746dc5f merged mainstream into crypto 2009-11-24 02:54:35 +01:00
Vladimir 'phcoder' Serbinenko
3dcf83ba7d merged mainstream into gfxmenu 2009-11-24 01:22:41 +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
Colin D Bennett
d45b547fa6 merge trigonometry 2009-11-20 16:03:44 +01:00
Colin D Bennett
d920a32ab6 gfxmenu import 2009-11-20 16:02:58 +01:00
Colin D Bennett
bd86691a07 2009-11-20 Colin D Bennett <colin@gibibit.com>
* include/grub/misc.h (grub_iscntrl): New inline function.
	(grub_isalnum): Likewise.
	(grub_strtol): Likewise.
2009-11-20 15:09:48 +01:00
Colin D Bennett
cbf97a87d9 * include/grub/menu_viewer.h (grub_menu_viewer_init): New prototype.
(grub_menu_viewer_should_return): Likewise.
	* normal/main.c (GRUB_MOD_INIT (normal)): Call grub_menu_viewer_init.
	* normal/menu_text.c (run_menu): Enable menu switching.
	* normal/menu_viewer.c (should_return): New variable.
	(menu_viewer_changed): Likewise.
	(grub_menu_viewer_show_menu): Handle menu viewer changes.
	(grub_menu_viewer_should_return): New function.
	(menuviewer_write_hook): Likewise.
	(grub_menu_viewer_init): Likewise.
2009-11-20 14:51:01 +01:00
Vladimir 'phcoder' Serbinenko
ac3b7128d6 2009-11-20 Colin D Bennett <colin@gibibit.com>
* normal/menu_text.c (get_entry_number): Move from here ...
	* normal/menu.c (get_entry_number): ... moved here.
	* include/grub/menu.h (grub_menu_get_default_entry_index):
	New prototype.
	* normal/menu.c (grub_menu_get_default_entry_index): New function.
	* normal/menu_text.c (run_menu): Use grub_menu_get_default_entry_index.
2009-11-20 14:45:33 +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
Vladimir 'phcoder' Serbinenko
0e3c54a5c5 PBKDF2 passwords available 2009-11-24 02:36:21 +01: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
Vladimir 'phcoder' Serbinenko
228734ab02 MAX_PASSLEN based authentication 2009-11-15 23:36:42 +01:00
Vladimir 'phcoder' Serbinenko
10e53efaee crypto_memcmp 2009-11-15 23:31:27 +01:00
Vladimir 'phcoder' Serbinenko
6e7d9194d1 Add HMAC and PBKDF2 2009-11-24 02:32:29 +01:00
Colin D Bennet
c51a5caeab 2009-11-14 Colin D Bennet <colin@gibibit.com>
2009-11-14  Vladimir Serbinenko  <phcoder@gmail.com>

	Support for gfxterm in a window.

	* include/grub/gfxterm.h: New file.
	* include/grub/video.h (struct grub_video_rect): New declaration.
	(grub_video_rect_t): Likewise.
	* term/gfxterm.c (struct grub_gfxterm_window): New type.
	(refcount): New variable.
	(render_target): Likewise.
	(window): Likewise.
	(repaint_callback): Likewise.
	(grub_virtual_screen_setup): Use 'render_target'.
	(init_window): New function.
	(grub_gfxterm_init_window): Likewise.
	(grub_gfxterm_init): Check reference counter.
	Use init_window.
	(destroy_window): New function.
	(grub_gfxterm_destroy_window): Likewise.
	(grub_gfxterm_fini): Check reference counter.
	Use destroy_window.
	(redraw_screen_rect): Restore viewport.
	Use 'render_target' and 'window'.
	Call 'repaint_callback'.
	(write_char): Use 'render_target'.
	(draw_cursor): Likewise.
	(scroll_up): Restore viewport.
	Use 'render_target' and 'window'.
	Call 'repaint_callback'.
	(grub_gfxterm_cls): Likewise.
	(grub_gfxterm_refresh): Use 'window'.
	(grub_gfxterm_set_repaint_callback): New function.
	(grub_gfxterm_background_image_cmd): Use 'window'.
	(grub_gfxterm_get_term): New function.
	(GRUB_MOD_INIT(term_gfxterm)): Set 'refcount' to 0.

	Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2009-11-15 00:03:03 +01:00
Vladimir 'phcoder' Serbinenko
a9d407a81e Reimported scaling 2009-11-20 10:46:30 +01:00
Colin D Bennet
85536ab717 2009-11-14 Colin D Bennet <colin@gibibit.com>
Trigonometry support.

	* include/grub/trig.h: New file.
	* lib/trig.c: Likewise.
	* maintainance/gentrigtables.py: Likewise.
	* conf/common.rmk (pkglib_MODULES): Add trig.mod.
	(trig_mod_SOURCES): New variable.
	(trig_mod_CFLAGS): Likewise.
	(trig_mod_LDFLAGS): Likewise.
2009-11-14 23:11:55 +01:00
Vladimir 'phcoder' Serbinenko
bbe73b0995 Improved performance by not requiring updating swap in gfxterm 2009-11-14 17:59:11 +01:00
Vladimir 'phcoder' Serbinenko
1f56d83788 Initial reimport of double buffering 2009-11-14 17:00:39 +01:00
Vladimir 'phcoder' Serbinenko
df48e9e18d REimport of videomask patch 2009-11-14 16:25:50 +01: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
37f7911f01 Fix compilation error 2009-11-13 01:27:38 +01:00
Vladimir 'phcoder' Serbinenko
fbf62978dc Improved error handling 2009-11-13 00:27:04 +01:00
Vladimir 'phcoder' Serbinenko
d944246c6a Created crypto module. Moved some functions to it. 2009-11-12 22:40:14 +01:00
Vladimir 'phcoder' Serbinenko
414f919237 Various cleanups and wrapper functions. Allocate disk id for LUKS. 2009-11-12 18:08:44 +01:00
Vladimir 'phcoder' Serbinenko
a4bafc4710 First working cipher import 2009-11-10 20:51:22 +01:00
Vladimir 'phcoder' Serbinenko
39f7c91b50 base for ciphers and digests 2009-11-10 01:01:11 +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
58806db847 Improvements in headers 2009-11-09 20:30:40 +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
Vladimir 'phcoder' Serbinenko
c9b1ebc10b First try to gcry glue 2009-11-09 17:13:17 +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
robertmh
71acf5e54b 2009-08-23 Robert Millan <rmh.grub@aybabtu.com>
* partmap/pc.c: Rename to ...
        * partmap/msdos.c: ... this.  Update all users.
        (grub_pc_partition_map): Rename to ...
        (grub_msdos_partition_map): ... this.  Update all users.

        * parttool/pcpart.c: Rename to ...
        * parttool/msdospart.c: ... this.  Update all users.

        * include/grub/pc_partition.h: Rename to ...
        * include/grub/msdos_partition.h: ... this.  Update all users.
        (grub_pc_partition_bsd_entry): Rename to ...
        (grub_msdos_partition_bsd_entry): ... this.  Update all users.
        (grub_pc_partition_disk_label): Rename to ...
        (grub_msdos_partition_disk_label): ... this.  Update all users.
        (grub_pc_partition_entry): Rename to ...
        (grub_msdos_partition_entry): ... this.  Update all users.
        (grub_pc_partition_mbr): Rename to ...
        (grub_msdos_partition_mbr): ... this.  Update all users.
        (grub_pc_partition): Rename to ...
        (grub_msdos_partition): ... this.  Update all users.
        (grub_pc_partition_is_empty): Rename to ...
        (grub_msdos_partition_is_empty): ... this.  Update all users.
        (grub_pc_partition_is_extended): Rename to ...
        (grub_msdos_partition_is_extended): ... this.  Update all users.
        (grub_pc_partition_is_bsd): Rename to ...
        (grub_msdos_partition_is_bsd): ... this.  Update all users.

        * conf/common.rmk (amiga_mod_SOURCES, amiga_mod_CFLAGS)
        (amiga_mod_LDFLAGS, apple_mod_SOURCES, apple_mod_CFLAGS)
        (apple_mod_LDFLAGS, msdos_mod_SOURCES, msdos_mod_CFLAGS)
        (msdos_mod_LDFLAGS, sun_mod_SOURCES, sun_mod_CFLAGS)
        (sun_mod_LDFLAGS, acorn_mod_SOURCES, acorn_mod_CFLAGS)
        (acorn_mod_LDFLAGS, gpt_mod_SOURCES, gpt_mod_CFLAGS)
        (gpt_mod_LDFLAGS): Rename to ...
        (part_amiga_mod_SOURCES, part_amiga_mod_CFLAGS, part_amiga_mod_LDFLAGS)
        (part_apple_mod_SOURCES, part_apple_mod_CFLAGS, part_apple_mod_LDFLAGS)
        (part_msdos_mod_SOURCES, part_msdos_mod_CFLAGS, part_msdos_mod_LDFLAGS)
        (part_sun_mod_SOURCES, part_sun_mod_CFLAGS, part_sun_mod_LDFLAGS)
        (part_acorn_mod_SOURCES, part_acorn_mod_CFLAGS, part_acorn_mod_LDFLAGS)
        (part_gpt_mod_SOURCES, part_gpt_mod_CFLAGS)
        (part_gpt_mod_LDFLAGS): ... this.
        (pkglib_MODULES): Prefix partition modules with `part_'.  Rename
        `pcpart.mod' to `msdospart.mod'.
        (pcpart_mod_SOURCES, pcpart_mod_CFLAGS, pcpart_mod_LDFLAGS): Rename
        to ...
        (msdospart_mod_SOURCES, msdospart_mod_CFLAGS)
        (msdospart_mod_LDFLAGS): ... this.
2009-08-23 12:00:57 +00:00
Vladimir 'phcoder' Serbinenko
5e03640baf Merge branch 'mainline' into relocator
Conflicts:
	loader/i386/multiboot.c
2009-08-23 01:31:12 +02:00
proski
b7da6babe8 2009-08-18 Pavel Roskin <proski@gnu.org>
* include/grub/fbfill.h (struct grub_video_fbrender_target): Use
	grub_uint8_t pointer for data.
	* include/grub/fbutil.h (struct grub_video_fbblit_info):
	Likewise.
	* video/fb/fbutil.c: Remove unnecessary casts.
2009-08-18 17:26:35 +00:00
phcoder
6025fcd7f9 2009-08-17 Michal Suchanek <hramrach@centrum.cz>
Remove duplicate grub_video_fb_get_video_ptr.

	* include/grub/fbutil.h (get_data_ptr): Rename to ...
	(grub_video_fb_get_video_ptr): ... this.
	* include/grub/video_fb.h (grub_video_fb_get_video_ptr): Removed.
	* video/fb/fbutil.c: Add comment about addressing.
	(get_data_ptr): Rename to ...
	(grub_video_fb_get_video_ptr): ... this. All users updated.
	* video/fb/video_fb.c (grub_video_fb_get_video_ptr): Remove.
2009-08-17 13:34:24 +00:00
phcoder
d3539132cd 2009-08-14 Vladimir Serbinenko <phcoder@gmail.com>
Framebuffer split.

	* commands/i386/pc/vbetest.c (grub_cmd_vbetest): Restore video
	subsystem at the end.
	* conf/common.rmk (pkglib_MODULES): Add video_fb.mod.
	(video_fb_mod_SOURCES): New variable.
	(video_fb_mod_CFLAGS): Likewise.
	(video_fb_mod_LDFLAGS): Likewise.
	* conf/i386-pc.rmk (vbe_mod_SOURCES): Remove video/i386/pc/vbeblit.c,
	video/i386/pc/vbefill.c and video/i386/pc/vbeutil.c.
	* video/i386/pc/vbeblit.c: Moved from here ...
	* video/fb/fbblit.c: ..here. Replaced 'vbe' with 'fb'.
	* video/i386/pc/vbefill.c: Moved from here ...
	* video/fb/fbfill.c: ..here. Replaced 'vbe' with 'fb'.
	* video/i386/pc/vbeutil.c: Moved from here ...
	* video/fb/fbutil.c: ..here. Replaced 'vbe' with 'fb'.
	* include/grub/i386/pc/vbeblit.h: Moved from here ...
	* include/grub/fbblit.h: ... here. Replaced 'vbe' with 'fb'.
	* include/grub/i386/pc/vbefill.h: Moved from here ...
	* include/grub/fbfill.h: ... here. Replaced 'vbe' with 'fb'.
	* include/grub/i386/pc/vbeutil.h: Moved from here ...
	* include/grub/fbutil.h: ... here. Replaced 'vbe' with 'fb'.
	* include/grub/i386/pc/vbe.h: Moved framebuffer part ...
	* include/grub/video_fb.h: ... here. Replaced 'vbe' with 'fb'.
	* include/grub/video.h (GRUB_VIDEO_RENDER_TARGET_FRONT_BUFFER): Removed.
	(GRUB_VIDEO_RENDER_TARGET_BACK_BUFFER): Likewise.
	(grub_video_adapter): Added 'get_info_and_fini'.
	(grub_video_get_info_and_fini): New prototype.
	(grub_video_set_mode): make modestring const char *.
	* loader/i386/linux.c (grub_linux_setup_video): Use
	grub_video_get_info_and_fini.
	(grub_linux_boot): Move modesetting just before booting.
	* loader/i386/pc/xnu.c (grub_xnu_set_video): Use
	grub_video_get_info_and_fini.
	* video/i386/pc/vbe.c: Moved framebuffer part ...
	* video/fb/video_fb.c: ... here. Replaced 'vbe' with 'fb'.
	* video/i386/pc/vbe.c (grub_vbe_set_video_mode): Use
	grub_video_fbstd_colors and grub_video_fb_set_palette.
	(grub_video_vbe_init): Clear 'framebuffer' variable and use
	grub_video_fb_init.
	(grub_video_vbe_fini): Use grub_video_fb_fini.
	(grub_video_vbe_setup): Use framebuffer.render_target instead of
	render_target and use grub_video_fb_set_active_render_target and
	grub_video_fb_set_palette.
	(grub_video_vbe_set_palette): Use grub_video_fb_set_palette.
	(grub_video_vbe_set_viewport): Use grub_video_fb_set_viewport.
	(grub_video_vbe_adapter): Use framebuffer.
	* video/video.c (grub_video_get_info_and_fini): New function.
	(grub_video_set_mode): Make modestring const char *.
	(GRUB_MOD_INIT(video_video)): Don't set variables to 0 since these
	values are already initialised.
2009-08-14 12:41:58 +00:00
proski
be3c9ca7cb 2009-08-13 Yves Blusseau <blusseau@zetam.org>
* include/grub/symbol.h: Add the LOCAL macro.
	* boot/i386/pc/boot.S: Use the LOCAL macro for all labels
	starting with "L_".
2009-08-13 06:09:39 +00:00
robertmh
81623db677 2009-08-10 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/i386/bsd.h (KERNEL_TYPE_NONE, KERNEL_TYPE_FREEBSD)
        (KERNEL_TYPE_OPENBSD, KERNEL_TYPE_NETBSD): Convert to ...
        (bsd_kernel_types): ... this enum.

        * loader/i386/bsd.c (grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module)
        (grub_cmd_freebsd_module_elf): Abort with "You need to load the
        kernel first." when `kernel_type' is set to KERNEL_TYPE_NONE.

        (grub_bsd_load_aout, grub_bsd_load, grub_cmd_freebsd_loadenv)
        (grub_cmd_freebsd_module, grub_cmd_freebsd_module_elf)
        (GRUB_MOD_INIT (bsd)): Fix capitalization in a few error
        messages.
2009-08-10 15:42:39 +00:00
proski
b5f16cc4cf 2009-08-08 Pavel Roskin <proski@gnu.org>
* include/grub/powerpc/libgcc.h: Export __ashrdi3() if
	available, xfs.mod needs it now.
2009-08-08 05:58:23 +00:00