Kay Sievers [Sun, 15 Dec 2013 17:37:05 +0000 (18:37 +0100)]
split out util.[ch]
Kay Sievers [Sun, 15 Dec 2013 17:14:06 +0000 (18:14 +0100)]
move graphics to its own file
Joonas Lahtinen [Tue, 10 Dec 2013 09:23:29 +0000 (09:23 +0000)]
make console_text_mode into more generic function
Convert console_text_mode function into console_mode function
which is able to switch back and forth between graphics and text
mode.
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Reviewed-by: Mikko Ylinen <mikko.ylinen@intel.com>
Joonas Lahtinen [Tue, 10 Dec 2013 09:23:16 +0000 (09:23 +0000)]
make file_read callable outside compilation unit
Make file_read usable from other compilation units allowing reuse
of code when splitting functionality to multiple files.
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Reviewed-by: Mikko Ylinen <mikko.ylinen@intel.com>
Joonas Lahtinen [Tue, 10 Dec 2013 09:22:56 +0000 (09:22 +0000)]
Makefile.am: be consistent defining sources
Be consistent with other source file definitions.
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Mikko Ylinen <mikko.ylinen@intel.com>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Joonas Lahtinen [Tue, 10 Dec 2013 09:22:45 +0000 (09:22 +0000)]
add source format modeline
For easier editing, add source format modeline similar to other files.
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Mikko Ylinen <mikko.ylinen@intel.com>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Kay Sievers [Wed, 27 Nov 2013 22:56:29 +0000 (23:56 +0100)]
version 39
Kay Sievers [Fri, 18 Oct 2013 00:32:41 +0000 (02:32 +0200)]
handle CTRL-w in line editor
Kay Sievers [Fri, 4 Oct 2013 02:45:45 +0000 (04:45 +0200)]
add only the first OS X system we find
Tom Gundersen [Sun, 22 Sep 2013 23:59:20 +0000 (01:59 +0200)]
version 38
Kay Sievers [Sun, 22 Sep 2013 20:28:49 +0000 (15:28 -0500)]
try harder to work around firmware with broken SIMPLE_TEXT_INPUT_EX_PROTOCOL
Kay Sievers [Sun, 22 Sep 2013 15:22:29 +0000 (10:22 -0500)]
count TSC ticks instead of relying on CPUID
The clock frequency stated for newer CPUs does not match the
TSC frequency; count the ticks during one millisecond
instead.
Harald Hoyer [Mon, 9 Sep 2013 11:32:41 +0000 (13:32 +0200)]
version 37
Kay Sievers [Mon, 26 Aug 2013 23:00:00 +0000 (01:00 +0200)]
test-create-disk.sh: format the partition, not the disk
Harald Hoyer [Mon, 9 Sep 2013 11:10:19 +0000 (13:10 +0200)]
configure.ac: break 2 on lds directory search
To get out of the for loops, to search for the lds directories, break 2
Harald Hoyer [Thu, 29 Aug 2013 10:39:55 +0000 (12:39 +0200)]
configure.ac: search for efi-ldsdir in multiple places
Kay Sievers [Sun, 25 Aug 2013 12:33:28 +0000 (14:33 +0200)]
fall back to SimpleTextInputProtocol if we do not actually get a key
Kay Sievers [Thu, 22 Aug 2013 21:06:10 +0000 (23:06 +0200)]
version 36
Kay Sievers [Thu, 22 Aug 2013 10:22:29 +0000 (12:22 +0200)]
build-sys: move EFI_LIB_DIR, EFI_INC_DIR, EFI_LDS_DIR to AC_ARG_WITH()
Kay Sievers [Thu, 22 Aug 2013 02:01:45 +0000 (04:01 +0200)]
rename test-disk to test-disk.img
Kay Sievers [Wed, 21 Aug 2013 23:26:18 +0000 (01:26 +0200)]
use EFI/Boot/bootx64.efi instead of EFI/BOOT/BOOTX64.EFI
Kay Sievers [Wed, 21 Aug 2013 23:07:42 +0000 (01:07 +0200)]
fall back to SimpleTextInputProtocol if we receive errors
Darren Hart [Wed, 21 Aug 2013 22:38:07 +0000 (15:38 -0700)]
Autodetect both x64 and ia32 boot*.efi payloads
The EFI specification documents /EFI/BOOT/bootx64.efi for x86_64
machines and /EFI/BOOT/bootia32.efi for ia32 machines. Update the auto
detection to allow for both.
Add the MACHINE_TYPE_NAME define to the efi/src build so we can use it
as the standard suffix for the EFI payloads (ia32 or x64).
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Kay Sievers [Wed, 21 Aug 2013 22:38:49 +0000 (00:38 +0200)]
qemu: skip AC_CHECK_FILE when cross-compiling
Kay Sievers [Wed, 21 Aug 2013 22:14:39 +0000 (00:14 +0200)]
add EFI_INCDIR, EFI_CPPFLAGS, EFI_CFLAGS, EFI_LDFLAGS; move defines to CPP
Darren Hart [Wed, 21 Aug 2013 19:21:18 +0000 (21:21 +0200)]
configure.ac: Use AC_CHECK_HEADER to detect the efi includes
While cross-compiling, AC_CHECK_FILE will abort the configure.
The gnu-efi sources don't use relative paths and require the user to
explicitly include -I/usr/include/efi/${ARCH}. I haven't found a way to
do this with AC_CHECK_HEADER. However, since the existing test was not
testing for usability (conftest.c compilation), we don't lose much by
just not looking for efi.h and assume it exists if we can find and use
efibind.h.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Darren Hart [Wed, 21 Aug 2013 18:13:42 +0000 (11:13 -0700)]
configure.ac: Allow for more than just i686 for ia32
Expand the ARCH_I686 to include i*86* (specifically to catch i586).
Rename ARCH_I686 to ARCH_IA32 as that is more accurately what we are
testing for.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Darren Hart [Wed, 21 Aug 2013 16:31:03 +0000 (09:31 -0700)]
gummiboot: Add 32 bit compatible rdtsc asm
Gcc's inline asm constraints have different meanings on x86_64 and ia32.
Include a 32 bit version for the rdtsc function. Drop the empty 32 bit
version of time_usec as it and the cpuid function both function properly
when compiled for 32 bit systems.
Tested on the following CPU:
Intel(R) Atom(TM) CPU E640 @ 1.00GHz
A value of
1000000000 was detected.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: "Ylinen, Mikko" <mikko.ylinen@intel.com>
Kay Sievers [Wed, 21 Aug 2013 13:17:22 +0000 (15:17 +0200)]
fall back to SimpleTextInputProtocol if we can't read a key
Kay Sievers [Tue, 20 Aug 2013 22:33:05 +0000 (00:33 +0200)]
support M-BS, M-d, and fix word jumping
Kay Sievers [Tue, 20 Aug 2013 22:07:02 +0000 (00:07 +0200)]
support M-<, M->
Kay Sievers [Mon, 19 Aug 2013 21:05:12 +0000 (23:05 +0200)]
cleanup EFI_ERROR() use
Kay Sievers [Mon, 19 Aug 2013 20:51:07 +0000 (22:51 +0200)]
move all key press handling into key_read()
Avoid mixing the API calls of:
EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL
EFI_SIMPLE_TEXT_INPUT_PROTOCOL
Always wait for the key and read the key with the same API.
Kay Sievers [Wed, 14 Aug 2013 11:01:53 +0000 (13:01 +0200)]
simplify hotkey search loop
Kay Sievers [Tue, 13 Aug 2013 22:36:13 +0000 (00:36 +0200)]
use hotkey 'a' for OS X, and start searching for hotkeys at current default
Kay Sievers [Thu, 8 Aug 2013 21:11:50 +0000 (23:11 +0200)]
version 35
Kay Sievers [Wed, 7 Aug 2013 01:06:58 +0000 (03:06 +0200)]
support hotkeys to boot an entry immediately, or to select one in the menu
1-9: Index of entry
l: Linux
s: Shell
w: Windows
m: OS X
Kay Sievers [Fri, 2 Aug 2013 13:08:39 +0000 (15:08 +0200)]
handle Alt-key in line editor; use 'Q' to quit; use 'P' for print dump
Kay Sievers [Tue, 30 Jul 2013 00:23:57 +0000 (02:23 +0200)]
version 34
Kay Sievers [Mon, 29 Jul 2013 23:27:00 +0000 (01:27 +0200)]
print "t/T" in help text for timeout setting keys
Kay Sievers [Mon, 29 Jul 2013 22:56:39 +0000 (00:56 +0200)]
properly calculate end-of-line jump
Kay Sievers [Mon, 29 Jul 2013 22:25:21 +0000 (00:25 +0200)]
handle scan code and unicode key as one value
Kay Sievers [Sun, 28 Jul 2013 14:05:05 +0000 (16:05 +0200)]
dump: handle ESC key before printing the first entry
Kay Sievers [Sun, 28 Jul 2013 14:01:42 +0000 (16:01 +0200)]
test: use 512 MB, mkfs.vfat seems to get confused with FAT32 on small volumes
Kay Sievers [Sun, 28 Jul 2013 02:13:02 +0000 (04:13 +0200)]
support CTRL-c to exit option editor
Kay Sievers [Sun, 28 Jul 2013 02:06:03 +0000 (04:06 +0200)]
stop dump with ESC key; limit option editor to configured entries
Kay Sievers [Sat, 27 Jul 2013 22:46:26 +0000 (00:46 +0200)]
use mapping table for menu and line editor; use 'h' for help
Kay Sievers [Sat, 27 Jul 2013 20:29:00 +0000 (22:29 +0200)]
support CTRL-{a,e,f,b} in line editor
Kay Sievers [Sun, 16 Jun 2013 16:32:37 +0000 (18:32 +0200)]
version 33
Keshav Padram [Sun, 16 Jun 2013 16:31:59 +0000 (18:31 +0200)]
EFI_CONSOLE_CONTROL_PROTOCOL structs in console_text_mode() should be declared as EFIAPI
EFI_CONSOLE_CONTROL_PROTOCOL structs in console_text_mode() previously
were not declared as EFIAPI, due to which gummiboot compiled
with gnu-efi 3.0t (with GNU_EFI_USE_MS_ABI enabled) hanged. Fix this by
declaring EFI_CONSOLE_CONTROL_PROTOCOL_{GET_MODE,SET_MODE,LOCK_STD_IN}
as EFIAPI.
Tested in Lenovo Thinkpad E430, UEFI 2.3.1, x86_64 firmware.
Kay Sievers [Fri, 7 Jun 2013 09:28:08 +0000 (11:28 +0200)]
version 32
Kay Sievers [Fri, 7 Jun 2013 09:14:34 +0000 (11:14 +0200)]
switch to GNU_EFI_USE_MS_ABI (requires gnu-efi-3.0s)
Kay Sievers [Fri, 7 Jun 2013 08:07:13 +0000 (10:07 +0200)]
setup: rename variable
Kay Sievers [Fri, 17 May 2013 15:43:25 +0000 (17:43 +0200)]
version 31
Ahmet Inan [Thu, 16 May 2013 21:45:05 +0000 (23:45 +0200)]
another "check ReadKeyStroke() for EFI_SUCCESS"
Just like with commit 9061fc1, trying to boot server without keyboard
resets timeout and prevents normal boot of default entry.
Kay Sievers [Fri, 3 May 2013 19:23:33 +0000 (21:23 +0200)]
setup: use the value not the index when updating an entry
Kay Sievers [Tue, 9 Apr 2013 22:27:02 +0000 (00:27 +0200)]
version 30
Kay Sievers [Thu, 28 Mar 2013 20:55:01 +0000 (21:55 +0100)]
setup: status - Flags: --> Status:
Kay Sievers [Thu, 28 Mar 2013 18:09:21 +0000 (19:09 +0100)]
setup: show - print missing /
Kay Sievers [Thu, 28 Mar 2013 18:05:53 +0000 (19:05 +0100)]
setup: status - do not print values from current boot
Kay Sievers [Thu, 28 Mar 2013 12:56:06 +0000 (13:56 +0100)]
move _GNU_SOURCE to AM_CFLAGS
Kay Sievers [Thu, 28 Mar 2013 10:38:36 +0000 (11:38 +0100)]
setup: status - ESP --> Partition
Kay Sievers [Thu, 28 Mar 2013 03:42:08 +0000 (04:42 +0100)]
setup: status - re-order ESP and loader files printing
Kay Sievers [Wed, 27 Mar 2013 02:47:47 +0000 (03:47 +0100)]
setup: status - prefix list of loaders
Kay Sievers [Sat, 23 Mar 2013 22:36:30 +0000 (23:36 +0100)]
version 29
Kay Sievers [Sat, 23 Mar 2013 17:58:24 +0000 (18:58 +0100)]
check ReadKeyStroke() for EFI_SUCCESS
"If a PC using gummiboot is booted without a keyboard plugged in (i.e. such
as on a server), instead of following the options specified in loader.conf,
it brings up the gummiboot menu without a time-out (whether one is used or
not)."
https://bugs.archlinux.org/task/34431
Kay Sievers [Thu, 21 Mar 2013 14:56:31 +0000 (15:56 +0100)]
remember LoaderEntryOneShot value for dump
<derRichard> kay: btw: in dump_status() you print LoaderEntryOneShot, but config_default_entry_select() is called before that and deletes the var...
<kay> derRichard: oh :)
Kay Sievers [Wed, 20 Mar 2013 02:07:02 +0000 (03:07 +0100)]
setup: print only boot loader entries with an actual loader binary
Kay Sievers [Mon, 18 Mar 2013 13:53:34 +0000 (14:53 +0100)]
setup: do not stop printing options if BootOrder cannot be read
Kay Sievers [Sat, 16 Mar 2013 18:22:41 +0000 (19:22 +0100)]
Revert "build-sys: check for docbook xsl-stylesheets"
Distributions seem to differ greatly where they put the needed
docbook stuff. Go back just using only xsltproc as the automatic
indicator to build man pages. Setups with xsltproc but without
the needed docbook stuff will need to disable the man page
creation manually.
This reverts commit
2423a1e43e6913bf219634576b2bfe55d5289fab.
Kay Sievers [Sat, 16 Mar 2013 17:58:43 +0000 (18:58 +0100)]
version 28
Kay Sievers [Sat, 16 Mar 2013 17:41:06 +0000 (18:41 +0100)]
setup: if all BootXXXX are used, find the next slot behind, don't overwrite Boot0000
https://bbs.archlinux.org/viewtopic.php?pid=1242470#p1242470
Kay Sievers [Sat, 16 Mar 2013 16:20:07 +0000 (17:20 +0100)]
version 2
Karel Zak [Mon, 11 Mar 2013 09:10:54 +0000 (10:10 +0100)]
build-sys: check for docbook xsl-stylesheets
Reported-by: C Hanish Menon <hanishkvc@gmail.com>
Kay Sievers [Sun, 10 Mar 2013 22:35:47 +0000 (23:35 +0100)]
setup: Loader -> Binary
Kay Sievers [Sun, 10 Mar 2013 22:30:10 +0000 (23:30 +0100)]
setup: print partition for disk entries
Kay Sievers [Sun, 10 Mar 2013 21:37:52 +0000 (22:37 +0100)]
setup: use flag variable
Kay Sievers [Sun, 10 Mar 2013 21:34:04 +0000 (22:34 +0100)]
setup: make fuction static
Kay Sievers [Sun, 10 Mar 2013 19:49:02 +0000 (20:49 +0100)]
distinguish "setup" and "user" mode
Kay Sievers [Sun, 10 Mar 2013 19:37:19 +0000 (20:37 +0100)]
print secure boot flags
Kay Sievers [Sun, 10 Mar 2013 19:23:59 +0000 (20:23 +0100)]
setup: tilt slashes
Kay Sievers [Sun, 10 Mar 2013 18:37:13 +0000 (19:37 +0100)]
setup: name fields in "status" output
Kay Sievers [Sun, 10 Mar 2013 17:25:31 +0000 (18:25 +0100)]
build-sys: move man page to man/
Kay Sievers [Sat, 9 Mar 2013 19:31:39 +0000 (20:31 +0100)]
build-sys make man pages optional
Kay Sievers [Sat, 9 Mar 2013 19:19:56 +0000 (20:19 +0100)]
build-sys: only use $prefix
Marc-Antoine Perennou [Sat, 9 Mar 2013 18:19:57 +0000 (19:19 +0100)]
setup: use gummibootlibdir
Kay Sievers [Fri, 8 Mar 2013 20:45:48 +0000 (21:45 +0100)]
ReadKeyStroke() in dump()
Kay Sievers [Fri, 8 Mar 2013 19:19:12 +0000 (20:19 +0100)]
version 26
Kay Sievers [Fri, 8 Mar 2013 19:04:00 +0000 (20:04 +0100)]
setup: fix is_secure_boot()
Kay Sievers [Fri, 8 Mar 2013 18:44:35 +0000 (19:44 +0100)]
setup: return proper error code from variable_set()
Kay Sievers [Fri, 8 Mar 2013 18:38:51 +0000 (19:38 +0100)]
setup: fix same_entry() for entries without a device path
Kay Sievers [Fri, 8 Mar 2013 17:07:45 +0000 (18:07 +0100)]
setup: fix error parameter
Kay Sievers [Fri, 8 Mar 2013 17:07:31 +0000 (18:07 +0100)]
build-sys: enable common warnings
Kay Sievers [Fri, 8 Mar 2013 16:29:57 +0000 (17:29 +0100)]
version 25
Kay Sievers [Fri, 8 Mar 2013 16:29:08 +0000 (17:29 +0100)]
build-sys: use $XSLTPROC and enforce "unresolved symbols" check
Kay Sievers [Fri, 8 Mar 2013 15:28:10 +0000 (16:28 +0100)]
pass 64 bit int to uefi_call_wrapper() when needed
Kay Sievers [Wed, 6 Mar 2013 20:46:43 +0000 (21:46 +0100)]
setup: do not stop printing all boot entries, if the boot order has non-existing ones
Kay Sievers [Wed, 6 Mar 2013 20:43:02 +0000 (21:43 +0100)]
enable the menu if no boot entry config snippet was found
Kay Sievers [Wed, 6 Mar 2013 19:31:10 +0000 (20:31 +0100)]
if no entries are found, select the first one not the last one of the auto-* entries
Kay Sievers [Mon, 4 Mar 2013 23:30:45 +0000 (00:30 +0100)]
setup: install - always add entry to the boot order list