summaryrefslogtreecommitdiff
path: root/com32/lib/syslinux/shuffle.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'nocomapi'syslinux-6.03-pre7H. Peter Anvin2014-03-031-8/+3
|\
| * comapi: Remove the comapi interfaces completelyH. Peter Anvin2014-02-131-1/+1
| | | | | | | | | | | | | | | | | | | | Remove the last bits of the comapi interfaces completely. This does not install stub handlers for the INT 20-3Fh handlers, as we don't support loading old COMBOOT/COM32/COM32R images anymore. We could put those back if we really need them. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
| * bios: Remove shuffle and boot comapi callH. Peter Anvin2014-02-131-8/+3
| | | | | | | | | | | | | | | | Remove the shuffle and boot comapi call. This is the last of the comapi calls left; we should now be able to completely remove the comapi support. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | shuffler: Actually get the shuffler size sanelysyslinux-6.03-pre4H. Peter Anvin2014-02-271-12/+7
|/ | | | | | | | | Actually get the shuffler size sanely. At least for now, we are BIOS only, so stub out the functions on EFI (they shouldn't even be compiled for EFI; this stuff should be moved into some kind of BIOS-only directory.) Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* Merge tag 'syslinux-5.10-pre2' into for-hpa/elflink/firmwareMatt Fleming2013-03-221-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | syslinux-5.10-pre2 Conflicts: NEWS com32/include/netinet/in.h com32/include/sys/cpu.h com32/lib/Makefile core/Makefile core/fs/diskio.c core/fs/pxe/pxe.h core/init.c core/mem/free.c core/mem/malloc.c mk/devel.mk version
| * shuffle: syslinux_dump_movelist() only takes 1 argumentMatt Fleming2013-02-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | Fix up the following compiler error that is triggered with -DDEBUG=2, syslinux/shuffle.c:135:2: error: too many arguments to function ‘syslinux_dump_movelist’ In file included from syslinux/shuffle.c:44:0: ../include/syslinux/movebits.h:87:6: note: declared here syslinux/shuffle.c:155:5: warning: passing argument 1 of ‘syslinux_dump_movelist’ from incompatible pointer type [enabled by default] Signed-off-by: Matt Fleming <matt.fleming@intel.com>
* | Merge remote-tracking branch 'mfleming/elflink' into for-hpa/elflink/firmwareMatt Fleming2012-07-301-23/+4
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Makefile com32/elflink/ldlinux/adv.c com32/elflink/ldlinux/kernel.c com32/elflink/ldlinux/ldlinux.c com32/include/bitsize/stddef.h com32/include/bitsize/stdint.h com32/include/stdint.h com32/include/sys/module.h com32/include/sys/x86_64/bitops.h com32/include/syslinux/linux.h com32/lib/Makefile com32/lib/sys/ansicon_write.c com32/lib/sys/module/elfutils.h com32/lib/sys/vesa/efi/fill.h com32/lib/syslinux/load_linux.c com32/lib/syslinux/serial.c com32/lib/syslinux/shuffle.c core/conio.c core/elflink/config.c core/elflink/load_env32.c core/graphics.c core/include/graphics.h core/init.c core/pxelinux.asm mk/elf.mk mk/lib.mk
| * elflink: Replace __intcall() with direct function callsMatt Fleming2012-07-201-6/+3
| | | | | | | | | | | | | | | | There's no reason to use the COMBOOT API at all now that we can have any undefined symbols resolved at runtime - we can just access functions directly. Signed-off-by: Matt Fleming <matt.fleming@intel.com>
| * lib/shuffle: use <dprintf.h>H. Peter Anvin2012-05-181-17/+1
| | | | | | | | | | | | Another straggler not yet using <dprintf.h> for debugging. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | com32: Remove __constructor tag from __syslinux_get_shuffer_size()Matt Fleming2012-02-021-5/+8
|/ | | | | | | | | Any functions with a __constructor tag are exected by both firmware backends. But shuffling isn't used on EFI because we have so little control over the memory map. So call __syslinux_get_shuffer_size() only when needed. Signed-off-by: Matt Fleming <matt.fleming@intel.com>
* com32/lib/syslinux/shuffle.c: remove variables set but not usedH. Peter Anvin2011-03-161-5/+7
| | | | | | gcc 4.6 warns on variables set but not used, so remove them. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Run Nindent on com32/lib/syslinux/shuffle.cH. Peter Anvin2009-05-291-157/+160
| | | | | | | | | Automatically reformat com32/lib/syslinux/shuffle.c using Nindent. Do this for all files except HDT, gPXE and externally maintained libraries (zlib, tinyjpeg, libpng). Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* shuffle: align the shuffle safe areaH. Peter Anvin2009-05-021-2/+3
| | | | | | For performance, align the shuffle safe area to a dword boundary. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Merge branch 'master' into new-shufflerH. Peter Anvin2009-04-041-0/+1
|\ | | | | | | | | | | | | Conflicts: com32/lib/syslinux/memmap.c Signed-off-by: H. Peter Anvin <hpa@zytor.com>
| * Update copyright notices; add Intel notices where appropriateH. Peter Anvin2009-04-041-0/+1
| | | | | | | | | | | | | | Update copyright notices. Per agreement with my new employer, Intel Corporation, add Intel copyright notices where appropriate. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | shuffle: use SMT_RESERVED for the forbidden regionH. Peter Anvin2009-03-311-1/+1
| | | | | | | | | | | | | | If we're going to mark memory unusable, it's cleaner to mark it SMT_RESERVED. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* | shuffler: make the new shuffler actually workH. Peter Anvin2009-03-311-58/+78
|/ | | | | | | | | Make the new shuffler actually work. This includes changing rllpack.inc to run in 32-bit mode (since simple_pm_call now switches to 32-bit mode) and changing the new shuffler interface to move the shuffle list before actually doing any work. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* shuffler: more corrections to shuffle buffer assignmentH. Peter Anvin2009-03-101-12/+19
| | | | We really need to be able to allocate the shuffle buffer itself...
* shuffler: fix the handling of more than one block of descriptorsH. Peter Anvin2009-03-101-7/+15
| | | | | | When allocating more than one block of descriptors, make sure we account for all the memory used correctly. Otherwise, very bad things happen.
* The shuffle descriptors need to be unused for input *and* outputsyslinux-3.62-pre3H. Peter Anvin2008-02-121-5/+17
| | | | | | | | | | | The memory used to hold shuffle descriptors must be unused during the entire execution of the shuffle sequence, and therefore needs to be free at input *and* output time. Once we have picked a region for the shuffle descriptors, we can free this working copy and start over with a clean memory map, the only thing we do there is mark as reserved the memory used by the descriptors.
* Change the minimum number of shuffle descriptors to 64.H. Peter Anvin2008-02-121-1/+1
| | | | | Only use 64 as a static guarantee of the number of shuffle descriptors; corresponding to 768 bytes of memory.
* Query the shuffle descriptor set size and use itH. Peter Anvin2008-02-121-1/+14
| | | | | Query the maximum number of shuffle descriptors, and use that number as the descriptor block size.
* shuffle: avoid computing block lists that will never convergeH. Peter Anvin2008-02-111-4/+8
| | | | | | It is safe to assume that the number of moves will never decrease as the reserved memory space increases; thus, no need to do individual increments; skip ahead.
* Handle arbitrary numbers of shuffle descriptorsH. Peter Anvin2008-02-111-17/+117
| | | | | Allocate high memory out of the way to hold the shuffle descriptors, and generate continuation descriptors as needed.
* Update copyright yearH. Peter Anvin2008-01-101-1/+1
|
* Optional debugging code for shuffle and boot and load_linuxsyslinux-3.53-pre2H. Peter Anvin2007-11-021-0/+15
| | | | | Put (disabled) debugging code in shuffle.c and load_linux.c for future needs.
* Stealth whitespace cleanup (automated)H. Peter Anvin2007-03-141-5/+4
|
* Finish the shuffle and boot interface, and add an ELF loading module.H. Peter Anvin2007-03-141-11/+21
| | | | | | The shuffle and boot interface, including the library support, should now work as advertised. Add an ELF-loading module as a demo, and it's probably useful for someone, too.
* Wrapper infrastructure for "shuffle and boot"H. Peter Anvin2007-03-121-0/+82
Initial checkin of a wrapper infrastructure for the "shuffle and boot" interface, both real and protected mode. This code automatically will figure out the necessary sequence of moves, taking into account swaps and overlaps as necessary.