1*aac405ccSNigel Croxon Updated Changelog 2*aac405ccSNigel Croxon 3*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 4*aac405ccSNigel Croxon 5*aac405ccSNigel Croxoncommit 37d7bee82a627999563069b090866076e055a871 6*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 7*aac405ccSNigel CroxonDate: Thu May 14 12:38:39 2015 -0400 8*aac405ccSNigel Croxon 9*aac405ccSNigel Croxon Added some missing error code descriptions 10*aac405ccSNigel Croxon 11*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 12*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 13*aac405ccSNigel Croxon 14*aac405ccSNigel Croxoncommit dae0b4b0b0d522caecf09123db2cf0250c37a169 15*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 16*aac405ccSNigel CroxonDate: Thu May 14 12:20:51 2015 -0400 17*aac405ccSNigel Croxon 18*aac405ccSNigel Croxon Turns out we actually need setjmp in one of gnu-efi's prominent 19*aac405ccSNigel Croxon users, and it seems to make more sense to put it here than in 20*aac405ccSNigel Croxon the application. 21*aac405ccSNigel Croxon 22*aac405ccSNigel Croxon All of these are derived from the Tiano code, but I re-wrote the 23*aac405ccSNigel Croxon x86_64 one because we use the ELF psABI calling conventions instead 24*aac405ccSNigel Croxon of the MS ABI calling conventions. Which is to say you probably 25*aac405ccSNigel Croxon shouldn't setjmp()/longjmp() between functions with EFIAPI (aka 26*aac405ccSNigel Croxon __attribute__((ms_abi))) and those without. 27*aac405ccSNigel Croxon 28*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 29*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 30*aac405ccSNigel Croxon 31*aac405ccSNigel Croxoncommit b5a8e93cec396381a6d2beee022abbf50100f2fd 32*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 33*aac405ccSNigel CroxonDate: Fri Apr 10 08:49:50 2015 -0400 34*aac405ccSNigel Croxon 35*aac405ccSNigel Croxon Bump version to 3.0.2 36*aac405ccSNigel Croxon 37*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 38*aac405ccSNigel Croxon 39*aac405ccSNigel Croxoncommit 01c9f11ed5ad55661e8fc8a3eee35c578564754b 40*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 41*aac405ccSNigel CroxonDate: Fri Apr 10 08:46:40 2015 -0400 42*aac405ccSNigel Croxon 43*aac405ccSNigel Croxon Fix ARM32 and AARCH64 builds 44*aac405ccSNigel Croxon Without these added into SUBDIRS the initplat.c compilation will fail. 45*aac405ccSNigel Croxon 46*aac405ccSNigel Croxon Signed-off-by: Koen Kooi <koen.kooi@linaro.org> 47*aac405ccSNigel Croxon Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> 48*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 49*aac405ccSNigel Croxon 50*aac405ccSNigel Croxoncommit dada63fd3de148c6f8551d253355c113547cd5a0 51*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 52*aac405ccSNigel CroxonDate: Mon Mar 23 10:41:43 2015 -0400 53*aac405ccSNigel Croxon 54*aac405ccSNigel Croxon [PATCH] _SPrint: fix NULL termination 55*aac405ccSNigel Croxon 56*aac405ccSNigel Croxon maxlen is the maximum string length not the buffer size. 57*aac405ccSNigel Croxon 58*aac405ccSNigel Croxon Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com> 59*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 60*aac405ccSNigel Croxon 61*aac405ccSNigel Croxoncommit ce7098fb52e5fd4d16038964d029eb759f28eaaf 62*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 63*aac405ccSNigel CroxonDate: Thu Feb 19 11:22:45 2015 -0500 64*aac405ccSNigel Croxon 65*aac405ccSNigel Croxon Enable out-of-tree building 66*aac405ccSNigel Croxon 67*aac405ccSNigel Croxon This patch enables building gnu-efi outside of the source tree. 68*aac405ccSNigel Croxon That in turn enables building for multiple architectures in parallel. 69*aac405ccSNigel Croxon 70*aac405ccSNigel Croxon The build directory is controlled by the OBJDIR make variable. It 71*aac405ccSNigel Croxon defaults to the value of ARCH, and can be overridden from the command 72*aac405ccSNigel Croxon line. 73*aac405ccSNigel Croxon 74*aac405ccSNigel Croxon This patch also cleans up some doubled slashes between INSTALLROOT 75*aac405ccSNigel Croxon and PREFIX. 76*aac405ccSNigel Croxon 77*aac405ccSNigel Croxon Signed-off-by: Jonathan Boeing <jonathan.n.boeing@gmail.com> 78*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 79*aac405ccSNigel Croxon 80*aac405ccSNigel Croxoncommit f64cef26270bfbe04f038da33f95ae3f14c071bc 81*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 82*aac405ccSNigel CroxonDate: Tue Jan 6 15:49:50 2015 -0500 83*aac405ccSNigel Croxon 84*aac405ccSNigel Croxon Since we're keeping this in git, it'd be nice not to see a bunch 85*aac405ccSNigel Croxon of make targets in 'status' 86*aac405ccSNigel Croxon 87*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 88*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 89*aac405ccSNigel Croxon 90*aac405ccSNigel Croxoncommit 322efb6b21ed0a5e42e8f124fd22bf0f8dbf01ae 91*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 92*aac405ccSNigel CroxonDate: Mon Jan 5 13:20:43 2015 -0500 93*aac405ccSNigel Croxon 94*aac405ccSNigel Croxon version number changed from VERSION = 3.0u to VERSION = 3.0.1 95*aac405ccSNigel Croxon 96*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 97*aac405ccSNigel Croxon 98*aac405ccSNigel Croxoncommit 09027207f7c18af6caa45a744fc15c90b2a829db 99*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 100*aac405ccSNigel CroxonDate: Mon Jan 5 13:13:22 2015 -0500 101*aac405ccSNigel Croxon 102*aac405ccSNigel Croxon From: Pete Batard <pete@akeo.ie> 103*aac405ccSNigel Croxon Date: Wed, 10 Dec 2014 21:08:34 +0000 104*aac405ccSNigel Croxon Subject: [PATCH] fixes for MSVC compilation 105*aac405ccSNigel Croxon 106*aac405ccSNigel Croxon These fixes are needed to address the following error and warnings when compiling the library part 107*aac405ccSNigel Croxon using Visual Studio 2013 Community Edition (as in https://github.com/pbatard/uefi-simple): 108*aac405ccSNigel Croxon * "lib\x86_64\math.c(49): error C4235: nonstandard extension used : '_asm' keyword not supported 109*aac405ccSNigel Croxon on this architecture" 110*aac405ccSNigel Croxon * "lib\print.c(98): error C2059: syntax error : '('" due to placement of EFIAPI macro 111*aac405ccSNigel Croxon * "lib\cmdline.c(94): warning C4090: 'function' : different 'const' qualifiers" 112*aac405ccSNigel Croxon * "lib\smbios.c(25): warning C4068: unknown pragma" 113*aac405ccSNigel Croxon * Also update macro definitions in "inc\<arch>\efibind.h" for MSVC 114*aac405ccSNigel Croxon 115*aac405ccSNigel Croxon Signed-off-by: Pete Batard <pete@akeo.ie> 116*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 117*aac405ccSNigel Croxon 118*aac405ccSNigel Croxoncommit 15805ff38b83a72c2c7c96a24bd642ee1176d819 119*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 120*aac405ccSNigel CroxonDate: Tue Nov 25 14:23:21 2014 -0500 121*aac405ccSNigel Croxon 122*aac405ccSNigel Croxon Add README.git file. Instructions on how to archive. 123*aac405ccSNigel Croxon 124*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 125*aac405ccSNigel Croxon 126*aac405ccSNigel Croxoncommit b868aa75669723b7e32f46524822e17e388fe2ba 127*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 128*aac405ccSNigel CroxonDate: Tue Nov 25 13:26:45 2014 -0500 129*aac405ccSNigel Croxon 130*aac405ccSNigel Croxon This patch makes generating releases from git a very simple process; you 131*aac405ccSNigel Croxon simply edit the makefile's "VERSION" line to the new version, commit 132*aac405ccSNigel Croxon that as its own commit, and do: "make test-archive". That'll make a 133*aac405ccSNigel Croxon file in the current directory gnu-efi-$VERSION.tar.bz2 , with its top 134*aac405ccSNigel Croxon level directory gnu-efi-$VERSION/ and the source tree under that. 135*aac405ccSNigel Croxon 136*aac405ccSNigel Croxon Once you've tested that and you're sure it's what you want to release, 137*aac405ccSNigel Croxon you do "make archive", which will tag a release in git and generate a 138*aac405ccSNigel Croxon final tarball from it. You then push to the archive, being sure to 139*aac405ccSNigel Croxon include the tag: 140*aac405ccSNigel Croxon 141*aac405ccSNigel Croxon git push origin master:master --tags 142*aac405ccSNigel Croxon 143*aac405ccSNigel Croxon And upload the archive wherever it's supposed to go. 144*aac405ccSNigel Croxon 145*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 146*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 147*aac405ccSNigel Croxon 148*aac405ccSNigel Croxoncommit 530d68ba191850edafc6da22cb2df55bec0c5fa5 149*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 150*aac405ccSNigel CroxonDate: Tue Nov 25 10:09:50 2014 -0500 151*aac405ccSNigel Croxon 152*aac405ccSNigel Croxon The gnu-efi-3.0 toplevel subdirectory is really annoying. Kill it. 153*aac405ccSNigel Croxon 154*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 155*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 156*aac405ccSNigel Croxon 157*aac405ccSNigel Croxoncommit 00bd66ef46b59a1623a293491a8b2c65a6d61975 158*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 159*aac405ccSNigel CroxonDate: Mon Nov 24 14:33:09 2014 -0500 160*aac405ccSNigel Croxon 161*aac405ccSNigel Croxon FreeBSD's binutils doesn't have "-j <glob>" support, so we need to 162*aac405ccSNigel Croxon include non-globbed versions of .rel/.rela individually. 163*aac405ccSNigel Croxon 164*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 165*aac405ccSNigel Croxon Signed-off-by: Bill Paul <wpaul@windriver.com> 166*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 167*aac405ccSNigel Croxon 168*aac405ccSNigel Croxoncommit 56eb64d3c06854b9b68d61e3c2d3bdf6ff2a9853 169*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 170*aac405ccSNigel CroxonDate: Mon Nov 24 14:27:14 2014 -0500 171*aac405ccSNigel Croxon 172*aac405ccSNigel Croxon Right now we wind up trying to build gnuefi/.o from a source file that's 173*aac405ccSNigel Croxon an empty string. This is caused by the macros trying to generate 174*aac405ccSNigel Croxon install rules, but there's no real reason to have all that anyway. So 175*aac405ccSNigel Croxon just have some static install rules that are simpler and don't generate 176*aac405ccSNigel Croxon stuff on the fly. 177*aac405ccSNigel Croxon 178*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 179*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 180*aac405ccSNigel Croxon 181*aac405ccSNigel Croxoncommit 65e28a90a7be9e990b360286cea31e63319217fb 182*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 183*aac405ccSNigel CroxonDate: Mon Nov 24 12:17:45 2014 -0500 184*aac405ccSNigel Croxon 185*aac405ccSNigel Croxon Add current OsIndications values. 186*aac405ccSNigel Croxon 187*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 188*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com 189*aac405ccSNigel Croxon 190*aac405ccSNigel Croxoncommit be231055ce14d17610f0d7b6133a87b99a22662b 191*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 192*aac405ccSNigel CroxonDate: Mon Nov 24 12:15:34 2014 -0500 193*aac405ccSNigel Croxon 194*aac405ccSNigel Croxon Add the QueryVariableInfo() API. 195*aac405ccSNigel Croxon 196*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 197*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 198*aac405ccSNigel Croxon 199*aac405ccSNigel Croxoncommit 60efb7a2939b65a01e95aa8b535f1b756d984fba 200*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 201*aac405ccSNigel CroxonDate: Mon Nov 24 12:13:23 2014 -0500 202*aac405ccSNigel Croxon 203*aac405ccSNigel Croxon Add the capsule API. 204*aac405ccSNigel Croxon 205*aac405ccSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 206*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 207*aac405ccSNigel Croxon 208*aac405ccSNigel Croxoncommit ef08b655d1f8dfbd9a0f3a86d5685b24695ef12f 209*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 210*aac405ccSNigel CroxonDate: Mon Nov 17 16:05:42 2014 -0500 211*aac405ccSNigel Croxon 212*aac405ccSNigel Croxon Fix Table Header misspelling. Change from EFI_TABLE_HEARDER to 213*aac405ccSNigel Croxon EFI_TABLE_HEADER. 214*aac405ccSNigel Croxon 215*aac405ccSNigel Croxon Signed-Off-By: Nigel Croxon <nigel.croxon@hp.com> 216*aac405ccSNigel Croxon 217*aac405ccSNigel Croxoncommit 370cce41da3fff41ba38feb1262002aff2d85ffd 218*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 219*aac405ccSNigel CroxonDate: Thu Nov 6 14:41:40 2014 -0500 220*aac405ccSNigel Croxon 221*aac405ccSNigel Croxon If CROSS_COMPILE is set, ignore the ARCH value supplied on the 222*aac405ccSNigel Croxon command line and use the target machine of the cross compiler. 223*aac405ccSNigel Croxon 224*aac405ccSNigel Croxon Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> 225*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 226*aac405ccSNigel Croxon 227*aac405ccSNigel Croxoncommit d32fb845433ff6fb38e81ae0d9273454e7d18197 228*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 229*aac405ccSNigel CroxonDate: Thu Nov 6 14:30:03 2014 -0500 230*aac405ccSNigel Croxon 231*aac405ccSNigel Croxon Allow reuse of this file beyond GPL compatible software, 232*aac405ccSNigel Croxon update the license of crt0-efi-aarch64.S to dual 2-clause BSD/GPLv2+. 233*aac405ccSNigel Croxon 234*aac405ccSNigel Croxon Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> 235*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 236*aac405ccSNigel Croxon 237*aac405ccSNigel Croxoncommit aa1df67f48f3c035fa8891e1bb311ec21500d6d9 238*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 239*aac405ccSNigel CroxonDate: Tue Oct 21 11:08:47 2014 -0400 240*aac405ccSNigel Croxon 241*aac405ccSNigel Croxon Add the missing Variable attributes 242*aac405ccSNigel Croxon 243*aac405ccSNigel Croxon From: Jeremy Compostella <jeremy.compostella@intel.com> 244*aac405ccSNigel Croxon Date: Mon, 13 Oct 2014 17:50:50 +0200 245*aac405ccSNigel Croxon Subject: [PATCH] Add the missing Variable attributes 246*aac405ccSNigel Croxon 247*aac405ccSNigel Croxon Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com> 248*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 249*aac405ccSNigel Croxon 250*aac405ccSNigel Croxoncommit 5706dff09364cbbec37f47e2fe1350747f631d74 251*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 252*aac405ccSNigel CroxonDate: Tue Aug 26 10:54:22 2014 -0400 253*aac405ccSNigel Croxon 254*aac405ccSNigel Croxon From: David Decotigny <decot@googlers.com> 255*aac405ccSNigel Croxon Date: Mon, 25 Aug 2014 13:28:49 -0700 256*aac405ccSNigel Croxon Subject: [PATCH] document that binutils >= 2.24 needed. 257*aac405ccSNigel Croxon 258*aac405ccSNigel Croxon commit ac983081 "Add support for non-PE/COFF capable objcopy" depends 259*aac405ccSNigel Croxon on objcopy accepting wildcards for the section names. This feature is 260*aac405ccSNigel Croxon available only with binutils >= 2.24 (binutils 2e62b7218 "PR 261*aac405ccSNigel Croxon binutils/15033"). 262*aac405ccSNigel Croxon 263*aac405ccSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 264*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 265*aac405ccSNigel Croxon 266*aac405ccSNigel Croxoncommit 6c10e225bc759d69af520a551b9d7b37f3ae0a82 267*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 268*aac405ccSNigel CroxonDate: Mon Aug 25 08:51:23 2014 -0400 269*aac405ccSNigel Croxon 270*aac405ccSNigel Croxon From: David Decotigny <decot@googlers.com> 271*aac405ccSNigel Croxon Date: Thu, 31 Jul 2014 18:19:16 -0700 272*aac405ccSNigel Croxon Subject: [PATCH 5/5] allow to use external stdarg.h 273*aac405ccSNigel Croxon 274*aac405ccSNigel Croxon in cases we use gnu-efi together with other libs that define stdarg.h, 275*aac405ccSNigel Croxon break the tie by telling gnu-efi to use that stdarg.h . 276*aac405ccSNigel Croxon 277*aac405ccSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 278*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 279*aac405ccSNigel Croxon 280*aac405ccSNigel Croxoncommit 16d65c0669258c8044e3549b2d9eb0cf0eb08f5a 281*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 282*aac405ccSNigel CroxonDate: Tue Aug 19 12:07:00 2014 -0400 283*aac405ccSNigel Croxon 284*aac405ccSNigel Croxon From: Ard Biesheuvel <ard.biesheuvel@linaro.org> 285*aac405ccSNigel Croxon Date: Mon, 11 Aug 2014 15:39:16 +0200 286*aac405ccSNigel Croxon Subject: [PATCH] Add support for 32-bit ARM 287*aac405ccSNigel Croxon 288*aac405ccSNigel Croxon This adds support for 32-bit ARM using an approach similar to the one used for 289*aac405ccSNigel Croxon 64-bit ARM (AArch64), i.e., it does not rely on an objcopy that is aware of EFI 290*aac405ccSNigel Croxon or PE/COFF, but lays out the entire PE/COFF header using the assembler. 291*aac405ccSNigel Croxon 292*aac405ccSNigel Croxon In the 32-bit ARM case (which does not have a division instruction), some code 293*aac405ccSNigel Croxon has been imported from the Linux kernel to perform the division operations in 294*aac405ccSNigel Croxon software. 295*aac405ccSNigel Croxon 296*aac405ccSNigel Croxon Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> 297*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 298*aac405ccSNigel Croxon 299*aac405ccSNigel Croxoncommit b28143d4fb4f6969dc0c87c853d3527d889951d7 300*aac405ccSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 301*aac405ccSNigel CroxonDate: Fri Aug 8 15:54:19 2014 -0400 302*aac405ccSNigel Croxon 303*aac405ccSNigel Croxon Updated Changelog 304*aac405ccSNigel Croxon 305*aac405ccSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 306*aac405ccSNigel Croxon 307530d68baSNigel Croxoncommit 1525190354f5faac33015e17c9ba7ea2bb2be35b 308530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 309530d68baSNigel CroxonDate: Fri Aug 8 15:35:09 2014 -0400 310530d68baSNigel Croxon 311530d68baSNigel Croxon From: Ard Biesheuvel <ard.biesheuvel@linaro.org> 312530d68baSNigel Croxon Date: Fri, 8 Aug 2014 18:16:59 +0200 313530d68baSNigel Croxon Subject: [PATCH 4/4] Add support for 64-bit ARM (AArch64) 314530d68baSNigel Croxon 315530d68baSNigel Croxon This adds support for 64-bit ARM (AArch64) environments. Since there is no 316530d68baSNigel Croxon EFI-capable objcopy for this platform, this contains a manually laid out 317530d68baSNigel Croxon PE/COFF header using the assembler. 318530d68baSNigel Croxon 319530d68baSNigel Croxon In addition, it includes the relocation bits, some string functions that GCC 320530d68baSNigel Croxon assumes are available and other glue to hold it all together. 321530d68baSNigel Croxon 322530d68baSNigel Croxon This can be cross built using 323530d68baSNigel Croxon 324530d68baSNigel Croxon make CROSS_COMPILE=aarch64-linux-gnu- 325530d68baSNigel Croxon 326530d68baSNigel Croxon Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> 327530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 328530d68baSNigel Croxon 329530d68baSNigel Croxoncommit ac983081525f9483941517dfb53cf8d0163d49c0 330530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 331530d68baSNigel CroxonDate: Fri Aug 8 15:32:26 2014 -0400 332530d68baSNigel Croxon 333530d68baSNigel Croxon From: Ard Biesheuvel <ard.biesheuvel@linaro.org> 334530d68baSNigel Croxon Date: Fri, 8 Aug 2014 17:53:42 +0200 335530d68baSNigel Croxon Subject: [PATCH 3/4] Add support for non-PE/COFF capable objcopy 336530d68baSNigel Croxon 337530d68baSNigel Croxon Introduce HAVE_EFI_OBJCOPY and set it if objcopy for $ARCH support PE/COOF and 338530d68baSNigel Croxon EFI, i.e., it supports --target efi-[app|bsdrv|rtdrv] options. Use it to decide 339530d68baSNigel Croxon whether to invoke objcopy with those options or use the linker to populate the 340530d68baSNigel Croxon PE/COFF header. 341530d68baSNigel Croxon 342530d68baSNigel Croxon Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> 343530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 344530d68baSNigel Croxon 345530d68baSNigel Croxoncommit fb063f0f65543b3e2bf55a39d5aa70b17a98c65e 346530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 347530d68baSNigel CroxonDate: Fri Aug 8 15:26:38 2014 -0400 348530d68baSNigel Croxon 349530d68baSNigel Croxon From: Ard Biesheuvel <ard.biesheuvel@linaro.org> 350530d68baSNigel Croxon Date: Fri, 8 Aug 2014 17:37:36 +0200 351530d68baSNigel Croxon Subject: [PATCH 2/4] Add support for cross compilation 352530d68baSNigel Croxon 353530d68baSNigel Croxon This changes the logic that defines ARCH (and HOSTARCH) to take CROSS_COMPILE 354530d68baSNigel Croxon into account. Also, $prefix is not assigned, so that the default will be what 355530d68baSNigel Croxon is on the path rather than hardcoded in /usr/bin. 356530d68baSNigel Croxon 357530d68baSNigel Croxon This results in the build doing the right thing if CROSS_COMPILE is set in the 358530d68baSNigel Croxon environment and no ARCH or prefix options are passed to make, aligning it with 359530d68baSNigel Croxon most other CROSS_COMPILE compatible projects. 360530d68baSNigel Croxon 361530d68baSNigel Croxon Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> 362530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 363530d68baSNigel Croxon 364530d68baSNigel Croxoncommit 7a98d83fc32de6cf0b1ce5e12dfe80690f29fb3f 365530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 366530d68baSNigel CroxonDate: Fri Aug 8 15:25:03 2014 -0400 367530d68baSNigel Croxon 368530d68baSNigel Croxon From: Ard Biesheuvel <ard.biesheuvel@linaro.org> 369530d68baSNigel Croxon Date: Fri, 8 Aug 2014 16:50:45 +0200 370530d68baSNigel Croxon Subject: [PATCH 1/4] Restrict GNU_EFI_USE_MS_ABI GCC version test to x86_64 371530d68baSNigel Croxon 372530d68baSNigel Croxon The version test only applies to x86_64 builds, so no need to do it 373530d68baSNigel Croxon for other archs. 374530d68baSNigel Croxon 375530d68baSNigel Croxon Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> 376530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 377530d68baSNigel Croxon 378530d68baSNigel Croxoncommit f42974dd9a7d0ea690d293f88396abd289f0014c 379530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 380530d68baSNigel CroxonDate: Fri Aug 8 15:21:16 2014 -0400 381530d68baSNigel Croxon 382530d68baSNigel Croxon From: David Decotigny <decot@googlers.com> 383530d68baSNigel Croxon Date: Thu, 31 Jul 2014 13:42:23 -0700 384530d68baSNigel Croxon Subject: [PATCH 4/4] Use Shell protocols to retrieve argc/argv, when 385530d68baSNigel Croxon available. 386530d68baSNigel Croxon 387530d68baSNigel Croxon New header files efishellintf.h efishellparm.h are coming from EDK 388530d68baSNigel Croxon II, initial location and license at top of files. Only modifications: 389530d68baSNigel Croxon - efishellintf.h: s/EFI_FILE_PROTOCOL/EFI_FILE/ + expand BITx macros (1<<x) 390530d68baSNigel Croxon - efishellparm.h: typedef VOID *SHELL_FILE_HANDLE to avoid including 391530d68baSNigel Croxon ShellBase.h 392530d68baSNigel Croxon - both: removed extern EFI_GUID variable decls 393530d68baSNigel Croxon 394530d68baSNigel Croxon This also adds apps/t8.c, a simple demo. 395530d68baSNigel Croxon 396530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 397530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 398530d68baSNigel Croxon 399530d68baSNigel Croxoncommit a61fa058e9a87f966de3342b8c95fdbdcb007827 400530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 401530d68baSNigel CroxonDate: Fri Aug 8 15:17:32 2014 -0400 402530d68baSNigel Croxon 403530d68baSNigel Croxon From: David Decotigny <decot@googlers.com> 404530d68baSNigel Croxon Date: Thu, 31 Jul 2014 13:41:52 -0700 405530d68baSNigel Croxon Subject: [PATCH 3/4] document format of LoadedImage::LoadOptions data 406530d68baSNigel Croxon 407530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 408530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 409530d68baSNigel Croxon 410530d68baSNigel Croxoncommit 2f440200c855154f929d28971b2fd702ea7a207a 411530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 412530d68baSNigel CroxonDate: Fri Aug 8 15:15:59 2014 -0400 413530d68baSNigel Croxon 414530d68baSNigel Croxon From: David Decotigny <decot@googlers.com> 415530d68baSNigel Croxon Date: Thu, 31 Jul 2014 13:39:37 -0700 416530d68baSNigel Croxon Subject: [PATCH 2/4] Use OpenProtocol instead of HandleProtocol 417530d68baSNigel Croxon 418530d68baSNigel Croxon UEFI 2.x recommends OpenProtocol instead of HandleProtocol. 419530d68baSNigel Croxon 420530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 421530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 422530d68baSNigel Croxon 423530d68baSNigel Croxoncommit 7f173da1e54f8cfe4c7c7c091ab6585af07b25ce 424530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 425530d68baSNigel CroxonDate: Fri Aug 8 15:14:26 2014 -0400 426530d68baSNigel Croxon 427530d68baSNigel Croxon From: David Decotigny <decot@googlers.com> 428530d68baSNigel Croxon Date: Thu, 31 Jul 2014 13:30:07 -0700 429530d68baSNigel Croxon Subject: [PATCH 1/4] move cmdline parser to its own file 430530d68baSNigel Croxon 431530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 432530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 433530d68baSNigel Croxon 434530d68baSNigel Croxoncommit 0ad8fb87cbc59f58675b18253ad802ba51f1d132 435530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 436530d68baSNigel CroxonDate: Wed Jul 30 15:06:36 2014 -0400 437530d68baSNigel Croxon 438530d68baSNigel Croxon From: David Decotigny <decot@googlers.com> 439530d68baSNigel Croxon Date: Mon, 28 Jul 2014 21:28:50 -0700 440530d68baSNigel Croxon Subject: [PATCH 3/3] make cmdline parsing a 1st class citizen 441530d68baSNigel Croxon 442530d68baSNigel Croxon Refactor ParseCmdline and apps/Alloc+FreePages to factorize 443530d68baSNigel Croxon boilerplate and move the new parser to the main API. 444530d68baSNigel Croxon 445530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 446530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 447530d68baSNigel Croxon 448530d68baSNigel Croxoncommit ff7ec964f2c0de0cfc4b52cfdd356003450f28bf 449530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 450530d68baSNigel CroxonDate: Wed Jul 30 15:05:28 2014 -0400 451530d68baSNigel Croxon 452530d68baSNigel Croxon From: David Decotigny <decot@googlers.com> 453530d68baSNigel Croxon Date: Mon, 28 Jul 2014 21:00:52 -0700 454530d68baSNigel Croxon Subject: [PATCH 2/3] Avoid buffer overflow while parsing the cmdline args 455530d68baSNigel Croxon 456530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 457530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 458530d68baSNigel Croxon 459530d68baSNigel Croxoncommit 8d86ee202a9bb553375f56ae1d2944818112b68b 460530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 461530d68baSNigel CroxonDate: Wed Jul 30 15:04:44 2014 -0400 462530d68baSNigel Croxon 463530d68baSNigel Croxon From: David Decotigny <decot@googlers.com> 464530d68baSNigel Croxon Date: Mon, 28 Jul 2014 21:01:35 -0700 465530d68baSNigel Croxon Subject: [PATCH 1/3] Fix cmdline parser 466530d68baSNigel Croxon 467530d68baSNigel Croxon The cmdline parser would not return the correct number of args, would 468530d68baSNigel Croxon allocate one too many. Also make it clear from the declaration that we 469530d68baSNigel Croxon expect a suitably lare argv. 470530d68baSNigel Croxon 471530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 472530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 473530d68baSNigel Croxon 474530d68baSNigel Croxoncommit 1ec094bfaf46a610a740dadc0150bf457dd72345 475530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 476530d68baSNigel CroxonDate: Wed Jul 23 09:54:25 2014 -0400 477530d68baSNigel Croxon 478530d68baSNigel Croxon From: Julian Klode <julian.klode@gmail.com> 479530d68baSNigel Croxon Date: Mon, 21 Jul 2014 14:26:23 -0400 480530d68baSNigel Croxon Subject: [PATCH] inc/efistdarg.h: Use gcc builtins instead of stdarg.h or broken stubs 481530d68baSNigel Croxon 482530d68baSNigel Croxon We cannot use stdarg.h, as this breaks applications compiling 483530d68baSNigel Croxon with -nostdinc because those will not find the header. 484530d68baSNigel Croxon We also cannot use the stubs, as they just produce broken code, 485530d68baSNigel Croxon as seen in the gummiboot 45-1 Debian release. 486530d68baSNigel Croxon 487530d68baSNigel Croxon Signed-off-by: Julian Klode <julian.klode@gmail.com> 488530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 489530d68baSNigel Croxon 490530d68baSNigel Croxoncommit 6caab22f23434f41f42cfe7591d9a7ae66de9f0a 491530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 492530d68baSNigel CroxonDate: Thu Jun 19 10:39:23 2014 -0400 493530d68baSNigel Croxon 494530d68baSNigel Croxon From: Laszlo Ersek <lersek@redhat.com> 495530d68baSNigel Croxon Date: Mon, 2 Jun 2014 23:26:48 +0200 496530d68baSNigel Croxon Subject: [PATCH] always observe EFIAPI calling convention when calling 497530d68baSNigel Croxon STO.SetAttribute 498530d68baSNigel Croxon 499530d68baSNigel Croxon We have to consider the following cases wrt. the PRINT_STATE.Output and 500530d68baSNigel Croxon PRINT_STATE.SetAttr EFIAPI function pointers, especially when building for 501530d68baSNigel Croxon x86_64 with gcc: 502530d68baSNigel Croxon 503530d68baSNigel Croxon (1) The compiler is new enough, and EFIAPI actually ensures the Microsoft 504530d68baSNigel Croxon calling convention. In this case everything happens to work fine even 505530d68baSNigel Croxon if we forget uefi_call_wrapper(), because the wrapper would expand to 506530d68baSNigel Croxon a normal C function call anyway. 507530d68baSNigel Croxon 508530d68baSNigel Croxon (2) Otherwise (ie. gcc is old), EFIAPI expands to nothing, and we must 509530d68baSNigel Croxon take into account the called function's origin: 510530d68baSNigel Croxon 511530d68baSNigel Croxon (2a) If the callee that is declared EFIAPI is *defined* inside gnu-efi, 512530d68baSNigel Croxon then EFIAPI means nothing for the callee too, so caller and callee 513530d68baSNigel Croxon only understand each other if the caller intentionally omits 514530d68baSNigel Croxon uefi_call_wrapper(). 515530d68baSNigel Croxon 516530d68baSNigel Croxon (2b) If the callee that is declared EFIAPI is defined by the platform 517530d68baSNigel Croxon UEFI implementation, then the caller *must* use 518530d68baSNigel Croxon uefi_call_wrapper(). 519530d68baSNigel Croxon 520530d68baSNigel Croxon The PRINT_STATE.Output EFIAPI function pointer is dereferenced correctly: 521530d68baSNigel Croxon the PFLUSH() distinguishes cases (2a) from (2b) by using IsLocalPrint(). 522530d68baSNigel Croxon 523530d68baSNigel Croxon However use of the PRINT_STATE.SetAttr EFIAPI function pointer is not 524530d68baSNigel Croxon always correct: 525530d68baSNigel Croxon 526530d68baSNigel Croxon - The PSETATTR() helper function always relies on the wrapper (case (2b)). 527530d68baSNigel Croxon This is correct, because PRINT_STATE.SetAttr always points to a 528530d68baSNigel Croxon platform-provided function. 529530d68baSNigel Croxon 530530d68baSNigel Croxon - The DbgPrint() function contains two incorrect calls: they mistakenly 531530d68baSNigel Croxon assume case (2a) (or case (1)), even though the pointer always points to 532530d68baSNigel Croxon a platform function, implying (2b). (The error is masked in case (1).) 533530d68baSNigel Croxon Fix them. 534530d68baSNigel Croxon 535530d68baSNigel Croxon Signed-off-by: Laszlo Ersek <lersek@redhat.com> 536530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 537530d68baSNigel Croxon 538530d68baSNigel Croxoncommit ecfd1ded9a799c3a572d4eb7fbb52582fe4d3390 539530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 540530d68baSNigel CroxonDate: Tue Jun 10 12:59:09 2014 -0400 541530d68baSNigel Croxon 542530d68baSNigel Croxon Add VPoolPrint Function 543530d68baSNigel Croxon 544530d68baSNigel Croxon Equivalent to PoolPrint but using a va_list parameter 545530d68baSNigel Croxon 546530d68baSNigel Croxon Signed-off-by: Sylvain Chouleur <sylvain.chouleur@intel.com> 547530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 548530d68baSNigel Croxon 549530d68baSNigel Croxoncommit f16d93f3b9e314336a387a3885c7fd2f176c41d3 550530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 551530d68baSNigel CroxonDate: Fri May 16 11:33:51 2014 -0400 552530d68baSNigel Croxon 553530d68baSNigel Croxon Revert "The prototype of DbgPrint() is incorrect, at the end of "inc/efidebug.h"." 554530d68baSNigel Croxon A problem was found compiling on GCC 4.8. 555530d68baSNigel Croxon 556530d68baSNigel Croxon This reverts commit 644898eabc06c8efaa3aa54f84cdd468960a2f6c. 557530d68baSNigel Croxon 558530d68baSNigel Croxoncommit 644898eabc06c8efaa3aa54f84cdd468960a2f6c 559530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 560530d68baSNigel CroxonDate: Wed May 14 09:09:47 2014 -0400 561530d68baSNigel Croxon 562530d68baSNigel Croxon The prototype of DbgPrint() is incorrect, at the end of "inc/efidebug.h". 563530d68baSNigel Croxon Consequently, when your program calls DbgPrint() via the DEBUG() macro, 564530d68baSNigel Croxon it fails to set up the stack correctly (it does not pass the arguments 565530d68baSNigel Croxon through the ellipsis (...) according to the EFIAPI calling convention). 566530d68baSNigel Croxon However, va_start() inside DbgPrint() *assumes* that stack. 567530d68baSNigel Croxon 568530d68baSNigel Croxon Signed-off-by: Laszlo Ersek <lersek@redhat.com> 569530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 570530d68baSNigel Croxon 571530d68baSNigel Croxoncommit 8921ba2fc5f6163bdad3b5902c5d9d638415dde0 572530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 573530d68baSNigel CroxonDate: Mon Apr 14 18:49:23 2014 -0400 574530d68baSNigel Croxon 575530d68baSNigel Croxon Cleaned up compile warnings. 576530d68baSNigel Croxon 577530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 578530d68baSNigel Croxon 579530d68baSNigel Croxoncommit 42cca551dbf1c0be9e02e8d3d3c417ce35749638 580530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 581530d68baSNigel CroxonDate: Mon Apr 14 14:04:11 2014 -0400 582530d68baSNigel Croxon 583530d68baSNigel Croxon Module lib/ParseCmdLine.c has errors, it incorrectly mixes "char" and "CHAR16" 584530d68baSNigel Croxon and uses a pointer to argv[] like it's argv[]. The compiler only issues 585530d68baSNigel Croxon warnings though. Here is a patch to remove compiler warnings and make the 586530d68baSNigel Croxon code behave. 587530d68baSNigel Croxon 588530d68baSNigel Croxon Signed-off-by: Bernard Burette <bub75@users.sf.net> 589530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 590530d68baSNigel Croxon 591530d68baSNigel Croxoncommit 4e8460f1aedd2724de876be5b154eb5752bfada5 592530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 593530d68baSNigel CroxonDate: Mon Apr 14 13:53:03 2014 -0400 594530d68baSNigel Croxon 595530d68baSNigel Croxon Here is a very small patch to remove a compiler warning when processing lib/smbios.c. 596530d68baSNigel Croxon 597530d68baSNigel Croxon Signed-off-by: Bernard Burette <bub75@users.sf.net> 598530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 599530d68baSNigel Croxon 600530d68baSNigel Croxoncommit 6a0875ca2fcb67e7d1a1e2d15f3bcc645329dc75 601530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 602530d68baSNigel CroxonDate: Mon Apr 14 13:45:16 2014 -0400 603530d68baSNigel Croxon 604530d68baSNigel Croxon Here is a very small patch to remove compiler warning in function 605530d68baSNigel Croxon "LibLocateHandleByDiskSignature()" because the "Start" variable is 606530d68baSNigel Croxon give a value which is not used. 607530d68baSNigel Croxon 608530d68baSNigel Croxon Signed-off-by: Bernard Burette <bub75@users.sf.net> 609530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 610530d68baSNigel Croxon 611530d68baSNigel Croxoncommit d5f35dfb8008ba65bcc641559accd9bc13386ef9 612530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 613530d68baSNigel CroxonDate: Mon Apr 14 13:40:29 2014 -0400 614530d68baSNigel Croxon 615530d68baSNigel Croxon Here is a very small patch to remove *~ files in include diretory. 616530d68baSNigel Croxon 617530d68baSNigel Croxon Signed-off-by: Bernard Burette <bub75@users.sf.net> 618530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 619530d68baSNigel Croxon 620530d68baSNigel Croxoncommit 1a04669a7bb022984c9b54a0f73d7d67a2540fb7 621530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 622530d68baSNigel CroxonDate: Mon Apr 14 12:45:57 2014 -0400 623530d68baSNigel Croxon 624530d68baSNigel Croxon Here is a patch for "DevicePathToStr()" to display device path according to UEFI 2 specification. 625530d68baSNigel Croxon The path is in the two files inc/efidevp.h and lib/dpath.c. 626530d68baSNigel Croxon 627530d68baSNigel Croxon It also add the Sata device path and removes the "/?" path for unknown device paths. 628530d68baSNigel Croxon 629530d68baSNigel Croxon Signed-off-by: Bernard Burette <bub75@users.sf.net> 630530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 631530d68baSNigel Croxon 632530d68baSNigel Croxoncommit 3c62e78556aea01e9798380cd46794c6ca09d4bd 633530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 634530d68baSNigel CroxonDate: Tue Apr 1 10:26:44 2014 -0400 635530d68baSNigel Croxon 636530d68baSNigel Croxon Removed GPL code setjmp_ia32.S, setjmp_ia64.S, setjmp_x86_64.S 637530d68baSNigel Croxon Not used anymore. 638530d68baSNigel Croxon 639530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 640530d68baSNigel Croxon 641530d68baSNigel Croxoncommit f9baa4f622cf34576d73e00d4a774a31f0f81fd7 642530d68baSNigel CroxonAuthor: Nigel Croxon <nigel.croxon@hp.com> 643530d68baSNigel CroxonDate: Mon Mar 31 08:37:56 2014 -0400 644530d68baSNigel Croxon 645530d68baSNigel Croxon Remove incumbent GPL 'debian' subdiretory. 646530d68baSNigel Croxon Update ChangeLog 647530d68baSNigel Croxon 648530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 649530d68baSNigel Croxon 650530d68baSNigel Croxon 651530d68baSNigel CroxonChangelog format change from here and above to 'git log' style. 652530d68baSNigel Croxon 653530d68baSNigel Croxon2014-04-01 Nigel Croxon <nigel.croxon@hp.com> 654530d68baSNigel Croxon 655530d68baSNigel Croxon Removed GPL code setjmp_ia32.S, setjmp_ia64.S, setjmp_x86_64.S 656530d68baSNigel Croxon Not used anymore. 657530d68baSNigel Croxon 658530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 659530d68baSNigel Croxon 660530d68baSNigel Croxon2014-03-17 Nigel Croxon <nigel.croxon@hp.com> 661530d68baSNigel Croxon 662530d68baSNigel Croxon Add support for the simple pointer and absolute pointer protocols 663530d68baSNigel Croxon 664530d68baSNigel Croxon Signed-off-by: John Cronin <johncronin@users.sf.net> 665530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 666530d68baSNigel Croxon 667530d68baSNigel Croxon2014-03-14 Nigel Croxon <nigel.croxon@hp.com> 668530d68baSNigel Croxon 669530d68baSNigel Croxon Trying to recurse into subdirectories of object files may lead 670530d68baSNigel Croxon to an error if the directory doesn't exist. Even when cleaning. 671530d68baSNigel Croxon 672530d68baSNigel Croxon Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> 673530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 674530d68baSNigel Croxon 675530d68baSNigel Croxon2014-03-14 Nigel Croxon <nigel.croxon@hp.com> 676530d68baSNigel Croxon 677530d68baSNigel Croxon Make install used to copy files unconditionnally to their 678530d68baSNigel Croxon destination. However, if the destination is used by another 679530d68baSNigel Croxon Makefile, it will always see modified files. "install" target 680530d68baSNigel Croxon now only updates the files when they need to. 681530d68baSNigel Croxon 682530d68baSNigel Croxon Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> 683530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 684530d68baSNigel Croxon 685530d68baSNigel Croxon2014-02-13 Nigel Croxon <nigel.croxon@hp.com> 686530d68baSNigel Croxon 687530d68baSNigel Croxon Patch GNU-EFI to remove the ELILO code 688530d68baSNigel Croxon 689530d68baSNigel Croxon Signed-off-by: Jerry Hoemann <jerry.hoemann@hp.com> 690530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 691530d68baSNigel Croxon 692530d68baSNigel Croxon2014-02-13 Nigel Croxon <nigel.croxon@hp.com> 693530d68baSNigel Croxon 694530d68baSNigel Croxon Initialize Status before calling GrowBuffer() 695530d68baSNigel Croxon Status must be initialized before calling GrowBuffer() as it may 696530d68baSNigel Croxon otherwise be uninitialized or set to EFI_BUFFER_TOO_SMALL by 697530d68baSNigel Croxon other functions. 698530d68baSNigel Croxon 699530d68baSNigel Croxon Signed-off-by: Gene Cumm <gene.cumm@gmail.com> 700530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 701530d68baSNigel Croxon 702530d68baSNigel Croxon2014-01-23 Nigel Croxon <nigel.croxon@hp.com> 703530d68baSNigel Croxon 704530d68baSNigel Croxon These changes allow manually overridden SRCDIR (current source 705530d68baSNigel Croxon directory) and TOPDIR (top of source tree) to separate the 706530d68baSNigel Croxon build directory from the source tree. 707530d68baSNigel Croxon 708530d68baSNigel Croxon Signed-off-by: Gene Cumm <gene.cumm@gmail.com> 709530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 710530d68baSNigel Croxon 711530d68baSNigel Croxon2014-01-16 Nigel Croxon <nigel.croxon@hp.com> 712530d68baSNigel Croxon compilation: fix uninitialized variables warning 713530d68baSNigel Croxon 714530d68baSNigel Croxon Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com> 715530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 716530d68baSNigel Croxon 717530d68baSNigel Croxon2014-01-13 Nigel Croxon <nigel.croxon@hp.com> 718530d68baSNigel Croxon Implement VSPrint function, prints a formatted unicode string to a buffer. 719530d68baSNigel Croxon 720530d68baSNigel Croxon Signed-off-by: Jeremy Compostella <jeremy.compostella@gmail.com> 721530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 722530d68baSNigel Croxon 723530d68baSNigel Croxon2014-01-10 Nigel Croxon <nigel.croxon@hp.com> 724530d68baSNigel Croxon Created lib/argify.c and inc/argify.h containing the function argify. 725530d68baSNigel Croxon It contains verbatim copy of the comment at beginning of file from 726530d68baSNigel Croxon elilo. 727530d68baSNigel Croxon There was no COPYING file in the elilo source that the comment refers to. 728530d68baSNigel Croxon 729530d68baSNigel Croxon Signed-off-by: Jerry Hoemann <jerry.hoemann@hp.com> 730530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 731530d68baSNigel Croxon 732530d68baSNigel Croxon2014-01-08 Nigel Croxon <nigel.croxon@hp.com> 733530d68baSNigel Croxon The information needed is not really the host architecture as given by 734530d68baSNigel Croxon the kernel arch. The information actually needed is the default target 735530d68baSNigel Croxon of gcc. 736530d68baSNigel Croxon 737530d68baSNigel Croxon Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com> 738530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 739530d68baSNigel Croxon 740530d68baSNigel Croxon2013-10-11 Nigel Croxon <nigel.croxon@hp.com> 741530d68baSNigel Croxon Added support for SetVariable to store volatile variable, 742530d68baSNigel Croxon and SetNVVariable to store non volatile variable. 743530d68baSNigel Croxon 744530d68baSNigel Croxon Signed-off-by: Sylvain Chouleur <sylvain.chouleur@gmail.com> 745530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 746530d68baSNigel Croxon 747530d68baSNigel Croxon2013-10-07 Nigel Croxon <nigel.croxon@hp.com> 748530d68baSNigel Croxon 749530d68baSNigel Croxon Atoi needs to have consistent declaration/definition. 750530d68baSNigel Croxon 751530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 752530d68baSNigel Croxon 753530d68baSNigel Croxon2013-10-07 Nigel Croxon <nigel.croxon@hp.com> 754530d68baSNigel Croxon if you have a function that takes const arguments and then 755530d68baSNigel Croxon e.g. tries to copy StrCmp, gcc will give you warnings about those 756530d68baSNigel Croxon calls, and the warnings are right. These clutter up other things 757530d68baSNigel Croxon you might miss that you should be more concered about. 758530d68baSNigel Croxon 759530d68baSNigel Croxon You could work around it through vigorous typecasting 760530d68baSNigel Croxon to non-const types, but why should you have to? All of these 761530d68baSNigel Croxon functions are regorously defined as not changing their input 762530d68baSNigel Croxon - it is const, and should be marked as such. 763530d68baSNigel Croxon 764530d68baSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 765530d68baSNigel Croxon 766530d68baSNigel Croxon2013-10-02 Nigel Croxon <nigel.croxon@hp.com> 767530d68baSNigel Croxon 768530d68baSNigel Croxon Added two simple applications to allocate/free memory at EFI. 769530d68baSNigel Croxon Used to test/find memory fragmentation issues linux. 770530d68baSNigel Croxon 771530d68baSNigel Croxon Signed-off-by: Jerry Hoemann <jerry.hoemann@hp.com> 772530d68baSNigel Croxon Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> 773530d68baSNigel Croxon 774530d68baSNigel Croxon2013-06-25 Nigel Croxon <nigel.croxon@hp.com> 775530d68baSNigel Croxon Sample boot service driver. 776530d68baSNigel Croxon 777530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 778530d68baSNigel Croxon 779530d68baSNigel Croxon2013-06-25 Nigel Croxon <nigel.croxon@hp.com> 780530d68baSNigel CroxonDate: Tue Jun 25 08:47:03 2013 -0400 781530d68baSNigel Croxon 782530d68baSNigel Croxon Be more pedantic when linking, don't allow duplicate symbols, 783530d68baSNigel Croxon abort upon first error. Also make sure linker script comes 784530d68baSNigel Croxon last for apps. 785530d68baSNigel Croxon 786530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 787530d68baSNigel Croxon 788530d68baSNigel Croxon2013-06-25 Nigel Croxon <nigel.croxon@hp.com> 789530d68baSNigel Croxon Fix compilation on x86_64 without HAVE_USE_MS_ABI 790530d68baSNigel Croxon make -C apps would fail on tcc.c because uefi_call_wrapper() 791530d68baSNigel Croxon doesn't deal correctly with efi_callO-type invocation. 792530d68baSNigel Croxon 793530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 794530d68baSNigel Croxon 795530d68baSNigel Croxon2013-06-12 Nigel Croxon <nigel.croxon@hp.com> 796530d68baSNigel Croxon Fix typo when disabling mno-mmx 797530d68baSNigel Croxon 798530d68baSNigel Croxon Signed-Off-By: Nigel Croxon <nigel.croxon@hp.com> 799530d68baSNigel Croxon 800530d68baSNigel Croxon2013-06-12 Nigel Croxon <nigel.croxon@hp.com> 801530d68baSNigel Croxon Disable MMX and SSE 802530d68baSNigel Croxon 803530d68baSNigel Croxon GCC 4.8.0 adds some optimizations that will use movups/movaps (and use 804530d68baSNigel Croxon %xmm* registers) when they're faster, and of course that won't work at 805530d68baSNigel Croxon all since UEFI firmwares aren't guaranteed to initialize the mmx/sse 806530d68baSNigel Croxon instructions. 807530d68baSNigel Croxon 808530d68baSNigel Croxon This will be even more annoying, since most UEFI firmwares don't 809530d68baSNigel Croxon initialize the #DE or #UD trap handlers, and your backtrace will be a 810530d68baSNigel Croxon random path through uninitialized memory, occasionally including 811530d68baSNigel Croxon whatever address the IDT has for #UD, but also addresses like "0x4" and 812530d68baSNigel Croxon "0x507" that you don't normally expect to see in your call path. 813530d68baSNigel Croxon 814530d68baSNigel Croxon Signed-off-by: Peter Jones <pjones@redhat.com> 815530d68baSNigel Croxon 816530d68baSNigel Croxon Author: Nigel Croxon <nigel.croxon@hp.com> 817530d68baSNigel Croxon Date: Wed Jun 12 10:29:40 2013 -0400 818530d68baSNigel Croxon 819530d68baSNigel Croxon bug in make 3.82 expand to odd values 820530d68baSNigel Croxon 821530d68baSNigel Croxon Some Makefiles tickle a bug in make 3.82 that cause libefi.a 822530d68baSNigel Croxon and libgnuefi.a dependencies to expand to the odd values: 823530d68baSNigel Croxon 824530d68baSNigel Croxon libefi.a: boxdraw.o) smbios.o) ... 825530d68baSNigel Croxon libgnuefi.a(reloc_x86_64.o: 826530d68baSNigel Croxon 827530d68baSNigel Croxon The patch replaces libgnuefi.a($(OBJS)) & libefi.a($(OBJS)) 828530d68baSNigel Croxon with an equivalent expansion that should work with any make 829530d68baSNigel Croxon that supports $(patsubst). 830530d68baSNigel Croxon 831530d68baSNigel Croxon Author: Nigel Croxon <nigel.croxon@hp.com> 832530d68baSNigel Croxon Date: Wed Jun 12 09:53:01 2013 -0400 833530d68baSNigel Croxon 834530d68baSNigel Croxon support .text.* sections on x86_64 835530d68baSNigel Croxon 836530d68baSNigel Croxon Group them in .text. Also add vague linkage sections in .text. 837530d68baSNigel Croxon 838530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 839530d68baSNigel Croxon 840530d68baSNigel Croxon Author: Nigel Croxon <nigel.croxon@hp.com> 841530d68baSNigel Croxon Date: Wed Jun 12 09:51:36 2013 -0400 842530d68baSNigel Croxon 843530d68baSNigel Croxon cleanup and fix Make.defaults 844530d68baSNigel Croxon 845530d68baSNigel Croxon Reorder variables in Make.defaults so that they are grouped by 846530d68baSNigel Croxon functions. Also fixed ifeq (x,y) to have required syntax and make it 847530d68baSNigel Croxon work for ARCH amd64->x86_64 renaming on BSD. Also provides top-level 848530d68baSNigel Croxon Makefile with a "mkvars" target that displays effective variables. 849530d68baSNigel Croxon 850530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 851530d68baSNigel Croxon 852530d68baSNigel Croxon Author: Nigel Croxon <nigel.croxon@hp.com> 853530d68baSNigel Croxon Date: Wed Jun 12 09:47:16 2013 -0400 854530d68baSNigel Croxon 855530d68baSNigel Croxon automatically determine number of uefi_call_wrapper() args on x86_64 856530d68baSNigel Croxon 857530d68baSNigel Croxon Instead of asking developers to explicitly pass the number of 858530d68baSNigel Croxon parameters to the functions that get called, we determine them 859530d68baSNigel Croxon automatically at preprocessing time. This should result in more 860530d68baSNigel Croxon robust code. 861530d68baSNigel Croxon 862530d68baSNigel Croxon Argument va_num is now ignored in x86_64 code, both with and 863530d68baSNigel Croxon without HAVE_USE_MS_ABI. 864530d68baSNigel Croxon 865530d68baSNigel Croxon Credits to the macro magic given in the comments. 866530d68baSNigel Croxon 867530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 868530d68baSNigel Croxon 869530d68baSNigel Croxon Author: Nigel Croxon <nigel.croxon@hp.com> 870530d68baSNigel Croxon Date: Wed Jun 12 09:38:10 2013 -0400 871530d68baSNigel Croxon 872530d68baSNigel Croxon fix parameter-passing corruption on x86_64 for >= 5 args 873530d68baSNigel Croxon 874530d68baSNigel Croxon On x86_64 without HAVE_USE_MS_ABI support, uefi_call_wrapper() is a 875530d68baSNigel Croxon variadic function. Parameters >=5 are copied to the stack and, when 876530d68baSNigel Croxon passed small immediate values (and possibly other parameters), gcc 877530d68baSNigel Croxon would emit a movl instruction before calling uefi_call_wrapper(). As a 878530d68baSNigel Croxon result, only the lower 32b of these stack values are significant, the 879530d68baSNigel Croxon upper 32b potentially contain garbage. Considering that 880530d68baSNigel Croxon uefi_call_wrapper() assumes these arguments are clean 64b values 881530d68baSNigel Croxon before calling the efi_callX() trampolines, the latter may be passed 882530d68baSNigel Croxon garbage. This makes calling functions like 883530d68baSNigel Croxon EFI_PCI_IO_PROTOCOL.Mem.Read()/Write() or BS->OpenProtocol() quite 884530d68baSNigel Croxon unreliable. 885530d68baSNigel Croxon 886530d68baSNigel Croxon This patch fixes this by turning uefi_call_wrapper() into a macro that 887530d68baSNigel Croxon allows to expose the efi_callX() trampoline signatures to the callers, 888530d68baSNigel Croxon so that gcc can know upfront that it has to pass all arguments to 889530d68baSNigel Croxon efi_callX() as clean 64b values (eg. movq for immediates). The 890530d68baSNigel Croxon _cast64_efi_callX macros are just here to avoid a gcc warning, they do 891530d68baSNigel Croxon nothing otherwise. 892530d68baSNigel Croxon 893530d68baSNigel Croxon Signed-off-by: David Decotigny <decot@googlers.com> 894530d68baSNigel Croxon 895530d68baSNigel Croxon Author: noxorc <nigel.croxon@hp.com> 896530d68baSNigel Croxon Date: Wed May 15 15:26:16 2013 -0400 897530d68baSNigel Croxon 898530d68baSNigel Croxon - Removes the ElfW() macro usage from reloc_ia32.c and reloc_x86_64.c. These 899530d68baSNigel Croxon macros only exist in link.h on Linux. On FreeBSD, the equivalent macro is 900530d68baSNigel Croxon __ElfN(). But the macro usage is redundant. You're only going to compile the 901530d68baSNigel Croxon ia32 file for IA32 binaries and the x86_64 file for X64 binaries. If you had 902530d68baSNigel Croxon just one file built for both cases, then using the macro might make more 903530d68baSNigel Croxon sense. 904530d68baSNigel Croxon 905530d68baSNigel Croxon - Removes the "#define foo_t efi_foo_t" macros from reloc_ia32.c and 906530d68baSNigel Croxon reloc_x86_64.c. 907530d68baSNigel Croxon 908530d68baSNigel Croxon - Modifies inc/x86_64/efibind.h and inc/ia32/efibind.h to use the new 909530d68baSNigel Croxon definitions for uint64_t, int64_t and int8_t. The 64-bit types are now defined 910530d68baSNigel Croxon as: 911530d68baSNigel Croxon 912530d68baSNigel Croxon typedef int __attribute__((__mode__(__DI__))) int64_t; 913530d68baSNigel Croxon typedef unsigned int __attribute__((__mode__(__DI__))) uint64_t; 914530d68baSNigel Croxon 915530d68baSNigel Croxon This removes the conflict between the host types dragged in by elf.h and the 916530d68baSNigel Croxon type definitions in efibind.h that made the #define foo_t efi_foo_t" hack 917530d68baSNigel Croxon necessary. Also, int8_t is now defined as signed char instead of just char 918530d68baSNigel Croxon (assuming char == signed char is apparently not good enough). 919530d68baSNigel Croxon 920530d68baSNigel Croxon - Also modifies these files to use stdint.h instead of stdint-gcc.h. It's 921530d68baSNigel Croxon unclear if this is completely correct, but stdint-gcc.h is not present with 922530d68baSNigel Croxon all GCC installs, and if you use -std=c99 or later you will force this case to 923530d68baSNigel Croxon be hit. This also can break clang, which doesn't have a stdint-gcc.h at all. 924530d68baSNigel Croxon 925530d68baSNigel Croxon - Removes the #include of <link.h> from reloc_ia32.c and reloc_x86_64.c (since 926530d68baSNigel Croxon with the previous changes it's not needed anymore). 927530d68baSNigel Croxon 928530d68baSNigel Croxon - Places the #include of <elf.h> after #include <efi>/#include <efilib.h> so 929530d68baSNigel Croxon that we know the types will always be defined properly, in case you build on a 930530d68baSNigel Croxon system where <elf.h> doesn't automatically pull in the right header files to 931530d68baSNigel Croxon define all the needed types. (This actually happens on VxWorks. It's harmless 932530d68baSNigel Croxon elsewhere. If you don't care about VxWorks, you can leave this out.) 933530d68baSNigel Croxon 934530d68baSNigel Croxon - Modifies setjmp_ia32.S and setjmp_x86_64.S so to change "function" to 935530d68baSNigel Croxon @function. The clang compiler doesn't like the former. Clang and GCC both like 936530d68baSNigel Croxon the latter. 937530d68baSNigel Croxon 938530d68baSNigel Croxon - Modifles Make.defaults so that if ARCH is detected as "amd64," it's changed 939530d68baSNigel Croxon to "x86_64." It happens that uname -m on 64-bit FreeBSD reports the former 940530d68baSNigel Croxon rather than the latter, which breaks the build. This may also be the case on 941530d68baSNigel Croxon some other OSes. There's a way to force uname(1) to return x86_64 as the 942530d68baSNigel Croxon machine type, but this way is a little friendlier. 943530d68baSNigel Croxon 944530d68baSNigel Croxon - Creates gnuefi/elf_ia32_fbsd_efi.lds which specifies the object file type as 945530d68baSNigel Croxon elf-ia32-freebsd. This is required for building on FreeBSD/i386, not just 946530d68baSNigel Croxon FreeBSD/amd64. 947530d68baSNigel Croxon 948530d68baSNigel Croxon - Modifies apps/Makefile to always use 949530d68baSNigel Croxon $(TOPDIR)/gnuefi/elf_$(ARCH)_fbsd_efi.lds when building on either 32-bit or 950530d68baSNigel Croxon 64-bit FreeBSD instead of just for the x86_64 case. 951530d68baSNigel Croxon 952530d68baSNigel Croxon - Changed LDFLAGS in Make.defaults to include --no-undefined. This will cause 953530d68baSNigel Croxon linking to fail if there are any unsatisfied symbols when creating foo.so 954530d68baSNigel Croxon during any of the app builds, as opposed to just silently succeeding and 955530d68baSNigel Croxon producing an unusable binary. 956530d68baSNigel Croxon 957530d68baSNigel Croxon - Changed CFLAGS to include -ffreestanding -fno-stack-protector -fno-stack- 958530d68baSNigel Croxon check. This prevents clang from inserting a call to memset() when compiling 959530d68baSNigel Croxon the RtZeroMem() and RtSetMem() routines in lib/runtime/efirtlib.c and guards 960530d68baSNigel Croxon against the native compiler in some Linux distros from adding in stack 961530d68baSNigel Croxon checking code which relies on libc help that isn't present in the EFI runtime 962530d68baSNigel Croxon environment. 963530d68baSNigel Croxon 964530d68baSNigel Croxon This does the following: 965530d68baSNigel Croxon 966530d68baSNigel Croxon - Cleans up the ia32 and x86-64 relocation code a bit (tries to break the 967530d68baSNigel Croxon dependency between the host ELF headers and the EFI runtime environment) 968530d68baSNigel Croxon - Avoids the dependency on stdint-gcc.h which may not always be available 969530d68baSNigel Croxon - Allows GNU EFI to build out of the box on both FreeBSD/i386 and 970530d68baSNigel Croxon FreeBSD/amd64 971530d68baSNigel Croxon - Allows GNU EFI to build out of the box with either GCC or clang on 972530d68baSNigel Croxon FreeBSD/i386 and FreeBSD/amd64 9.0 and later. 973530d68baSNigel Croxon - Makes things a little easier to port to VxWorks 974530d68baSNigel Croxon - Avoids creating un-runable binaries with unresolved symbol definitions 975530d68baSNigel Croxon (which can be very confusing to debug) 976530d68baSNigel Croxon 977530d68baSNigel Croxon Author: noxorc <nigel.croxon@hp.com> 978530d68baSNigel Croxon Date: Wed May 8 16:29:45 2013 -0400 979530d68baSNigel Croxon 980530d68baSNigel Croxon Add the definitions for TCP, UDP and IP, for both IPv4 and IPv6. 981530d68baSNigel Croxon 982530d68baSNigel Croxon 983530d68baSNigel Croxon2013-05-02 Nigel Croxon <nigel.croxon@hp.com> 984530d68baSNigel Croxon * Chnage from Matt Fleming <matt.fleming@intel.com> 985530d68baSNigel Croxon - Preparation for adding the networking protocol definitions. 986530d68baSNigel Croxon Add the service binding protocol. 987530d68baSNigel Croxon 988530d68baSNigel Croxon2013-02-21 Nigel Croxon <nigel.croxon@hp.com> 989530d68baSNigel Croxon * Change from Peter Jones <pjones@redhat.com> 990530d68baSNigel Croxon - Previously we were incorrectly passing 3 functions with 991530d68baSNigel Croxon the System V ABI to UEFI functions as EFI ABI functions. 992530d68baSNigel Croxon Mark them as EFIAPI so the compiler will (in our new 993530d68baSNigel Croxon GNU_EFI_USE_MS_ABI world) use the correct ABI. 994530d68baSNigel Croxon - These need to be EFIAPI functions because in some cases 995530d68baSNigel Croxon they call ST->ConOut->OutputString(), which is an EFIAPI 996530d68baSNigel Croxon function. (Which means that previously in cases that 997530d68baSNigel Croxon needed "cdecl", these didn't work right.) 998530d68baSNigel Croxon - If the compiler version is new enough, and GNU_EFI_USE_MS_ABI 999530d68baSNigel Croxon is defined, use the function attribute ms_abi on everything 1000530d68baSNigel Croxon defined with "EFIAPI". Such calls will no longer go through 1001530d68baSNigel Croxon efi_call*, and as such will be properly type-checked. 1002530d68baSNigel Croxon - Honor PREFIX and LIBDIR correctly when passed in during the build. 1003530d68baSNigel Croxon - Add machine type defines for i386, arm/thumb, ia64, ebc, x86_64. 1004530d68baSNigel Croxon - __STDC_VERSION__ never actually gets defined unless there's a 1005530d68baSNigel Croxon --std=... line. So we were accidentally defining lots of c99 1006530d68baSNigel Croxon types ourself. Since it's 2012, use --std=c11 where appropriate, 1007530d68baSNigel Croxon and if it's defined and we're using gcc, actually include gcc's 1008530d68baSNigel Croxon stdint definitions. 1009530d68baSNigel Croxon - New test application added: route80h. This is a test program 1010530d68baSNigel Croxon for PciIo. It routes ioport 80h on ICH10 to PCI. This is also 1011530d68baSNigel Croxon useful on a very limited set of hardware to enable use of 1012530d68baSNigel Croxon a port 80h debug card. 1013530d68baSNigel Croxon - New test applcation added: modelist. This lists video modes 1014530d68baSNigel Croxon the GOP driver is showing us. 1015530d68baSNigel Croxon * Change from Finnbarr Murphy 1016530d68baSNigel Croxon - https://sourceforge.net/p/gnu-efi/feature-requests/2/ 1017530d68baSNigel Croxon Please add the following status codes to <efierr.h> 1018530d68baSNigel Croxon EFI_INCOMPATIBLE_VERSION 25 1019530d68baSNigel Croxon EFI_SECURITY_VIOLATION 26 1020530d68baSNigel Croxon EFI_CRC_ERROR 27 1021530d68baSNigel Croxon EFI_END_OF_MEDIA 28 1022530d68baSNigel Croxon EFI_END_OF_FILE 31 1023530d68baSNigel Croxon EFI_INVALID_LANGUAGE 32 1024530d68baSNigel Croxon EFI_COMPROMISED_DATA 33 1025530d68baSNigel Croxon * Change from SourceForge.net Bug report 1026530d68baSNigel Croxon - https://sourceforge.net/p/gnu-efi/bugs/5/ 1027530d68baSNigel Croxon BufferSize is a UINT64 *. The file shipped with GNU EFI is from 1028530d68baSNigel Croxon 1998 whereas the latest one is from 2004. I suspect Intel changed 1029530d68baSNigel Croxon the API in order handle 64-bit systems. 1030530d68baSNigel Croxon * Change from Felipe Contreras <felipe.contreras@gmail.com> 1031530d68baSNigel Croxon - The current code seems to screw the stack at certain points. 1032530d68baSNigel Croxon Multiple people have complained that gummiboot hangs right away, 1033530d68baSNigel Croxon which is in part the fault of gummiboot, but happens only 1034530d68baSNigel Croxon because the stack gets screwed. x86_64 EFI already aligns the 1035530d68baSNigel Croxon stack, so there's no need for so much code to find a proper 1036530d68baSNigel Croxon alignment, we always need to shift by 8 anyway. 1037530d68baSNigel Croxon * Change from A. Steinmetz 1038530d68baSNigel Croxon - https://sourceforge.net/p/gnu-efi/patches/1/ 1039530d68baSNigel Croxon The patch prepares for elilo to support uefi pxe over ipv6 1040530d68baSNigel Croxon See uefi spec 2.3.1 errata c page 963 as reference. 1041530d68baSNigel Croxon Verfied on an ASUS Sabertooth X79 BIOS Rev. 2104 system which 1042530d68baSNigel Croxon is able to do an IPv6 UEFI PXE boot. 1043530d68baSNigel Croxon * Release 3.0t 1044530d68baSNigel Croxon 1045530d68baSNigel Croxon2012-09-21 Nigel Croxon <nigel.croxon@hp.com> 1046530d68baSNigel Croxon * Change from Peter Jones <pjones@redhat.com> 1047530d68baSNigel Croxon - EFI Block I/O protocol versions 2 and 3 provide more information 1048530d68baSNigel Croxon regarding physical disk layout, including alingment offset at the 1049530d68baSNigel Croxon beginning of the disk ("LowestAlignedLba"), logical block size 1050530d68baSNigel Croxon ("LogicalBlocksPerPhysicalBlock"), and optimal block transfer size 1051530d68baSNigel Croxon ("OptimalTransferLengthGranularity"). 1052530d68baSNigel Croxon * Release 3.0r 1053530d68baSNigel Croxon 1054530d68baSNigel Croxon2012-04-30 Nigel Croxon <nigel.croxon@hp.com> 1055530d68baSNigel Croxon * Change from Matt Fleming <matt.fleming@intel.com> 1056530d68baSNigel Croxon - The .reloc section is now 4096-byte boundary for x86_64. 1057530d68baSNigel Croxon Without this patch the .reloc section will not adhere to 1058530d68baSNigel Croxon the alignment value in the FileAlignment field (512 bytes by 1059530d68baSNigel Croxon default) of the PE/COFF header. This results in a signed 1060530d68baSNigel Croxon executable failing to boot in a secure boot environment. 1061530d68baSNigel Croxon * Release 3.0q 1062530d68baSNigel Croxon 1063530d68baSNigel Croxon2011-12-12 Nigel Croxon <nigel.croxon@hp.com> 1064530d68baSNigel Croxon * Changes from Fenghua Yu <fenghua.yu@intel.com> 1065530d68baSNigel Croxon - This fixes redefined types compilation failure for tcc.c on x86_64 machines. 1066530d68baSNigel Croxon * Release 3.0p 1067530d68baSNigel Croxon 1068530d68baSNigel Croxon2011-11-15 Nigel Croxon <nigel.croxon@hp.com> 1069530d68baSNigel Croxon * Changes from Darren Hart <dvhart@linux.intel.com> 1070530d68baSNigel Croxon - Conditionally assign toolchain binaries to allow overriding them. 1071530d68baSNigel Croxon - Force a dependency on lib for gnuefi. 1072530d68baSNigel Croxon * Release 3.0n 1073530d68baSNigel Croxon 1074530d68baSNigel Croxon2011-08-23 Nigel Croxon <nigel.croxon@hp.com> 1075530d68baSNigel Croxon * Changes from Peter Jones <pjones@redhat.com> 1076530d68baSNigel Croxon - Add guarantee 16-byte stack alignment on x86_64. 1077530d68baSNigel Croxon - Add routine to make callbacks work. 1078530d68baSNigel Croxon - Add apps/tcc.efi to test calling convention. 1079530d68baSNigel Croxon * Release 3.0m 1080530d68baSNigel Croxon 1081530d68baSNigel Croxon2011-07-22 Nigel Croxon <nigel.croxon@hp.com> 1082530d68baSNigel Croxon * Changed Makefiles from GPL to BSD. 1083530d68baSNigel Croxon * Changes from Peter Jones <pjones@redhat.com> 1084530d68baSNigel Croxon - Add ifdefs for ia64 to mirror ia32 and x86-64 so that 1085530d68baSNigel Croxon one can build with GCC. 1086530d68baSNigel Croxon - Add headers for PciIo. 1087530d68baSNigel Croxon - Add the UEFI 2.x bits for EFI_BOOT_SERVICES 1088530d68baSNigel Croxon - Add an ignore for .note.GNU-stack section in X86-64 linker maps. 1089530d68baSNigel Croxon * Release 3.0l 1090530d68baSNigel Croxon 1091530d68baSNigel Croxon2011-04-07 Nigel Croxon <nigel.croxon@hp.com> 1092530d68baSNigel Croxon * Change license from GPL to BSD. 1093530d68baSNigel Croxon * Release 3.0j 1094530d68baSNigel Croxon 1095530d68baSNigel Croxon2009-09-12 Julien BLACHE <jb@jblache.org> 1096530d68baSNigel Croxon * Add support for FreeBSD. 1097530d68baSNigel Croxon * Release 3.0i 1098530d68baSNigel Croxon 1099530d68baSNigel Croxon2009-09-11 Julien BLACHE <jb@jblache.org> 1100530d68baSNigel Croxon * Fix elf_ia32_efi.lds linker script to be compatible with the new 1101530d68baSNigel Croxon linker behaviour. Patch from the RedHat bugzilla 492183. 1102530d68baSNigel Croxon 1103530d68baSNigel Croxon2009-06-18 Nigel Croxon <nigel.croxon@hp.com> 1104530d68baSNigel Croxon * Release 3.0h 1105530d68baSNigel Croxon 1106530d68baSNigel Croxon2008-11-06 Nigel Croxon <nigel.croxon@hp.com> 1107530d68baSNigel Croxon * Fix to not having any relocations at all. 1108530d68baSNigel Croxon 1109530d68baSNigel Croxon2008-09-18 Nigel Croxon <nigel.croxon@hp.com> 1110530d68baSNigel Croxon * Use LIBDIR in makefiles 1111530d68baSNigel Croxon * Add setjmp/longjmp 1112530d68baSNigel Croxon * Fixes incorrect section attribute in crt0-efi-ia32.S 1113530d68baSNigel Croxon * Adds value EfiResetShutdown to enum EFI_RESET_TYPE 1114530d68baSNigel Croxon * Fixes a RAW warning in reloc_ia64.S 1115530d68baSNigel Croxon * Adds the USB HCI device path structure in the headers 1116530d68baSNigel Croxon patches were supplied by Peter Jones @ RedHat 1117530d68baSNigel Croxon 1118530d68baSNigel Croxon2008-02-22 Nigel Croxon <nigel.croxon@hp.com> 1119530d68baSNigel Croxon * Added '-mno-red-zone' to x68_64 compiles. 1120530d68baSNigel Croxon Patch provided by Mats Andersson. 1121530d68baSNigel Croxon 1122530d68baSNigel Croxon2008-01-23 Nigel Croxon <nigel.croxon@hp.com> 1123530d68baSNigel Croxon * release 3.0e to support x86_64 1124530d68baSNigel Croxon EFI calling convention, the stack should be aligned in 16 bytes 1125530d68baSNigel Croxon to make it possible to use SSE2 in EFI boot services. 1126530d68baSNigel Croxon This patch fixes this issue. Patch provided by Huang Ying from Intel. 1127530d68baSNigel Croxon 1128530d68baSNigel Croxon2007-05-11 Nigel Croxon <nigel.croxon@hp.com> 1129530d68baSNigel Croxon * release 3.0d to support x86_64 from Chandramouli Narayanan 1130530d68baSNigel Croxon from Intel and based on 3.0c-1 1131530d68baSNigel Croxon 1132530d68baSNigel Croxon2006-03-21 Stephane Eranian <eranian@hpl.hp.com> 1133530d68baSNigel Croxon * merged patch to support gcc-4.1 submitted by 1134530d68baSNigel Croxon Raymund Will from Novell/SuSE 1135530d68baSNigel Croxon 1136530d68baSNigel Croxon2006-03-20 Stephane Eranian <eranian@hpl.hp.com> 1137530d68baSNigel Croxon * updated ia-64 and ia-32 linker scripts to 1138530d68baSNigel Croxon match latest gcc. The new gcc may put functions in 1139530d68baSNigel Croxon .text* sections. patch submitted by H.J. Lu from Intel. 1140530d68baSNigel Croxon 1141530d68baSNigel Croxon2004-11-19 Stephane Eranian <eranian@hpl.hp.com> 1142530d68baSNigel Croxon * added patch to ignore .eh_frame section for IA-32. Patch 1143530d68baSNigel Croxon submitted by Jim Wilson 1144530d68baSNigel Croxon 1145530d68baSNigel Croxon2004-09-23 Stephane Eranian <eranian@hpl.hp.com> 1146530d68baSNigel Croxon * added patch to discard unwind sections, newer toolchains 1147530d68baSNigel Croxon complained about them. Patch submitted by Jesse Barnes from SGI. 1148530d68baSNigel Croxon 1149530d68baSNigel Croxon2003-09-29 Stephane Eranian <eranian@hpl.hp.com> 1150530d68baSNigel Croxon * updated elf_ia64_efi.lds to reflect new data sections 1151530d68baSNigel Croxon created by gcc-3.3. Patch provided by Andreas Schwab from Suse. 1152530d68baSNigel Croxon 1153530d68baSNigel Croxon2003-06-20 Stephane Eranian <eranian@hpl.hp.com> 1154530d68baSNigel Croxon * updated elf_ia64_efi.lds and elf_ia32_efi.lds to include 1155530d68baSNigel Croxon new types data sections produced by recent version of gcc-3.x 1156530d68baSNigel Croxon 1157530d68baSNigel Croxon2002-02-22 Stephane Eranian <eranian@hpl.hp.com> 1158530d68baSNigel Croxon * release 3.0a 1159530d68baSNigel Croxon * modified both IA-64 and IA-32 loader scripts to add support for the 1160530d68baSNigel Croxon new .rodata sections names (such as rodata.str2.8). Required 1161530d68baSNigel Croxon for new versions of gcc3.x. 1162530d68baSNigel Croxon 1163530d68baSNigel Croxon2001-06-20 Stephane Eranian <eranian@hpl.hp.com> 1164530d68baSNigel Croxon * release 3.0 1165530d68baSNigel Croxon * split gnu-efi package in two different packages: the libary+include+crt and the bootloader. 1166530d68baSNigel Croxon * removed W2U() hack and related files to get from wide-char to unicode. 1167530d68baSNigel Croxon * Use -fshort-wchar option for unicode. 1168530d68baSNigel Croxon * restructured Makefiles now install under INSTALLROOT. 1169530d68baSNigel Croxon 1170530d68baSNigel Croxon2001-04-06 Stephane Eranian <eranian@hpl.hp.com> 1171530d68baSNigel Croxon 1172530d68baSNigel Croxon * incorporated patches from David and Michael Johnston at Intel 1173530d68baSNigel Croxon to get the package to compile for IA-32 linux target. 1174530d68baSNigel Croxon 1175530d68baSNigel Croxon * Fixed ELILO to compile for Ia-32 (does not execute yet, though): 1176530d68baSNigel Croxon Makefile and start_kernel() function. 1177530d68baSNigel Croxon 1178530d68baSNigel Croxon2001-04-06 Andreas Schwab <schwab@suse.de> 1179530d68baSNigel Croxon 1180530d68baSNigel Croxon * Fixed config.c to 1181530d68baSNigel Croxon get the timeout directive to do something. implemented the global 1182530d68baSNigel Croxon root= directive. 1183530d68baSNigel Croxon 1184530d68baSNigel Croxon * Fix the efi_main() to deal with the -C option properly 1185530d68baSNigel Croxon 1186530d68baSNigel Croxon2001-04-05 Stephane Eranian <eranian@hpl.hp.com> 1187530d68baSNigel Croxon 1188530d68baSNigel Croxon * update efi library to latest EFI toolkit 1.02 as distributed 1189530d68baSNigel Croxon by Intel. Fixed header + library files to compile with GCC 1190530d68baSNigel Croxon 1191530d68baSNigel Croxon * merged ELI and LILO (as of gnu-efi-1.1) together, mostly 1192530d68baSNigel Croxon taking the config file feature of ELI. 1193530d68baSNigel Croxon 1194530d68baSNigel Croxon * renamed LILO to ELILO to make the distinction 1195530d68baSNigel Croxon 1196530d68baSNigel Croxon * restructured code to make it easier to understand and maintain 1197530d68baSNigel Croxon 1198530d68baSNigel Croxon * fixed FPSWA driver checking and loading: we try all possible 1199530d68baSNigel Croxon files and let the driver itself figure out if it is the most 1200530d68baSNigel Croxon recent. 1201530d68baSNigel Croxon * added support for compression (gzip) but keep support for plain 1202530d68baSNigel Croxon ELF image. ELILO autodetects the format 1203530d68baSNigel Croxon 1204530d68baSNigel Croxon * change the way the kernel is invoked. Now we call it in 1205530d68baSNigel Croxon physical memory mode. This breaks the dependency between the 1206530d68baSNigel Croxon kernel code and the loader. No more lilo_start.c madness. 1207530d68baSNigel Croxon 1208530d68baSNigel Croxon * changed the way the boot_params are passed. We don't use the 1209530d68baSNigel Croxon ZERO_PAGE_ADDR trick anymore. Instead we use EFI runtime memory. 1210530d68baSNigel Croxon The address of the structure is passed to the kernel in r28 1211530d68baSNigel Croxon by our convention. 1212530d68baSNigel Croxon 1213530d68baSNigel Croxon * released as gnu-efi-2.0 1214530d68baSNigel Croxon 1215530d68baSNigel Croxon2001-04-03 David Mosberger <davidm@hpl.hp.com> 1216530d68baSNigel Croxon 1217530d68baSNigel Croxon * gnuefi/reloc_ia32.c (_relocate): Change return type from "void" 1218530d68baSNigel Croxon to "int". Return error status if relocation fails for some 1219530d68baSNigel Croxon reason. 1220530d68baSNigel Croxon 1221530d68baSNigel Croxon * gnuefi/elf_ia32_efi.lds: Drop unneeded ".rel.reloc" section. 1222530d68baSNigel Croxon 1223530d68baSNigel Croxon * gnuefi/crt0-efi-ia32.S (_start): Exit if _relocate() returns with 1224530d68baSNigel Croxon non-zero exit status. 1225530d68baSNigel Croxon 1226530d68baSNigel Croxon * inc/ia32/efibind.h [__GNUC__]: Force 8-byte alignment for 64-bit 1227530d68baSNigel Croxon types as that is what EFI appears to be expecting, despite the 1228530d68baSNigel Croxon "#pragma pack()" at the beginning of the file! 1229530d68baSNigel Croxon 1230530d68baSNigel Croxon2001-03-29 David Mosberger <davidm@hpl.hp.com> 1231530d68baSNigel Croxon 1232530d68baSNigel Croxon * gnuefi/reloc_ia32.c: Add a couple of defines to work around 1233530d68baSNigel Croxon libc/efilib collision on uint64_t et al. 1234530d68baSNigel Croxon (_relocate): Use ELF32_R_TYPE() instead of ELFW(R_TYPE)(). 1235530d68baSNigel Croxon 1236530d68baSNigel Croxon * gnuefi/crt0-efi-ia32.S (dummy): Add a dummy relocation entry. 1237530d68baSNigel Croxon 1238530d68baSNigel Croxon2001-03-29 David Mosberger <davidm@hpl.hp.com> 1239530d68baSNigel Croxon 1240530d68baSNigel Croxon * gnuefi/reloc_ia32.c: Add a couple of defines to work around 1241530d68baSNigel Croxon libc/efilib collision on uint64_t et al. 1242530d68baSNigel Croxon (_relocate): Use ELF32_R_TYPE() instead of ELFW(R_TYPE)(). 1243530d68baSNigel Croxon 1244530d68baSNigel Croxon * gnuefi/crt0-efi-ia32.S (dummy): Add a dummy relocation entry. 1245530d68baSNigel Croxon 1246530d68baSNigel Croxon2000-10-26 David Mosberger <davidm@hpl.hp.com> 1247530d68baSNigel Croxon 1248530d68baSNigel Croxon * gnuefi/elf_ia64_efi.lds: Mention .rela.sdata. 1249530d68baSNigel Croxon 1250530d68baSNigel Croxon * Make.defaults (CFLAGS): Remove -nostdinc flags so we can pick 1251530d68baSNigel Croxon up the C compiler's stdarg.h. 1252530d68baSNigel Croxon 1253530d68baSNigel Croxon * inc/stdarg.h: Remove this file. It's not correct for gcc (nor 1254530d68baSNigel Croxon most other optimizing compilers). 1255530d68baSNigel Croxon 1256530d68baSNigel Croxon2000-10-10 Stephane Eranian <eranian@hpl.hp.com> 1257530d68baSNigel Croxon 1258530d68baSNigel Croxon * cleaned up the error message and printing of those. 1259530d68baSNigel Croxon * added support to load the FPSWA from a file in case support is not 1260530d68baSNigel Croxon present in the firmware already 1261530d68baSNigel Croxon * fixed split_args() to do the right thing when you have leading spaces 1262530d68baSNigel Croxon before kernel name 1263530d68baSNigel Croxon * changed the argify() function to rely on \0 instead of LoadOptionSize 1264530d68baSNigel Croxon as the field seems to be broken with current firmware 1265530d68baSNigel Croxon * bumped version to 1.0 1266530d68baSNigel Croxon 1267530d68baSNigel Croxon2000-10-04 David Mosberger <davidm@hpl.hp.com> 1268530d68baSNigel Croxon 1269530d68baSNigel Croxon * gnuefi/reloc_ia64.S: Reserve space for up to 750 function descriptors. 1270530d68baSNigel Croxon 1271530d68baSNigel Croxon * gnuefi/elf_ia64_efi.lds: Add .sdata section for small data and 1272530d68baSNigel Croxon put __gp in the "middle" of it. 1273530d68baSNigel Croxon 1274530d68baSNigel Croxon * gnuefi/crt0-efi-ia64.S (_start): Use movl/add to load 1275530d68baSNigel Croxon gp-relative addresses that could be out of the range of the addl 1276530d68baSNigel Croxon offset. 1277530d68baSNigel Croxon * gnuefi/reloc_ia64.S (_relocate): Ditto. 1278530d68baSNigel Croxon 1279530d68baSNigel Croxon * apps/Makefile: Remove standard rules and include Make.rules instead. 1280530d68baSNigel Croxon * lilo/Makefile: Ditto. 1281530d68baSNigel Croxon 1282530d68baSNigel Croxon * Make.rules: New file. 1283530d68baSNigel Croxon 1284530d68baSNigel Croxon2000-08-04 Stephane Eranian <eranian@hpl.hp.com> 1285530d68baSNigel Croxon * released version 0.9 1286530d68baSNigel Croxon * incorporated ACPI changes for Asuza by NEC < kouchi@hpc.bs1.fc.nec.co.jp> 1287530d68baSNigel Croxon * added support for initrd (-i option) original ELI code from Bill Nottingham <notting@redhat.com>) 1288530d68baSNigel Croxon * lots of cleanups 1289530d68baSNigel Croxon * got rid of #ifdef LILO_DEBUG and uses macro instead 1290530d68baSNigel Croxon * fix a few extra memory leaks in create_boot_params() 1291530d68baSNigel Croxon * added exit capability just before starting the kernel 1292530d68baSNigel Croxon 1293530d68baSNigel Croxon2000-06-22 David Mosberger <davidm@hpl.hp.com> 1294530d68baSNigel Croxon 1295530d68baSNigel Croxon * gnuefi/elf_ia64_efi.lds: Add .srodata, .ctors, .IA64.unwind, 1296530d68baSNigel Croxon .IA64.unwind_info to .data section and .rela.ctors to .rela 1297530d68baSNigel Croxon section. 1298530d68baSNigel Croxon 1299530d68baSNigel Croxon2000-04-03 David Mosberger <davidm@hpl.hp.com> 1300530d68baSNigel Croxon 1301530d68baSNigel Croxon * lilo/lilo.c (LILO_VERSION): Up version number to 0.9. 1302530d68baSNigel Croxon 1303530d68baSNigel Croxon * gnuefi/elf_ia64_efi.lds: Include .IA_64.unwind and 1304530d68baSNigel Croxon .IA_64.unwind_info in .data segment to avoid EFI load error 1305530d68baSNigel Croxon "ImageAddress: pointer outside of image" error due to the .dynsym 1306530d68baSNigel Croxon relocations against these sections. 1307530d68baSNigel Croxon 1308530d68baSNigel Croxon * ChangeLog: Moved from lilo/ChangeLogs. 1309530d68baSNigel Croxon 1310530d68baSNigel Croxon * gnuefi/reloc_ia64.S: fixed typo: .space directive had constant 1311530d68baSNigel Croxon 100 hardcoded instead of using MAX_FUNCTION_DESCRIPTORS 1312530d68baSNigel Croxon macro. Duh. 1313530d68baSNigel Croxon 1314530d68baSNigel Croxon2000-03-17 Stephane Eranian <eranian@hpl.hp.com> 1315530d68baSNigel Croxon 1316530d68baSNigel Croxon * Released 0.8 1317530d68baSNigel Croxon * replace the getopt.c with new version free with better license 1318530d68baSNigel Croxon * created a documentation file 1319530d68baSNigel Croxon * fix a couple of memory leaks 1320530d68baSNigel Croxon * code cleanups 1321530d68baSNigel Croxon * created a separate directory for lilo in the gnu-efi package. 1322530d68baSNigel Croxon * added support for the BOOT_IMAGE argument to kernel 1323530d68baSNigel Croxon * default is to build natively now 1324530d68baSNigel Croxon 1325