Vladimir 'phcoder' Serbinenko
1c3fcdee15
buffer network files. Fix incorrect net_fini_hw and unregister calls
2011-07-06 13:13:45 +02:00
Vladimir 'phcoder' Serbinenko
b975df6348
Send TFTP_ERROR on tftp premature close. Several cleanups
2011-07-06 12:53:37 +02:00
Vladimir 'phcoder' Serbinenko
72b9ad936a
fix declarations in pxe
2011-07-06 02:49:04 +02:00
Vladimir 'phcoder' Serbinenko
d53bf34924
merge mainline into net
2011-07-06 01:35:41 +02:00
Vladimir 'phcoder' Serbinenko
93c06ff9c6
VGA text support in qemu-mips
...
* grub-core/Makefile.core.def (kernel): Add term/i386/pc/vga_text.c,
term/i386/vga_common.c and kern/vga_init.c on qemu-mips.
* grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init vga
text.
* grub-core/kern/i386/qemu/init.c: Renamed to ...
* grub-core/kern/vga_init.c: ... this.
* grub-core/kern/vga_init.c (VGA_ADDR) [__mips__]: Adjust.
(grub_qemu_init_cirrus) [__mips__]: Skip PCI and adjust the I/O base.
* grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN) [__mips__]:
Adjust.
* include/grub/vga.h [GRUB_MACHINE_MIPS_QEMU_MIPS]: Declare
GRUB_MACHINE_PCI_IO_BASE.
2011-07-05 23:46:15 +02:00
Vladimir 'phcoder' Serbinenko
748ccabea1
MIPS qemu flash support.
...
* grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]: Check
magic.
* grub-core/kern/mips/qemu_mips/init.c (probe_mem): New function.
(grub_machine_init): Probe memory if its size isn't known.
* util/grub-mkimage.c (image_targets): Add flash targets.
(generate_image): Handle flash targets.
2011-07-05 21:42:36 +02:00
Vladimir 'phcoder' Serbinenko
d734599439
MIPS qemu at_keyboard support.
...
* gentpl.py (videoinkernel): Add qemu-mips.
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add necessary headers.
* grub-core/Makefile.core.def (kernel): Add at_keyboard and layout.
* grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init new
modules.
* grub-core/term/at_keyboard.c (grub_keyboard_controller_init)
[GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't consider original set.
* grub-core/term/serial.c (grub_serial_register)
[GRUB_MACHINE_MIPS_QEMU_MIPS]: Make com0 explicitly active.
2011-07-05 21:00:01 +02:00
Vladimir 'phcoder' Serbinenko
145c7b4661
merge mainline into net
2011-07-05 20:40:39 +02:00
Vladimir 'phcoder' Serbinenko
a07a81b335
CMOS support on sparc.
...
* gentpl.py (cmos): Add powerpc and sparc.
* grub-core/Makefile.core.def (datetime): Add lib/ieee1275/cmos.c on
powerpc and sparc.
* grub-core/lib/cmos_datetime.c (grub_get_datetime)
[__powerpc__ || __sparc__]: Rename to grub_get_datetime_cmos.
(grub_set_datetime) [__powerpc__ || __sparc__]: Likewise to
grub_set_datetime_cmos.
* grub-core/lib/ieee1275/cmos.c: New file.
* grub-core/lib/ieee1275/datetime.c (no_ieee1275_rtc): New vaiable.
(find_rtc): Set no_ieee1275_rtc on error.
(grub_get_datetime): Call grub_get_datetime_cmos on error.
(grub_set_datetime): Call grub_set_datetime_cmos on error.
* include/grub/cmos.h (grub_cmos_read): Return grub_err_t since it may
fail. Move value to argument. All users updated
(grub_cmos_write): Likewise.
(grub_cmos_read) [__powerpc__ || __sparc__]: Rewritten.
(grub_cmos_write) [__powerpc__ || __sparc__]: Likewise.
* include/grub/datetime.h [__powerpc__ || __sparc__]: Declare
grub_get_datetime_cmos and grub_set_datetime_cmos.
2011-07-05 20:24:20 +02:00
Vladimir 'phcoder' Serbinenko
0bc2cd0f82
Reintroduce open/close of net cards. Clean up ofnet.
2011-07-05 16:37:14 +02:00
Vladimir 'phcoder' Serbinenko
382077365b
Fix mod_gap definition
2011-07-05 15:10:47 +02:00
Vladimir 'phcoder' Serbinenko
275f8264e4
Prevent garbage from getting into aout header
2011-07-05 14:55:28 +02:00
Vladimir 'phcoder' Serbinenko
671a78acb0
cleanup pxe and efi network release
2011-07-05 14:34:10 +02:00
Vladimir 'phcoder' Serbinenko
7e0c2d162a
Restructurisations, cleanups and few bugfixes
2011-07-02 22:13:33 +02:00
Vladimir 'phcoder' Serbinenko
c4d038f632
Don't react to adressed bootp packets unless in bootp transaction
2011-07-02 20:11:29 +02:00
Vladimir 'phcoder' Serbinenko
0c51bb63c5
add missing brackets in efi_wrap macroses
2011-07-02 18:57:24 +02:00
Vladimir 'phcoder' Serbinenko
03a0046581
merge mainline into net
2011-07-02 18:52:50 +02:00
Vladimir 'phcoder' Serbinenko
cbe20661f6
minor stylistic cleanup
2011-07-02 18:05:40 +02:00
Vladimir 'phcoder' Serbinenko
6708faafde
Fix broken blksize negotiation, fix broken seek and change a way net device is filled n i386-pc
2011-07-02 17:58:23 +02:00
Vladimir 'phcoder' Serbinenko
cae730b452
Automatically determine prefix when netbooted on EFI
2011-07-02 16:56:35 +02:00
Vladimir 'phcoder' Serbinenko
574618a2e9
unify prefix handling across platforms
2011-07-02 14:09:36 +02:00
Vladimir 'phcoder' Serbinenko
8d5d8444bd
* grub-core/Makefile.core.def (chain): Fix coreboot filename.
2011-06-27 19:30:16 +02:00
Vladimir 'phcoder' Serbinenko
5afeb5bdd6
* grub-core/disk/pata.c (grub_pata_initialize) [QEMU_MIPS]: Fix a
...
mismerge.
2011-06-27 19:26:52 +02:00
Vladimir 'phcoder' Serbinenko
ba7df45ee6
Chainloading on coreboot support.
...
* grub-core/Makefile.core.def (chain): Add coreboot.
* grub-core/loader/i386/coreboot/chainloader.c: New file.
2011-06-27 14:14:11 +02:00
Vladimir 'phcoder' Serbinenko
d0b526b277
* grub-core/loader/i386/bsd.c (grub_bsd_load): Handle relocator failure
...
if it happens.
2011-06-27 13:57:03 +02:00
Vladimir 'phcoder' Serbinenko
5ff1d945ed
Implement time command.
...
* grub-core/Makefile.core.def (time): New module.
* grub-core/commands/time.c: New file.
* grub-core/script/parser.y: Remove "time" keyword.
* grub-core/script/yylex.l: Likewise.
2011-06-27 12:31:37 +02:00
Vladimir 'phcoder' Serbinenko
5ebaad7eec
* include/grub/loader.h (grub_loader_unregister_preboot_hook): Export.
2011-06-27 12:28:47 +02:00
Vladimir 'phcoder' Serbinenko
bdea379833
* grub-core/lib/relocator.c (malloc_in_range): Fix a memory corruption
...
when handling leftovers.
2011-06-27 12:18:44 +02:00
Vladimir 'phcoder' Serbinenko
b28c56559b
* util/ieee1275/grub-ofpathname.c (main): Handle --help and --version
...
so that help2man doesn't fail.
2011-06-27 12:16:00 +02:00
Vladimir 'phcoder' Serbinenko
b6f945dccb
* grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer) Use right
...
type in pointers on sparc64.
(get_card_packet): Likewise.
2011-06-27 12:13:21 +02:00
Vladimir 'phcoder' Serbinenko
1e3d9b8612
* grub-core/disk/scsi.c (grub_scsi_read): Limit SCSI reads to 32K
...
because of underlying system restrictions.
2011-06-27 10:12:35 +02:00
Vladimir 'phcoder' Serbinenko
efff4b1cc3
* util/grub-mkrescue.in: Rename "ata" to "pata" and add ahci when
...
necessary.
2011-06-27 09:06:15 +02:00
Vladimir 'phcoder' Serbinenko
9fc9ce3795
Coreboot video support.
...
* grub-core/Makefile.core.def (vga): Extend to coreboot and multiboot.
(vbe): Likewise.
* grub-core/kern/i386/coreboot/startup.S: Include int.S.
* grub-core/kern/i386/pc/startup.S (grub_bios_interrupt): Moved from
here ...
* grub-core/kern/i386/int.S: ... here.
* grub-core/video/i386/pc/vbe.c: Updated includes.
* grub-core/video/i386/pc/vga.c: Likewise.
* include/grub/i386/coreboot/memory.h
(GRUB_MEMORY_MACHINE_SCRATCH_ADDR): New definition.
(GRUB_MEMORY_MACHINE_SCRATCH_SEG): Likewise.
(GRUB_MEMORY_MACHINE_SCRATCH_SIZE): Likewise.
* include/grub/i386/pc/int.h (GRUB_CPU_INT_FLAGS_DEFAULT) [!PCBIOS]:
Disable interrupts.
* include/grub/i386/pc/vga.h: Removed. All users updated.
2011-06-27 08:54:55 +02:00
Vladimir 'phcoder' Serbinenko
41bec7fec9
* grub-core/disk/ahci.c (grub_ahci_readwrite_real): Use proper
...
definitions for dprintf.
* grub-core/disk/pata.c (grub_pata_readwrite): Likewise.
2011-06-27 08:43:13 +02:00
Vladimir 'phcoder' Serbinenko
ca80309d32
* grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer): Fix
...
prototype.
(get_card_packet): Likewise.
2011-06-27 08:40:17 +02:00
Vladimir 'phcoder' Serbinenko
59b455fcea
Fix incorrect ISR PXE calls
2011-06-27 06:31:25 +02:00
Vladimir 'phcoder' Serbinenko
0ff2c51b82
mknetdir support for EFI
2011-06-26 22:47:05 +02:00
Vladimir 'phcoder' Serbinenko
9d22909b85
efinet support
2011-06-26 22:42:04 +02:00
Vladimir 'phcoder' Serbinenko
f8614119a0
Few ofnet cleanups
2011-06-26 22:38:43 +02:00
Vladimir 'phcoder' Serbinenko
14f0752dcf
Print MAC address when listing cards
2011-06-26 22:37:49 +02:00
Vladimir 'phcoder' Serbinenko
d36f20db46
Don't do unaligned access when parsing DHCP packet
2011-06-26 22:37:19 +02:00
Vladimir 'phcoder' Serbinenko
e552d93a8b
Add ofnet and tftp modules
2011-06-26 19:52:50 +02:00
Vladimir 'phcoder' Serbinenko
cf2bba0ef4
add missing quotes and fix variable name
2011-06-26 18:23:12 +02:00
Vladimir 'phcoder' Serbinenko
a27fe54f96
missing part of previous commit
2011-06-26 17:51:46 +02:00
Vladimir 'phcoder' Serbinenko
2f804a7ff6
remove leftover directory
2011-06-26 17:28:57 +02:00
Vladimir 'phcoder' Serbinenko
b1f9b7249a
mknetdir support for ieee1275
2011-06-26 17:28:19 +02:00
Vladimir 'phcoder' Serbinenko
a8fae12c5b
minor cleanups
2011-06-26 17:18:53 +02:00
Vladimir 'phcoder' Serbinenko
80ca250565
Add backward compatibiulity with old (pxe) syntax. Several cleanups
2011-06-26 17:06:18 +02:00
Vladimir 'phcoder' Serbinenko
bf651f7907
Fix incorrect memset
2011-06-26 14:47:38 +02:00
Vladimir 'phcoder' Serbinenko
8e60fc8f85
Send network packets on PXE
2011-06-26 04:19:12 +02:00
Vladimir 'phcoder' Serbinenko
cc4bfec8fa
Fix a memory leak
2011-06-26 04:18:45 +02:00
Vladimir 'phcoder' Serbinenko
77c0840ba6
* grub-core/net/i386/pc/pxe.c (grub_pxe_recv): Fix declaration.
...
(grub_pxe_send): Likewise.
(GRUB_MOD_INIT): Fix types.
2011-06-25 00:18:36 +02:00
Vladimir 'phcoder' Serbinenko
8f72becdef
merge mainline into net
2011-06-24 22:20:50 +02:00
Vladimir 'phcoder' Serbinenko
a057797f18
merge mine and abranches' branches. Fix several issues
2011-06-24 21:51:57 +02:00
Vladimir 'phcoder' Serbinenko
8b51fd98b9
bootp support
2011-06-24 20:35:25 +02:00
Vladimir 'phcoder' Serbinenko
031f22a01f
* grub-core/disk/raid.c (insert_array): Ensure uniqueness of readable
...
names.
2011-06-24 18:26:20 +02:00
Vladimir 'phcoder' Serbinenko
4388ca7224
* grub-core/commands/wildcard.c (match_files): Add a useful dprintf.
...
(wildcard_expand): Don't stop on nonregexp parts after regexp ones since
it truncates the output.
Reported by: Ximin Luo.
2011-06-24 13:43:10 +02:00
Vladimir 'phcoder' Serbinenko
98e2f50661
* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Skip . and ..
2011-06-24 13:02:49 +02:00
Vladimir 'phcoder' Serbinenko
2a5e94d84a
* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Load
...
partmap before abstraction.
2011-06-24 12:41:05 +02:00
Vladimir 'phcoder' Serbinenko
bc09e1a238
* grub-core/kern/emu/getroot.c (grub_guess_root_device): Revert to
...
old method if mountinfo would return /dev/root and /dev/root doesn't
exist.
2011-06-24 04:32:54 +02:00
Vladimir 'phcoder' Serbinenko
290766fb77
ZFS zlib support
...
* grub-core/fs/zfs/zfs.c (zlib_decompress): New function.
(decomp_table): Add zlib entries.
(zio_read): USe 8 bits for compression function rather than 3.
* include/grub/zfs/zio.h (zio_compress): Add zlib values.
2011-06-24 00:31:29 +02:00
Vladimir 'phcoder' Serbinenko
005dd67cb6
* grub-core/disk/ahci.c: Add missing license statements.
...
* grub-core/fs/romfs.c: Likewise.
* grub-core/lib/ia64/setjmp.S: Likewise.
* grub-core/loader/i386/pc/freedos.c: Likewise.
* grub-core/loader/ia64/efi/linux.c: Likewise.
* grub-core/video/colors.c: Likewise.
* include/grub/dl.h (GRUB_MOD_DEP): New macro.
2011-06-24 00:29:21 +02:00
Vladimir 'phcoder' Serbinenko
5ab3f48a92
AHCI support.
...
* grub-core/Makefile.core.def (ata_pthru): Removed.
(ahci): New module.
(pata): Likewise.
* grub-core/bus/usb/ohci.c (GRUB_MOD_FINI): Unregister preboot hook
on unload.
* grub-core/commands/hdparm.c (grub_hdparm_do_ata_cmd): Use ATA
readwrite.
(grub_hdparm_do_check_powermode_cmd): Likewise.
(grub_hdparm_do_smart_cmd): Likewise.
(grub_hdparm_set_val_cmd): Likewise.
(grub_cmd_hdparm): Likewise. Check thta we have an ATA device.
* grub-core/disk/ahci.c: New file.
* grub-core/disk/ata.c: Factor out the low-level part into ...
* grub-core/disk/pata.c: ... here.
* grub-core/disk/ata_pthru.c: Contents moved to ...
* grub-core/disk/pata.c: ... here.
* grub-core/disk/scsi.c (grub_scsi_names): New array.
(grub_scsi_iterate): Use grub_scsi_names.
(grub_scsi_open): Likewise.
* grub-core/kern/disk.c (grub_disk_ata_pass_through): Removed.
* include/grub/ata.h (grub_ata_commands): Add DMA commands.
(grub_ata_regs_t): New struct.
(grub_disk_ata_pass_through_parms): Likewise.
(grub_ata_device): Renamed to ...
(grub_ata): ... this.
(grub_ata_dev): New struct.
Removed all low-level inline functions.
* include/grub/scsi.h: Add PATA and AHCI subsystems.
(grub_scsi_dev): Removed 'name' and 'id'. Added 'id' parameter to
iterate hooks and open. All users updated.
* util/grub-install.in: Handle AHCI disk module.
2011-06-24 00:07:55 +02:00
Vladimir 'phcoder' Serbinenko
fe12fd5b43
* util/ieee1275/ofpath.c (check_sas): Close fd.
...
(main): Free of_path.
Reported by: David Volgyes <dvolgyes>.
2011-06-23 22:18:31 +02:00
Vladimir 'phcoder' Serbinenko
03147f4667
* util/grub-mkpasswd-pbkdf2.c (main): Don't double-close.
...
Reported by: David Volgyes <dvolgyes>.
2011-06-23 22:11:42 +02:00
Vladimir 'phcoder' Serbinenko
cad3237fb5
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Close
...
file after stat.
Reported by: David Volgyes <dvolgyes>.
2011-06-23 22:02:05 +02:00
Vladimir 'phcoder' Serbinenko
13548d26e9
* util/raid.c (grub_util_raid_getmembers): Close fd before returning.
...
Reported by: David Volgyes <dvolgyes>.
2011-06-23 21:06:50 +02:00
Vladimir 'phcoder' Serbinenko
e061a1b537
* grub-core/lib/reed_solomon.c (rs_recover) [STANDALONE]:
...
Prevent memory leak.
2011-06-23 20:58:35 +02:00
Vladimir 'phcoder' Serbinenko
1abe47dc99
* grub-core/lib/reed_solomon.c (rs_recover): Prevent memory leak.
...
(main): Close file.
2011-06-23 20:55:36 +02:00
Vladimir 'phcoder' Serbinenko
fbc626665f
* grub-core/loader/i386/xnu.c (grub_cpu_xnu_fill_devprop): Don't attempt
...
to continue if allocation is failed.
Reported by: David Volgyes <dvolgyes>.
2011-06-23 20:38:19 +02:00
Vladimir 'phcoder' Serbinenko
a199a8cd1a
Fix spurious warning.
...
* grub-core/partmap/acorn.c (grub_acorn_boot_block): Make a union.
(acorn_partition_map_find): Use .bin member.
2011-06-23 20:05:39 +02:00
Vladimir 'phcoder' Serbinenko
e2d1dba0ae
* grub-core/kern/emu/getroot.c (grub_guess_root_device): Don't accept
...
/dev/root as a valid device.
2011-06-23 19:50:41 +02:00
Vladimir 'phcoder' Serbinenko
f7db6f4a55
Support non-512B sectors and agglomerate reads.
...
* Makefile.util.def (libgrubmods.a): Add grub-core/commands/testload.c.
* grub-core/disk/efi/efidisk.c (grub_efidisk_data): Remove disk_io.
(disk_io_guid): Removed.
(make_devices): Locate solely by BlockIO.
(grub_efidisk_open): Fill log_sector_size and total_sectors.
(grub_efidisk_read): Use read_blocks.
(grub_efidisk_write): Use write_blocks.
* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Fill
log_sector_size.
(get_safe_sectors): Handle non-512B sectors.
(grub_biosdisk_read): Remove special CDROM handling. Handle non-512B
sectors.
(grub_biosdisk_write): Handle non-512B sectors.
* grub-core/disk/scsi.c (grub_scsi_open): Fill log_sector_size.
(grub_scsi_read): Remove special non-512B block handling (now handled
one level up).
* grub-core/kern/disk.c (grub_disk_open): Fill default log_sector_size
and do sanity checks.
(grub_disk_adjust_range): Handle non-512B sectors.
(transform_sector): New function.
(grub_disk_read_small): Likewise.
(grub_disk_read): Rewritten.
(grub_disk_write): Handle non-512B sectors.
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Fill
log_sector_size.
(open_device): Use log_sector_size.
(grub_util_biosdisk_read): Likewise.
(grub_util_biosdisk_write): Likewise.
* grub-core/partmap/msdos.c (grub_partition_msdos_iterate): Handle
non-512B sectors.
(pc_partition_map_embed): Likewise.
* include/grub/disk.h (grub_disk): New field log_sector_size.
(GRUB_DISK_CACHE_SIZE): Redefined from GRUB_DISK_CACHE_BITS.
(GRUB_DISK_CACHE_BITS): Increased to 6.
* util/grub-fstest.c (fstest): New command testload.
(argp_parser): Likewise.
2011-06-23 16:45:52 +02:00
Vladimir 'phcoder' Serbinenko
2df2e89fee
Fixed a cache collision bug. Thanks guufy1 for bugreport and test
2011-06-23 09:39:12 +02:00
Vladimir 'phcoder' Serbinenko
77ba5392d0
New testload grub-fstest command
2011-06-23 08:45:12 +02:00
Vladimir 'phcoder' Serbinenko
a5edbcb3a1
merge mainline into 4096
2011-06-23 04:08:37 +02:00
Vladimir 'phcoder' Serbinenko
245f4aba48
* grub-core/disk/arc/arcdisk.c (reopen): Close old handle before
...
opening new one.
2011-05-21 07:05:46 +02:00
Vladimir Serbinenko
f767c929f2
Don't stat devices unless we have to.
...
* grub-core/kern/emu/getroot.c (grub_find_device): Recognize
dir == /dev/mapper.
(grub_guess_root_device): Use already known os_dev if possible.
* grub-core/kern/emu/hostdisk.c
(convert_system_partition_to_system_disk): Scan only in /dev/mapper
if device is known to be a dm one.
Also-By: Colin Watson <cjwatson@ubuntu.com >
2011-05-21 07:03:55 +02:00
Vladimir 'phcoder' Serbinenko
eea841440d
fix several bugs
2011-05-19 15:39:34 +02:00
Vladimir 'phcoder' Serbinenko
9a79fcf2c9
* grub-core/Makefile.core.def (lsacpi): Fix ia64 mismerge.
...
(lsefisystab): Likewise.
(lssal): Likewise.
(lsefimmap): Likewise.
(hdparm): Enable on qemu-mips.
(setjmp): Add ia64 nodist.
(serial): Simplify tags.
2011-05-19 12:13:18 +02:00
Vladimir 'phcoder' Serbinenko
e775d8edfe
* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Downgrade a printf
...
into dprintf.
2011-05-18 15:37:18 +02:00
Vladimir 'phcoder' Serbinenko
bf947d36e3
Use full 64-bit division.
...
* grub-core/kern/misc.c (grub_divmod64_full): Renamed to ...
(grub_divmod64): ... this.
* include/grub/misc.h (grub_divmod64): Removed. All users switch to full
version.
2011-05-18 15:35:19 +02:00
Vladimir 'phcoder' Serbinenko
26618ff0db
Patch BPB in ntldr and chainloader --bpb.
...
* grub-core/fs/fat.c: Include grub/fat.h.
(grub_fat_bpb): Moved to ...
* include/grub/fat.h (grub_fat_bpb): ... here. New file.
* grub-core/loader/i386/pc/chainloader.c: Include grub/fat.h and
grub/ntfs.h.
* include/grub/i386/pc/chainloader.h (grub_chainloader_flags_t):
Moved from here...
* grub-core/loader/i386/pc/chainloader.c (grub_chainloader_flags_t): ...
here.
* grub-core/loader/i386/pc/chainloader.c (grub_chainloader_patch_bpb):
New function.
(grub_chainloader_cmd): Patch BPB if --bpb is given.
(GRUB_MOD_INIT): Show --bpb.
* grub-core/loader/i386/pc/ntldr.c (grub_cmd_ntldr): Patch BPB.
* grub-core/normal/main.c (features): New variable.
(GRUB_MOD_INIT): Set feature_* variables.
* include/grub/i386/pc/chainloader.h (grub_chainloader_patch_bpb): New
proto.
* include/grub/ntfs.h (grub_ntfs_bpb): New field bios_drive.
2011-05-18 12:51:05 +02:00
Vladimir 'phcoder' Serbinenko
1e4b43901a
* grub-core/fs/fat.c: Include grub/fat.h.
...
(grub_fat_bpb): Moved to ...
* include/grub/fat.h (grub_fat_bpb): ... here. New file.
* grub-core/loader/i386/pc/chainloader.c: Include grub/fat.h and
grub/ntfs.h.
* include/grub/i386/pc/chainloader.h (grub_chainloader_flags_t):
Moved from here...
* grub-core/loader/i386/pc/chainloader.c (grub_chainloader_flags_t): ...
here.
* grub-core/loader/i386/pc/chainloader.c (grub_chainloader_patch_bpb):
New function.
(grub_chainloader_cmd): Patch BPB if --bpb is given.
(GRUB_MOD_INIT): Show --bpb.
* grub-core/loader/i386/pc/ntldr.c (grub_cmd_ntldr): Patch BPB.
* grub-core/normal/main.c (features): New variable.
(GRUB_MOD_INIT): Set feature_* variables.
* include/grub/i386/pc/chainloader.h (grub_chainloader_patch_bpb): New
proto.
* include/grub/ntfs.h (grub_ntfs_bpb): New field bios_drive.
2011-05-18 12:48:14 +02:00
Vladimir 'phcoder' Serbinenko
69b11a560c
add missing file
2011-05-18 12:41:22 +02:00
Vladimir 'phcoder' Serbinenko
cf02731e48
* grub-core/Makefile.core.def (ieee1275_fb): Use enable=powerpc_ieee1275
...
for cleanness.
2011-05-18 12:39:22 +02:00
Vladimir 'phcoder' Serbinenko
548937c6d6
merge mainline into ahci
2011-05-18 12:36:26 +02:00
Vladimir 'phcoder' Serbinenko
e3a1073fd2
FreeDOS direct loading support.
...
* docs/grub.texi (Supported OS): Add FreeDOS.
* grub-core/Makefile.core.def (freedos): New module.
* grub-core/lib/i386/relocator.c (grub_relocator16_ebx): New extern
variable.
(grub_relocator16_boot): Handle %ebx.
* grub-core/lib/i386/relocator16.S: Likewise.
* grub-core/loader/i386/pc/freedos.c: New file.
2011-05-18 12:15:16 +02:00
Vladimir 'phcoder' Serbinenko
05caa461e8
Long Linux command line support.
...
* grub-core/loader/i386/linux.c (GRUB_LINUX_CL_END_OFFSET): Removed.
(maximal_cmdline_size): New variable.
(allocate_pages): Use maximal_cmdline_size.
(grub_cmd_linux): Set and use maximal_cmdline_size.
* grub-core/loader/i386/pc/linux.c (GRUB_LINUX_CL_END_OFFSET): Removed.
(allocate_pages): Use maximal_cmdline_size.
(grub_cmd_linux): Set and use maximal_cmdline_size.
* include/grub/i386/linux.h (GRUB_LINUX_SETUP_MOVE_SIZE): Removed.
(linux_kernel_header): Add fields kernel_alignment, relocatable, pad
and cmdline_size.
2011-05-18 09:56:33 +02:00
Vladimir Serbinenko
a2491e235c
Improve devmapper support
...
* grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Removed.
(grub_util_is_lvm): New function.
(grub_util_get_dev_abstraction): Assume dmraid if not lvm rather
than lvm if not dmraid.
Handle mapped md nodes.
* grub-core/kern/emu/hostdisk.c (device_is_mapped): Rename to ...
(grub_util_device_is_mapped): ... this. Make always available. All users
updated.
(grub_util_get_dm_node_linear_info) [HAVE_DEVICE_MAPPER]: New function.
(convert_system_partition_to_system_disk): Handle lvm, mpath and
dmraid nodes.
* include/grub/emu/misc.h (grub_util_device_is_mapped): New proto.
Also-By: Colin Watson <cjwatson@ubuntu.com >
2011-05-18 09:35:47 +02:00
Vladimir 'phcoder' Serbinenko
6ad6223e92
Unify grub-mkrescue (except powerpc) and grrub-mknetdir across platforms
...
* grub-core/Makefile.am (platform_DATA): Add modinfo.sh.
* grub-core/modinfo.sh.in: New file.
* grub-core/Makefile.core.def (modinfo.sh): New script.
* util/grub-mknetdir.in: Use modinfo.sh.
* util/grub-mkrescue.in: Likewise.
2011-05-18 01:38:01 +02:00
Vladimir 'phcoder' Serbinenko
543a8f6ef9
* grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
...
Fix potential usage of Elf32 instead of Elf64 when compiling on
32-bit architecture. Add endianness macros while on it.
2011-05-18 00:21:49 +02:00
Vladimir 'phcoder' Serbinenko
4959e11109
Use mipsel- rather than mips- in directories involving mipsel ports to
...
allow both endiannesses coexist.
* configure.ac: proparate target_cpu=mipsel rather than resetting to
mips. All conditions adjusted.
* tests/util/grub-shell-tester.in: Remove gratuitious target_cpu
variable.
* util/grub-install.in: Adjust conditions to take renaming into account.
* util/grub-mkimage.c (image_targets): Likewise. New target
mips-qemu_mips-elf for bigendian mips.
2011-05-17 22:48:20 +02:00
Vladimir 'phcoder' Serbinenko
35341bbc96
Avoid unnecessary copying on MIPS.
...
* grub-core/boot/decompressor/none.c (grub_decompress_core): Exit
early if src == dest.
* util/grub-mkimage.c (generate_image): Arange for src == dest if
compression is none.
2011-05-17 21:40:35 +02:00
Vladimir 'phcoder' Serbinenko
b772baedcd
Reduce memory footprint on SGI by putting modules before the kernel
...
as opposed to after.
* grub-core/Makefile.core.def (kernel): Increase linking address.
(none_decompress): Likewise.
(xz_decompress): Likewise.
* grub-core/boot/mips/startup_raw.S: Use prewritten uncompression
address.
* grub-core/kern/mips/arc/init.c (grub_machine_init): Handle memory
layout change.
(grub_arch_modules_addr): New function.
* grub-core/kern/mips/init.c (grub_arch_modules_addr): Moved from here...
* grub-core/kern/mips/loongson/init.c (grub_arch_modules_addr): .. here
* grub-core/kern/mips/qemu_mips/init.c (grub_arch_modules_addr): ... and
here.
* grub-core/kern/mips/startup.S (total_size): Rename to ...
(grub_total_modules_size): ... this. Make global.
[GRUB_MACHINE_ARC]: Don't attempt to move modules out of the bss.
* include/grub/offsets.h (GRUB_KERNEL_MIPS_LOONGSON_UNCOMPRESSED_ADDR):
New definition.
(GRUB_KERNEL_MIPS_QEMU_MIPS_UNCOMPRESSED_ADDR): Likewise.
(GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_ADDR): Likewise.
(GRUB_KERNEL_MACHINE_UNCOMPRESSED_ADDR): Likewise.
(GRUB_KERNEL_MIPS_ARC_LINK_ADDR): Increased.
* util/grub-mkimage.c (image_target_desc): New flag
PLATFORM_FLAGS_MODULES_BEFORE_KERNEL.
(image_targets): Set PLATFORM_FLAGS_MODULES_BEFORE_KERNEL on mips-arc.
(generate_image): Handle images with modules before kernel.
2011-05-17 21:15:54 +02:00
Vladimir 'phcoder' Serbinenko
566a191715
Prevent potential loss of memory map by overwrite on qemu-mips.
...
* grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]:
Save ram size in $s4.
* grub-core/kern/mips/qemu_mips/init.c (RAMSIZE): Removed.
All users changed to grub_arch_memsize.
* grub-core/kern/mips/startup.S (grub_arch_machine): Restrict to
Loongson.
[GRUB_MACHINE_MIPS_QEMU_MIPS]: Save grub_arch_memsize.
* grub-core/loader/mips/linux.c (grub_linux_boot): Pass memory size.
* include/grub/mips/qemu_mips/memory.h (grub_arch_memsize): New
external variable.
2011-05-17 19:32:51 +02:00
Vladimir 'phcoder' Serbinenko
90f7ac192f
* grub-core/kern/mips/startup.S (grub_arch_cpuclock): Move to the right
...
place.
2011-05-17 18:39:32 +02:00
Vladimir 'phcoder' Serbinenko
8d4a51785a
Reenable qemu-mips port.
...
* configure.ac: Handle --target=qemu-mips and --target=qemu_mips.
Fix small arc bug while on it.
* gentpl.py: Handle qemu_mips.
* grub-core/Makefile.am: Likewise.
* grub-core/Makefile.core.def: Likewise.
* grub-core/disk/ata.c [GRUB_MACHINE_MIPS_QEMU_MIPS]: Remove
inappropriate includes.
(grub_ata_pciinit) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Removed.
(grub_ata_initialize): [GRUB_MACHINE_MIPS_QEMU_MIPS]: Rewritten.
* grub-core/kern/main.c (grub_modules_get_end)
[GRUB_MACHINE_MIPS_QEMU_MIPS]: Enable.
* grub-core/kern/mips/qemu-mips: Moved to ..
* grub-core/kern/mips/qemu_mips: ... this.
* grub-core/kern/mips/qemu_mips/init.c (grub_get_rtc): Removed.
(grub_machine_init): Call terminfo_init and serial_init.
* grub-core/kern/mips/startup.S: Change MIPS_LOONGSON to MACHINE.
* grub-core/loader/mips/linux.c (params) [GRUB_MACHINE_MIPS_QEMU_MIPS]:
New variable.
(grub_linux_boot) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Handle the qemu-mips
parameter passing.
(grub_linux_unload) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Free params.
(grub_cmd_linux) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Handle params.
(grub_cmd_initrd) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Likewise.
* include/grub/mips/qemu_mips/cmos.h: New file.
* include/grub/mips/qemu-mips/kernel.h: Don't include cpu/kernel.h.
* include/grub/mips/qemu-mips/memory.h (grub_machine_mmap_iterate):
Removed.
* include/grub/mips/qemu-mips/serial.h (GRUB_MACHINE_SERIAL_PORTS):
Use correct mips-style address.
* include/grub/mips/qemu-mips/time.h: Include cpu/time.h.
(GRUB_TICKS_PER_SECOND): Removed.
(grub_get_rtc): Likewise.
(grub_cpu_idle): Likewise.
* include/grub/offsets.h (GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ADDR):
New definition.
(GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ALIGN): Likewise.
(GRUB_KERNEL_MIPS_QEMU_MIPS_COMPRESSED_SIZE): Likewise.
(GRUB_KERNEL_MIPS_QEMU_MIPS_UNCOMPRESSED_SIZE): Likewise.
(GRUB_KERNEL_MIPS_QEMU_MIPS_TOTAL_MODULE_SIZE): Likewise.
(GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX): Likewise.
(GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX_END): Likewise.
(GRUB_KERNEL_MIPS_QEMU_MIPS_MOD_ALIGN): Likewise.
* util/grub-mkimage.c (image_targets): Add mipsel-qemu_mips-elf.
2011-05-17 16:07:17 +02:00
Vladimir 'phcoder' Serbinenko
dc16af0369
make linux loader work on qemu-mips
2011-05-17 15:34:40 +02:00
Vladimir 'phcoder' Serbinenko
a228ec103a
enable ATA on qemu-mips
2011-05-17 14:35:55 +02:00