Commit graph

2149 commits

Author SHA1 Message Date
Colin Watson
58ed62d221 Avoid consuming lots of space and time if the first partition is not near the start of the disk (Debian bug #619458, Ubuntu bug #691569). 2011-03-25 17:22:12 +00:00
Vladimir 'phcoder' Serbinenko
3f71cded81 * include/grub/mm.h (GRUB_MM_CHECK): Rename to ...
(grub_mm_check): ... this. MAke a function-like macro and use GRUB_FILE.
2011-03-24 12:43:28 +01:00
Vladimir 'phcoder' Serbinenko
54da1febce Rename mipsel-yeeloong to mipsel-loongson 2011-02-19 13:18:05 +01:00
Colin Watson
28f9509eb7 merge trunk 2011-02-17 14:51:11 +00:00
Vladimir 'phcoder' Serbinenko
028501a0e0 Workaround yet another IEEE1275 bug.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
	GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS.
	* grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate): Ignore
	adress_cells and size:cells if GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS
	is set.
	* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
	GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS on powermacs.
2011-02-12 10:22:55 +03:00
Colin Watson
7e735e4349 * include/grub/file.h (not_easly_seekable): Rename to ...
(not_easily_seekable): ... this.  Update all users.
2011-02-08 13:21:13 +00:00
Vladimir 'phcoder' Serbinenko
88906eaa69 Fix accidental disable of Geode UARTs 2011-01-24 01:46:00 +01:00
Vladimir 'phcoder' Serbinenko
9f7322f50e Add missing UART2 definitions 2011-01-24 00:47:36 +01:00
Vladimir 'phcoder' Serbinenko
0889c3401c Explicitly enable MSR mailbox 2011-01-23 21:56:00 +01:00
Vladimir 'phcoder' Serbinenko
99388e0cf8 Fuloong shutdown support 2011-01-18 19:39:12 +01:00
Vladimir 'phcoder' Serbinenko
74eea126f4 fuloong support 2011-01-18 15:28:44 +01:00
Vladimir 'phcoder' Serbinenko
01b08a0f15 initial SIS315PRO support 2011-01-18 13:44:16 +01:00
Colin Watson
9b300caf84 grub_video_get_edid is not usable from grub_vbe_get_preferred_mode, as a
video adapter has not necessarily yet been set.  Use grub_video_vbe_get_edid
and grub_video_edid_checksum directly instead.  Remove grub_video_get_edid
as it now has no users.
Reported by: Marjo Mercado.
2011-01-17 12:07:47 +00:00
Colin Watson
13fc463f17 Make new grub_vbe_bios_* functions static. 2011-01-15 14:18:16 -06:00
Vladimir 'phcoder' Serbinenko
f440c33fd2 Make qemu-mips compile again. Still no grub-mkimage support 2011-01-14 17:37:11 +01:00
Colin Watson
6b978c4f04 merge trunk 2011-01-11 10:00:45 -06:00
Vladimir 'phcoder' Serbinenko
4531a206a1 * grub-core/fs/i386/pc/pxe.c (set_mac_env): Export variable.
(set_env_limn_ro): Likewise.
	(GRUB_MOD_INIT): Likewise.
	* grub-core/hook/datehook.c (GRUB_MOD_INIT): Likewise. Change to
	ARRAY_SIZE while on it.
	(GRUB_MOD_FINI): Change to ARRAY_SIZE.
	* grub-core/normal/context.c (grub_env_export): Move from here ...
	* grub-core/kern/env.c (grub_env_export): ... here.
	* grub-core/normal/context.c (grub_cmd_export): Skip exporting root and
	prefix.
	* grub-core/kern/main.c (grub_main): Export root and prefix.
	* include/grub/env.h (grub_env_export): Export.
	Reported by: Seth Goldberg.
2011-01-11 11:51:05 +01:00
Vladimir 'phcoder' Serbinenko
3395fe5230 Pass more appropriate video id to Linux.
* grub-core/loader/i386/linux.c (grub_linux_setup_video): Use
	grub_video_get_driver_id and variable gfxpayloadforcelfb to
	fill have_vga.
	(grub_linux_boot): Rely on grub_linux_setup_video to fill have_vga and
	shift params->lfb_size.
	* include/grub/i386/linux.h: Make an enume out of have_vga values.
2011-01-11 00:02:01 +01:00
Vladimir 'phcoder' Serbinenko
dcb883b162 Submenu default support.
* grub-core/normal/menu.c (grub_menu_execute_entry): New parameter
	auto_boot. All users updated.
	Declared static.
	Handle chosen and default with submenus.
	(grub_menu_execute_with_fallback): Declared static.
	Don't notify failure if autobooted. Upper level does it.
	(menuentry_eq): New function.
	(get_entry_number): Use menuentry_eq.
	(show_menu): New parameter "autobooted". All users updated.
	(grub_show_menu): Likewise.
	* include/grub/normal.h (grub_show_menu): Likewise.
	* include/grub/menu.h (grub_menu_execute_entry): Removed.
	(grub_menu_execute_with_fallback): Likewise.
2011-01-10 23:27:58 +01:00
Vladimir 'phcoder' Serbinenko
4b07826647 partitioned mdraid support (untested) 2011-01-08 16:33:49 +01:00
Colin Watson
b7d86d53c4 merge trunk 2011-01-07 17:26:15 +00:00
Szymon Janc
25953e1055 Improve loaders' kernel command line handling.
* grub-core/lib/cmdline.c: New file.
	* include/grub/lib/cmdline.h: Likewise.
	* grub-core/loader/i386/linux.c (grub_cmd_linux): Use
	grub_create_loader_cmdline to create kernel command line.
	* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
	* grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Likewise.
	* grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_linux): Likewise.
	* grub-core/Makefile.core.def (linux16): Add lib/cmdline.c on i386_pc.
	(linux): Add lib/cmdline.c on common.
2011-01-07 17:09:39 +01:00
Vladimir 'phcoder' Serbinenko
b3f8d28ad0 Run terminfo_cls on initing terminfo output to clear the screen and
move the cursor to (0,0).

	* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_init_output):
	Call grub_terminfo_output_init.
	* grub-core/term/serial.c (grub_serial_term_output): Set .init.
	* grub-core/term/terminfo.c (grub_terminfo_output_init): New function.
	* include/grub/terminfo.h (grub_terminfo_output_init): New declaration.
2011-01-05 12:23:06 +01:00
Vladimir 'phcoder' Serbinenko
18a38098ad The E820 type 5 is BADRAM, not EXEC_CODE.
* grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed.
	(GRUB_E820_BADRAM): New define.
	* grub-core/loader/i386/linux.c (grub_linux_boot): Translate code
	into reserved. Propagate BADRAM.
	* grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed.
	(GRUB_E820_BADRAM): New define.
2011-01-05 01:14:32 +01:00
Colin Watson
944404efb8 merge trunk 2011-01-04 15:41:07 +00:00
phcoder
bea3358389 First handling of ia64-efi in grub-mkimage 2011-01-03 13:46:36 +01:00
phcoder
c18271ed00 Fix compilation errors 2011-01-03 02:28:14 +01:00
Vladimir 'phcoder' Serbinenko
0718f66d12 Discard a bunch of junk code 2011-01-03 00:56:28 +01:00
phcoder
5faa440cb0 Discard several spurious differences from mainline 2011-01-03 00:47:21 +01:00
Vladimir 'phcoder' Serbinenko
0f35c665e6 merge mainline to ia64 2011-01-03 00:04:39 +01:00
Vladimir 'phcoder' Serbinenko
7edf63fce6 merge ia64-emu into ia64 2011-01-02 23:55:50 +01:00
phcoder
f49157dfe5 Restructure module loading and many fixes. Now normal.mod loads successfully 2011-01-02 23:30:25 +01:00
phcoder
73911575dd support for registering functions from modules (not tested yet) 2011-01-02 14:58:57 +01:00
phcoder
f9c30af6d0 Succesfully loaded return-only module on ia64-emu 2011-01-02 14:09:58 +01:00
Vladimir 'phcoder' Serbinenko
52f65ea0bc add moddi3 and divdi3 2011-01-01 15:28:39 +01:00
Vladimir 'phcoder' Serbinenko
3a04c65d00 Always add libgcc.h 2011-01-01 15:13:03 +01:00
Vladimir 'phcoder' Serbinenko
2f70097d3e merge mainline into filesys branch 2010-12-31 15:02:07 +01:00
Vladimir 'phcoder' Serbinenko
3d5f359d3b merge mainline into ahci 2010-12-26 11:20:12 +01:00
Vladimir 'phcoder' Serbinenko
b28fd807eb freedos support 2010-12-26 00:38:20 +01:00
Vladimir 'phcoder' Serbinenko
51f7e1acb7 DMA ATA commands support 2010-12-25 02:53:20 +01:00
Vladimir 'phcoder' Serbinenko
22a7cc9a6f fix 3rd argument to scsi_iterate 2010-12-24 17:09:56 +01:00
Vladimir 'phcoder' Serbinenko
de2690be7c merge mainline into ahci 2010-12-24 16:16:01 +01:00
Vladimir 'phcoder' Serbinenko
c7336d912c splitting generic ata from pata. 2010-12-24 16:07:53 +01:00
Colin Watson
e925b2b6d4 merge parse-color 2010-12-23 12:22:20 +00:00
Colin Watson
6d46121efb merge trunk 2010-12-23 12:20:48 +00:00
Colin Watson
1426ef3560 * include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): The
previous patch increased the size of the RS code by 20 bytes (at
least with gcc-4.4), so increase this by 20 bytes to match.
(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise.
2010-12-21 17:41:47 +00:00
Vladimir 'phcoder' Serbinenko
da94d203d9 Generate partmaps for plan9 2010-12-21 00:04:31 +01:00
Colin Watson
129185cfaa move more EDID-handling functions to generic code, and make videoinfo display EDID information 2010-12-14 18:03:34 +00:00
Colin Watson
25d884a52a move generic parts of EDID handling (structure, checksumming) to generic location 2010-12-14 17:06:32 +00:00
Colin Watson
e03f549b3e Preferred resolution detection for VBE.
* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_flat_panel_info):
New function.
(grub_vbe_bios_get_ddc_capabilities): Likewise.
(grub_vbe_bios_read_edid): Likewise.
(grub_vbe_edid_checksum): Likewise.
(grub_vbe_get_preferred_mode): Likewise.  Try EDID followed by the
Flat Panel extension, in line with the X.org VESA driver.
(grub_video_vbe_setup): When the mode is "auto", try to get the
preferred mode from VBE, and use the largest mode that is no larger
than the preferred mode (some BIOSes expose a preferred mode that is
not in their mode list!).  If this fails, fall back to 640x480 as a
safe conservative choice.
* include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New
structure.
(struct grub_vbe_edid_info): Likewise.
(grub_vbe_bios_get_flat_panel_info): Add prototype.
(grub_vbe_bios_get_ddc_capabilities): Likewise.
(grub_vbe_bios_read_edid): Likewise.

* util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto".  This
is more appropriate on a wider range of platforms than 640x480.
2010-12-14 16:22:19 +00:00