11.1.1.2Sjmcneill    Updated Changelog
21.1.1.2Sjmcneill
31.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
41.1.1.2Sjmcneill
51.1.1.2Sjmcneillcommit 37d7bee82a627999563069b090866076e055a871
61.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
71.1.1.2SjmcneillDate:   Thu May 14 12:38:39 2015 -0400
81.1.1.2Sjmcneill
91.1.1.2Sjmcneill    Added some missing error code descriptions
101.1.1.2Sjmcneill    
111.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
121.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
131.1.1.2Sjmcneill
141.1.1.2Sjmcneillcommit dae0b4b0b0d522caecf09123db2cf0250c37a169
151.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
161.1.1.2SjmcneillDate:   Thu May 14 12:20:51 2015 -0400
171.1.1.2Sjmcneill
181.1.1.2Sjmcneill    Turns out we actually need setjmp in one of gnu-efi's prominent
191.1.1.2Sjmcneill    users, and it seems to make more sense to put it here than in
201.1.1.2Sjmcneill    the application.
211.1.1.2Sjmcneill    
221.1.1.2Sjmcneill    All of these are derived from the Tiano code, but I re-wrote the
231.1.1.2Sjmcneill    x86_64 one because we use the ELF psABI calling conventions instead
241.1.1.2Sjmcneill    of the MS ABI calling conventions.  Which is to say you probably
251.1.1.2Sjmcneill    shouldn't setjmp()/longjmp() between functions with EFIAPI (aka
261.1.1.2Sjmcneill    __attribute__((ms_abi))) and those without.
271.1.1.2Sjmcneill    
281.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
291.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
301.1.1.2Sjmcneill
311.1.1.2Sjmcneillcommit b5a8e93cec396381a6d2beee022abbf50100f2fd
321.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
331.1.1.2SjmcneillDate:   Fri Apr 10 08:49:50 2015 -0400
341.1.1.2Sjmcneill
351.1.1.2Sjmcneill    Bump version to 3.0.2
361.1.1.2Sjmcneill    
371.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
381.1.1.2Sjmcneill
391.1.1.2Sjmcneillcommit 01c9f11ed5ad55661e8fc8a3eee35c578564754b
401.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
411.1.1.2SjmcneillDate:   Fri Apr 10 08:46:40 2015 -0400
421.1.1.2Sjmcneill
431.1.1.2Sjmcneill    Fix ARM32 and AARCH64 builds
441.1.1.2Sjmcneill    Without these added into SUBDIRS the initplat.c compilation will fail.
451.1.1.2Sjmcneill    
461.1.1.2Sjmcneill    Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
471.1.1.2Sjmcneill    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
481.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
491.1.1.2Sjmcneill
501.1.1.2Sjmcneillcommit dada63fd3de148c6f8551d253355c113547cd5a0
511.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
521.1.1.2SjmcneillDate:   Mon Mar 23 10:41:43 2015 -0400
531.1.1.2Sjmcneill
541.1.1.2Sjmcneill    [PATCH] _SPrint: fix NULL termination
551.1.1.2Sjmcneill    
561.1.1.2Sjmcneill    maxlen is the maximum string length not the buffer size.
571.1.1.2Sjmcneill    
581.1.1.2Sjmcneill    Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
591.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
601.1.1.2Sjmcneill
611.1.1.2Sjmcneillcommit ce7098fb52e5fd4d16038964d029eb759f28eaaf
621.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
631.1.1.2SjmcneillDate:   Thu Feb 19 11:22:45 2015 -0500
641.1.1.2Sjmcneill
651.1.1.2Sjmcneill    Enable out-of-tree building
661.1.1.2Sjmcneill    
671.1.1.2Sjmcneill    This patch enables building gnu-efi outside of the source tree.
681.1.1.2Sjmcneill    That in turn enables building for multiple architectures in parallel.
691.1.1.2Sjmcneill    
701.1.1.2Sjmcneill    The build directory is controlled by the OBJDIR make variable.  It
711.1.1.2Sjmcneill    defaults to the value of ARCH, and can be overridden from the command
721.1.1.2Sjmcneill    line.
731.1.1.2Sjmcneill    
741.1.1.2Sjmcneill    This patch also cleans up some doubled slashes between INSTALLROOT
751.1.1.2Sjmcneill    and PREFIX.
761.1.1.2Sjmcneill    
771.1.1.2Sjmcneill    Signed-off-by: Jonathan Boeing <jonathan.n.boeing@gmail.com>
781.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
791.1.1.2Sjmcneill
801.1.1.2Sjmcneillcommit f64cef26270bfbe04f038da33f95ae3f14c071bc
811.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
821.1.1.2SjmcneillDate:   Tue Jan 6 15:49:50 2015 -0500
831.1.1.2Sjmcneill
841.1.1.2Sjmcneill    Since we're keeping this in git, it'd be nice not to see a bunch
851.1.1.2Sjmcneill    of make targets in 'status'
861.1.1.2Sjmcneill    
871.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
881.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
891.1.1.2Sjmcneill
901.1.1.2Sjmcneillcommit 322efb6b21ed0a5e42e8f124fd22bf0f8dbf01ae
911.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
921.1.1.2SjmcneillDate:   Mon Jan 5 13:20:43 2015 -0500
931.1.1.2Sjmcneill
941.1.1.2Sjmcneill    version number changed from VERSION = 3.0u to VERSION = 3.0.1
951.1.1.2Sjmcneill    
961.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
971.1.1.2Sjmcneill
981.1.1.2Sjmcneillcommit 09027207f7c18af6caa45a744fc15c90b2a829db
991.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
1001.1.1.2SjmcneillDate:   Mon Jan 5 13:13:22 2015 -0500
1011.1.1.2Sjmcneill
1021.1.1.2Sjmcneill    From: Pete Batard <pete@akeo.ie>
1031.1.1.2Sjmcneill    Date: Wed, 10 Dec 2014 21:08:34 +0000
1041.1.1.2Sjmcneill    Subject: [PATCH] fixes for MSVC compilation
1051.1.1.2Sjmcneill    
1061.1.1.2Sjmcneill    These fixes are needed to address the following error and warnings when compiling the library part
1071.1.1.2Sjmcneill    using Visual Studio 2013 Community Edition (as in https://github.com/pbatard/uefi-simple):
1081.1.1.2Sjmcneill    * "lib\x86_64\math.c(49): error C4235: nonstandard extension used : '_asm' keyword not supported
1091.1.1.2Sjmcneill      on this architecture"
1101.1.1.2Sjmcneill    * "lib\print.c(98): error C2059: syntax error : '('" due to placement of EFIAPI macro
1111.1.1.2Sjmcneill    * "lib\cmdline.c(94): warning C4090: 'function' : different 'const' qualifiers"
1121.1.1.2Sjmcneill    * "lib\smbios.c(25): warning C4068: unknown pragma"
1131.1.1.2Sjmcneill    * Also update macro definitions in "inc\<arch>\efibind.h" for MSVC
1141.1.1.2Sjmcneill    
1151.1.1.2Sjmcneill    Signed-off-by: Pete Batard <pete@akeo.ie>
1161.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
1171.1.1.2Sjmcneill
1181.1.1.2Sjmcneillcommit 15805ff38b83a72c2c7c96a24bd642ee1176d819
1191.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
1201.1.1.2SjmcneillDate:   Tue Nov 25 14:23:21 2014 -0500
1211.1.1.2Sjmcneill
1221.1.1.2Sjmcneill    Add README.git file. Instructions on how to archive.
1231.1.1.2Sjmcneill    
1241.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
1251.1.1.2Sjmcneill
1261.1.1.2Sjmcneillcommit b868aa75669723b7e32f46524822e17e388fe2ba
1271.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
1281.1.1.2SjmcneillDate:   Tue Nov 25 13:26:45 2014 -0500
1291.1.1.2Sjmcneill
1301.1.1.2Sjmcneill    This patch makes generating releases from git a very simple process; you
1311.1.1.2Sjmcneill    simply edit the makefile's "VERSION" line to the new version, commit
1321.1.1.2Sjmcneill    that as its own commit, and do: "make test-archive".  That'll make a
1331.1.1.2Sjmcneill    file in the current directory gnu-efi-$VERSION.tar.bz2 , with its top
1341.1.1.2Sjmcneill    level directory gnu-efi-$VERSION/ and the source tree under that.
1351.1.1.2Sjmcneill    
1361.1.1.2Sjmcneill    Once you've tested that and you're sure it's what you want to release,
1371.1.1.2Sjmcneill    you do "make archive", which will tag a release in git and generate a
1381.1.1.2Sjmcneill    final tarball from it.  You then push to the archive, being sure to
1391.1.1.2Sjmcneill    include the tag:
1401.1.1.2Sjmcneill    
1411.1.1.2Sjmcneill    git push origin master:master --tags
1421.1.1.2Sjmcneill    
1431.1.1.2Sjmcneill    And upload the archive wherever it's supposed to go.
1441.1.1.2Sjmcneill    
1451.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
1461.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
1471.1.1.2Sjmcneill
1481.1.1.2Sjmcneillcommit 530d68ba191850edafc6da22cb2df55bec0c5fa5
1491.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
1501.1.1.2SjmcneillDate:   Tue Nov 25 10:09:50 2014 -0500
1511.1.1.2Sjmcneill
1521.1.1.2Sjmcneill    The gnu-efi-3.0 toplevel subdirectory is really annoying. Kill it.
1531.1.1.2Sjmcneill    
1541.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
1551.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
1561.1.1.2Sjmcneill
1571.1.1.2Sjmcneillcommit 00bd66ef46b59a1623a293491a8b2c65a6d61975
1581.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
1591.1.1.2SjmcneillDate:   Mon Nov 24 14:33:09 2014 -0500
1601.1.1.2Sjmcneill
1611.1.1.2Sjmcneill    FreeBSD's binutils doesn't have "-j <glob>" support, so we need to
1621.1.1.2Sjmcneill    include non-globbed versions of .rel/.rela individually.
1631.1.1.2Sjmcneill    
1641.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
1651.1.1.2Sjmcneill    Signed-off-by: Bill Paul <wpaul@windriver.com>
1661.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
1671.1.1.2Sjmcneill
1681.1.1.2Sjmcneillcommit 56eb64d3c06854b9b68d61e3c2d3bdf6ff2a9853
1691.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
1701.1.1.2SjmcneillDate:   Mon Nov 24 14:27:14 2014 -0500
1711.1.1.2Sjmcneill
1721.1.1.2Sjmcneill    Right now we wind up trying to build gnuefi/.o from a source file that's
1731.1.1.2Sjmcneill    an empty string.  This is caused by the macros trying to generate
1741.1.1.2Sjmcneill    install rules, but there's no real reason to have all that anyway.  So
1751.1.1.2Sjmcneill    just have some static install rules that are simpler and don't generate
1761.1.1.2Sjmcneill    stuff on the fly.
1771.1.1.2Sjmcneill    
1781.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
1791.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
1801.1.1.2Sjmcneill
1811.1.1.2Sjmcneillcommit 65e28a90a7be9e990b360286cea31e63319217fb
1821.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
1831.1.1.2SjmcneillDate:   Mon Nov 24 12:17:45 2014 -0500
1841.1.1.2Sjmcneill
1851.1.1.2Sjmcneill    Add current OsIndications values.
1861.1.1.2Sjmcneill    
1871.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
1881.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com
1891.1.1.2Sjmcneill
1901.1.1.2Sjmcneillcommit be231055ce14d17610f0d7b6133a87b99a22662b
1911.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
1921.1.1.2SjmcneillDate:   Mon Nov 24 12:15:34 2014 -0500
1931.1.1.2Sjmcneill
1941.1.1.2Sjmcneill    Add the QueryVariableInfo() API.
1951.1.1.2Sjmcneill    
1961.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
1971.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
1981.1.1.2Sjmcneill
1991.1.1.2Sjmcneillcommit 60efb7a2939b65a01e95aa8b535f1b756d984fba
2001.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
2011.1.1.2SjmcneillDate:   Mon Nov 24 12:13:23 2014 -0500
2021.1.1.2Sjmcneill
2031.1.1.2Sjmcneill    Add the capsule API.
2041.1.1.2Sjmcneill    
2051.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
2061.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
2071.1.1.2Sjmcneill
2081.1.1.2Sjmcneillcommit ef08b655d1f8dfbd9a0f3a86d5685b24695ef12f
2091.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
2101.1.1.2SjmcneillDate:   Mon Nov 17 16:05:42 2014 -0500
2111.1.1.2Sjmcneill
2121.1.1.2Sjmcneill    Fix Table Header misspelling. Change from EFI_TABLE_HEARDER to
2131.1.1.2Sjmcneill    EFI_TABLE_HEADER.
2141.1.1.2Sjmcneill    
2151.1.1.2Sjmcneill    Signed-Off-By: Nigel Croxon <nigel.croxon@hp.com>
2161.1.1.2Sjmcneill
2171.1.1.2Sjmcneillcommit 370cce41da3fff41ba38feb1262002aff2d85ffd
2181.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
2191.1.1.2SjmcneillDate:   Thu Nov 6 14:41:40 2014 -0500
2201.1.1.2Sjmcneill
2211.1.1.2Sjmcneill    If CROSS_COMPILE is set, ignore the ARCH value supplied on the
2221.1.1.2Sjmcneill    command line and use the target machine of the cross compiler.
2231.1.1.2Sjmcneill    
2241.1.1.2Sjmcneill    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2251.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
2261.1.1.2Sjmcneill
2271.1.1.2Sjmcneillcommit d32fb845433ff6fb38e81ae0d9273454e7d18197
2281.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
2291.1.1.2SjmcneillDate:   Thu Nov 6 14:30:03 2014 -0500
2301.1.1.2Sjmcneill
2311.1.1.2Sjmcneill    Allow reuse of this file beyond GPL compatible software,
2321.1.1.2Sjmcneill    update the license of crt0-efi-aarch64.S to dual 2-clause BSD/GPLv2+.
2331.1.1.2Sjmcneill    
2341.1.1.2Sjmcneill    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2351.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
2361.1.1.2Sjmcneill
2371.1.1.2Sjmcneillcommit aa1df67f48f3c035fa8891e1bb311ec21500d6d9
2381.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
2391.1.1.2SjmcneillDate:   Tue Oct 21 11:08:47 2014 -0400
2401.1.1.2Sjmcneill
2411.1.1.2Sjmcneill    Add the missing Variable attributes
2421.1.1.2Sjmcneill    
2431.1.1.2Sjmcneill    From: Jeremy Compostella <jeremy.compostella@intel.com>
2441.1.1.2Sjmcneill    Date: Mon, 13 Oct 2014 17:50:50 +0200
2451.1.1.2Sjmcneill    Subject: [PATCH] Add the missing Variable attributes
2461.1.1.2Sjmcneill    
2471.1.1.2Sjmcneill    Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
2481.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
2491.1.1.2Sjmcneill
2501.1.1.2Sjmcneillcommit 5706dff09364cbbec37f47e2fe1350747f631d74
2511.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
2521.1.1.2SjmcneillDate:   Tue Aug 26 10:54:22 2014 -0400
2531.1.1.2Sjmcneill
2541.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
2551.1.1.2Sjmcneill    Date: Mon, 25 Aug 2014 13:28:49 -0700
2561.1.1.2Sjmcneill    Subject: [PATCH] document that binutils >= 2.24 needed.
2571.1.1.2Sjmcneill    
2581.1.1.2Sjmcneill    commit ac983081 "Add support for non-PE/COFF capable objcopy" depends
2591.1.1.2Sjmcneill    on objcopy accepting wildcards for the section names. This feature is
2601.1.1.2Sjmcneill    available only with binutils >= 2.24 (binutils 2e62b7218 "PR
2611.1.1.2Sjmcneill    binutils/15033").
2621.1.1.2Sjmcneill    
2631.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
2641.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
2651.1.1.2Sjmcneill
2661.1.1.2Sjmcneillcommit 6c10e225bc759d69af520a551b9d7b37f3ae0a82
2671.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
2681.1.1.2SjmcneillDate:   Mon Aug 25 08:51:23 2014 -0400
2691.1.1.2Sjmcneill
2701.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
2711.1.1.2Sjmcneill    Date: Thu, 31 Jul 2014 18:19:16 -0700
2721.1.1.2Sjmcneill    Subject: [PATCH 5/5] allow to use external stdarg.h
2731.1.1.2Sjmcneill    
2741.1.1.2Sjmcneill    in cases we use gnu-efi together with other libs that define stdarg.h,
2751.1.1.2Sjmcneill    break the tie by telling gnu-efi to use that stdarg.h .
2761.1.1.2Sjmcneill    
2771.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
2781.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
2791.1.1.2Sjmcneill
2801.1.1.2Sjmcneillcommit 16d65c0669258c8044e3549b2d9eb0cf0eb08f5a
2811.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
2821.1.1.2SjmcneillDate:   Tue Aug 19 12:07:00 2014 -0400
2831.1.1.2Sjmcneill
2841.1.1.2Sjmcneill    From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2851.1.1.2Sjmcneill    Date: Mon, 11 Aug 2014 15:39:16 +0200
2861.1.1.2Sjmcneill    Subject: [PATCH] Add support for 32-bit ARM
2871.1.1.2Sjmcneill    
2881.1.1.2Sjmcneill    This adds support for 32-bit ARM using an approach similar to the one used for
2891.1.1.2Sjmcneill    64-bit ARM (AArch64), i.e., it does not rely on an objcopy that is aware of EFI
2901.1.1.2Sjmcneill    or PE/COFF, but lays out the entire PE/COFF header using the assembler.
2911.1.1.2Sjmcneill    
2921.1.1.2Sjmcneill    In the 32-bit ARM case (which does not have a division instruction), some code
2931.1.1.2Sjmcneill    has been imported from the Linux kernel to perform the division operations in
2941.1.1.2Sjmcneill    software.
2951.1.1.2Sjmcneill    
2961.1.1.2Sjmcneill    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2971.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
2981.1.1.2Sjmcneill
2991.1.1.2Sjmcneillcommit b28143d4fb4f6969dc0c87c853d3527d889951d7
3001.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
3011.1.1.2SjmcneillDate:   Fri Aug 8 15:54:19 2014 -0400
3021.1.1.2Sjmcneill
3031.1.1.2Sjmcneill    Updated Changelog
3041.1.1.2Sjmcneill    
3051.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
3061.1.1.2Sjmcneill
3071.1.1.2Sjmcneillcommit 1525190354f5faac33015e17c9ba7ea2bb2be35b
3081.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
3091.1.1.2SjmcneillDate:   Fri Aug 8 15:35:09 2014 -0400
3101.1.1.2Sjmcneill
3111.1.1.2Sjmcneill    From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
3121.1.1.2Sjmcneill    Date: Fri, 8 Aug 2014 18:16:59 +0200
3131.1.1.2Sjmcneill    Subject: [PATCH 4/4] Add support for 64-bit ARM (AArch64)
3141.1.1.2Sjmcneill    
3151.1.1.2Sjmcneill    This adds support for 64-bit ARM (AArch64) environments. Since there is no
3161.1.1.2Sjmcneill    EFI-capable objcopy for this platform, this contains a manually laid out
3171.1.1.2Sjmcneill    PE/COFF header using the assembler.
3181.1.1.2Sjmcneill    
3191.1.1.2Sjmcneill    In addition, it includes the relocation bits, some string functions that GCC
3201.1.1.2Sjmcneill    assumes are available and other glue to hold it all together.
3211.1.1.2Sjmcneill    
3221.1.1.2Sjmcneill    This can be cross built using
3231.1.1.2Sjmcneill    
3241.1.1.2Sjmcneill        make CROSS_COMPILE=aarch64-linux-gnu-
3251.1.1.2Sjmcneill    
3261.1.1.2Sjmcneill    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
3271.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
3281.1.1.2Sjmcneill
3291.1.1.2Sjmcneillcommit ac983081525f9483941517dfb53cf8d0163d49c0
3301.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
3311.1.1.2SjmcneillDate:   Fri Aug 8 15:32:26 2014 -0400
3321.1.1.2Sjmcneill
3331.1.1.2Sjmcneill    From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
3341.1.1.2Sjmcneill    Date: Fri, 8 Aug 2014 17:53:42 +0200
3351.1.1.2Sjmcneill    Subject: [PATCH 3/4] Add support for non-PE/COFF capable objcopy
3361.1.1.2Sjmcneill    
3371.1.1.2Sjmcneill    Introduce HAVE_EFI_OBJCOPY and set it if objcopy for $ARCH support PE/COOF and
3381.1.1.2Sjmcneill    EFI, i.e., it supports --target efi-[app|bsdrv|rtdrv] options. Use it to decide
3391.1.1.2Sjmcneill    whether to invoke objcopy with those options or use the linker to populate the
3401.1.1.2Sjmcneill    PE/COFF header.
3411.1.1.2Sjmcneill    
3421.1.1.2Sjmcneill    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
3431.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
3441.1.1.2Sjmcneill
3451.1.1.2Sjmcneillcommit fb063f0f65543b3e2bf55a39d5aa70b17a98c65e
3461.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
3471.1.1.2SjmcneillDate:   Fri Aug 8 15:26:38 2014 -0400
3481.1.1.2Sjmcneill
3491.1.1.2Sjmcneill    From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
3501.1.1.2Sjmcneill    Date: Fri, 8 Aug 2014 17:37:36 +0200
3511.1.1.2Sjmcneill    Subject: [PATCH 2/4] Add support for cross compilation
3521.1.1.2Sjmcneill    
3531.1.1.2Sjmcneill    This changes the logic that defines ARCH (and HOSTARCH) to take CROSS_COMPILE
3541.1.1.2Sjmcneill    into account. Also, $prefix is not assigned, so that the default will be what
3551.1.1.2Sjmcneill    is on the path rather than hardcoded in /usr/bin.
3561.1.1.2Sjmcneill    
3571.1.1.2Sjmcneill    This results in the build doing the right thing if CROSS_COMPILE is set in the
3581.1.1.2Sjmcneill    environment and no ARCH or prefix options are passed to make, aligning it with
3591.1.1.2Sjmcneill    most other CROSS_COMPILE compatible projects.
3601.1.1.2Sjmcneill    
3611.1.1.2Sjmcneill    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
3621.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
3631.1.1.2Sjmcneill
3641.1.1.2Sjmcneillcommit 7a98d83fc32de6cf0b1ce5e12dfe80690f29fb3f
3651.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
3661.1.1.2SjmcneillDate:   Fri Aug 8 15:25:03 2014 -0400
3671.1.1.2Sjmcneill
3681.1.1.2Sjmcneill    From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
3691.1.1.2Sjmcneill    Date: Fri, 8 Aug 2014 16:50:45 +0200
3701.1.1.2Sjmcneill    Subject: [PATCH 1/4] Restrict GNU_EFI_USE_MS_ABI GCC version test to x86_64
3711.1.1.2Sjmcneill    
3721.1.1.2Sjmcneill    The version test only applies to x86_64 builds, so no need to do it
3731.1.1.2Sjmcneill    for other archs.
3741.1.1.2Sjmcneill    
3751.1.1.2Sjmcneill    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
3761.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
3771.1.1.2Sjmcneill
3781.1.1.2Sjmcneillcommit f42974dd9a7d0ea690d293f88396abd289f0014c
3791.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
3801.1.1.2SjmcneillDate:   Fri Aug 8 15:21:16 2014 -0400
3811.1.1.2Sjmcneill
3821.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
3831.1.1.2Sjmcneill    Date: Thu, 31 Jul 2014 13:42:23 -0700
3841.1.1.2Sjmcneill    Subject: [PATCH 4/4] Use Shell protocols to retrieve argc/argv, when
3851.1.1.2Sjmcneill     available.
3861.1.1.2Sjmcneill    
3871.1.1.2Sjmcneill    New header files efishellintf.h efishellparm.h are coming from EDK
3881.1.1.2Sjmcneill    II, initial location and license at top of files. Only modifications:
3891.1.1.2Sjmcneill     - efishellintf.h: s/EFI_FILE_PROTOCOL/EFI_FILE/ + expand BITx macros (1<<x)
3901.1.1.2Sjmcneill     - efishellparm.h: typedef VOID *SHELL_FILE_HANDLE to avoid including
3911.1.1.2Sjmcneill       ShellBase.h
3921.1.1.2Sjmcneill     - both: removed extern EFI_GUID variable decls
3931.1.1.2Sjmcneill    
3941.1.1.2Sjmcneill    This also adds apps/t8.c, a simple demo.
3951.1.1.2Sjmcneill    
3961.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
3971.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
3981.1.1.2Sjmcneill
3991.1.1.2Sjmcneillcommit a61fa058e9a87f966de3342b8c95fdbdcb007827
4001.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
4011.1.1.2SjmcneillDate:   Fri Aug 8 15:17:32 2014 -0400
4021.1.1.2Sjmcneill
4031.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
4041.1.1.2Sjmcneill    Date: Thu, 31 Jul 2014 13:41:52 -0700
4051.1.1.2Sjmcneill    Subject: [PATCH 3/4] document format of LoadedImage::LoadOptions data
4061.1.1.2Sjmcneill    
4071.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
4081.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
4091.1.1.2Sjmcneill
4101.1.1.2Sjmcneillcommit 2f440200c855154f929d28971b2fd702ea7a207a
4111.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
4121.1.1.2SjmcneillDate:   Fri Aug 8 15:15:59 2014 -0400
4131.1.1.2Sjmcneill
4141.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
4151.1.1.2Sjmcneill    Date: Thu, 31 Jul 2014 13:39:37 -0700
4161.1.1.2Sjmcneill    Subject: [PATCH 2/4] Use OpenProtocol instead of HandleProtocol
4171.1.1.2Sjmcneill    
4181.1.1.2Sjmcneill    UEFI 2.x recommends OpenProtocol instead of HandleProtocol.
4191.1.1.2Sjmcneill    
4201.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
4211.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
4221.1.1.2Sjmcneill
4231.1.1.2Sjmcneillcommit 7f173da1e54f8cfe4c7c7c091ab6585af07b25ce
4241.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
4251.1.1.2SjmcneillDate:   Fri Aug 8 15:14:26 2014 -0400
4261.1.1.2Sjmcneill
4271.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
4281.1.1.2Sjmcneill    Date: Thu, 31 Jul 2014 13:30:07 -0700
4291.1.1.2Sjmcneill    Subject: [PATCH 1/4] move cmdline parser to its own file
4301.1.1.2Sjmcneill    
4311.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
4321.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
4331.1.1.2Sjmcneill
4341.1.1.2Sjmcneillcommit 0ad8fb87cbc59f58675b18253ad802ba51f1d132
4351.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
4361.1.1.2SjmcneillDate:   Wed Jul 30 15:06:36 2014 -0400
4371.1.1.2Sjmcneill
4381.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
4391.1.1.2Sjmcneill    Date: Mon, 28 Jul 2014 21:28:50 -0700
4401.1.1.2Sjmcneill    Subject: [PATCH 3/3] make cmdline parsing a 1st class citizen
4411.1.1.2Sjmcneill    
4421.1.1.2Sjmcneill    Refactor ParseCmdline and apps/Alloc+FreePages to factorize
4431.1.1.2Sjmcneill    boilerplate and move the new parser to the main API.
4441.1.1.2Sjmcneill    
4451.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
4461.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
4471.1.1.2Sjmcneill
4481.1.1.2Sjmcneillcommit ff7ec964f2c0de0cfc4b52cfdd356003450f28bf
4491.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
4501.1.1.2SjmcneillDate:   Wed Jul 30 15:05:28 2014 -0400
4511.1.1.2Sjmcneill
4521.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
4531.1.1.2Sjmcneill    Date: Mon, 28 Jul 2014 21:00:52 -0700
4541.1.1.2Sjmcneill    Subject: [PATCH 2/3] Avoid buffer overflow while parsing the cmdline args
4551.1.1.2Sjmcneill    
4561.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
4571.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
4581.1.1.2Sjmcneill
4591.1.1.2Sjmcneillcommit 8d86ee202a9bb553375f56ae1d2944818112b68b
4601.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
4611.1.1.2SjmcneillDate:   Wed Jul 30 15:04:44 2014 -0400
4621.1.1.2Sjmcneill
4631.1.1.2Sjmcneill    From: David Decotigny <decot@googlers.com>
4641.1.1.2Sjmcneill    Date: Mon, 28 Jul 2014 21:01:35 -0700
4651.1.1.2Sjmcneill    Subject: [PATCH 1/3] Fix cmdline parser
4661.1.1.2Sjmcneill    
4671.1.1.2Sjmcneill    The cmdline parser would not return the correct number of args, would
4681.1.1.2Sjmcneill    allocate one too many. Also make it clear from the declaration that we
4691.1.1.2Sjmcneill    expect a suitably lare argv.
4701.1.1.2Sjmcneill    
4711.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
4721.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
4731.1.1.2Sjmcneill
4741.1.1.2Sjmcneillcommit 1ec094bfaf46a610a740dadc0150bf457dd72345
4751.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
4761.1.1.2SjmcneillDate:   Wed Jul 23 09:54:25 2014 -0400
4771.1.1.2Sjmcneill
4781.1.1.2Sjmcneill    From: Julian Klode <julian.klode@gmail.com>
4791.1.1.2Sjmcneill    Date: Mon, 21 Jul 2014 14:26:23 -0400
4801.1.1.2Sjmcneill    Subject: [PATCH] inc/efistdarg.h: Use gcc builtins instead of stdarg.h or broken stubs
4811.1.1.2Sjmcneill    
4821.1.1.2Sjmcneill    We cannot use stdarg.h, as this breaks applications compiling
4831.1.1.2Sjmcneill    with -nostdinc because those will not find the header.
4841.1.1.2Sjmcneill    We also cannot use the stubs, as they just produce broken code,
4851.1.1.2Sjmcneill    as seen in the gummiboot 45-1 Debian release.
4861.1.1.2Sjmcneill    
4871.1.1.2Sjmcneill    Signed-off-by: Julian Klode <julian.klode@gmail.com>
4881.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
4891.1.1.2Sjmcneill
4901.1.1.2Sjmcneillcommit 6caab22f23434f41f42cfe7591d9a7ae66de9f0a
4911.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
4921.1.1.2SjmcneillDate:   Thu Jun 19 10:39:23 2014 -0400
4931.1.1.2Sjmcneill
4941.1.1.2Sjmcneill    From: Laszlo Ersek <lersek@redhat.com>
4951.1.1.2Sjmcneill    Date: Mon, 2 Jun 2014 23:26:48 +0200
4961.1.1.2Sjmcneill    Subject: [PATCH] always observe EFIAPI calling convention when calling
4971.1.1.2Sjmcneill     STO.SetAttribute
4981.1.1.2Sjmcneill    
4991.1.1.2Sjmcneill    We have to consider the following cases wrt. the PRINT_STATE.Output and
5001.1.1.2Sjmcneill    PRINT_STATE.SetAttr EFIAPI function pointers, especially when building for
5011.1.1.2Sjmcneill    x86_64 with gcc:
5021.1.1.2Sjmcneill    
5031.1.1.2Sjmcneill    (1) The compiler is new enough, and EFIAPI actually ensures the Microsoft
5041.1.1.2Sjmcneill        calling convention. In this case everything happens to work fine even
5051.1.1.2Sjmcneill        if we forget uefi_call_wrapper(), because the wrapper would expand to
5061.1.1.2Sjmcneill        a normal C function call anyway.
5071.1.1.2Sjmcneill    
5081.1.1.2Sjmcneill    (2) Otherwise (ie. gcc is old), EFIAPI expands to nothing, and we must
5091.1.1.2Sjmcneill        take into account the called function's origin:
5101.1.1.2Sjmcneill    
5111.1.1.2Sjmcneill      (2a) If the callee that is declared EFIAPI is *defined* inside gnu-efi,
5121.1.1.2Sjmcneill           then EFIAPI means nothing for the callee too, so caller and callee
5131.1.1.2Sjmcneill           only understand each other if the caller intentionally omits
5141.1.1.2Sjmcneill           uefi_call_wrapper().
5151.1.1.2Sjmcneill    
5161.1.1.2Sjmcneill      (2b) If the callee that is declared EFIAPI is defined by the platform
5171.1.1.2Sjmcneill           UEFI implementation, then the caller *must* use
5181.1.1.2Sjmcneill           uefi_call_wrapper().
5191.1.1.2Sjmcneill    
5201.1.1.2Sjmcneill    The PRINT_STATE.Output EFIAPI function pointer is dereferenced correctly:
5211.1.1.2Sjmcneill    the PFLUSH() distinguishes cases (2a) from (2b) by using IsLocalPrint().
5221.1.1.2Sjmcneill    
5231.1.1.2Sjmcneill    However use of the PRINT_STATE.SetAttr EFIAPI function pointer is not
5241.1.1.2Sjmcneill    always correct:
5251.1.1.2Sjmcneill    
5261.1.1.2Sjmcneill    - The PSETATTR() helper function always relies on the wrapper (case (2b)).
5271.1.1.2Sjmcneill      This is correct, because PRINT_STATE.SetAttr always points to a
5281.1.1.2Sjmcneill      platform-provided function.
5291.1.1.2Sjmcneill    
5301.1.1.2Sjmcneill    - The DbgPrint() function contains two incorrect calls: they mistakenly
5311.1.1.2Sjmcneill      assume case (2a) (or case (1)), even though the pointer always points to
5321.1.1.2Sjmcneill      a platform function, implying (2b). (The error is masked in case (1).)
5331.1.1.2Sjmcneill      Fix them.
5341.1.1.2Sjmcneill    
5351.1.1.2Sjmcneill    Signed-off-by: Laszlo Ersek <lersek@redhat.com>
5361.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
5371.1.1.2Sjmcneill
5381.1.1.2Sjmcneillcommit ecfd1ded9a799c3a572d4eb7fbb52582fe4d3390
5391.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
5401.1.1.2SjmcneillDate:   Tue Jun 10 12:59:09 2014 -0400
5411.1.1.2Sjmcneill
5421.1.1.2Sjmcneill    Add VPoolPrint Function
5431.1.1.2Sjmcneill    
5441.1.1.2Sjmcneill    Equivalent to PoolPrint but using a va_list parameter
5451.1.1.2Sjmcneill    
5461.1.1.2Sjmcneill    Signed-off-by: Sylvain Chouleur <sylvain.chouleur@intel.com>
5471.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
5481.1.1.2Sjmcneill
5491.1.1.2Sjmcneillcommit f16d93f3b9e314336a387a3885c7fd2f176c41d3
5501.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
5511.1.1.2SjmcneillDate:   Fri May 16 11:33:51 2014 -0400
5521.1.1.2Sjmcneill
5531.1.1.2Sjmcneill    Revert "The prototype of DbgPrint() is incorrect, at the end of "inc/efidebug.h"."
5541.1.1.2Sjmcneill    A problem was found compiling on GCC 4.8.
5551.1.1.2Sjmcneill    
5561.1.1.2Sjmcneill    This reverts commit 644898eabc06c8efaa3aa54f84cdd468960a2f6c.
5571.1.1.2Sjmcneill
5581.1.1.2Sjmcneillcommit 644898eabc06c8efaa3aa54f84cdd468960a2f6c
5591.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
5601.1.1.2SjmcneillDate:   Wed May 14 09:09:47 2014 -0400
5611.1.1.2Sjmcneill
5621.1.1.2Sjmcneill    The prototype of DbgPrint() is incorrect, at the end of "inc/efidebug.h".
5631.1.1.2Sjmcneill    Consequently, when your program calls DbgPrint() via the DEBUG() macro,
5641.1.1.2Sjmcneill    it fails to set up the stack correctly (it does not pass the arguments
5651.1.1.2Sjmcneill    through the ellipsis (...) according to the EFIAPI calling convention).
5661.1.1.2Sjmcneill    However, va_start() inside DbgPrint() *assumes* that stack.
5671.1.1.2Sjmcneill    
5681.1.1.2Sjmcneill    Signed-off-by: Laszlo Ersek <lersek@redhat.com>
5691.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
5701.1.1.2Sjmcneill
5711.1.1.2Sjmcneillcommit 8921ba2fc5f6163bdad3b5902c5d9d638415dde0
5721.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
5731.1.1.2SjmcneillDate:   Mon Apr 14 18:49:23 2014 -0400
5741.1.1.2Sjmcneill
5751.1.1.2Sjmcneill    Cleaned up compile warnings.
5761.1.1.2Sjmcneill    
5771.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
5781.1.1.2Sjmcneill
5791.1.1.2Sjmcneillcommit 42cca551dbf1c0be9e02e8d3d3c417ce35749638
5801.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
5811.1.1.2SjmcneillDate:   Mon Apr 14 14:04:11 2014 -0400
5821.1.1.2Sjmcneill
5831.1.1.2Sjmcneill    Module lib/ParseCmdLine.c has errors, it incorrectly mixes "char" and "CHAR16"
5841.1.1.2Sjmcneill    and uses a pointer to argv[] like it's argv[]. The compiler only issues
5851.1.1.2Sjmcneill    warnings though. Here is a patch to remove compiler warnings and make the
5861.1.1.2Sjmcneill    code behave.
5871.1.1.2Sjmcneill    
5881.1.1.2Sjmcneill    Signed-off-by: Bernard Burette <bub75@users.sf.net>
5891.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
5901.1.1.2Sjmcneill
5911.1.1.2Sjmcneillcommit 4e8460f1aedd2724de876be5b154eb5752bfada5
5921.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
5931.1.1.2SjmcneillDate:   Mon Apr 14 13:53:03 2014 -0400
5941.1.1.2Sjmcneill
5951.1.1.2Sjmcneill    Here is a very small patch to remove a compiler warning when processing lib/smbios.c.
5961.1.1.2Sjmcneill    
5971.1.1.2Sjmcneill    Signed-off-by: Bernard Burette <bub75@users.sf.net>
5981.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
5991.1.1.2Sjmcneill
6001.1.1.2Sjmcneillcommit 6a0875ca2fcb67e7d1a1e2d15f3bcc645329dc75
6011.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
6021.1.1.2SjmcneillDate:   Mon Apr 14 13:45:16 2014 -0400
6031.1.1.2Sjmcneill
6041.1.1.2Sjmcneill    Here is a very small patch to remove compiler warning in function
6051.1.1.2Sjmcneill    "LibLocateHandleByDiskSignature()" because the "Start" variable is
6061.1.1.2Sjmcneill    give a value which is not used.
6071.1.1.2Sjmcneill    
6081.1.1.2Sjmcneill    Signed-off-by: Bernard Burette <bub75@users.sf.net>
6091.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6101.1.1.2Sjmcneill
6111.1.1.2Sjmcneillcommit d5f35dfb8008ba65bcc641559accd9bc13386ef9
6121.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
6131.1.1.2SjmcneillDate:   Mon Apr 14 13:40:29 2014 -0400
6141.1.1.2Sjmcneill
6151.1.1.2Sjmcneill    Here is a very small patch to remove *~ files in include diretory.
6161.1.1.2Sjmcneill    
6171.1.1.2Sjmcneill    Signed-off-by: Bernard Burette <bub75@users.sf.net>
6181.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6191.1.1.2Sjmcneill
6201.1.1.2Sjmcneillcommit 1a04669a7bb022984c9b54a0f73d7d67a2540fb7
6211.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
6221.1.1.2SjmcneillDate:   Mon Apr 14 12:45:57 2014 -0400
6231.1.1.2Sjmcneill
6241.1.1.2Sjmcneill    Here is a patch for "DevicePathToStr()" to display device path according to UEFI 2 specification.
6251.1.1.2Sjmcneill    The path is in the two files inc/efidevp.h and lib/dpath.c.
6261.1.1.2Sjmcneill    
6271.1.1.2Sjmcneill    It also add the Sata device path and removes the "/?" path for unknown device paths.
6281.1.1.2Sjmcneill    
6291.1.1.2Sjmcneill    Signed-off-by: Bernard Burette <bub75@users.sf.net>
6301.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6311.1.1.2Sjmcneill
6321.1.1.2Sjmcneillcommit 3c62e78556aea01e9798380cd46794c6ca09d4bd
6331.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
6341.1.1.2SjmcneillDate:   Tue Apr 1 10:26:44 2014 -0400
6351.1.1.2Sjmcneill
6361.1.1.2Sjmcneill       Removed GPL code setjmp_ia32.S, setjmp_ia64.S, setjmp_x86_64.S
6371.1.1.2Sjmcneill       Not used anymore.
6381.1.1.2Sjmcneill    
6391.1.1.2Sjmcneill       Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6401.1.1.2Sjmcneill
6411.1.1.2Sjmcneillcommit f9baa4f622cf34576d73e00d4a774a31f0f81fd7
6421.1.1.2SjmcneillAuthor: Nigel Croxon <nigel.croxon@hp.com>
6431.1.1.2SjmcneillDate:   Mon Mar 31 08:37:56 2014 -0400
6441.1.1.2Sjmcneill
6451.1.1.2Sjmcneill    Remove incumbent GPL 'debian' subdiretory.
6461.1.1.2Sjmcneill    Update ChangeLog
6471.1.1.2Sjmcneill    
6481.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6491.1.1.2Sjmcneill
6501.1.1.2Sjmcneill
6511.1.1.2SjmcneillChangelog format change from here and above to 'git log' style.
6521.1.1.2Sjmcneill
6531.1.1.2Sjmcneill2014-04-01 Nigel Croxon <nigel.croxon@hp.com>
6541.1.1.2Sjmcneill
6551.1.1.2Sjmcneill   Removed GPL code setjmp_ia32.S, setjmp_ia64.S, setjmp_x86_64.S
6561.1.1.2Sjmcneill   Not used anymore.
6571.1.1.2Sjmcneill
6581.1.1.2Sjmcneill   Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6591.1.1.2Sjmcneill
6601.1.1.2Sjmcneill2014-03-17 Nigel Croxon <nigel.croxon@hp.com>
6611.1.1.2Sjmcneill
6621.1.1.2Sjmcneill   Add support for the simple pointer and absolute pointer protocols
6631.1.1.2Sjmcneill       
6641.1.1.2Sjmcneill    Signed-off-by: John Cronin <johncronin@users.sf.net>
6651.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6661.1.1.2Sjmcneill
6671.1.1.2Sjmcneill2014-03-14 Nigel Croxon <nigel.croxon@hp.com>
6681.1.1.2Sjmcneill
6691.1.1.2Sjmcneill    Trying to recurse into subdirectories of object files may lead
6701.1.1.2Sjmcneill    to an error if the directory doesn't exist. Even when cleaning.
6711.1.1.2Sjmcneill	    
6721.1.1.2Sjmcneill    Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com>
6731.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6741.1.1.2Sjmcneill
6751.1.1.2Sjmcneill2014-03-14 Nigel Croxon <nigel.croxon@hp.com>
6761.1.1.2Sjmcneill
6771.1.1.2Sjmcneill    Make install used to copy files unconditionnally to their
6781.1.1.2Sjmcneill    destination. However, if the destination is used by another
6791.1.1.2Sjmcneill    Makefile, it will always see modified files. "install" target
6801.1.1.2Sjmcneill    now only updates the files when they need to.
6811.1.1.2Sjmcneill
6821.1.1.2Sjmcneill    Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com>
6831.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6841.1.1.2Sjmcneill
6851.1.1.2Sjmcneill2014-02-13 Nigel Croxon <nigel.croxon@hp.com>
6861.1.1.2Sjmcneill
6871.1.1.2Sjmcneill    Patch GNU-EFI to remove the ELILO code
6881.1.1.2Sjmcneill        
6891.1.1.2Sjmcneill    Signed-off-by: Jerry Hoemann <jerry.hoemann@hp.com>
6901.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
6911.1.1.2Sjmcneill
6921.1.1.2Sjmcneill2014-02-13 Nigel Croxon <nigel.croxon@hp.com>
6931.1.1.2Sjmcneill
6941.1.1.2Sjmcneill    Initialize Status before calling GrowBuffer()
6951.1.1.2Sjmcneill    Status must be initialized before calling GrowBuffer() as it may
6961.1.1.2Sjmcneill    otherwise be uninitialized or set to EFI_BUFFER_TOO_SMALL by
6971.1.1.2Sjmcneill    other functions.
6981.1.1.2Sjmcneill
6991.1.1.2Sjmcneill    Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
7001.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7011.1.1.2Sjmcneill
7021.1.1.2Sjmcneill2014-01-23 Nigel Croxon <nigel.croxon@hp.com>
7031.1.1.2Sjmcneill
7041.1.1.2Sjmcneill    These changes allow manually overridden SRCDIR (current source
7051.1.1.2Sjmcneill    directory) and TOPDIR (top of source tree) to separate the
7061.1.1.2Sjmcneill    build directory from the source tree.
7071.1.1.2Sjmcneill	        
7081.1.1.2Sjmcneill    Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
7091.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7101.1.1.2Sjmcneill
7111.1.1.2Sjmcneill2014-01-16 Nigel Croxon <nigel.croxon@hp.com>
7121.1.1.2Sjmcneill    compilation: fix uninitialized variables warning
7131.1.1.2Sjmcneill        
7141.1.1.2Sjmcneill    Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
7151.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7161.1.1.2Sjmcneill
7171.1.1.2Sjmcneill2014-01-13 Nigel Croxon <nigel.croxon@hp.com>
7181.1.1.2Sjmcneill   Implement VSPrint function, prints a formatted unicode string to a buffer.
7191.1.1.2Sjmcneill       
7201.1.1.2Sjmcneill    Signed-off-by: Jeremy Compostella <jeremy.compostella@gmail.com>
7211.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7221.1.1.2Sjmcneill
7231.1.1.2Sjmcneill2014-01-10 Nigel Croxon <nigel.croxon@hp.com>
7241.1.1.2Sjmcneill    Created lib/argify.c and inc/argify.h containing the function argify.
7251.1.1.2Sjmcneill    It contains verbatim copy of the comment at beginning of file from
7261.1.1.2Sjmcneill    elilo.
7271.1.1.2Sjmcneill    There was no COPYING file in the elilo source that the comment refers to.
7281.1.1.2Sjmcneill
7291.1.1.2Sjmcneill    Signed-off-by: Jerry Hoemann <jerry.hoemann@hp.com>
7301.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7311.1.1.2Sjmcneill
7321.1.1.2Sjmcneill2014-01-08 Nigel Croxon <nigel.croxon@hp.com>
7331.1.1.2Sjmcneill    The information needed is not really the host architecture as given by
7341.1.1.2Sjmcneill    the kernel arch. The information actually needed is the default target
7351.1.1.2Sjmcneill    of gcc.
7361.1.1.2Sjmcneill	        
7371.1.1.2Sjmcneill    Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com>
7381.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7391.1.1.2Sjmcneill
7401.1.1.2Sjmcneill2013-10-11 Nigel Croxon <nigel.croxon@hp.com>
7411.1.1.2Sjmcneill    Added support for SetVariable to store volatile variable,
7421.1.1.2Sjmcneill    and SetNVVariable to store non volatile variable.
7431.1.1.2Sjmcneill	    
7441.1.1.2Sjmcneill    Signed-off-by: Sylvain Chouleur <sylvain.chouleur@gmail.com>
7451.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7461.1.1.2Sjmcneill
7471.1.1.2Sjmcneill2013-10-07 Nigel Croxon <nigel.croxon@hp.com>
7481.1.1.2Sjmcneill
7491.1.1.2Sjmcneill    Atoi needs to have consistent declaration/definition.
7501.1.1.2Sjmcneill    
7511.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7521.1.1.2Sjmcneill
7531.1.1.2Sjmcneill2013-10-07 Nigel Croxon <nigel.croxon@hp.com>
7541.1.1.2Sjmcneill    if you have a function that takes const arguments and then
7551.1.1.2Sjmcneill    e.g. tries to copy StrCmp, gcc will give you warnings about those
7561.1.1.2Sjmcneill    calls, and the warnings are right.  These clutter up other things
7571.1.1.2Sjmcneill    you might miss that you should be more concered about.
7581.1.1.2Sjmcneill
7591.1.1.2Sjmcneill    You could work around it through vigorous typecasting
7601.1.1.2Sjmcneill    to non-const types, but why should you have to? All of these
7611.1.1.2Sjmcneill    functions are regorously defined as not changing their input
7621.1.1.2Sjmcneill    - it is const, and should be marked as such.
7631.1.1.2Sjmcneill
7641.1.1.2Sjmcneill    Signed-off-by: Peter Jones <pjones@redhat.com>
7651.1.1.2Sjmcneill
7661.1.1.2Sjmcneill2013-10-02 Nigel Croxon <nigel.croxon@hp.com>
7671.1.1.2Sjmcneill
7681.1.1.2Sjmcneill    Added two simple applications to allocate/free memory at EFI.
7691.1.1.2Sjmcneill    Used to test/find memory fragmentation issues linux.
7701.1.1.2Sjmcneill	    
7711.1.1.2Sjmcneill    Signed-off-by: Jerry Hoemann <jerry.hoemann@hp.com>
7721.1.1.2Sjmcneill    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
7731.1.1.2Sjmcneill
7741.1.1.2Sjmcneill2013-06-25 Nigel Croxon <nigel.croxon@hp.com>
7751.1.1.2Sjmcneill    Sample boot service driver.
7761.1.1.2Sjmcneill        
7771.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
7781.1.1.2Sjmcneill
7791.1.1.2Sjmcneill2013-06-25 Nigel Croxon <nigel.croxon@hp.com>
7801.1.1.2SjmcneillDate:   Tue Jun 25 08:47:03 2013 -0400
7811.1.1.2Sjmcneill
7821.1.1.2Sjmcneill    Be more pedantic when linking, don't allow duplicate symbols,
7831.1.1.2Sjmcneill    abort upon first error. Also make sure linker script comes 
7841.1.1.2Sjmcneill    last for apps.
7851.1.1.2Sjmcneill
7861.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
7871.1.1.2Sjmcneill
7881.1.1.2Sjmcneill2013-06-25 Nigel Croxon <nigel.croxon@hp.com>
7891.1.1.2Sjmcneill    Fix compilation on x86_64 without HAVE_USE_MS_ABI
7901.1.1.2Sjmcneill    make -C apps would fail on tcc.c because uefi_call_wrapper()
7911.1.1.2Sjmcneill    doesn't deal correctly with efi_callO-type invocation.
7921.1.1.2Sjmcneill
7931.1.1.2Sjmcneill    Signed-off-by: David Decotigny <decot@googlers.com>
7941.1.1.2Sjmcneill
7951.1.1.2Sjmcneill2013-06-12 Nigel Croxon <nigel.croxon@hp.com>
7961.1.1.2Sjmcneill    Fix typo when disabling mno-mmx
7971.1.1.2Sjmcneill        
7981.1.1.2Sjmcneill    Signed-Off-By: Nigel Croxon <nigel.croxon@hp.com>
7991.1.1.2Sjmcneill
8001.1Sjakllsch2013-06-12 Nigel Croxon <nigel.croxon@hp.com>
8011.1Sjakllsch    Disable MMX and SSE
8021.1Sjakllsch    
8031.1Sjakllsch    GCC 4.8.0 adds some optimizations that will use movups/movaps (and use
8041.1Sjakllsch    %xmm* registers) when they're faster, and of course that won't work at
8051.1Sjakllsch    all since UEFI firmwares aren't guaranteed to initialize the mmx/sse
8061.1Sjakllsch    instructions.
8071.1Sjakllsch    
8081.1Sjakllsch    This will be even more annoying, since most UEFI firmwares don't
8091.1Sjakllsch    initialize the #DE or #UD trap handlers, and your backtrace will be a
8101.1Sjakllsch    random path through uninitialized memory, occasionally including
8111.1Sjakllsch    whatever address the IDT has for #UD, but also addresses like "0x4" and
8121.1Sjakllsch    "0x507" that you don't normally expect to see in your call path.
8131.1Sjakllsch    
8141.1Sjakllsch    Signed-off-by: Peter Jones <pjones@redhat.com>
8151.1Sjakllsch
8161.1Sjakllsch    Author: Nigel Croxon <nigel.croxon@hp.com>
8171.1Sjakllsch    Date:   Wed Jun 12 10:29:40 2013 -0400
8181.1Sjakllsch
8191.1Sjakllsch    bug in make 3.82 expand to odd values
8201.1Sjakllsch    
8211.1Sjakllsch    Some Makefiles tickle a bug in make 3.82 that cause libefi.a
8221.1Sjakllsch    and libgnuefi.a dependencies to expand to the odd values:
8231.1Sjakllsch    
8241.1Sjakllsch    libefi.a: boxdraw.o) smbios.o) ...
8251.1Sjakllsch    libgnuefi.a(reloc_x86_64.o:
8261.1Sjakllsch    
8271.1Sjakllsch    The patch replaces libgnuefi.a($(OBJS)) & libefi.a($(OBJS))
8281.1Sjakllsch    with an equivalent expansion that should work with any make
8291.1Sjakllsch    that supports $(patsubst).
8301.1Sjakllsch
8311.1Sjakllsch    Author: Nigel Croxon <nigel.croxon@hp.com>
8321.1Sjakllsch    Date:   Wed Jun 12 09:53:01 2013 -0400
8331.1Sjakllsch
8341.1Sjakllsch    support .text.* sections on x86_64
8351.1Sjakllsch    
8361.1Sjakllsch    Group them in .text. Also add vague linkage sections in .text.
8371.1Sjakllsch    
8381.1Sjakllsch    Signed-off-by: David Decotigny <decot@googlers.com>
8391.1Sjakllsch
8401.1Sjakllsch    Author: Nigel Croxon <nigel.croxon@hp.com>
8411.1Sjakllsch    Date:   Wed Jun 12 09:51:36 2013 -0400
8421.1Sjakllsch
8431.1Sjakllsch    cleanup and fix Make.defaults
8441.1Sjakllsch    
8451.1Sjakllsch    Reorder variables in Make.defaults so that they are grouped by
8461.1Sjakllsch    functions. Also fixed ifeq (x,y) to have required syntax and make it
8471.1Sjakllsch    work for ARCH amd64->x86_64 renaming on BSD. Also provides top-level
8481.1Sjakllsch    Makefile with a "mkvars" target that displays effective variables.
8491.1Sjakllsch    
8501.1Sjakllsch    Signed-off-by: David Decotigny <decot@googlers.com>
8511.1Sjakllsch
8521.1Sjakllsch    Author: Nigel Croxon <nigel.croxon@hp.com>
8531.1Sjakllsch    Date:   Wed Jun 12 09:47:16 2013 -0400
8541.1Sjakllsch
8551.1Sjakllsch    automatically determine number of uefi_call_wrapper() args on x86_64
8561.1Sjakllsch    
8571.1Sjakllsch    Instead of asking developers to explicitly pass the number of
8581.1Sjakllsch    parameters to the functions that get called, we determine them
8591.1Sjakllsch    automatically at preprocessing time. This should result in more
8601.1Sjakllsch    robust code.
8611.1Sjakllsch    
8621.1Sjakllsch    Argument va_num is now ignored in x86_64 code, both with and
8631.1Sjakllsch    without HAVE_USE_MS_ABI.
8641.1Sjakllsch    
8651.1Sjakllsch    Credits to the macro magic given in the comments.
8661.1Sjakllsch    
8671.1Sjakllsch    Signed-off-by: David Decotigny <decot@googlers.com>
8681.1Sjakllsch
8691.1Sjakllsch    Author: Nigel Croxon <nigel.croxon@hp.com>
8701.1Sjakllsch    Date:   Wed Jun 12 09:38:10 2013 -0400
8711.1Sjakllsch
8721.1Sjakllsch    fix parameter-passing corruption on x86_64 for >= 5 args
8731.1Sjakllsch    
8741.1Sjakllsch    On x86_64 without HAVE_USE_MS_ABI support, uefi_call_wrapper() is a
8751.1Sjakllsch    variadic function. Parameters >=5 are copied to the stack and, when
8761.1Sjakllsch    passed small immediate values (and possibly other parameters), gcc
8771.1Sjakllsch    would emit a movl instruction before calling uefi_call_wrapper(). As a
8781.1Sjakllsch    result, only the lower 32b of these stack values are significant, the
8791.1Sjakllsch    upper 32b potentially contain garbage. Considering that
8801.1Sjakllsch    uefi_call_wrapper() assumes these arguments are clean 64b values
8811.1Sjakllsch    before calling the efi_callX() trampolines, the latter may be passed
8821.1Sjakllsch    garbage. This makes calling functions like
8831.1Sjakllsch    EFI_PCI_IO_PROTOCOL.Mem.Read()/Write() or BS->OpenProtocol() quite
8841.1Sjakllsch    unreliable.
8851.1Sjakllsch    
8861.1Sjakllsch    This patch fixes this by turning uefi_call_wrapper() into a macro that
8871.1Sjakllsch    allows to expose the efi_callX() trampoline signatures to the callers,
8881.1Sjakllsch    so that gcc can know upfront that it has to pass all arguments to
8891.1Sjakllsch    efi_callX() as clean 64b values (eg. movq for immediates). The
8901.1Sjakllsch    _cast64_efi_callX macros are just here to avoid a gcc warning, they do
8911.1Sjakllsch    nothing otherwise.
8921.1Sjakllsch    
8931.1Sjakllsch    Signed-off-by: David Decotigny <decot@googlers.com>
8941.1Sjakllsch
8951.1Sjakllsch    Author: noxorc <nigel.croxon@hp.com>
8961.1Sjakllsch    Date:   Wed May 15 15:26:16 2013 -0400
8971.1Sjakllsch
8981.1Sjakllsch    - Removes the ElfW() macro usage from reloc_ia32.c and reloc_x86_64.c. These
8991.1Sjakllsch    macros only exist in link.h on Linux. On FreeBSD, the equivalent macro is
9001.1Sjakllsch    __ElfN(). But the macro usage is redundant. You're only going to compile the
9011.1Sjakllsch    ia32 file for IA32 binaries and the x86_64 file for X64 binaries. If you had
9021.1Sjakllsch    just one file built for both cases, then using the macro might make more
9031.1Sjakllsch    sense.
9041.1Sjakllsch    
9051.1Sjakllsch    - Removes the "#define foo_t efi_foo_t" macros from reloc_ia32.c and
9061.1Sjakllsch    reloc_x86_64.c.
9071.1Sjakllsch    
9081.1Sjakllsch    - Modifies inc/x86_64/efibind.h and inc/ia32/efibind.h to use the new
9091.1Sjakllsch    definitions for uint64_t, int64_t and int8_t. The 64-bit types are now defined
9101.1Sjakllsch    as:
9111.1Sjakllsch    
9121.1Sjakllsch            typedef int __attribute__((__mode__(__DI__)))           int64_t;
9131.1Sjakllsch            typedef unsigned int __attribute__((__mode__(__DI__)))  uint64_t;
9141.1Sjakllsch    
9151.1Sjakllsch    This removes the conflict between the host types dragged in by elf.h and the
9161.1Sjakllsch    type definitions in efibind.h that made the #define foo_t efi_foo_t" hack
9171.1Sjakllsch    necessary. Also, int8_t is now defined as signed char instead of just char
9181.1Sjakllsch    (assuming char == signed char is apparently not good enough).
9191.1Sjakllsch    
9201.1Sjakllsch    - Also modifies these files to use stdint.h instead of stdint-gcc.h. It's
9211.1Sjakllsch    unclear if this is completely correct, but stdint-gcc.h is not present with
9221.1Sjakllsch    all GCC installs, and if you use -std=c99 or later you will force this case to
9231.1Sjakllsch    be hit. This also can break clang, which doesn't have a stdint-gcc.h at all.
9241.1Sjakllsch    
9251.1Sjakllsch    - Removes the #include of <link.h> from reloc_ia32.c and reloc_x86_64.c (since
9261.1Sjakllsch    with the previous changes it's not needed anymore).
9271.1Sjakllsch    
9281.1Sjakllsch    - Places the #include of <elf.h> after #include <efi>/#include <efilib.h> so
9291.1Sjakllsch    that we know the types will always be defined properly, in case you build on a
9301.1Sjakllsch    system where <elf.h> doesn't automatically pull in the right header files to
9311.1Sjakllsch    define all the needed types. (This actually happens on VxWorks. It's harmless
9321.1Sjakllsch    elsewhere. If you don't care about VxWorks, you can leave this out.)
9331.1Sjakllsch    
9341.1Sjakllsch    - Modifies setjmp_ia32.S and setjmp_x86_64.S so to change "function" to
9351.1Sjakllsch    @function. The clang compiler doesn't like the former. Clang and GCC both like
9361.1Sjakllsch    the latter.
9371.1Sjakllsch    
9381.1Sjakllsch    - Modifles Make.defaults so that if ARCH is detected as "amd64," it's changed
9391.1Sjakllsch    to "x86_64." It happens that uname -m on 64-bit FreeBSD reports the former
9401.1Sjakllsch    rather than the latter, which breaks the build. This may also be the case on
9411.1Sjakllsch    some other OSes. There's a way to force uname(1) to return x86_64 as the
9421.1Sjakllsch    machine type, but this way is a little friendlier.
9431.1Sjakllsch    
9441.1Sjakllsch    - Creates gnuefi/elf_ia32_fbsd_efi.lds which specifies the object file type as
9451.1Sjakllsch    elf-ia32-freebsd. This is required for building on FreeBSD/i386, not just
9461.1Sjakllsch    FreeBSD/amd64.
9471.1Sjakllsch    
9481.1Sjakllsch    - Modifies apps/Makefile to always use
9491.1Sjakllsch    $(TOPDIR)/gnuefi/elf_$(ARCH)_fbsd_efi.lds when building on either 32-bit or
9501.1Sjakllsch    64-bit FreeBSD instead of just for the x86_64 case.
9511.1Sjakllsch    
9521.1Sjakllsch    - Changed LDFLAGS in Make.defaults to include --no-undefined. This will cause
9531.1Sjakllsch    linking to fail if there are any unsatisfied symbols when creating foo.so
9541.1Sjakllsch    during any of the app builds, as opposed to just silently succeeding and
9551.1Sjakllsch    producing an unusable binary.
9561.1Sjakllsch    
9571.1Sjakllsch    - Changed CFLAGS to include -ffreestanding -fno-stack-protector -fno-stack-
9581.1Sjakllsch    check. This prevents clang from inserting a call to memset() when compiling
9591.1Sjakllsch    the RtZeroMem() and RtSetMem() routines in lib/runtime/efirtlib.c and guards
9601.1Sjakllsch    against the native compiler in some Linux distros from adding in stack
9611.1Sjakllsch    checking code which relies on libc help that isn't present in the EFI runtime
9621.1Sjakllsch    environment.
9631.1Sjakllsch    
9641.1Sjakllsch    This does the following:
9651.1Sjakllsch    
9661.1Sjakllsch    - Cleans up the ia32 and x86-64 relocation code a bit (tries to break the
9671.1Sjakllsch    dependency between the host ELF headers and the EFI runtime environment)
9681.1Sjakllsch    - Avoids the dependency on stdint-gcc.h which may not always be available
9691.1Sjakllsch    - Allows GNU EFI to build out of the box on both FreeBSD/i386 and
9701.1Sjakllsch    FreeBSD/amd64
9711.1Sjakllsch    - Allows GNU EFI to build out of the box with either GCC or clang on
9721.1Sjakllsch    FreeBSD/i386 and FreeBSD/amd64 9.0 and later.
9731.1Sjakllsch    - Makes things a little easier to port to VxWorks
9741.1Sjakllsch    - Avoids creating un-runable binaries with unresolved symbol definitions
9751.1Sjakllsch    (which can be very confusing to debug)
9761.1Sjakllsch
9771.1Sjakllsch    Author: noxorc <nigel.croxon@hp.com>
9781.1Sjakllsch    Date:   Wed May 8 16:29:45 2013 -0400
9791.1Sjakllsch
9801.1Sjakllsch    Add the definitions for TCP, UDP and IP, for both IPv4 and IPv6.
9811.1Sjakllsch
9821.1Sjakllsch
9831.1Sjakllsch2013-05-02 Nigel Croxon <nigel.croxon@hp.com>
9841.1Sjakllsch	* Chnage from Matt Fleming <matt.fleming@intel.com>
9851.1Sjakllsch	  - Preparation for adding the networking protocol definitions.
9861.1Sjakllsch	    Add the service binding protocol.
9871.1Sjakllsch
9881.1Sjakllsch2013-02-21 Nigel Croxon <nigel.croxon@hp.com>
9891.1Sjakllsch	* Change from Peter Jones <pjones@redhat.com>
9901.1Sjakllsch	  - Previously we were incorrectly passing 3 functions with
9911.1Sjakllsch            the System V ABI to UEFI functions as EFI ABI functions.
9921.1Sjakllsch            Mark them as EFIAPI so the compiler will (in our new
9931.1Sjakllsch            GNU_EFI_USE_MS_ABI world) use the correct ABI.
9941.1Sjakllsch          - These need to be EFIAPI functions because in some cases
9951.1Sjakllsch            they call ST->ConOut->OutputString(), which is an EFIAPI
9961.1Sjakllsch            function. (Which means that previously in cases that 
9971.1Sjakllsch            needed "cdecl", these didn't work right.)
9981.1Sjakllsch          - If the compiler version is new enough, and GNU_EFI_USE_MS_ABI
9991.1Sjakllsch            is defined, use the function attribute ms_abi on everything
10001.1Sjakllsch            defined with "EFIAPI".  Such calls will no longer go through
10011.1Sjakllsch            efi_call*, and as such will be properly type-checked.
10021.1Sjakllsch          - Honor PREFIX and LIBDIR correctly when passed in during the build.
10031.1Sjakllsch          - Add machine type defines for i386, arm/thumb, ia64, ebc, x86_64.
10041.1Sjakllsch          - __STDC_VERSION__ never actually gets defined unless there's a
10051.1Sjakllsch            --std=... line.  So we were accidentally defining lots of c99
10061.1Sjakllsch            types ourself. Since it's 2012, use --std=c11 where appropriate,
10071.1Sjakllsch            and if it's defined and we're using gcc, actually include gcc's
10081.1Sjakllsch            stdint definitions.
10091.1Sjakllsch          - New test application added: route80h. This is a test program
10101.1Sjakllsch            for PciIo.  It routes ioport 80h on ICH10 to PCI. This is also
10111.1Sjakllsch            useful on a very limited set of hardware to enable use of
10121.1Sjakllsch            a port 80h debug card.
10131.1Sjakllsch          - New test applcation added: modelist. This lists video modes
10141.1Sjakllsch            the GOP driver is showing us.
10151.1Sjakllsch	* Change from Finnbarr Murphy
10161.1Sjakllsch          - https://sourceforge.net/p/gnu-efi/feature-requests/2/
10171.1Sjakllsch            Please add the following status codes to <efierr.h>
10181.1Sjakllsch            EFI_INCOMPATIBLE_VERSION 25
10191.1Sjakllsch            EFI_SECURITY_VIOLATION 26 
10201.1Sjakllsch            EFI_CRC_ERROR 27 
10211.1Sjakllsch            EFI_END_OF_MEDIA 28 
10221.1Sjakllsch            EFI_END_OF_FILE 31 
10231.1Sjakllsch            EFI_INVALID_LANGUAGE 32 
10241.1Sjakllsch            EFI_COMPROMISED_DATA 33
10251.1Sjakllsch	* Change from SourceForge.net Bug report
10261.1Sjakllsch          - https://sourceforge.net/p/gnu-efi/bugs/5/
10271.1Sjakllsch            BufferSize is a UINT64 *. The file shipped with GNU EFI is from
10281.1Sjakllsch            1998 whereas the latest one is from 2004. I suspect Intel changed
10291.1Sjakllsch            the API in order handle 64-bit systems.
10301.1Sjakllsch        * Change from Felipe Contreras <felipe.contreras@gmail.com>
10311.1Sjakllsch          - The current code seems to screw the stack at certain points.
10321.1Sjakllsch            Multiple people have complained that gummiboot hangs right away,
10331.1Sjakllsch            which is in part the fault of gummiboot, but happens only
10341.1Sjakllsch            because the stack gets screwed. x86_64 EFI already aligns the
10351.1Sjakllsch            stack, so there's no need for so much code to find a proper
10361.1Sjakllsch            alignment, we always need to shift by 8 anyway.
10371.1Sjakllsch        * Change from A. Steinmetz
10381.1Sjakllsch          - https://sourceforge.net/p/gnu-efi/patches/1/
10391.1Sjakllsch            The patch prepares for elilo to support uefi pxe over ipv6
10401.1Sjakllsch            See uefi spec 2.3.1 errata c page 963 as reference.
10411.1Sjakllsch            Verfied on an ASUS Sabertooth X79 BIOS Rev. 2104 system which
10421.1Sjakllsch            is able to do an IPv6 UEFI PXE boot.
10431.1Sjakllsch	* Release 3.0t
10441.1Sjakllsch
10451.1Sjakllsch2012-09-21 Nigel Croxon <nigel.croxon@hp.com>
10461.1Sjakllsch	* Change from Peter Jones <pjones@redhat.com>
10471.1Sjakllsch	  - EFI Block I/O protocol versions 2 and 3 provide more information
10481.1Sjakllsch	    regarding physical disk layout, including alingment offset at the
10491.1Sjakllsch	    beginning of the disk ("LowestAlignedLba"), logical block size
10501.1Sjakllsch	    ("LogicalBlocksPerPhysicalBlock"), and optimal block transfer size
10511.1Sjakllsch	    ("OptimalTransferLengthGranularity").
10521.1Sjakllsch	* Release 3.0r
10531.1Sjakllsch
10541.1Sjakllsch2012-04-30 Nigel Croxon <nigel.croxon@hp.com>
10551.1Sjakllsch	* Change from Matt Fleming <matt.fleming@intel.com>
10561.1Sjakllsch	  -  The .reloc section is now 4096-byte boundary for x86_64.
10571.1Sjakllsch	     Without this patch the .reloc section will not adhere to
10581.1Sjakllsch	     the alignment value in the FileAlignment field (512 bytes by
10591.1Sjakllsch	     default) of the PE/COFF header. This results in a signed
10601.1Sjakllsch	     executable failing to boot in a secure boot environment.
10611.1Sjakllsch	* Release 3.0q
10621.1Sjakllsch
10631.1Sjakllsch2011-12-12 Nigel Croxon <nigel.croxon@hp.com>
10641.1Sjakllsch        * Changes from Fenghua Yu <fenghua.yu@intel.com>
10651.1Sjakllsch          - This fixes redefined types compilation failure for tcc.c on x86_64 machines.
10661.1Sjakllsch        * Release 3.0p
10671.1Sjakllsch
10681.1Sjakllsch2011-11-15 Nigel Croxon <nigel.croxon@hp.com>
10691.1Sjakllsch        * Changes from Darren Hart <dvhart@linux.intel.com>
10701.1Sjakllsch          - Conditionally assign toolchain binaries to allow overriding them.
10711.1Sjakllsch          - Force a dependency on lib for gnuefi.
10721.1Sjakllsch        * Release 3.0n
10731.1Sjakllsch
10741.1Sjakllsch2011-08-23 Nigel Croxon <nigel.croxon@hp.com>
10751.1Sjakllsch        * Changes from Peter Jones <pjones@redhat.com>
10761.1Sjakllsch          - Add guarantee 16-byte stack alignment on x86_64.
10771.1Sjakllsch          - Add routine to make callbacks work.
10781.1Sjakllsch          - Add apps/tcc.efi to test calling convention.
10791.1Sjakllsch        * Release 3.0m
10801.1Sjakllsch
10811.1Sjakllsch2011-07-22 Nigel Croxon <nigel.croxon@hp.com>
10821.1Sjakllsch	* Changed Makefiles from GPL to BSD.
10831.1Sjakllsch	* Changes from Peter Jones <pjones@redhat.com>
10841.1Sjakllsch	  - Add ifdefs for ia64 to mirror ia32 and x86-64 so that
10851.1Sjakllsch	    one can build with GCC.
10861.1Sjakllsch	  - Add headers for PciIo.
10871.1Sjakllsch	  - Add the UEFI 2.x bits for EFI_BOOT_SERVICES
10881.1Sjakllsch	  - Add an ignore for .note.GNU-stack section in X86-64 linker maps.
10891.1Sjakllsch        * Release 3.0l
10901.1Sjakllsch
10911.1Sjakllsch2011-04-07  Nigel Croxon <nigel.croxon@hp.com>
10921.1Sjakllsch        * Change license from GPL to BSD.
10931.1Sjakllsch        * Release 3.0j
10941.1Sjakllsch
10951.1Sjakllsch2009-09-12  Julien BLACHE <jb@jblache.org>
10961.1Sjakllsch	* Add support for FreeBSD.
10971.1Sjakllsch	* Release 3.0i
10981.1Sjakllsch
10991.1Sjakllsch2009-09-11  Julien BLACHE <jb@jblache.org>
11001.1Sjakllsch	* Fix elf_ia32_efi.lds linker script to be compatible with the new
11011.1Sjakllsch          linker behaviour. Patch from the RedHat bugzilla 492183.
11021.1Sjakllsch
11031.1Sjakllsch2009-06-18  Nigel Croxon <nigel.croxon@hp.com>
11041.1Sjakllsch        * Release 3.0h
11051.1Sjakllsch
11061.1Sjakllsch2008-11-06  Nigel Croxon <nigel.croxon@hp.com>
11071.1Sjakllsch        * Fix to not having any relocations at all. 
11081.1Sjakllsch
11091.1Sjakllsch2008-09-18  Nigel Croxon <nigel.croxon@hp.com>
11101.1Sjakllsch        * Use LIBDIR in makefiles
11111.1Sjakllsch        * Add setjmp/longjmp
11121.1Sjakllsch        * Fixes incorrect section attribute in crt0-efi-ia32.S
11131.1Sjakllsch        * Adds value EfiResetShutdown to enum EFI_RESET_TYPE
11141.1Sjakllsch        * Fixes a RAW warning in reloc_ia64.S
11151.1Sjakllsch        * Adds the USB HCI device path structure in the headers
11161.1Sjakllsch          patches were supplied by Peter Jones @ RedHat
11171.1Sjakllsch
11181.1Sjakllsch2008-02-22  Nigel Croxon <nigel.croxon@hp.com>
11191.1Sjakllsch	* Added '-mno-red-zone' to x68_64 compiles.
11201.1Sjakllsch	  Patch provided by Mats Andersson.
11211.1Sjakllsch
11221.1Sjakllsch2008-01-23  Nigel Croxon <nigel.croxon@hp.com>
11231.1Sjakllsch        * release 3.0e to support x86_64
11241.1Sjakllsch          EFI calling convention, the stack should be aligned in 16 bytes
11251.1Sjakllsch          to make it possible to use SSE2 in EFI boot services.
11261.1Sjakllsch          This patch fixes this issue. Patch provided by Huang Ying from Intel.
11271.1Sjakllsch
11281.1Sjakllsch2007-05-11 Nigel Croxon <nigel.croxon@hp.com>
11291.1Sjakllsch        * release 3.0d to support x86_64 from Chandramouli Narayanan
11301.1Sjakllsch          from Intel and based on 3.0c-1
11311.1Sjakllsch
11321.1Sjakllsch2006-03-21  Stephane Eranian <eranian@hpl.hp.com>
11331.1Sjakllsch	* merged patch to support gcc-4.1 submitted by
11341.1Sjakllsch	  Raymund Will from Novell/SuSE
11351.1Sjakllsch
11361.1Sjakllsch2006-03-20  Stephane Eranian <eranian@hpl.hp.com>
11371.1Sjakllsch	* updated ia-64 and ia-32 linker scripts to
11381.1Sjakllsch	  match latest gcc. The new gcc may put functions in
11391.1Sjakllsch	  .text* sections. patch submitted by H.J. Lu from Intel.
11401.1Sjakllsch
11411.1Sjakllsch2004-11-19  Stephane Eranian <eranian@hpl.hp.com>
11421.1Sjakllsch	* added patch to ignore .eh_frame section for IA-32. Patch
11431.1Sjakllsch	  submitted by Jim Wilson
11441.1Sjakllsch
11451.1Sjakllsch2004-09-23  Stephane Eranian <eranian@hpl.hp.com>
11461.1Sjakllsch	* added patch to discard unwind sections, newer toolchains
11471.1Sjakllsch	  complained about them. Patch submitted by Jesse Barnes from SGI.
11481.1Sjakllsch
11491.1Sjakllsch2003-09-29  Stephane Eranian <eranian@hpl.hp.com>
11501.1Sjakllsch	* updated elf_ia64_efi.lds to reflect new data sections 
11511.1Sjakllsch	  created by gcc-3.3. Patch provided by Andreas Schwab from Suse.
11521.1Sjakllsch
11531.1Sjakllsch2003-06-20  Stephane Eranian <eranian@hpl.hp.com>
11541.1Sjakllsch	* updated elf_ia64_efi.lds and elf_ia32_efi.lds to include
11551.1Sjakllsch	  new types data sections produced by recent version of gcc-3.x
11561.1Sjakllsch
11571.1Sjakllsch2002-02-22  Stephane Eranian <eranian@hpl.hp.com>
11581.1Sjakllsch	* release 3.0a
11591.1Sjakllsch	* modified both IA-64 and IA-32 loader scripts to add support for the
11601.1Sjakllsch	  new .rodata sections names (such as rodata.str2.8). Required
11611.1Sjakllsch	  for new versions of gcc3.x.
11621.1Sjakllsch
11631.1Sjakllsch2001-06-20  Stephane Eranian <eranian@hpl.hp.com>
11641.1Sjakllsch	* release 3.0
11651.1Sjakllsch	* split gnu-efi package in two different packages: the libary+include+crt and the bootloader.
11661.1Sjakllsch	* removed W2U() hack and related files to get from wide-char to unicode. 
11671.1Sjakllsch	* Use -fshort-wchar option for unicode.
11681.1Sjakllsch	* restructured Makefiles now install under INSTALLROOT.
11691.1Sjakllsch
11701.1Sjakllsch2001-04-06  Stephane Eranian <eranian@hpl.hp.com>
11711.1Sjakllsch
11721.1Sjakllsch	* incorporated patches from David and Michael Johnston at Intel
11731.1Sjakllsch	  to get the package to compile for IA-32 linux target.
11741.1Sjakllsch
11751.1Sjakllsch	* Fixed ELILO to compile for Ia-32 (does not execute yet, though):
11761.1Sjakllsch	  Makefile and start_kernel() function.
11771.1Sjakllsch
11781.1Sjakllsch2001-04-06  Andreas Schwab <schwab@suse.de>
11791.1Sjakllsch
11801.1Sjakllsch	* Fixed config.c  to
11811.1Sjakllsch	  get the timeout directive to do something. implemented the global
11821.1Sjakllsch	  root= directive.
11831.1Sjakllsch
11841.1Sjakllsch	* Fix the efi_main() to deal with the -C option properly
11851.1Sjakllsch
11861.1Sjakllsch2001-04-05  Stephane Eranian <eranian@hpl.hp.com>
11871.1Sjakllsch
11881.1Sjakllsch	* update efi library to latest EFI toolkit 1.02 as distributed
11891.1Sjakllsch	  by Intel. Fixed header + library files to compile with GCC
11901.1Sjakllsch
11911.1Sjakllsch	* merged ELI and LILO (as of gnu-efi-1.1) together, mostly
11921.1Sjakllsch	  taking the config file feature of ELI.
11931.1Sjakllsch
11941.1Sjakllsch	* renamed LILO to ELILO to make the distinction
11951.1Sjakllsch
11961.1Sjakllsch	* restructured code to make it easier to understand and maintain
11971.1Sjakllsch
11981.1Sjakllsch	* fixed FPSWA driver checking and loading: we try all possible
11991.1Sjakllsch	  files and let the driver itself figure out if it is the most
12001.1Sjakllsch	  recent.
12011.1Sjakllsch	* added support for compression (gzip) but keep support for plain
12021.1Sjakllsch	  ELF image. ELILO autodetects the format
12031.1Sjakllsch
12041.1Sjakllsch	* change the way the kernel is invoked. Now we call it in 
12051.1Sjakllsch	  physical memory mode. This breaks the dependency between the
12061.1Sjakllsch	  kernel code and the loader. No more lilo_start.c madness.
12071.1Sjakllsch
12081.1Sjakllsch	* changed the way the boot_params are passed. We don't use the 
12091.1Sjakllsch	  ZERO_PAGE_ADDR trick anymore. Instead we use EFI runtime memory.
12101.1Sjakllsch	  The address of the structure is passed to the kernel in r28
12111.1Sjakllsch	  by our convention.
12121.1Sjakllsch
12131.1Sjakllsch	* released as gnu-efi-2.0
12141.1Sjakllsch
12151.1Sjakllsch2001-04-03  David Mosberger  <davidm@hpl.hp.com>
12161.1Sjakllsch
12171.1Sjakllsch	* gnuefi/reloc_ia32.c (_relocate): Change return type from "void"
12181.1Sjakllsch	to "int".  Return error status if relocation fails for some
12191.1Sjakllsch	reason.
12201.1Sjakllsch
12211.1Sjakllsch	* gnuefi/elf_ia32_efi.lds: Drop unneeded ".rel.reloc" section.
12221.1Sjakllsch
12231.1Sjakllsch	* gnuefi/crt0-efi-ia32.S (_start): Exit if _relocate() returns with
12241.1Sjakllsch	non-zero exit status.
12251.1Sjakllsch
12261.1Sjakllsch	* inc/ia32/efibind.h [__GNUC__]: Force 8-byte alignment for 64-bit
12271.1Sjakllsch	types as that is what EFI appears to be expecting, despite the
12281.1Sjakllsch	"#pragma pack()" at the beginning of the file!
12291.1Sjakllsch
12301.1Sjakllsch2001-03-29  David Mosberger  <davidm@hpl.hp.com>
12311.1Sjakllsch
12321.1Sjakllsch	* gnuefi/reloc_ia32.c: Add a couple of defines to work around
12331.1Sjakllsch	libc/efilib collision on uint64_t et al.
12341.1Sjakllsch	(_relocate): Use ELF32_R_TYPE() instead of ELFW(R_TYPE)().
12351.1Sjakllsch
12361.1Sjakllsch	* gnuefi/crt0-efi-ia32.S (dummy): Add a dummy relocation entry.
12371.1Sjakllsch
12381.1Sjakllsch2001-03-29  David Mosberger  <davidm@hpl.hp.com>
12391.1Sjakllsch
12401.1Sjakllsch        * gnuefi/reloc_ia32.c: Add a couple of defines to work around
12411.1Sjakllsch        libc/efilib collision on uint64_t et al.
12421.1Sjakllsch        (_relocate): Use ELF32_R_TYPE() instead of ELFW(R_TYPE)().
12431.1Sjakllsch
12441.1Sjakllsch        * gnuefi/crt0-efi-ia32.S (dummy): Add a dummy relocation entry.
12451.1Sjakllsch
12461.1Sjakllsch2000-10-26  David Mosberger  <davidm@hpl.hp.com>
12471.1Sjakllsch 
12481.1Sjakllsch 	* gnuefi/elf_ia64_efi.lds: Mention .rela.sdata.
12491.1Sjakllsch 
12501.1Sjakllsch 	* Make.defaults (CFLAGS): Remove -nostdinc flags so we can pick
12511.1Sjakllsch 	up the C compiler's stdarg.h.
12521.1Sjakllsch 
12531.1Sjakllsch 	* inc/stdarg.h: Remove this file.  It's not correct for gcc (nor
12541.1Sjakllsch 	most other optimizing compilers).
12551.1Sjakllsch
12561.1Sjakllsch2000-10-10  Stephane Eranian <eranian@hpl.hp.com>
12571.1Sjakllsch
12581.1Sjakllsch	* cleaned up the error message and printing of those.
12591.1Sjakllsch	* added support to load the FPSWA from a file in case support is not
12601.1Sjakllsch	  present in the firmware already
12611.1Sjakllsch	* fixed split_args() to do the right thing when you have leading spaces
12621.1Sjakllsch	  before kernel name
12631.1Sjakllsch	* changed the argify() function to rely on \0 instead of LoadOptionSize
12641.1Sjakllsch	  as the field seems to be broken with current firmware
12651.1Sjakllsch	* bumped version to 1.0
12661.1Sjakllsch
12671.1Sjakllsch2000-10-04  David Mosberger  <davidm@hpl.hp.com>
12681.1Sjakllsch 
12691.1Sjakllsch	* gnuefi/reloc_ia64.S: Reserve space for up to 750 function descriptors.
12701.1Sjakllsch
12711.1Sjakllsch	* gnuefi/elf_ia64_efi.lds: Add .sdata section for small data and
12721.1Sjakllsch	put __gp in the "middle" of it.
12731.1Sjakllsch
12741.1Sjakllsch	* gnuefi/crt0-efi-ia64.S (_start): Use movl/add to load
12751.1Sjakllsch	gp-relative addresses that could be out of the range of the addl
12761.1Sjakllsch	offset.
12771.1Sjakllsch	* gnuefi/reloc_ia64.S (_relocate): Ditto.
12781.1Sjakllsch
12791.1Sjakllsch	* apps/Makefile: Remove standard rules and include Make.rules instead.
12801.1Sjakllsch	* lilo/Makefile: Ditto.
12811.1Sjakllsch
12821.1Sjakllsch	* Make.rules: New file.
12831.1Sjakllsch
12841.1Sjakllsch2000-08-04  Stephane Eranian <eranian@hpl.hp.com>
12851.1Sjakllsch	* released version 0.9
12861.1Sjakllsch	* incorporated ACPI changes for Asuza by NEC < kouchi@hpc.bs1.fc.nec.co.jp>
12871.1Sjakllsch	* added support for initrd (-i option) original ELI code from Bill Nottingham <notting@redhat.com>)
12881.1Sjakllsch	* lots of cleanups 
12891.1Sjakllsch	* got rid of #ifdef LILO_DEBUG and uses macro instead
12901.1Sjakllsch	* fix a few extra memory leaks in create_boot_params()
12911.1Sjakllsch	* added exit capability just before starting the kernel
12921.1Sjakllsch
12931.1Sjakllsch2000-06-22  David Mosberger  <davidm@hpl.hp.com>
12941.1Sjakllsch
12951.1Sjakllsch	* gnuefi/elf_ia64_efi.lds: Add .srodata, .ctors, .IA64.unwind,
12961.1Sjakllsch	.IA64.unwind_info to .data section and .rela.ctors to .rela
12971.1Sjakllsch	section.
12981.1Sjakllsch
12991.1Sjakllsch2000-04-03  David Mosberger  <davidm@hpl.hp.com>
13001.1Sjakllsch
13011.1Sjakllsch	* lilo/lilo.c (LILO_VERSION): Up version number to 0.9.
13021.1Sjakllsch
13031.1Sjakllsch	* gnuefi/elf_ia64_efi.lds: Include .IA_64.unwind and
13041.1Sjakllsch	.IA_64.unwind_info in .data segment to avoid EFI load error
13051.1Sjakllsch	"ImageAddress: pointer outside of image" error due to the .dynsym
13061.1Sjakllsch	relocations against these sections.
13071.1Sjakllsch
13081.1Sjakllsch	* ChangeLog: Moved from lilo/ChangeLogs.
13091.1Sjakllsch
13101.1Sjakllsch	* gnuefi/reloc_ia64.S: fixed typo: .space directive had constant
13111.1Sjakllsch	100 hardcoded instead of using MAX_FUNCTION_DESCRIPTORS
13121.1Sjakllsch	macro. Duh.
13131.1Sjakllsch
13141.1.1.2Sjmcneill2000-03-17 Stephane Eranian <eranian@hpl.hp.com>
13151.1Sjakllsch
13161.1Sjakllsch	* Released 0.8
13171.1Sjakllsch	* replace the  getopt.c with new version free with better license
13181.1Sjakllsch	* created a documentation file
13191.1Sjakllsch	* fix a couple of memory leaks
13201.1Sjakllsch	* code cleanups
13211.1Sjakllsch	* created a separate directory for lilo in the gnu-efi package.
13221.1Sjakllsch	* added support for the BOOT_IMAGE argument to kernel
13231.1Sjakllsch	* default is to build natively now
13241.1.1.2Sjmcneill
1325