Vladimir 'phcoder' Serbinenko
262355247f
merge mainline into newreloc
2010-01-16 00:05:33 +01:00
Vladimir 'phcoder' Serbinenko
a0b766fc9b
2010-01-15 Vladimir Serbinenko <phcoder@gmail.com>
...
Enable multiboot on non-pc.
* conf/i386-coreboot.rmk, conf/i386-pc.rmk (pkglib_MODULES): Move
multiboot.mod and multiboot2.mod to ...
* conf/i386.rmk (pkglib_MODULES): ... here.
* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_SOURCES):
Moved to ...
* conf/i386.rmk (multiboot_mod_SOURCES): .. here.
* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_CFLAGS):
Moved to ...
* conf/i386.rmk (multiboot_mod_CFLAGS): .. here.
* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_ASFLAGS):
Moved to ...
* conf/i386.rmk (multiboot_mod_ASFLAGS): .. here.
* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_LDFLAGS):
Moved to ...
* conf/i386.rmk (multiboot_mod_LDFLAGS): .. here.
* conf/x86_64-efi.rmk (pkglib_MODULES): Remove ata.mod and
relocator.mod.
(ata_mod_SOURCES): Removed.
(ata_mod_CFLAGS): Likewise.
(ata_mod_LDFLAGS): Likewise.
(relocator_mod_SOURCES): Removed.
(relocator_mod_CFLAGS): Likewise.
(relocator_mod_ASFLAGS): Likewise.
(relocator_mod_LDFLAGS): Likewise.
Include i386.mk.
* include/grub/x86_64/multiboot.h: New file.
* loader/i386/multiboot.c (grub_multiboot_boot) [GRUB_MACHINE_EFI]:
Terminate EFI.
2010-01-15 21:11:51 +01:00
Vladimir 'phcoder' Serbinenko
884ade5654
2010-01-15 Vladimir Serbinenko <phcoder@gmail.com>
...
Video multiboot support.
* include/grub/multiboot.h (grub_multiboot_set_accepts_video):
New prototype.
* include/multiboot.h: Resynced with multiboot specification.
* include/multiboot2.h: Likewise.
* loader/i386/multiboot.c (UNSUPPORTED_FLAGS): Support video flags.
(grub_multiboot): Parse MULTIBOOT_VIDEO_MODE fields.
* loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): New constant.
(HAS_VGA_TEXT): Likewise.
(accepts_video): New variable.
(grub_multiboot_set_accepts_video): New function.
(grub_multiboot_get_mbi_size): Account for video structures.
(set_video_mode): New function.
(retrieve_video_parameters): Likewise.
(grub_multiboot_make_mbi): Fill video fields.
2010-01-15 16:30:57 +01:00
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
Vladimir 'phcoder' Serbinenko
53fbae94a6
netbsd framebuffer support
2010-01-15 13:40:37 +01:00
Vladimir 'phcoder' Serbinenko
9766dafa74
symtab support for knetbsd
2010-01-15 12:31:06 +01:00
Vladimir 'phcoder' Serbinenko
5fb5182f8a
comX notation support
2010-01-15 11:48:15 +01:00
Vladimir 'phcoder' Serbinenko
2386d586b9
Merge some knetbsdcode into kfreebsd one. Serial supoort for knetbsd
2010-01-15 11:39:05 +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
Vladimir 'phcoder' Serbinenko
865a0f8aa7
elf symbols
2010-01-14 19:14:24 +01:00
BVK Chaitanya
96f60752d1
merge trunk
2010-01-14 18:45:19 +05:30
Vladimir 'phcoder' Serbinenko
ea96d34596
Clarify type of bi_kernelname and bi_nfs_diskless
2010-01-14 13:40:17 +01:00
BVK Chaitanya
0b8891c276
removed unnecessary grub_test_* wrappers
2010-01-14 17:17:51 +05:30
Vladimir 'phcoder' Serbinenko
3f995850a4
declare grub_multiboot_relocator in multiboot.h.
2010-01-13 20:49:13 +01:00
Vladimir 'phcoder' Serbinenko
5ffb1b8494
Remove leftover grub_unix_real_boot
2010-01-13 20:47:05 +01:00
Vladimir 'phcoder' Serbinenko
319fc3d213
Remove became useless i386/multiboot.h
2010-01-13 18:44:12 +01:00
Vladimir 'phcoder' Serbinenko
ad184204b2
Remove leftover multiboot elpers
2010-01-13 18:41:49 +01:00
Vladimir 'phcoder' Serbinenko
d1b3ffe8ce
merge efigfx into newreloc
2010-01-13 14:12:24 +01:00
Vladimir 'phcoder' Serbinenko
c8142599fc
Merge i386/efi/linux.c into i386/linux.c
2010-01-13 14:03:54 +01:00
Vladimir 'phcoder' Serbinenko
ca732b36c1
Video driver ID.
2010-01-13 14:03:18 +01:00
Vladimir 'phcoder' Serbinenko
11aadbadfb
fix compilation on coreboot
2010-01-12 23:03:56 +01:00
Vladimir 'phcoder' Serbinenko
e6e7b4ea1f
Remove i386/loader.h
2010-01-12 22:22:36 +01:00
Vladimir 'phcoder' Serbinenko
c911e8791a
Port linux16 to relocator framework
2010-01-12 22:17:26 +01:00
Vladimir 'phcoder' Serbinenko
14dacc815a
Clarify type of cmd_line_ptr
2010-01-12 22:16:33 +01:00
Vladimir 'phcoder' Serbinenko
cdab631686
Relocator16 support
2010-01-12 22:15:50 +01:00
Vladimir 'phcoder' Serbinenko
49a716be3b
Possibility to prefer higher or lower chunks in relocator
2010-01-12 22:14:26 +01:00
Vladimir 'phcoder' Serbinenko
73910decff
Fix various bugs in *bsd. Freebsd64 on relocators
2010-01-12 17:50:11 +01:00
Vladimir 'phcoder' Serbinenko
14933205d1
Relocator64 support
2010-01-12 17:48:51 +01:00
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
108408aa39
BSD on relocators
2010-01-11 22:54:40 +01:00
Vladimir 'phcoder' Serbinenko
55b40bc68a
Ported linux to relocator framework
2010-01-11 14:59:01 +01:00
Vladimir 'phcoder' Serbinenko
cb1b2ad7e0
Reenable XNU
2010-01-11 13:43:44 +01:00
Vladimir 'phcoder' Serbinenko
5c8e58b0cb
merge abstractmbi into newreloc
2010-01-11 11:29:52 +01:00
Vladimir 'phcoder' Serbinenko
cd0514794a
MAnipulate mbi in abstract way
2010-01-10 18:58:18 +01:00
Vladimir 'phcoder' Serbinenko
14e43c6e02
First working newreloc
2010-01-10 15:06:17 +01:00
Vladimir 'phcoder' Serbinenko
6b60576149
merge mainline into newreloc
2010-01-10 01:56:47 +01:00
Vladimir 'phcoder' Serbinenko
95c7fc3f55
First compileable newreloc
2010-01-10 00:30:33 +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
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