~ubuntu-branches/ubuntu/vivid/syslinux/vivid-proposed

« back to all changes in this revision

Viewing changes to gnu-efi/gnu-efi-3.0/ChangeLog

  • Committer: Package Import Robot
  • Author(s): Daniel Baumann
  • Date: 2014-06-14 10:55:07 UTC
  • mfrom: (1.3.17)
  • Revision ID: package-import@ubuntu.com-20140614105507-2sh4czic7un5snhd
Tags: 3:6.03~pre14+dfsg-1
* Correcting spelling mistakes for os-prober integration, thanks to
  Zlatko Calusic <zcalusic@bitsync.net> (Closes: #748786).
* Moving isohybrid from isolinux to syslinux-utils for consistency.
* Adding extlinux NEWS file to document bootloader integration in
  syslinux-stuff (Closes: #748689).
* Merging upstream version 6.03~pre14+dfsg.
* Dropping nonx86.patch, included upstream.
* Building with embedded gnu-efi.
* Building with gcc-4.8.
* Updating years copyright notices in debian files.
* Dropping debian specific memdiskfind manpage for newly added upstream
  one.
* Dropping debian specific isohybrid manpage for newly added upstream
  one.
* Updating todo file.
* Updating readme file.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
2014-01-13 Nigel Croxon <nigel.croxon@hp.com>
 
2
   Implement VSPrint function, prints a formatted unicode string to a buffer.
 
3
       
 
4
    Signed-off-by: Jeremy Compostella <jeremy.compostella@gmail.com>
 
5
    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
 
6
 
 
7
2014-01-10 Nigel Croxon <nigel.croxon@hp.com>
 
8
    Created lib/argify.c and inc/argify.h containing the function argify.
 
9
    It contains verbatim copy of the comment at beginning of file from
 
10
    elilo.
 
11
    There was no COPYING file in the elilo source that the comment refers to.
 
12
 
 
13
    Signed-off-by: Jerry Hoemann <jerry.hoemann@hp.com>
 
14
    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
 
15
 
 
16
2014-01-08 Nigel Croxon <nigel.croxon@hp.com>
 
17
    The information needed is not really the host architecture as given by
 
18
    the kernel arch. The information actually needed is the default target
 
19
    of gcc.
 
20
                
 
21
    Signed-off-by: Sylvain Gault <sylvain.gault@gmail.com>
 
22
    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
 
23
 
 
24
2013-10-11 Nigel Croxon <nigel.croxon@hp.com>
 
25
    Added support for SetVariable to store volatile variable,
 
26
    and SetNVVariable to store non volatile variable.
 
27
            
 
28
    Signed-off-by: Sylvain Chouleur <sylvain.chouleur@gmail.com>
 
29
    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
 
30
 
 
31
2013-10-07 Nigel Croxon <nigel.croxon@hp.com>
 
32
 
 
33
    Atoi needs to have consistent declaration/definition.
 
34
    
 
35
    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
 
36
 
 
37
2013-10-07 Nigel Croxon <nigel.croxon@hp.com>
 
38
    if you have a function that takes const arguments and then
 
39
    e.g. tries to copy StrCmp, gcc will give you warnings about those
 
40
    calls, and the warnings are right.  These clutter up other things
 
41
    you might miss that you should be more concered about.
 
42
 
 
43
    You could work around it through vigorous typecasting
 
44
    to non-const types, but why should you have to? All of these
 
45
    functions are regorously defined as not changing their input
 
46
    - it is const, and should be marked as such.
 
47
 
 
48
    Signed-off-by: Peter Jones <pjones@redhat.com>
 
49
 
 
50
2013-10-02 Nigel Croxon <nigel.croxon@hp.com>
 
51
 
 
52
    Added two simple applications to allocate/free memory at EFI.
 
53
    Used to test/find memory fragmentation issues linux.
 
54
            
 
55
    Signed-off-by: Jerry Hoemann <jerry.hoemann@hp.com>
 
56
    Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
 
57
 
 
58
2013-06-25 Nigel Croxon <nigel.croxon@hp.com>
 
59
    Sample boot service driver.
 
60
        
 
61
    Signed-off-by: David Decotigny <decot@googlers.com>
 
62
 
 
63
2013-06-25 Nigel Croxon <nigel.croxon@hp.com>
 
64
Date:   Tue Jun 25 08:47:03 2013 -0400
 
65
 
 
66
    Be more pedantic when linking, don't allow duplicate symbols,
 
67
    abort upon first error. Also make sure linker script comes 
 
68
    last for apps.
 
69
 
 
70
    Signed-off-by: David Decotigny <decot@googlers.com>
 
71
 
 
72
2013-06-25 Nigel Croxon <nigel.croxon@hp.com>
 
73
    Fix compilation on x86_64 without HAVE_USE_MS_ABI
 
74
    make -C apps would fail on tcc.c because uefi_call_wrapper()
 
75
    doesn't deal correctly with efi_callO-type invocation.
 
76
 
 
77
    Signed-off-by: David Decotigny <decot@googlers.com>
 
78
 
 
79
2013-06-12 Nigel Croxon <nigel.croxon@hp.com>
 
80
    Fix typo when disabling mno-mmx
 
81
        
 
82
    Signed-Off-By: Nigel Croxon <nigel.croxon@hp.com>
 
83
 
 
84
2013-06-12 Nigel Croxon <nigel.croxon@hp.com>
 
85
    Disable MMX and SSE
 
86
    
 
87
    GCC 4.8.0 adds some optimizations that will use movups/movaps (and use
 
88
    %xmm* registers) when they're faster, and of course that won't work at
 
89
    all since UEFI firmwares aren't guaranteed to initialize the mmx/sse
 
90
    instructions.
 
91
    
 
92
    This will be even more annoying, since most UEFI firmwares don't
 
93
    initialize the #DE or #UD trap handlers, and your backtrace will be a
 
94
    random path through uninitialized memory, occasionally including
 
95
    whatever address the IDT has for #UD, but also addresses like "0x4" and
 
96
    "0x507" that you don't normally expect to see in your call path.
 
97
    
 
98
    Signed-off-by: Peter Jones <pjones@redhat.com>
 
99
 
 
100
    Author: Nigel Croxon <nigel.croxon@hp.com>
 
101
    Date:   Wed Jun 12 10:29:40 2013 -0400
 
102
 
 
103
    bug in make 3.82 expand to odd values
 
104
    
 
105
    Some Makefiles tickle a bug in make 3.82 that cause libefi.a
 
106
    and libgnuefi.a dependencies to expand to the odd values:
 
107
    
 
108
    libefi.a: boxdraw.o) smbios.o) ...
 
109
    libgnuefi.a(reloc_x86_64.o:
 
110
    
 
111
    The patch replaces libgnuefi.a($(OBJS)) & libefi.a($(OBJS))
 
112
    with an equivalent expansion that should work with any make
 
113
    that supports $(patsubst).
 
114
 
 
115
    Author: Nigel Croxon <nigel.croxon@hp.com>
 
116
    Date:   Wed Jun 12 09:53:01 2013 -0400
 
117
 
 
118
    support .text.* sections on x86_64
 
119
    
 
120
    Group them in .text. Also add vague linkage sections in .text.
 
121
    
 
122
    Signed-off-by: David Decotigny <decot@googlers.com>
 
123
 
 
124
    Author: Nigel Croxon <nigel.croxon@hp.com>
 
125
    Date:   Wed Jun 12 09:51:36 2013 -0400
 
126
 
 
127
    cleanup and fix Make.defaults
 
128
    
 
129
    Reorder variables in Make.defaults so that they are grouped by
 
130
    functions. Also fixed ifeq (x,y) to have required syntax and make it
 
131
    work for ARCH amd64->x86_64 renaming on BSD. Also provides top-level
 
132
    Makefile with a "mkvars" target that displays effective variables.
 
133
    
 
134
    Signed-off-by: David Decotigny <decot@googlers.com>
 
135
 
 
136
    Author: Nigel Croxon <nigel.croxon@hp.com>
 
137
    Date:   Wed Jun 12 09:47:16 2013 -0400
 
138
 
 
139
    automatically determine number of uefi_call_wrapper() args on x86_64
 
140
    
 
141
    Instead of asking developers to explicitly pass the number of
 
142
    parameters to the functions that get called, we determine them
 
143
    automatically at preprocessing time. This should result in more
 
144
    robust code.
 
145
    
 
146
    Argument va_num is now ignored in x86_64 code, both with and
 
147
    without HAVE_USE_MS_ABI.
 
148
    
 
149
    Credits to the macro magic given in the comments.
 
150
    
 
151
    Signed-off-by: David Decotigny <decot@googlers.com>
 
152
 
 
153
    Author: Nigel Croxon <nigel.croxon@hp.com>
 
154
    Date:   Wed Jun 12 09:38:10 2013 -0400
 
155
 
 
156
    fix parameter-passing corruption on x86_64 for >= 5 args
 
157
    
 
158
    On x86_64 without HAVE_USE_MS_ABI support, uefi_call_wrapper() is a
 
159
    variadic function. Parameters >=5 are copied to the stack and, when
 
160
    passed small immediate values (and possibly other parameters), gcc
 
161
    would emit a movl instruction before calling uefi_call_wrapper(). As a
 
162
    result, only the lower 32b of these stack values are significant, the
 
163
    upper 32b potentially contain garbage. Considering that
 
164
    uefi_call_wrapper() assumes these arguments are clean 64b values
 
165
    before calling the efi_callX() trampolines, the latter may be passed
 
166
    garbage. This makes calling functions like
 
167
    EFI_PCI_IO_PROTOCOL.Mem.Read()/Write() or BS->OpenProtocol() quite
 
168
    unreliable.
 
169
    
 
170
    This patch fixes this by turning uefi_call_wrapper() into a macro that
 
171
    allows to expose the efi_callX() trampoline signatures to the callers,
 
172
    so that gcc can know upfront that it has to pass all arguments to
 
173
    efi_callX() as clean 64b values (eg. movq for immediates). The
 
174
    _cast64_efi_callX macros are just here to avoid a gcc warning, they do
 
175
    nothing otherwise.
 
176
    
 
177
    Signed-off-by: David Decotigny <decot@googlers.com>
 
178
 
 
179
    Author: noxorc <nigel.croxon@hp.com>
 
180
    Date:   Wed May 15 15:26:16 2013 -0400
 
181
 
 
182
    - Removes the ElfW() macro usage from reloc_ia32.c and reloc_x86_64.c. These
 
183
    macros only exist in link.h on Linux. On FreeBSD, the equivalent macro is
 
184
    __ElfN(). But the macro usage is redundant. You're only going to compile the
 
185
    ia32 file for IA32 binaries and the x86_64 file for X64 binaries. If you had
 
186
    just one file built for both cases, then using the macro might make more
 
187
    sense.
 
188
    
 
189
    - Removes the "#define foo_t efi_foo_t" macros from reloc_ia32.c and
 
190
    reloc_x86_64.c.
 
191
    
 
192
    - Modifies inc/x86_64/efibind.h and inc/ia32/efibind.h to use the new
 
193
    definitions for uint64_t, int64_t and int8_t. The 64-bit types are now defined
 
194
    as:
 
195
    
 
196
            typedef int __attribute__((__mode__(__DI__)))           int64_t;
 
197
            typedef unsigned int __attribute__((__mode__(__DI__)))  uint64_t;
 
198
    
 
199
    This removes the conflict between the host types dragged in by elf.h and the
 
200
    type definitions in efibind.h that made the #define foo_t efi_foo_t" hack
 
201
    necessary. Also, int8_t is now defined as signed char instead of just char
 
202
    (assuming char == signed char is apparently not good enough).
 
203
    
 
204
    - Also modifies these files to use stdint.h instead of stdint-gcc.h. It's
 
205
    unclear if this is completely correct, but stdint-gcc.h is not present with
 
206
    all GCC installs, and if you use -std=c99 or later you will force this case to
 
207
    be hit. This also can break clang, which doesn't have a stdint-gcc.h at all.
 
208
    
 
209
    - Removes the #include of <link.h> from reloc_ia32.c and reloc_x86_64.c (since
 
210
    with the previous changes it's not needed anymore).
 
211
    
 
212
    - Places the #include of <elf.h> after #include <efi>/#include <efilib.h> so
 
213
    that we know the types will always be defined properly, in case you build on a
 
214
    system where <elf.h> doesn't automatically pull in the right header files to
 
215
    define all the needed types. (This actually happens on VxWorks. It's harmless
 
216
    elsewhere. If you don't care about VxWorks, you can leave this out.)
 
217
    
 
218
    - Modifies setjmp_ia32.S and setjmp_x86_64.S so to change "function" to
 
219
    @function. The clang compiler doesn't like the former. Clang and GCC both like
 
220
    the latter.
 
221
    
 
222
    - Modifles Make.defaults so that if ARCH is detected as "amd64," it's changed
 
223
    to "x86_64." It happens that uname -m on 64-bit FreeBSD reports the former
 
224
    rather than the latter, which breaks the build. This may also be the case on
 
225
    some other OSes. There's a way to force uname(1) to return x86_64 as the
 
226
    machine type, but this way is a little friendlier.
 
227
    
 
228
    - Creates gnuefi/elf_ia32_fbsd_efi.lds which specifies the object file type as
 
229
    elf-ia32-freebsd. This is required for building on FreeBSD/i386, not just
 
230
    FreeBSD/amd64.
 
231
    
 
232
    - Modifies apps/Makefile to always use
 
233
    $(TOPDIR)/gnuefi/elf_$(ARCH)_fbsd_efi.lds when building on either 32-bit or
 
234
    64-bit FreeBSD instead of just for the x86_64 case.
 
235
    
 
236
    - Changed LDFLAGS in Make.defaults to include --no-undefined. This will cause
 
237
    linking to fail if there are any unsatisfied symbols when creating foo.so
 
238
    during any of the app builds, as opposed to just silently succeeding and
 
239
    producing an unusable binary.
 
240
    
 
241
    - Changed CFLAGS to include -ffreestanding -fno-stack-protector -fno-stack-
 
242
    check. This prevents clang from inserting a call to memset() when compiling
 
243
    the RtZeroMem() and RtSetMem() routines in lib/runtime/efirtlib.c and guards
 
244
    against the native compiler in some Linux distros from adding in stack
 
245
    checking code which relies on libc help that isn't present in the EFI runtime
 
246
    environment.
 
247
    
 
248
    This does the following:
 
249
    
 
250
    - Cleans up the ia32 and x86-64 relocation code a bit (tries to break the
 
251
    dependency between the host ELF headers and the EFI runtime environment)
 
252
    - Avoids the dependency on stdint-gcc.h which may not always be available
 
253
    - Allows GNU EFI to build out of the box on both FreeBSD/i386 and
 
254
    FreeBSD/amd64
 
255
    - Allows GNU EFI to build out of the box with either GCC or clang on
 
256
    FreeBSD/i386 and FreeBSD/amd64 9.0 and later.
 
257
    - Makes things a little easier to port to VxWorks
 
258
    - Avoids creating un-runable binaries with unresolved symbol definitions
 
259
    (which can be very confusing to debug)
 
260
 
 
261
    Author: noxorc <nigel.croxon@hp.com>
 
262
    Date:   Wed May 8 16:29:45 2013 -0400
 
263
 
 
264
    Add the definitions for TCP, UDP and IP, for both IPv4 and IPv6.
 
265
 
 
266
 
 
267
2013-05-02 Nigel Croxon <nigel.croxon@hp.com>
 
268
        * Chnage from Matt Fleming <matt.fleming@intel.com>
 
269
          - Preparation for adding the networking protocol definitions.
 
270
            Add the service binding protocol.
 
271
 
 
272
2013-02-21 Nigel Croxon <nigel.croxon@hp.com>
 
273
        * Change from Peter Jones <pjones@redhat.com>
 
274
          - Previously we were incorrectly passing 3 functions with
 
275
            the System V ABI to UEFI functions as EFI ABI functions.
 
276
            Mark them as EFIAPI so the compiler will (in our new
 
277
            GNU_EFI_USE_MS_ABI world) use the correct ABI.
 
278
          - These need to be EFIAPI functions because in some cases
 
279
            they call ST->ConOut->OutputString(), which is an EFIAPI
 
280
            function. (Which means that previously in cases that 
 
281
            needed "cdecl", these didn't work right.)
 
282
          - If the compiler version is new enough, and GNU_EFI_USE_MS_ABI
 
283
            is defined, use the function attribute ms_abi on everything
 
284
            defined with "EFIAPI".  Such calls will no longer go through
 
285
            efi_call*, and as such will be properly type-checked.
 
286
          - Honor PREFIX and LIBDIR correctly when passed in during the build.
 
287
          - Add machine type defines for i386, arm/thumb, ia64, ebc, x86_64.
 
288
          - __STDC_VERSION__ never actually gets defined unless there's a
 
289
            --std=... line.  So we were accidentally defining lots of c99
 
290
            types ourself. Since it's 2012, use --std=c11 where appropriate,
 
291
            and if it's defined and we're using gcc, actually include gcc's
 
292
            stdint definitions.
 
293
          - New test application added: route80h. This is a test program
 
294
            for PciIo.  It routes ioport 80h on ICH10 to PCI. This is also
 
295
            useful on a very limited set of hardware to enable use of
 
296
            a port 80h debug card.
 
297
          - New test applcation added: modelist. This lists video modes
 
298
            the GOP driver is showing us.
 
299
        * Change from Finnbarr Murphy
 
300
          - https://sourceforge.net/p/gnu-efi/feature-requests/2/
 
301
            Please add the following status codes to <efierr.h>
 
302
            EFI_INCOMPATIBLE_VERSION 25
 
303
            EFI_SECURITY_VIOLATION 26 
 
304
            EFI_CRC_ERROR 27 
 
305
            EFI_END_OF_MEDIA 28 
 
306
            EFI_END_OF_FILE 31 
 
307
            EFI_INVALID_LANGUAGE 32 
 
308
            EFI_COMPROMISED_DATA 33
 
309
        * Change from SourceForge.net Bug report
 
310
          - https://sourceforge.net/p/gnu-efi/bugs/5/
 
311
            BufferSize is a UINT64 *. The file shipped with GNU EFI is from
 
312
            1998 whereas the latest one is from 2004. I suspect Intel changed
 
313
            the API in order handle 64-bit systems.
 
314
        * Change from Felipe Contreras <felipe.contreras@gmail.com>
 
315
          - The current code seems to screw the stack at certain points.
 
316
            Multiple people have complained that gummiboot hangs right away,
 
317
            which is in part the fault of gummiboot, but happens only
 
318
            because the stack gets screwed. x86_64 EFI already aligns the
 
319
            stack, so there's no need for so much code to find a proper
 
320
            alignment, we always need to shift by 8 anyway.
 
321
        * Change from A. Steinmetz
 
322
          - https://sourceforge.net/p/gnu-efi/patches/1/
 
323
            The patch prepares for elilo to support uefi pxe over ipv6
 
324
            See uefi spec 2.3.1 errata c page 963 as reference.
 
325
            Verfied on an ASUS Sabertooth X79 BIOS Rev. 2104 system which
 
326
            is able to do an IPv6 UEFI PXE boot.
 
327
        * Release 3.0t
 
328
 
 
329
2012-09-21 Nigel Croxon <nigel.croxon@hp.com>
 
330
        * Change from Peter Jones <pjones@redhat.com>
 
331
          - EFI Block I/O protocol versions 2 and 3 provide more information
 
332
            regarding physical disk layout, including alingment offset at the
 
333
            beginning of the disk ("LowestAlignedLba"), logical block size
 
334
            ("LogicalBlocksPerPhysicalBlock"), and optimal block transfer size
 
335
            ("OptimalTransferLengthGranularity").
 
336
        * Release 3.0r
 
337
 
 
338
2012-04-30 Nigel Croxon <nigel.croxon@hp.com>
 
339
        * Change from Matt Fleming <matt.fleming@intel.com>
 
340
          -  The .reloc section is now 4096-byte boundary for x86_64.
 
341
             Without this patch the .reloc section will not adhere to
 
342
             the alignment value in the FileAlignment field (512 bytes by
 
343
             default) of the PE/COFF header. This results in a signed
 
344
             executable failing to boot in a secure boot environment.
 
345
        * Release 3.0q
 
346
 
 
347
2011-12-12 Nigel Croxon <nigel.croxon@hp.com>
 
348
        * Changes from Fenghua Yu <fenghua.yu@intel.com>
 
349
          - This fixes redefined types compilation failure for tcc.c on x86_64 machines.
 
350
        * Release 3.0p
 
351
 
 
352
2011-11-15 Nigel Croxon <nigel.croxon@hp.com>
 
353
        * Changes from Darren Hart <dvhart@linux.intel.com>
 
354
          - Conditionally assign toolchain binaries to allow overriding them.
 
355
          - Force a dependency on lib for gnuefi.
 
356
        * Release 3.0n
 
357
 
 
358
2011-08-23 Nigel Croxon <nigel.croxon@hp.com>
 
359
        * Changes from Peter Jones <pjones@redhat.com>
 
360
          - Add guarantee 16-byte stack alignment on x86_64.
 
361
          - Add routine to make callbacks work.
 
362
          - Add apps/tcc.efi to test calling convention.
 
363
        * Release 3.0m
 
364
 
 
365
2011-07-22 Nigel Croxon <nigel.croxon@hp.com>
 
366
        * Changed Makefiles from GPL to BSD.
 
367
        * Changes from Peter Jones <pjones@redhat.com>
 
368
          - Add ifdefs for ia64 to mirror ia32 and x86-64 so that
 
369
            one can build with GCC.
 
370
          - Add headers for PciIo.
 
371
          - Add the UEFI 2.x bits for EFI_BOOT_SERVICES
 
372
          - Add an ignore for .note.GNU-stack section in X86-64 linker maps.
 
373
        * Release 3.0l
 
374
 
 
375
2011-04-07  Nigel Croxon <nigel.croxon@hp.com>
 
376
        * Change license from GPL to BSD.
 
377
        * Release 3.0j
 
378
 
 
379
2009-09-12  Julien BLACHE <jb@jblache.org>
 
380
        * Add support for FreeBSD.
 
381
        * Release 3.0i
 
382
 
 
383
2009-09-11  Julien BLACHE <jb@jblache.org>
 
384
        * Fix elf_ia32_efi.lds linker script to be compatible with the new
 
385
          linker behaviour. Patch from the RedHat bugzilla 492183.
 
386
 
 
387
2009-06-18  Nigel Croxon <nigel.croxon@hp.com>
 
388
        * Release 3.0h
 
389
 
 
390
2008-11-06  Nigel Croxon <nigel.croxon@hp.com>
 
391
        * Fix to not having any relocations at all. 
 
392
 
 
393
2008-09-18  Nigel Croxon <nigel.croxon@hp.com>
 
394
        * Use LIBDIR in makefiles
 
395
        * Add setjmp/longjmp
 
396
        * Fixes incorrect section attribute in crt0-efi-ia32.S
 
397
        * Adds value EfiResetShutdown to enum EFI_RESET_TYPE
 
398
        * Fixes a RAW warning in reloc_ia64.S
 
399
        * Adds the USB HCI device path structure in the headers
 
400
          patches were supplied by Peter Jones @ RedHat
 
401
 
 
402
2008-02-22  Nigel Croxon <nigel.croxon@hp.com>
 
403
        * Added '-mno-red-zone' to x68_64 compiles.
 
404
          Patch provided by Mats Andersson.
 
405
 
 
406
2008-01-23  Nigel Croxon <nigel.croxon@hp.com>
 
407
        * release 3.0e to support x86_64
 
408
          EFI calling convention, the stack should be aligned in 16 bytes
 
409
          to make it possible to use SSE2 in EFI boot services.
 
410
          This patch fixes this issue. Patch provided by Huang Ying from Intel.
 
411
 
 
412
2007-05-11 Nigel Croxon <nigel.croxon@hp.com>
 
413
        * release 3.0d to support x86_64 from Chandramouli Narayanan
 
414
          from Intel and based on 3.0c-1
 
415
 
 
416
2006-03-21  Stephane Eranian <eranian@hpl.hp.com>
 
417
        * merged patch to support gcc-4.1 submitted by
 
418
          Raymund Will from Novell/SuSE
 
419
 
 
420
2006-03-20  Stephane Eranian <eranian@hpl.hp.com>
 
421
        * updated ia-64 and ia-32 linker scripts to
 
422
          match latest gcc. The new gcc may put functions in
 
423
          .text* sections. patch submitted by H.J. Lu from Intel.
 
424
 
 
425
2004-11-19  Stephane Eranian <eranian@hpl.hp.com>
 
426
        * added patch to ignore .eh_frame section for IA-32. Patch
 
427
          submitted by Jim Wilson
 
428
 
 
429
2004-09-23  Stephane Eranian <eranian@hpl.hp.com>
 
430
        * added patch to discard unwind sections, newer toolchains
 
431
          complained about them. Patch submitted by Jesse Barnes from SGI.
 
432
 
 
433
2003-09-29  Stephane Eranian <eranian@hpl.hp.com>
 
434
        * updated elf_ia64_efi.lds to reflect new data sections 
 
435
          created by gcc-3.3. Patch provided by Andreas Schwab from Suse.
 
436
 
 
437
2003-06-20  Stephane Eranian <eranian@hpl.hp.com>
 
438
        * updated elf_ia64_efi.lds and elf_ia32_efi.lds to include
 
439
          new types data sections produced by recent version of gcc-3.x
 
440
 
 
441
2002-02-22  Stephane Eranian <eranian@hpl.hp.com>
 
442
        * release 3.0a
 
443
        * modified both IA-64 and IA-32 loader scripts to add support for the
 
444
          new .rodata sections names (such as rodata.str2.8). Required
 
445
          for new versions of gcc3.x.
 
446
 
 
447
2001-06-20  Stephane Eranian <eranian@hpl.hp.com>
 
448
        * release 3.0
 
449
        * split gnu-efi package in two different packages: the libary+include+crt and the bootloader.
 
450
        * removed W2U() hack and related files to get from wide-char to unicode. 
 
451
        * Use -fshort-wchar option for unicode.
 
452
        * restructured Makefiles now install under INSTALLROOT.
 
453
 
 
454
2001-04-06  Stephane Eranian <eranian@hpl.hp.com>
 
455
 
 
456
        * incorporated patches from David and Michael Johnston at Intel
 
457
          to get the package to compile for IA-32 linux target.
 
458
 
 
459
        * Fixed ELILO to compile for Ia-32 (does not execute yet, though):
 
460
          Makefile and start_kernel() function.
 
461
 
 
462
2001-04-06  Andreas Schwab <schwab@suse.de>
 
463
 
 
464
        * Fixed config.c  to
 
465
          get the timeout directive to do something. implemented the global
 
466
          root= directive.
 
467
 
 
468
        * Fix the efi_main() to deal with the -C option properly
 
469
 
 
470
2001-04-05  Stephane Eranian <eranian@hpl.hp.com>
 
471
 
 
472
        * update efi library to latest EFI toolkit 1.02 as distributed
 
473
          by Intel. Fixed header + library files to compile with GCC
 
474
 
 
475
        * merged ELI and LILO (as of gnu-efi-1.1) together, mostly
 
476
          taking the config file feature of ELI.
 
477
 
 
478
        * renamed LILO to ELILO to make the distinction
 
479
 
 
480
        * restructured code to make it easier to understand and maintain
 
481
 
 
482
        * fixed FPSWA driver checking and loading: we try all possible
 
483
          files and let the driver itself figure out if it is the most
 
484
          recent.
 
485
        * added support for compression (gzip) but keep support for plain
 
486
          ELF image. ELILO autodetects the format
 
487
 
 
488
        * change the way the kernel is invoked. Now we call it in 
 
489
          physical memory mode. This breaks the dependency between the
 
490
          kernel code and the loader. No more lilo_start.c madness.
 
491
 
 
492
        * changed the way the boot_params are passed. We don't use the 
 
493
          ZERO_PAGE_ADDR trick anymore. Instead we use EFI runtime memory.
 
494
          The address of the structure is passed to the kernel in r28
 
495
          by our convention.
 
496
 
 
497
        * released as gnu-efi-2.0
 
498
 
 
499
2001-04-03  David Mosberger  <davidm@hpl.hp.com>
 
500
 
 
501
        * gnuefi/reloc_ia32.c (_relocate): Change return type from "void"
 
502
        to "int".  Return error status if relocation fails for some
 
503
        reason.
 
504
 
 
505
        * gnuefi/elf_ia32_efi.lds: Drop unneeded ".rel.reloc" section.
 
506
 
 
507
        * gnuefi/crt0-efi-ia32.S (_start): Exit if _relocate() returns with
 
508
        non-zero exit status.
 
509
 
 
510
        * inc/ia32/efibind.h [__GNUC__]: Force 8-byte alignment for 64-bit
 
511
        types as that is what EFI appears to be expecting, despite the
 
512
        "#pragma pack()" at the beginning of the file!
 
513
 
 
514
2001-03-29  David Mosberger  <davidm@hpl.hp.com>
 
515
 
 
516
        * gnuefi/reloc_ia32.c: Add a couple of defines to work around
 
517
        libc/efilib collision on uint64_t et al.
 
518
        (_relocate): Use ELF32_R_TYPE() instead of ELFW(R_TYPE)().
 
519
 
 
520
        * gnuefi/crt0-efi-ia32.S (dummy): Add a dummy relocation entry.
 
521
 
 
522
2001-03-29  David Mosberger  <davidm@hpl.hp.com>
 
523
 
 
524
        * gnuefi/reloc_ia32.c: Add a couple of defines to work around
 
525
        libc/efilib collision on uint64_t et al.
 
526
        (_relocate): Use ELF32_R_TYPE() instead of ELFW(R_TYPE)().
 
527
 
 
528
        * gnuefi/crt0-efi-ia32.S (dummy): Add a dummy relocation entry.
 
529
 
 
530
2000-10-26  David Mosberger  <davidm@hpl.hp.com>
 
531
 
 
532
        * gnuefi/elf_ia64_efi.lds: Mention .rela.sdata.
 
533
 
 
534
        * Make.defaults (CFLAGS): Remove -nostdinc flags so we can pick
 
535
        up the C compiler's stdarg.h.
 
536
 
 
537
        * inc/stdarg.h: Remove this file.  It's not correct for gcc (nor
 
538
        most other optimizing compilers).
 
539
 
 
540
2000-10-10  Stephane Eranian <eranian@hpl.hp.com>
 
541
 
 
542
        * cleaned up the error message and printing of those.
 
543
        * added support to load the FPSWA from a file in case support is not
 
544
          present in the firmware already
 
545
        * fixed split_args() to do the right thing when you have leading spaces
 
546
          before kernel name
 
547
        * changed the argify() function to rely on \0 instead of LoadOptionSize
 
548
          as the field seems to be broken with current firmware
 
549
        * bumped version to 1.0
 
550
 
 
551
2000-10-04  David Mosberger  <davidm@hpl.hp.com>
 
552
 
 
553
        * gnuefi/reloc_ia64.S: Reserve space for up to 750 function descriptors.
 
554
 
 
555
        * gnuefi/elf_ia64_efi.lds: Add .sdata section for small data and
 
556
        put __gp in the "middle" of it.
 
557
 
 
558
        * gnuefi/crt0-efi-ia64.S (_start): Use movl/add to load
 
559
        gp-relative addresses that could be out of the range of the addl
 
560
        offset.
 
561
        * gnuefi/reloc_ia64.S (_relocate): Ditto.
 
562
 
 
563
        * apps/Makefile: Remove standard rules and include Make.rules instead.
 
564
        * lilo/Makefile: Ditto.
 
565
 
 
566
        * Make.rules: New file.
 
567
 
 
568
2000-08-04  Stephane Eranian <eranian@hpl.hp.com>
 
569
        * released version 0.9
 
570
        * incorporated ACPI changes for Asuza by NEC < kouchi@hpc.bs1.fc.nec.co.jp>
 
571
        * added support for initrd (-i option) original ELI code from Bill Nottingham <notting@redhat.com>)
 
572
        * lots of cleanups 
 
573
        * got rid of #ifdef LILO_DEBUG and uses macro instead
 
574
        * fix a few extra memory leaks in create_boot_params()
 
575
        * added exit capability just before starting the kernel
 
576
 
 
577
2000-06-22  David Mosberger  <davidm@hpl.hp.com>
 
578
 
 
579
        * gnuefi/elf_ia64_efi.lds: Add .srodata, .ctors, .IA64.unwind,
 
580
        .IA64.unwind_info to .data section and .rela.ctors to .rela
 
581
        section.
 
582
 
 
583
2000-04-03  David Mosberger  <davidm@hpl.hp.com>
 
584
 
 
585
        * lilo/lilo.c (LILO_VERSION): Up version number to 0.9.
 
586
 
 
587
        * gnuefi/elf_ia64_efi.lds: Include .IA_64.unwind and
 
588
        .IA_64.unwind_info in .data segment to avoid EFI load error
 
589
        "ImageAddress: pointer outside of image" error due to the .dynsym
 
590
        relocations against these sections.
 
591
 
 
592
        * ChangeLog: Moved from lilo/ChangeLogs.
 
593
 
 
594
        * gnuefi/reloc_ia64.S: fixed typo: .space directive had constant
 
595
        100 hardcoded instead of using MAX_FUNCTION_DESCRIPTORS
 
596
        macro. Duh.
 
597
 
 
598
Fri Mar 17 15:19:18 PST 2000 Stephane Eranian <eranian@hpl.hp.com>
 
599
 
 
600
        * Released 0.8
 
601
        * replace the  getopt.c with new version free with better license
 
602
        * created a documentation file
 
603
        * fix a couple of memory leaks
 
604
        * code cleanups
 
605
        * created a separate directory for lilo in the gnu-efi package.
 
606
        * added support for the BOOT_IMAGE argument to kernel
 
607
        * default is to build natively now