Commit Graph

159 Commits

Author SHA1 Message Date
Vladimir 'phcoder' Serbinenko
f218b09c99 Support multiboot VBE info.
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
	Take VBE info into account.
	(fill_vbe_info) [GRUB_MACHINE_HAS_VBE]: New function.
	(retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
	Call fill_vbe_info when appropriate.
	(grub_multiboot_make_mbi): Account for the size occupied by VBE info.
	* grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare tags
	as supported.
	(grub_multiboot_get_mbi_size): Take new tags into account.
	(fill_vbe_tag) [GRUB_MACHINE_HAS_VBE]: New function.
	(retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
	Call fill_vbe_tag when appropriate.
	(grub_multiboot_make_mbi): Properly align tags.
	* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_pm_interface): New
	function.
	* include/grub/i386/pc/vbe.h (grub_vbe_bios_get_pm_interface): New
	proto.
	* include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): New definition.
2010-09-20 17:01:28 +02:00
Carles Pina i Estany
1a9130dd3f Add keyboard layouts support.
* Makefile.util.def (grub-mklayout): New file.
	(grub-kbdcomp): New script.
	* grub-core/Makefile.am (KERNEL_HEADER_FILES) [COND_mips_yeeloong]:
	Add keyboard_layouts.h.
	* grub-core/Makefile.core.def (kernel): Add commands/keylayouts.c and
	commands/boot.c on yeeloong.
	(keylayouts): New module.
	* grub-core/bus/usb/ohci.c
	* grub-core/bus/usb/uhci.c
	* grub-core/bus/usb/usbhub.c (rescan): New variable.
	(grub_usb_add_hub): Poll interrupt pipe for device handling.
	(attach_root_port): Likewise.
	(poll_nonroot_hub): Likewise.
	(grub_usb_poll_devices): Likewise.
	(detach_device): Close transfer.
	* grub-core/bus/usb/usbtrans.c (grub_usb_execute_and_wait_transfer): New
	function.
	(grub_usb_bulk_setup_readwrite): Likewise.
	(grub_usb_bulk_finish_readwrite): Likewise.
	* grub-core/commands/keylayouts.c: New file.
	* grub-core/commands/keystatus.c (grub_getkeystatus): New function.
	* grub-core/commands/menuentry.c (hotkey_aliases): All several new
	aliases.
	* grub-core/term/at_keyboard.c: Restructured to use keylayouts and
	support scancode 2.
	* grub-core/term/usb_keyboard.c: Restructured to use keylayouts.
	* include/grub/keyboard_layouts.h: New file.
	* util/grub-mklayout.c: New file.
	* util/grub-kbdcomp.in: Likewise.

	Also-By: Aleš Nesrsta <starous@volny.cz>

	Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2010-09-19 01:01:35 +02:00
Vladimir 'phcoder' Serbinenko
a1d84a5e5e Unify memory types.
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Include memory.h.
	* grub-core/commands/lsmmap.c (grub_cmd_lsmmap): Output user-readable
	types.
	* grub-core/kern/i386/multiboot_mmap.c (grub_lower_mem): Removed.
	(grub_upper_mem): Likewise.
	* grub-core/kern/ieee1275/init.c (grub_upper_mem): Likewise.
	* include/grub/memory.h (grub_memory_type_t): New enum.
	All users updated.
2010-09-19 00:04:31 +02:00
Vladimir 'phcoder' Serbinenko
0b37526a5a Add VBE PM interface 2010-09-16 00:37:30 +02:00
Vladimir 'phcoder' Serbinenko
0cb2f2813f merge mainline into legacy_parser 2010-09-15 11:43:59 +02:00
Vladimir 'phcoder' Serbinenko
890c9fa5f2 Implement APM 2010-09-15 11:42:18 +02:00
Vladimir 'phcoder' Serbinenko
275433e642 Don't export grub_gate_a20.
* grub-core/kern/i386/pc/init.c: Remove leftovers.
	* grub-core/kern/i386/pc/startup.S (FUNCTION(grub_gate_a20)): Rename
	to ...
	(grub_gate_a20): ... this. All users updated.
	* include/grub/i386/pc/init.h: Removed. All users updated.
2010-09-14 01:08:24 +02:00
Vladimir 'phcoder' Serbinenko
df3df23d5c Reorganise memory map handling 2010-09-04 17:10:10 +02:00
Vladimir 'phcoder' Serbinenko
9a09392057 Fix grub_pxe_scan.
* grub-core/fs/i386/pc/pxe.c (grub_pxe_pxenv): Put correct type bangpxe.
	(grub_pxe_scan): Fix types and pxe_rm_entry computation.
	All users updated.
	* include/grub/i386/pc/pxe.h (grub_pxe_bangpxe): New struct.
	(grub_pxe_pxenv): Correct type.
2010-09-02 15:47:03 +02:00
Vladimir 'phcoder' Serbinenko
70770806f3 Merge mainline into keylayouts 2010-08-31 14:12:34 +02:00
Vladimir 'phcoder' Serbinenko
5aaf2c18bd Merge mainline into keylayouts 2010-08-31 14:03:29 +02:00
Vladimir 'phcoder' Serbinenko
0f40441b91 Remove useless prototypes 2010-08-30 16:26:05 +02:00
Vladimir 'phcoder' Serbinenko
069c9c5fda merge mainline into intwrap 2010-08-29 23:21:21 +02:00
Vladimir 'phcoder' Serbinenko
afba9f98ec MErge mainline into intwrap 2010-08-25 23:39:42 +02:00
Vladimir 'phcoder' Serbinenko
16bd6cfab2 Merge mainline into newreloc. For now without boot tests 2010-08-25 03:25:18 +02:00
Vladimir 'phcoder' Serbinenko
df2174dded Remove checkkey on term level 2010-08-23 12:07:49 +02:00
Vladimir 'phcoder' Serbinenko
ed19677fe3 Revert all parts done for BIOS keymap translation 2010-08-19 13:32:36 +02:00
Vladimir 'phcoder' Serbinenko
e8d0a8f85c Merge mainline into bidi 2010-07-02 19:35:07 +02:00
Vladimir 'phcoder' Serbinenko
58664b94b7 pass pointer to term to term functions 2010-05-07 02:30:44 +02:00
Vladimir 'phcoder' Serbinenko
05f602fc51 enable xnu on all platforms 2010-05-02 22:06:44 +02:00
Vladimir 'phcoder' Serbinenko
6c3d9c2845 merge boottest into newreloc 2010-04-27 13:34:07 +02:00
Vladimir 'phcoder' Serbinenko
8ea6ecb36d Some cleanups 2010-04-26 21:11:16 +02:00
Vladimir 'phcoder' Serbinenko
94ac790645 Fix various issues created by previous commits 2010-04-26 10:56:12 +02:00
Vladimir 'phcoder' Serbinenko
614be3f119 #if-less grub-mkimage 2010-04-26 00:45:21 +02:00
Vladimir 'phcoder' Serbinenko
298ffd54b0 merge mainline into newreloc 2010-04-11 22:44:31 +02:00
Vladimir 'phcoder' Serbinenko
8c5ed46e48 Inline grub_stop_floppy 2010-04-10 19:59:22 +02:00
Vladimir 'phcoder' Serbinenko
f632937ab5 intwrap grub_get_mmap_entry 2010-04-10 19:12:04 +02:00
Vladimir 'phcoder' Serbinenko
0d06476b05 intwrap get_eisa_map. Fix intwrapping of get_ext_memsize. 2010-04-10 14:45:27 +02:00
Vladimir 'phcoder' Serbinenko
c663074e6d intwrap get_memsize 2010-04-10 14:35:26 +02:00
Vladimir 'phcoder' Serbinenko
9e71201f48 merge mainline into bidi 2010-04-09 19:31:43 +02:00
Vladimir 'phcoder' Serbinenko
064cb524ec * include/grub/i386/pc/init.h (grub_get_mmap_entry): Don't export.
* conf/i386-pc.rmk (kernel_img_HEADERS): Remove machine/init.h.
2010-04-05 15:57:40 +02:00
Vladimir 'phcoder' Serbinenko
77356db852 Intwrapped biosdisk 2010-04-04 18:43:26 +02:00
Vladimir 'phcoder' Serbinenko
1b8cb8573b intwrap grub_pxe_scan 2010-04-04 15:49:06 +02:00
Vladimir 'phcoder' Serbinenko
65936631e4 intwrap vbe and vga calls 2010-04-04 14:24:50 +02:00
Vladimir 'phcoder' Serbinenko
56912f57b6 Merge mainline into intwrap 2010-04-04 14:14:50 +02:00
Vladimir 'phcoder' Serbinenko
a8c3b552a7 Remove unused grub_vga_get_font.
* kern/i386/pc/startup.S (grub_vga_get_font): Removed.
	* include/grub/i386/pc/vga.h (grub_vga_get_font): Likewise.
2010-04-04 14:12:11 +02:00
Vladimir 'phcoder' Serbinenko
8b0800f66f merge mainline into newreloc 2010-04-01 22:17:26 +02:00
Vladimir 'phcoder' Serbinenko
34fac099a5 Make grub_console_real_putchar grub_console_putchar 2010-03-17 08:37:48 +01:00
Vladimir 'phcoder' Serbinenko
c140a18037 2010-02-25 Vladimir Serbinenko <phcoder@gmail.com>
Don't compile video modules on yeeloong since video subsystem is part
	of kernel.

	* conf/common.rmk (pkglib_MODULES) [yeeloong]: Remove video.mod,
	video_fb.mod, bitmap.mod, font.mod, gfxterm.mod and bufio.mod
	* conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add bitmap.h,
	video.h, gfxterm.h, font.h, bitmap_scale.h and bufio.h.
	* conf/mips.rmk (kernel_img_HEADERS): Add values instead of overwriting.
	* include/grub/bitmap.h: Add EXPORT_FUNC and EXPORT_VAR.
	* include/grub/bitmap_scale.h: Likewise.
	* include/grub/bufio.h: Likewise.
	* include/grub/font.h: Likewise.
	* include/grub/gfxterm.h: Likewise.
	* include/grub/video.h: Likewise.
	* include/grub/vbe.h: Don't include video_fb.h.
	* video/i386/pc/vbe.c: Include video_fb.h.
	* commands/i386/pc/vbetest.c: Include video.h.
2010-02-25 15:10:18 +01:00
Vladimir 'phcoder' Serbinenko
cc306106b9 Merge mainline into intwrap 2010-02-06 23:49:41 +01:00
Vladimir 'phcoder' Serbinenko
6e308bd942 merge mainline into newreloc 2010-01-30 16:46:16 +01:00
Robert Millan
3973a59a34 2010-01-26 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_PXE_DL): New macro.
	
	* boot/i386/pc/pxeboot.S: Include `<grub/machine/boot.h>'.
	(_start): Macroify `0x7F'.
	
	* kern/i386/pc/init.c: Include `<grub/machine/boot.h>'.
	(make_install_device): Use "(pxe)" as fallback prefix when booting
	via PXE.
2010-01-26 16:39:37 +00:00
Vladimir 'phcoder' Serbinenko
3c83bc50db merge bootcheck and mainline into newreloc 2010-01-20 11:48:36 +01:00
Vladimir 'phcoder' Serbinenko
7728813a47 merge mainline into intwrap 2010-01-17 21:16:52 +01:00
Vladimir 'phcoder' Serbinenko
1453b2ec7f add extended regs support in bios_interrupt 2010-01-17 21:16:05 +01:00
Vladimir 'phcoder' Serbinenko
5fb5182f8a comX notation support 2010-01-15 11:48:15 +01:00
Vladimir 'phcoder' Serbinenko
e6e7b4ea1f Remove i386/loader.h 2010-01-12 22:22:36 +01:00
Vladimir 'phcoder' Serbinenko
85a2cf749f merge mainline into mips 2010-01-10 13:34:48 +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