Vladimir Serbinenko
5177391ebe
* include/grub/emu/hostdisk.h: Add proper declaration for grub_host_init
...
and grub_hostfs_init.
2013-10-28 13:33:12 +01:00
Vladimir Serbinenko
64db14b0cb
* grub-core/kern/emu/hostdisk.c (grub_util_check_file_presence): Use
...
windows method on other platforms without good stat as well.
2013-10-28 02:17:56 +01:00
Vladimir Serbinenko
442b86de32
Move grub_disk_write out of kernel into disk.mod.
2013-10-27 15:44:55 +01:00
Vladimir Serbinenko
04dea7e6c2
* grub-core/kern/misc.c (grub_vsnprintf_real): Unify int and wchar
...
handling.
2013-10-27 14:47:04 +01:00
Vladimir Serbinenko
a8f15bceea
* grub-core/kern/misc.c (grub_abort): Make static
2013-10-27 14:13:39 +01:00
Vladimir Serbinenko
a60dae7e4e
* grub-core/kern/misc.c (grub_vsnprintf_real): Don't attempt to
...
transform invalid unicode codepoints.
2013-10-27 13:34:46 +01:00
Vladimir Serbinenko
891b713be3
* grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
...
\0 checking.
2013-10-27 13:20:50 +01:00
Vladimir Serbinenko
c81acb7ff3
Consolidate cpuid code.
2013-10-27 00:02:01 +02:00
Vladimir Serbinenko
c1bee64676
Move cpuid code to cpuid.h and TSC code to tsc.c.
2013-10-26 23:39:10 +02:00
Paulo Flabiano Smorigo
84a0e9699f
Add progress module to display load progress of files.
...
* grub-core/lib/progress.c: New file.
* grub-core/Makefile.core.def (progress): New module.
* grub-core/kern/file.c (grub_file_open): File name added.
* (grub_file_read): Progress hook added.
* grub-core/fs/cbfs.c (grub_cbfs_read): Likewise.
* grub-core/fs/cpio_common.c (grub_cpio_read): Likewise.
* grub-core/net/net.c (grub_net_fs_read_real): Likewise.
* include/grub/file.h (struct grub_file): Add progress module
* members.
* include/grub/term.h (struct grub_term_output): Likewise.
* grub-core/osdep/unix/emuconsole.c (grub_console_term_output):
Terminal velocity added.
* grub-core/osdep/windows/emuconsole.c (grub_console_term_output):
* Likewise.
* grub-core/term/arc/console.c (grub_console_term_output): Likewise.
* grub-core/term/efi/console.c (grub_console_term_output): Likewise.
* grub-core/term/gfxterm.c (grub_video_term): Likewise.
* grub-core/term/i386/coreboot/cbmemc.c (grub_cbmemc_term_output):
* Likewise.
* grub-core/term/i386/pc/console.c (grub_console_term_output):
* Likewise.
* grub-core/term/i386/pc/vga_text.c (grub_vga_text_term): Likewise.
* grub-core/term/ieee1275/console.c (grub_console_term_output):
* Likewise.
* grub-core/term/morse.c (grub_audio_term_output): Likewise.
* grub-core/term/serial.c (grub_serial_term_output): Likewise.
* grub-core/term/spkmodem.c (grub_spkmodem_term_output): Likewise.
* grub-core/term/uboot/console.c (uboot_console_term_output):
* Likewise.
2013-10-22 16:42:20 -02:00
Vladimir 'phcoder' Serbinenko
f8401f760c
* grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
...
\0 checking.
Saves 70 bytes on compressed image.
2013-10-21 14:02:24 +02:00
Vladimir 'phcoder' Serbinenko
ac1feb61d2
* grub-core/kern/misc.c (grub_strtoull): Remove needless *ptr != 0
...
check.
Saves 10 bytes on compressed image.
2013-10-21 13:40:05 +02:00
Vladimir 'phcoder' Serbinenko
00f72e890b
* grub-core/kern/misc.c (grub_isprint): Move to ...
...
* include/grub/misc.h (grub_isprint): ... here. Make inline.
Saves 20 bytes on compressed image due to remving exporting.
2013-10-21 13:25:56 +02:00
Vladimir 'phcoder' Serbinenko
2cc679adae
* grub-core/kern/disk.c (grub_disk_write): Use malloc/free instead of
...
variable length arrays.
Saves 50 bytes on compressed image.
2013-10-21 00:10:34 +02:00
Vladimir 'phcoder' Serbinenko
e89c2d48a9
Lift 255x255 erminal sie restriction to 65535x65535. Also change from
...
bitmasks to small structures of size chosen to fit in registers.
2013-10-19 23:59:32 +02:00
Vladimir 'phcoder' Serbinenko
bbd2b5396b
* grub-core/kern/misc.c (grub_vsnprintf_real): Fix formatting of
...
"(null)" string.
Simplify expressions to save around 256 bytes in kernel.img.
* tests/printf_unit_test.c (printf_test): Add "(null)" tests.
2013-10-19 23:52:09 +02:00
Vladimir 'phcoder' Serbinenko
887c0bb61a
* grub-core/kern/emu/hostdisk.c: Remove few leftover includes.
2013-10-19 16:32:28 +02:00
Vladimir 'phcoder' Serbinenko
fc3182c799
* grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Pass
...
unknown types through.
2013-10-19 01:01:36 +02:00
Vladimir 'phcoder' Serbinenko
3cd910a212
* grub-core/disk/ldm.c: Rename variables and arguments to prevent
...
shadowing.
* grub-core/kern/disk.c: Likewise.
* grub-core/kern/misc.c: Likewise.
* include/grub/parser.h: Likewise.
* include/grub/script_sh.h: Likewise.
* include/grub/zfs/zfs.h: Likewise.
2013-10-18 16:54:57 +02:00
Vladimir 'phcoder' Serbinenko
df1e64c98e
Define grub_util_is_directory/regular/special_file and
...
use OS-dependent versions rather than to rely on stat().
2013-10-15 20:27:58 +02:00
Vladimir 'phcoder' Serbinenko
f4e0adc0f9
Remove leftover references to some of the system headers.
2013-10-15 17:59:54 +02:00
Vladimir 'phcoder' Serbinenko
148f100768
* grub-core/kern/misc.c (grub_vsnprintf_real): Handle %% properly.
...
* tests/printf_unit_test.c (printf_test): Add %% tests.
Reported by: Paulo Flabiano Smorigo.
2013-10-15 15:12:15 +02:00
Vladimir 'phcoder' Serbinenko
f6a81f0aaf
Add wrappers around rename, unlink, mkdir, opendir, readdir and
...
closedir to handle filename charset translation.
2013-10-15 14:11:34 +02:00
Vladimir 'phcoder' Serbinenko
23934da26e
* grub-core/kern/emu/error.c: Removed.
...
* grub-core/Makefile.core.def (kernel): Don't add error.c and progname.c
explicitly as it's already in libgnu.a.
2013-10-15 12:46:06 +02:00
Vladimir 'phcoder' Serbinenko
b73249d260
Make grub_util_fd_seek match behaviour of other grub_util_fd_* and
...
fseeko.
2013-10-14 12:47:09 +02:00
Vladimir 'phcoder' Serbinenko
6de292cb9b
Define GRUB_UTIL_FD_O_* and always use them with grub_util_fd_open.
2013-10-14 02:11:59 +02:00
Vladimir 'phcoder' Serbinenko
21d85db12f
* grub-core/Makefile.core.def: Add osdep/init.c on emu.
...
* grub-core/kern/emu/main.c: Add missing include.
* grub-core/osdep/basic/init.c (grub_util_host_init) [!GRUB_UTIL]:
Don't call grub_util_init_nls.
* grub-core/osdep/windows/init.c (grub_util_host_init) [!GRUB_UTIL]:
Likewise.
2013-10-14 02:06:43 +02:00
Vladimir 'phcoder' Serbinenko
bb338aaf24
Add a wrapper for fopen. On unix-like systems just pass-through. On
...
windows use unicode version.
2013-10-13 20:36:28 +02:00
Vladimir 'phcoder' Serbinenko
ae5540d3d4
Move set_program_name and init_nls to host_init. On windows
...
fix in this fuction console and argument charset as well.
2013-10-13 20:03:42 +02:00
Vladimir 'phcoder' Serbinenko
ff2d4dc41c
* grub-core/kern/arm/dl_helper.c: Use more proper %p for pointer.
2013-10-12 07:50:26 +02:00
Vladimir 'phcoder' Serbinenko
caca1c70cf
Move OS-specific driver configuration to grub_util_fd_open. This
...
moves OS-dependent parts from kern/emu/hostdisk.c to
grub-core/osdep/*/hostdisk.c.
2013-10-09 07:04:25 +02:00
Vladimir 'phcoder' Serbinenko
2112fb3fef
* grub-core/kern/emu/misc.c (fsync) [__MINGW32__]: Move to ...
...
* grub-core/osdep/windows/hostdisk.c (fsync) [__MINGW32__]: ... here.
2013-10-08 20:05:24 +02:00
Vladimir 'phcoder' Serbinenko
c2e6f70589
* grub-core/kern/emu/misc.c (grub_get_rtc): Remove (it's a leftover).
2013-10-08 19:53:57 +02:00
Vladimir 'phcoder' Serbinenko
620b52bf47
Couple missed files from previous commits.
2013-10-08 19:17:46 +02:00
Vladimir 'phcoder' Serbinenko
672fa55e81
Move OS-dependent files to grub-core/osdep and document it.
2013-10-08 17:30:22 +02:00
Vladimir 'phcoder' Serbinenko
a5b0365ab2
* grub-core/kern/emu/misc.c (canonicalize_file_name): Move to ...
...
* grub-core/kern/emu/hostdisk_*.c (canonicalize_file_name): ... here.
2013-10-08 17:04:46 +02:00
Vladimir 'phcoder' Serbinenko
29072e994e
* grub-core/kern/arm/misc.S: Remove leftover ARM and THUMB.
2013-10-08 17:03:19 +02:00
Vladimir 'phcoder' Serbinenko
a5f6ade676
* grub-core/kern/arm/efi/startup.S: Remove thumb leftover.
2013-10-07 20:04:54 +02:00
Vladimir 'phcoder' Serbinenko
3b0f3aa2a7
* grub-core/kern/arm/efi/init.c: Rewrite timer fucntion.
2013-10-07 19:23:14 +02:00
Vladimir 'phcoder' Serbinenko
47345010a4
Add AROS hostdisk and getroot routines.
2013-10-04 02:35:03 +02:00
Vladimir 'phcoder' Serbinenko
c7c177f07f
* grub-core/kern/arm/dl.c (do_relocations): Accept and ignore
...
R_ARM_V4BX.
2013-10-03 23:55:06 +02:00
Vladimir 'phcoder' Serbinenko
17c8bc378f
* grub-core/kern/arm/cache.c: Add v5 write-through cache support.
2013-10-03 23:29:57 +02:00
Vladimir 'phcoder' Serbinenko
30b7f58f4e
* grub-core/kern/emu/hostdisk_unix.c: Declare AROS as non-unix.
...
* grub-core/kern/emu/hostfs.c: Likewise.
* util/getroot_unix.c: Likewise.
2013-09-24 19:19:31 +02:00
Vladimir 'phcoder' Serbinenko
bab7b1ebeb
* include/grub/emu/hostdisk.h (GRUB_FD_STAT_IS_FUNTIONAL): New define.
...
Migrate all explicit defines to this new one.
2013-09-24 19:17:24 +02:00
Vladimir 'phcoder' Serbinenko
43b1c99d53
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Use
...
grub_util_fd_strerror when using grub_util_fd_*.
(grub_util_fd_open_device): Likewise.
(grub_util_biosdisk_read): Likewise.
(grub_util_biosdisk_write): Likewise.
* grub-core/kern/emu/hostdisk_unix.c (grub_util_fd_open): New function.
(grub_util_fd_strerror): Likewise.
(grub_util_fd_sync): Likewise.
(grub_util_fd_close): Likewise.
* grub-core/kern/emu/hostdisk_windows.c (grub_util_fd_sync): Likewise.
(grub_util_fd_close): Likewise.
(grub_util_fd_strerror): Likewise.
* include/grub/emu/hostdisk.h (grub_util_fd_close): Make into real
function proto rather than macro.
(grub_util_fd_sync): Likewise.
(grub_util_fd_open): Likewise.
(grub_util_fd_strerror): New proto.
2013-09-24 19:08:34 +02:00
Vladimir 'phcoder' Serbinenko
bf645fda03
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Move struct
...
stat immediately to where it's used.
2013-09-24 18:57:19 +02:00
Vladimir 'phcoder' Serbinenko
9db826e149
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_close): Fix
...
disk closing logic.
2013-09-24 18:36:51 +02:00
Vladimir 'phcoder' Serbinenko
3fff48ab45
* grub-core/kern/emu/hostdisk_windows.c (grub_util_get_windows_path):
...
Always return full path. Fixes a problem with mkrelpath.
2013-09-23 22:49:20 +02:00
Vladimir 'phcoder' Serbinenko
7e518ca84f
Use Winapi on both cygwin and mingw32 to share more code between both.
2013-09-23 11:21:09 +02:00
Vladimir 'phcoder' Serbinenko
3ff4063dd3
* grub-core/kern/emu/hostdisk.c: Disentagle into a series of OS-specific
...
files rather than one file with loads of #if's.
* util/getroot.c: Likewise.
2013-09-22 07:36:17 +02:00
Leif Lindholm
e70d6736ff
* kern/arm/cache.S: Correct access to ilinesz/dlinesz variables.
...
Clean up stack manipulation (sync_caches_armv*)
2013-09-19 09:21:24 +02:00
Vladimir 'phcoder' Serbinenko
386701a8fe
Handle the case of partitioned LVM properly.
...
* grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
Stop on meeting LVM, mpath or DMRAID.
(grub_hostdisk_os_dev_to_grub_drive): Canonicalize os device.
(read_device_map): Likewise.
* util/getroot.c (convert_system_partition_to_system_disk): Assume that
device is full disk rather than erroring out on LVM and similar cases.
2013-09-19 08:48:54 +02:00
Vladimir 'phcoder' Serbinenko
1bc783bd39
* grub-core/kern/mm.c (grub_mm_init_region): Skip regions less than
...
4K before the end.
Reported by: Leif Lindholm
2013-09-18 20:23:47 +02:00
Vladimir 'phcoder' Serbinenko
7b780018f5
Handle grub-pe2elf and grub-mkfont for cases when build != host.
...
* Makefile.am (build-grub-mkfont): Don't include gnulib.
(build-grub-gen-asciih): Likewise.
(build-grub-gen-widthspec): Likewise.
* Makefile.util.def (grub-pe2elf): Remove.
* config.h.in [GRUB_BUILD]: Use build rather than host constants.
* configure.ac: Separate tests for build.
Move ./build-grub-pe2elf to grub-core.
Fix typo.
* grub-core/Makefile.am (build-grub-pe2elf): New target.
* grub-core/kern/emu/misc.c (xasprintf): Don't compile if GRUB_BUILD is
defined.
* include/grub/types.h [GRUB_BUILD]: Use build rather than host
constants.
* util/grub-mkfont.c [GRUB_BUILD]: Simplify not to rely on argp.
* util/grub-pe2elf.c: Simplify not to rely on getopt.
* util/misc.c (program_name) [GRUB_BUILD]: Define to static string.
2013-08-22 17:00:59 +02:00
Vladimir 'phcoder' Serbinenko
984cfd8a79
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size): Adapt for
...
mingw32 as well based on grub_util_get_disk_size.
* util/misc.c (grub_util_get_disk_size): Removed. all users switched to
grub_util_get_fd_size.
(sync): Removed.
(fsync): Moved to ...
* grub-core/kern/emu/misc.c (fsync): ... here.
2013-08-22 16:50:12 +02:00
Vladimir 'phcoder' Serbinenko
ed7fbf43c2
* grub-core/kern/emu/mm.c (grub_memalign): Don't define if there is no
...
implementation available to cause compile-time rather than runtime
error.
2013-08-22 16:16:29 +02:00
Ilya Bakulin
0031b22993
* grub-core/kern/emu/hostdisk.c: Add conditionals for OpenBSD.
...
* util/getroot.c: Likewise.
2013-08-21 21:05:01 +02:00
Vladimir 'phcoder' Serbinenko
f0b94ded6d
* grub-core/kern/emu/misc.c (grub_device_mapper_supported): Move from
...
here ...
* grub-core/kern/emu/hostdisk.c (grub_device_mapper_supported): ... to
here.
2013-08-14 17:55:15 +02:00
Vladimir 'phcoder' Serbinenko
7c9d0c39af
Fix handling of build-time grub-bin2h and grub-mkfont when doing
...
full Canadian cross. Tested with build=x86_64, host=arm,
target=ppc-ieee1275.
2013-08-14 10:56:55 +02:00
Vladimir 'phcoder' Serbinenko
2af2353b0a
* grub-core/kern/i386/coreboot/init.c: Fix compilation on
...
i386-multiboot.
2013-08-14 10:43:10 +02:00
Vladimir 'phcoder' Serbinenko
797abd0a23
* grub-core/kern/vga_init.c: Fix compilation on qemu-mips.
...
* grub-core/kern/mips/qemu_mips/init.c: Likewise.
2013-08-14 09:50:57 +02:00
Vladimir 'phcoder' Serbinenko
ae27e4d323
Merge mainline into arm
2013-07-16 18:43:43 +02:00
Vladimir 'phcoder' Serbinenko
3f42504c15
* grub-core/kern/powerpc/ieee1275/startup.S: Handle unaligned bss.
...
Reported by: Paulo Flabiano Smorigo.
2013-07-16 07:41:53 +02:00
Vladimir 'phcoder' Serbinenko
e6930a454d
Enable coreboot information commands even when not loaded as
...
coreboot payload (e.g. when loaded from SeaBIOS-as-payload).
2013-06-16 01:57:55 +02:00
Andrey Borzenkov
63c2984922
* grub-core/kern/corecmd.c (grub_core_cmd_set): Use grub_env_get
...
to fetch values when listing.
2013-06-07 18:25:19 +02:00
Francesco Lavra
d60c9a81ac
Fix ARM cpuid probing
2013-06-07 16:56:24 +02:00
Francesco Lavra
b8578da640
* grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix handling of paths
...
without a device name.
2013-06-07 16:28:13 +02:00
Vladimir 'phcoder' Serbinenko
fc4c4fddf6
Detach optional parts of gfxterm and integrate in with coreboot init.
2013-05-31 00:42:33 +02:00
Vladimir 'phcoder' Serbinenko
470038745c
Fix a bug and stick nearer to the specification, introduce armv6_unified.
2013-05-17 13:05:28 +02:00
Vladimir 'phcoder' Serbinenko
390df92f0b
Detect cache type on runtime rather than compile time
2013-05-17 01:33:22 +02:00
Leif Lindholm
c59fe1d776
Leif's BSS fix
2013-05-16 16:30:41 +02:00
Leif Lindholm
72a21cf09b
Leif's ARMv6 cache support
2013-05-16 16:23:31 +02:00
Vladimir 'phcoder' Serbinenko
5bac5d9ad6
* grub-core/partmap/dfly.c: New partition map.
2013-05-16 16:18:37 +02:00
Vladimir 'phcoder' Serbinenko
1359e4740a
* grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix empty path
...
checking.
Reported by: Francesco Lavra.
2013-05-15 10:11:25 +02:00
Leif Lindholm
854f383c28
Move common function to dl_helper.c
2013-05-11 10:42:11 +02:00
Vladimir 'phcoder' Serbinenko
8e71d87482
merge mainline into arm
2013-05-11 10:24:24 +02:00
Vladimir 'phcoder' Serbinenko
0f7e980b29
Redirect xasprintf to grub_xvasprintf rather than having #ifdef's
...
for vasprintf presence.
2013-05-10 20:57:32 +02:00
Vladimir 'phcoder' Serbinenko
85002bf34a
Agglomerate more mallocs to speed-up gfxterm.
2013-05-04 22:23:23 +02:00
Leif Lindholm
b385e0723b
Leif's API fixes
2013-05-03 15:07:39 +02:00
Leif Lindholm
bb9f92b9b1
Leif's build fixes
2013-05-03 14:41:08 +02:00
Vladimir 'phcoder' Serbinenko
583e5b645c
* include/grub/arc/arc.h: Account for missing "other" peripheral on
...
ARCS. All users updated.
2013-04-30 17:40:31 +02:00
Vladimir 'phcoder' Serbinenko
aa7bcb99df
* grub-core/kern/mips/loongson/init.c: Support halt for loongson 2E.
2013-04-30 17:37:37 +02:00
Vladimir 'phcoder' Serbinenko
96f33fed86
Make PCI init in i386-qemu port more robust.
2013-04-29 15:09:39 +02:00
Vladimir 'phcoder' Serbinenko
0e90dee8e8
* grub-core/kern/mips/arc/init.c: Fix prefix detection.
2013-04-29 11:59:18 +02:00
Vladimir 'phcoder' Serbinenko
7cd0df84f1
New command `nativedisk'.
2013-04-28 15:31:33 +02:00
Vladimir 'phcoder' Serbinenko
178c276419
* grub-core/kern/file.c: Use const char * rather than casting to
...
non-const.
2013-04-28 14:06:57 +02:00
Vladimir 'phcoder' Serbinenko
17f9fd29d3
Implement grub_machine_get_bootlocation for ARC.
2013-04-27 19:12:11 +02:00
Vladimir 'phcoder' Serbinenko
a6393224c4
Make 'make check' work on emu.
2013-04-27 02:00:16 +02:00
Vladimir 'phcoder' Serbinenko
b04b5990df
Add serial on ARC platform.
2013-04-25 22:40:03 +02:00
Vladimir 'phcoder' Serbinenko
cdeb832472
* grub-core/kern/dl.c (grub_dl_resolve_symbols): Handle malloc failure.
2013-04-24 13:58:31 +02:00
Vladimir 'phcoder' Serbinenko
8528c879e3
Move mips-arc link address. Previous link address was chosen
...
in belief that RAM on SGI platforms grows down while in fact it
grows up from an unusual base.
2013-04-24 13:54:17 +02:00
Vladimir 'phcoder' Serbinenko
fe4c3e7e67
* grub-core/kern/mm.c (grub_mm_init_region): Fix condition for
...
detecting too small regions.
2013-04-20 17:39:49 +02:00
Vladimir 'phcoder' Serbinenko
90ec4b7f6c
* grub-core/kern/ieee1275/init.c (grub_claim_heap): Improve handling
...
of GRUB_IEEE1275_FLAG_FORCE_CLAIM.
* grub-core/loader/powerpc/ieee1275/linux.c
(grub_linux_claimmap_iterate): Handle GRUB_IEEE1275_FLAG_FORCE_CLAIM.
2013-04-19 15:27:09 +02:00
Vladimir 'phcoder' Serbinenko
f32555dd93
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options):
...
Look for /boot-rom as well as /rom/boot-rom.
2013-04-19 15:14:28 +02:00
Vladimir 'phcoder' Serbinenko
aeace7f71c
* grub-core/kern/elfXX.c (grub_elfXX_load): Handle
...
GRUB_ELF_LOAD_FLAGS_30BITS and GRUB_ELF_LOAD_FLAGS_62BITS.
* grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32),
(grub_linux_load64): Mask out 2 high bits.
2013-04-19 15:05:11 +02:00
Vladimir 'phcoder' Serbinenko
cbe57a487b
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_devalias_next): Make
...
source and destination differ.
2013-04-15 00:40:19 +02:00
Vladimir 'phcoder' Serbinenko
87206f2cf1
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options):
...
Inline name defines used only once.
2013-04-14 16:52:49 +02:00
Vladimir 'phcoder' Serbinenko
c86c39abef
Add uboot net
2013-04-12 16:55:38 +02:00
Vladimir 'phcoder' Serbinenko
28af3d867c
Relocations cleanup
2013-04-12 16:53:58 +02:00
Vladimir 'phcoder' Serbinenko
4e13e84e56
Fix timer units
2013-04-12 16:51:33 +02:00
Vladimir 'phcoder' Serbinenko
b624c94856
Simplify init assembly
2013-04-12 16:50:58 +02:00
Vladimir 'phcoder' Serbinenko
053cfcddf1
Import new gnulib.
2013-04-11 21:12:46 +02:00
Vladimir 'phcoder' Serbinenko
49818a594a
Fix missing PVs if they don't contain "interesting" LV. Closes #38677 .
...
Fix few warining messages and leaks while on it.
2013-04-11 00:08:27 +02:00
Vladimir 'phcoder' Serbinenko
d5e2a158e1
Fix ia64-efi image generation on big-endian machines. Deduplicate
...
some code while on it.
Reported by: Leif Lindholm.
2013-04-09 19:19:19 +02:00
Leif Lindholm
389b31cd71
Initial import of Leif's work
2013-04-07 02:41:07 +02:00
Vladimir 'phcoder' Serbinenko
f75835bdad
Use TSC as a possible time source on i386-ieee1275.
2013-04-04 09:55:44 +02:00
Vladimir 'phcoder' Serbinenko
e75fdee420
* grub-core/kern/efi/mm.c (grub_efi_finish_boot_services):
...
Try terminating EFI services several times due to quirks in some
implementations.
2013-03-26 11:34:56 +01:00
Vladimir 'phcoder' Serbinenko
6a7fb94bfb
Replace the region at 0 from coreboot tables to available in BSD
...
memory map.
2013-03-25 10:23:04 +01:00
Vladimir 'phcoder' Serbinenko
cc19857a2a
New commands cbmemc, lscoreboot, coreboot_boottime to inspect
...
coreboot tables content. Support for cbmemc.
2013-03-20 17:13:31 +01:00
Vladimir 'phcoder' Serbinenko
d745dda77e
Fix USB devices not being detected when requested
...
due to delayed attach.
2013-03-19 20:35:21 +01:00
Vladimir 'phcoder' Serbinenko
e744219bb6
Implement boot time analysis framework.
2013-03-19 20:25:09 +01:00
Vladimir 'phcoder' Serbinenko
5341c0fbfc
Avoid costly 64-bit division in grub_get_time_ms on most platforms.
2013-03-10 17:45:38 +01:00
Vladimir 'phcoder' Serbinenko
774683685f
Lift up core size limits on some platforms. Fix potential memory
...
corruption with big core on small memory systems. Document remaining
limits.
2013-03-07 08:17:24 +01:00
Vladimir 'phcoder' Serbinenko
19ce697dfd
Remove all trampoline support. Add -Wtrampolines when
...
present. Remove symbols used for trampolines to make
link fail if trampolines are present.
2013-03-03 15:57:30 +01:00
Vladimir 'phcoder' Serbinenko
3188131f72
* grub-core/kern/env.c, include/grub/env.h: Change iterator through
...
all vars to a macro. All users updated.
2013-03-03 01:34:27 +01:00
Vladimir 'phcoder' Serbinenko
6e4146c41e
Move to more hookless approach in IEEE1275 devices handling.
2013-03-02 23:51:19 +01:00
Vladimir 'phcoder' Serbinenko
99fcda8a7b
* grub-core/kern/term.c (grub_term_normal_color),
...
(grub_term_highlight_color): Add back lost defaults.
2013-03-02 23:23:51 +01:00
Vladimir 'phcoder' Serbinenko
73bf57e2c8
Make elfload not use hooks. Opt for flags and iterators instead.
2013-03-02 16:45:57 +01:00
Vladimir 'phcoder' Serbinenko
ca9c260868
* grub-core/kern/emu/hostdisk.c (read_device_map): Remove nested
...
function.
2013-03-01 13:46:24 +01:00
Vladimir 'phcoder' Serbinenko
be174e5ef3
* grub-core/kern/main.c (grub_set_prefix_and_root): Strip trailing
...
platform from firmware path.
2013-03-01 10:35:51 +01:00
Vladimir 'phcoder' Serbinenko
005a9c32df
* grub-core/kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate):
...
Fix end of table condition.
2013-02-28 13:16:39 +01:00
Colin Watson
4eb8b75659
Remove nested functions from disk and file read hooks.
...
* include/grub/disk.h (grub_disk_read_hook_t): New type.
(struct grub_disk): Add read_hook_data member.
* include/grub/file.h (struct grub_file): Likewise.
* include/grub/fshelp.h (grub_fshelp_read_file): Add read_hook_data
argument.
Update all callers.
2013-02-27 17:19:15 +01:00
Vladimir 'phcoder' Serbinenko
bc1369732f
Make color variables global instead of it being per-terminal.
2013-01-21 17:53:41 +01:00
Colin Watson
fc524edf65
Remove nested functions from filesystem directory iterators.
...
* include/grub/fs.h (grub_fs_dir_hook_t): New type.
(struct grub_fs.dir): Add hook_data argument.
Update all implementations and callers.
2013-01-21 01:33:46 +00:00
Colin Watson
6c724b85b4
Remove nested functions from ELF iterators.
2013-01-20 15:54:09 +00:00
Colin Watson
25239370fd
Remove nested functions from device iterators.
...
* include/grub/arc/arc.h (grub_arc_iterate_devs_hook_t): New type.
(grub_arc_iterate_devs): Add hook_data argument.
* include/grub/ata.h (grub_ata_dev_iterate_hook_t): New type.
(struct grub_ata_dev.iterate): Add hook_data argument.
* include/grub/device.h (grub_device_iterate_hook_t): New type.
(grub_device_iterate): Add hook_data argument.
* include/grub/disk.h (grub_disk_dev_iterate_hook_t): New type.
(struct grub_disk_dev.iterate): Add hook_data argument.
(grub_disk_dev_iterate): Likewise.
* include/grub/gpt_partition.h (grub_gpt_partition_map_iterate):
Likewise.
* include/grub/msdos_partition.h (grub_partition_msdos_iterate):
Likewise.
* include/grub/partition.h (grub_partition_iterate_hook_t): New
type.
(struct grub_partition_map.iterate): Add hook_data argument.
(grub_partition_iterate): Likewise.
* include/grub/scsi.h (grub_scsi_dev_iterate_hook_t): New type.
(struct grub_scsi_dev.iterate): Add hook_data argument.
Update all callers.
2013-01-20 15:52:15 +00:00
Vladimir 'phcoder' Serbinenko
b78d6c32e3
New terminal outputs using serial: morse and spkmodem.
2013-01-16 20:39:54 +01:00
Colin Watson
09fd6d8293
Remove nested functions from script reading and parsing.
...
* grub-core/kern/parser.c (grub_parser_split_cmdline): Add
getline_data argument, passed to getline.
* grub-core/kern/rescue_parser.c (grub_rescue_parse_line): Add
getline_data argument, passed to grub_parser_split_cmdline.
* grub-core/script/lexer.c (grub_script_lexer_yywrap): Pass
lexerstate->getline_data to lexerstate->getline.
(grub_script_lexer_init): Add getline_data argument, saved in
lexerstate->getline_data.
* grub-core/script/main.c (grub_normal_parse_line): Add getline_data
argument, passed to grub_script_parse.
* grub-core/script/script.c (grub_script_parse): Add getline_data
argument, passed to grub_script_lexer_init.
* include/grub/parser.h (grub_parser_split_cmdline): Update
prototype. Update all callers to pass appropriate getline data.
(struct grub_parser.parse_line): Likewise.
(grub_rescue_parse_line): Likewise.
* include/grub/reader.h (grub_reader_getline_t): Add void *
argument.
* include/grub/script_sh.h (struct grub_lexer_param): Add
getline_data member.
(grub_script_parse): Update prototype. Update all callers to pass
appropriate getline data.
(grub_script_lexer_init): Likewise.
(grub_normal_parse_line): Likewise.
* grub-core/commands/legacycfg.c (legacy_file_getline): Add unused
data argument.
* grub-core/kern/parser.c (grub_parser_execute: getline): Make
static instead of nested. Rename to ...
(grub_parser_execute_getline): ... this.
* grub-core/kern/rescue_reader.c (grub_rescue_read_line): Add unused
data argument.
* grub-core/normal/main.c (read_config_file: getline): Make static
instead of nested. Rename to ...
(read_config_file_getline): ... this.
(grub_normal_read_line): Add unused data argument.
* grub-core/script/execute.c (grub_script_execute_sourcecode:
getline): Make static instead of nested. Rename to ...
(grub_script_execute_sourcecode_getline): ... this.
* util/grub-script-check.c (main: get_config_line): Make static
instead of nested.
2013-01-15 12:03:25 +00:00
Colin Watson
d0d4b8a063
Remove nested functions from memory map iterators.
...
* grub-core/efiemu/mm.c (grub_efiemu_mmap_iterate): Add hook_data
argument, passed to hook.
* grub-core/kern/i386/coreboot/mmap.c
(grub_linuxbios_table_iterate): Likewise.
(grub_machine_mmap_iterate: iterate_linuxbios_table): Make static
instead of nested.
(grub_machine_mmap_iterate): Add hook_data argument.
* grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_iterate):
Add hook_data argument, passed to hook.
* grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/mips/arc/init.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/mips/loongson/init.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/kern/mips/qemu_mips/init.c (grub_machine_mmap_iterate):
Likewise.
* grub-core/mmap/efi/mmap.c (grub_efi_mmap_iterate): Likewise.
(grub_machine_mmap_iterate): Likewise.
* grub-core/mmap/mmap.c (grub_mmap_iterate): Likewise.
* include/grub/efiemu/efiemu.h (grub_efiemu_mmap_iterate): Update
prototype.
* include/grub/memory.h (grub_memory_hook_t): Add data argument.
Remove NESTED_FUNC_ATTR from here and from all users.
(grub_mmap_iterate): Update prototype.
(grub_efi_mmap_iterate): Update prototype. Update all callers to
pass appropriate hook data.
(grub_machine_mmap_iterate): Likewise.
* grub-core/commands/acpi.c (grub_acpi_create_ebda: find_hook): Make
static instead of nested.
* grub-core/commands/lsmmap.c (grub_cmd_lsmmap: hook): Likewise.
Rename to ...
(lsmmap_hook): ... this.
* grub-core/efiemu/mm.c (grub_efiemu_mmap_init: bounds_hook):
Likewise.
(grub_efiemu_mmap_fill: fill_hook): Likewise.
* grub-core/kern/i386/coreboot/init.c (grub_machine_init:
heap_init): Likewise.
* grub-core/kern/i386/pc/init.c (grub_machine_init: hook): Likewise.
Rename to ...
(mmap_iterate_hook): ... this.
* grub-core/kern/ieee1275/init.c (grub_claim_heap: heap_init):
Likewise.
* grub-core/lib/ieee1275/relocator.c
(grub_relocator_firmware_get_max_events: count): Likewise.
(grub_relocator_firmware_fill_events: fill): Likewise. Rename
to ...
(grub_relocator_firmware_fill_events_iter): ... this.
* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align:
hook): Likewise. Rename to ...
(grub_relocator_alloc_chunk_align_iter): ... this.
* grub-core/loader/i386/bsd.c (generate_e820_mmap: hook): Likewise.
Rename to ...
(generate_e820_mmap_iter): ... this.
* grub-core/loader/i386/linux.c (find_mmap_size: hook): Likewise.
Rename to ...
(count_hook): ... this.
(grub_linux_boot: hook): Likewise. Rename to ...
(grub_linux_boot_mmap_find): ... this.
(grub_linux_boot: hook_fill): Likewise. Rename to ...
(grub_linux_boot_mmap_fill): ... this.
* grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap:
hook): Likewise. Rename to ...
(grub_fill_multiboot_mmap_iter): ... this.
* grub-core/loader/multiboot.c (grub_get_multiboot_mmap_count:
hook): Likewise. Rename to ...
(count_hook): ... this.
* grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap:
hook): Likewise. Rename to ...
(grub_fill_multiboot_mmap_iter): ... this.
* grub-core/loader/powerpc/ieee1275/linux.c
(grub_linux_claimmap_iterate: alloc_mem): Likewise.
* grub-core/loader/sparc64/ieee1275/linux.c (alloc_phys: choose):
Likewise. Rename to ...
(alloc_phys_choose): ... this.
(determine_phys_base: get_physbase): Likewise.
* grub-core/mmap/i386/mmap.c (grub_mmap_malign_and_register:
find_hook): Likewise.
* grub-core/mmap/i386/pc/mmap.c (preboot: fill_hook): Likewise.
(malloc_hook: count_hook): Likewise.
* grub-core/mmap/i386/uppermem.c (grub_mmap_get_lower: hook):
Likewise. Rename to ...
(lower_hook): ... this.
(grub_mmap_get_upper: hook): Likewise. Rename to ...
(upper_hook): ... this.
(grub_mmap_get_post64: hook): Likewise. Rename to ...
(post64_hook): ... this.
* grub-core/mmap/mips/uppermem.c (grub_mmap_get_lower: hook):
Likewise. Rename to ...
(lower_hook): ... this.
(grub_mmap_get_upper: hook): Likewise. Rename to ...
(upper_hook): ... this.
* grub-core/mmap/mmap.c (grub_mmap_iterate: count_hook): Likewise.
(grub_mmap_iterate: fill_hook): Likewise.
(fill_mask): Pass addr and mask within a single struct.
(grub_cmd_badram: hook): Make static instead of nested. Rename
to ...
(badram_iter): ... this.
(grub_cmd_cutmem: hook): Likewise. Rename to ...
(cutmem_iter): ... this.
2013-01-15 12:02:35 +00:00
Vladimir 'phcoder' Serbinenko
22099030ad
* grub-core/kern/emu/hostdisk.c (read_device_map): Explicitly
...
delimit path in strings using quotes.
* util/getroot.c (grub_guess_root_devices): Likewise.
(grub_make_system_path_relative_to_its_root): Likewise.
* util/grub-probe.c (probe): Likewise.
* util/ieee1275/ofpath.c (find_obppath): Likewise.
(xrealpath): Likewise.
2013-01-13 22:45:16 +01:00
Colin Watson
ca3a74469a
Remove nested functions from PCI iterators.
...
* grub-core/bus/pci.c (grub_pci_iterate): Add hook_data argument,
passed to hook. Update all callers to pass appropriate hook data.
* grub-core/bus/emu/pci.c (grub_pci_iterate): Likewise.
* include/grub/pci.h (grub_pci_iteratefunc_t): Add data argument.
Remove NESTED_FUNC_ATTR from here and from all users.
(grub_pci_iterate): Update prototype.
* grub-core/bus/cs5536.c (grub_cs5536_find: hook): Make static
instead of nested. Rename to ...
(grub_cs5536_find_iter): ... this.
* grub-core/kern/efi/mm.c (stop_broadcom: find_card): Likewise.
* grub-core/kern/mips/loongson/init.c (init_pci: set_card):
Likewise.
* grub-core/kern/vga_init.c (grub_qemu_init_cirrus: find_card):
Likewise.
* grub-core/video/bochs.c (grub_video_bochs_setup: find_card):
Likewise.
* grub-core/video/cirrus.c (grub_video_cirrus_setup: find_card):
Likewise.
* grub-core/video/efi_uga.c (find_framebuf: find_card): Likewise.
* grub-core/video/radeon_fuloong2e.c
(grub_video_radeon_fuloong2e_setup: find_card): Likewise.
* grub-core/video/sis315pro.c (grub_video_sis315pro_setup:
find_card): Likewise.
* grub-core/video/sm712.c (grub_video_sm712_setup: find_card):
Likewise.
2013-01-13 01:10:41 +00:00
Vladimir 'phcoder' Serbinenko
5e3b8dcbb5
Import gcrypt public-key cryptography and implement signature checking.
2013-01-11 21:32:42 +01:00
Vladimir 'phcoder' Serbinenko
4dedb13f51
* grub-core/kern/disk.c (grub_disk_write): Fix sector number on 4K
...
sector devices.
2013-01-10 08:09:26 +01:00
Colin Watson
45d26abb40
Fix failing printf test.
...
* grub-core/kern/misc.c (grub_vsnprintf_real): Parse '-', '.', and
'$' in the correct order when collecting type information.
2013-01-02 12:48:31 +00:00
Colin Watson
5c67ea6cd9
Remove several trivially-unnecessary uses of nested functions.
...
* grub-core/commands/i386/pc/sendkey.c
(grub_cmd_sendkey: find_key_code, find_ascii_code): Make static
instead of nested.
* grub-core/commands/legacycfg.c (legacy_file: getline): Likewise.
Rename to ...
(legacy_file_getline): ... this.
* grub-core/commands/loadenv.c (grub_cmd_load_env: set_var):
Likewise.
* grub-core/kern/corecmd.c (grub_core_cmd_set: print_env): Likewise.
* grub-core/kern/fs.c (grub_fs_probe: dummy_func): Likewise. Rename
to ...
(probe_dummy_iter): ... this.
* grub-core/kern/i386/coreboot/mmap.c
(grub_linuxbios_table_iterate: check_signature): Likewise.
* grub-core/kern/parser.c (grub_parser_split_cmdline:
check_varstate): Likewise. Mark inline.
* grub-core/lib/arg.c (find_short: fnd_short): Likewise. Pass
an additional parameter.
(find_long: fnd_long): Likewise. Pass two additional parameters.
* grub-core/lib/crc.c (init_crc32c_table: reflect): Likewise.
* grub-core/lib/crc64.c (init_crc64_table: reflect): Likewise.
* grub-core/lib/ieee1275/cmos.c (grub_cmos_find_port: hook):
Likewise. Rename to ...
(grub_cmos_find_port_iter): ... this.
* grub-core/lib/ieee1275/datetime.c (find_rtc: hook): Likewise.
Rename to ...
(find_rtc_iter): ... this.
* grub-core/normal/menu_entry.c (run): Fold nested editor_getsource
function directly into the function body, since it is only called
once.
2012-12-31 17:31:38 +00:00
Paulo Flabiano Smorigo
64ebd2f4b9
* grub-core/kern/ieee1275/init.c (grub_machine_get_bootlocation): Use
...
dynamic allocation for the bootpath buffer.
2012-12-10 16:23:16 +01:00
Vladimir 'phcoder' Serbinenko
7ddffdadea
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
...
GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN on mac.
* grub-core/term/ieee1275/console.c (grub_console_init_lately): Use
ieee1275-nocursor if GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN is set.
* grub-core/term/terminfo.c (grub_terminfo_set_current): Add new type
ieee1275-nocursor.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN.
2012-09-18 11:52:19 +02:00
Peter Jones
c5052c81ab
* grub-core/Makefile.core.def (efifwsetup): New module.
...
* grub-core/commands/efi/efifwsetup.c: New file.
* grub-core/kern/efi/efi.c (grub_efi_set_variable): New function
* include/grub/efi/api.h (GRUB_EFI_OS_INDICATIONS_BOOT_TO_FW_UI):
New define.
* include/grub/efi/efi.h (grub_efi_set_variable): New proto.
2012-09-08 09:40:24 +02:00
Vladimir 'phcoder' Serbinenko
42d0867ff7
* grub-core/kern/mips/arc/init.c (grub_machine_init): Set clock
...
frequency to 150 MHz.
2012-06-26 23:28:23 +02:00
Grégoire Sutre
650cfcfea2
Fix overflow in grub_util_get_fd_size for NetBSD.
2012-06-25 10:09:57 +02:00
Vladimir 'phcoder' Serbinenko
0f92dca7ef
* grub-core/kern/mm.c (grub_free): Fix agglomerating of free regions.
2012-06-23 00:39:10 +02:00
Vladimir 'phcoder' Serbinenko
3988c4a09f
* grub-core/kern/mm.c (get_header_from_pointer): Put a more informative
...
message on double free. Put the value of magic in case of mismatch.
2012-06-22 23:54:43 +02:00
Vladimir 'phcoder' Serbinenko
ed24c31201
Avoid flushing the same line multiple times on loongson.
...
* grub-core/kern/mips/cache.S [GRUB_MACHINE_MIPS_LOONGSON]:
Step in 32 bytes and not 1 byte.
* grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]:
Likewise.
2012-06-22 23:36:33 +02:00
Vladimir 'phcoder' Serbinenko
f35abd8190
* grub-core/kern/main.c (grub_set_prefix_and_root): Fix memory leak.
...
* grub-core/net/drivers/ieee1275/ofnet.c
(grub_ieee1275_net_config_real): Likewise.
2012-06-22 11:51:48 +02:00
Vladimir 'phcoder' Serbinenko
eb6d0dd3a1
* grub-core/kern/main.c (grub_set_prefix_and_root): Skip escaped commas
...
when looking for partition separator.
2012-06-20 23:33:34 +02:00
Vladimir 'phcoder' Serbinenko
3123054474
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
...
Escape commas.
2012-06-20 23:31:59 +02:00
Vladimir 'phcoder' Serbinenko
9f1d654e67
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
...
GRUB_IEEE1275_FLAG_BROKEN_REPEAT.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
GRUB_IEEE1275_FLAG_BROKEN_REPEAT on PowerBook3,3.
* include/grub/terminfo.h (grub_terminfo_input_state) [__powerpc__]:
New fields last_key and last_key_time.
* grub-core/term/terminfo.c (grub_terminfo_getkey): Transform
extended key-esc into extended key-extended key.
2012-06-20 22:19:26 +02:00
Vladimir 'phcoder' Serbinenko
0494408e7e
* include/grub/net.h (grub_net_card): New member txbufsize.
...
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum values
GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN.
* grub-core/net/drivers/efi/efinet.c (grub_efinet_findcards): Use
txbufsize.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Use
compatible property to check for macs. Set
GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN on macs.
* grub-core/net/drivers/ieee1275/ofnet.c (card_open): Don't add suffix
if GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX is set.
(send_card_buffer): Use txbuf.
(grub_ofnet_findcards): Allocate txbuf. Simplify code flow and move
nested function out of the parent while on it.
2012-06-19 11:34:52 +02:00
Vladimir 'phcoder' Serbinenko
970a0a09dd
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Extend
...
filename parsing to non-block devices.
2012-06-19 11:23:13 +02:00
Vladimir 'phcoder' Serbinenko
3e19bf879f
* grub-core/kern/device.c (grub_device_open): Remove dead code.
2012-06-19 11:20:34 +02:00