platform/upstream/syslinux.git
15 years agoFirst attempt at a rewritten mboot module
H. Peter Anvin [Sun, 26 Apr 2009 22:15:24 +0000 (15:15 -0700)]
First attempt at a rewritten mboot module

First attempt at rewriting the mboot module to use the Syslinux
shuffle APIs.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoMerge branch 'syslinux-3.7x'
H. Peter Anvin [Sun, 26 Apr 2009 01:47:44 +0000 (18:47 -0700)]
Merge branch 'syslinux-3.7x'

15 years agoISOLINUX: set directory length correctly
Steffen Winterfeldt [Wed, 22 Apr 2009 15:12:22 +0000 (17:12 +0200)]
ISOLINUX: set directory length correctly

Since searchdir() uses getfssec() to read the directory it needs to set
file_bytesleft. Else it loops forever if you have a large directory (and/or
rock ridge on).

15 years agopxelinux: fix minor bugs
H. Peter Anvin [Fri, 24 Apr 2009 22:01:53 +0000 (15:01 -0700)]
pxelinux: fix minor bugs

Fix minor bugs reported by pfranz73@tiscali.it.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoshuffle_rm: clean up the trampoline generator with macros
H. Peter Anvin [Thu, 23 Apr 2009 21:33:26 +0000 (14:33 -0700)]
shuffle_rm: clean up the trampoline generator with macros

Define macros for common constructs to clean up the rm trampoline
generator.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoshuffle_rm: set up SS:ESP and segs as quickly as possible
H. Peter Anvin [Wed, 22 Apr 2009 22:21:39 +0000 (15:21 -0700)]
shuffle_rm: set up SS:ESP and segs as quickly as possible

For extra paranoia's sake, set up SS:ESP immediately after the
real-mode switch, and then set all the segment registers.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agohdt: fix conflict
Erwan Velu [Thu, 23 Apr 2009 19:23:36 +0000 (21:23 +0200)]
hdt: fix conflict

Impact: making build working again

A forgoten conflict

15 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/boot/syslinux/syslinux into...
Erwan Velu [Thu, 23 Apr 2009 19:10:32 +0000 (21:10 +0200)]
Merge branch 'master' of git://git./boot/syslinux/syslinux into mainline

Conflicts:
com32/hdt/hdt-cli-pci.c
com32/hdt/hdt-cli-vesa.c
com32/hdt/hdt-common.c
com32/hdt/hdt-menu-dmi.c

15 years agohdt: 0.3.1
Erwan Velu [Thu, 23 Apr 2009 16:51:57 +0000 (18:51 +0200)]
hdt: 0.3.1

Impact: new release

New release

15 years agoMerge commit 'mouraf/for-erwan' into for-erwan
Pierre-Alexandre Meyer [Thu, 23 Apr 2009 06:57:33 +0000 (23:57 -0700)]
Merge commit 'mouraf/for-erwan' into for-erwan

Conflicts:

com32/hdt/hdt-cli-hdt.c

15 years agoa20: advance A20Test by a large, prime number
H. Peter Anvin [Wed, 22 Apr 2009 02:15:55 +0000 (19:15 -0700)]
a20: advance A20Test by a large, prime number

Rather than simply incrementing A20Test, advance it by a large prime
number every time.  The reason is to minimize false aliasing as
quickly as possible.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoa20: remove DO_WBINVD configurable
H. Peter Anvin [Tue, 21 Apr 2009 23:16:32 +0000 (16:16 -0700)]
a20: remove DO_WBINVD configurable

We haven't enabled DO_WBINVD for a very long time.  A20 is implemented
on the inside of the L1 cache for 486+ (and 386 didn't have WBINVD),
so an I/O delay is the only thing we can rely on anyway.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoa20: inline io_delay
H. Peter Anvin [Tue, 21 Apr 2009 23:14:52 +0000 (16:14 -0700)]
a20: inline io_delay

The io_delay operation is only two instructions, might as well inline
it.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoa20: A20Test is now a dword
H. Peter Anvin [Tue, 21 Apr 2009 23:12:15 +0000 (16:12 -0700)]
a20: A20Test is now a dword

A20Test is now a dword; this makes it less likely that we'll have a
case of false aliasing resulting in the io_delay path being taken.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoa20: try to avoid io_delay if A20 is already enabled
H. Peter Anvin [Tue, 21 Apr 2009 23:08:07 +0000 (16:08 -0700)]
a20: try to avoid io_delay if A20 is already enabled

We have at least the possibility to avoid io_delay if A20 is already
enabled.  Thus, give it a try.  Furthermore, when calling enable_a20,
always try the zero-work case first, since we may have been enabled by
a previous call.  This should improve performance of the rm/pm
ping-pong.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoGlobal whitespace cleanup.
H. Peter Anvin [Mon, 20 Apr 2009 22:56:30 +0000 (15:56 -0700)]
Global whitespace cleanup.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agocore: remove references to MDSLINUX
H. Peter Anvin [Sun, 19 Apr 2009 22:39:19 +0000 (15:39 -0700)]
core: remove references to MDSLINUX

MDSLINUX (Multiple Disk Syslinux) will never happen, kill references
to it.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agocore: merge the startup code for disk-based derivatives
H. Peter Anvin [Sun, 19 Apr 2009 22:35:02 +0000 (15:35 -0700)]
core: merge the startup code for disk-based derivatives

Merge the startup code for disk-based derivatives (currently SYSLINUX,
EXTLINUX) into a single file.  There is probably still additional
shared code that should be merged, but this is a good start.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agohdt: removing useless more_printf
Erwan Velu [Sun, 19 Apr 2009 18:21:12 +0000 (20:21 +0200)]
hdt: removing useless more_printf

Impact: improving user experience

hdt>show modes was using more_printf. This is pretty useless and
annoying for users.

15 years agohdt: removing useless more_printf
Erwan Velu [Sun, 19 Apr 2009 09:39:57 +0000 (11:39 +0200)]
hdt: removing useless more_printf

Impact: none

more_printf isn't needed for such display

15 years agohdt: more_printf was eating a line
Erwan Velu [Sun, 19 Apr 2009 08:02:08 +0000 (10:02 +0200)]
hdt: more_printf was eating a line

Impact: Visual. Some lines were missing at display

The more_printf call was missing some lines to display

15 years agohdt: MAC Address should only be displayed on the PXE Device
Erwan Velu [Sun, 19 Apr 2009 07:54:14 +0000 (09:54 +0200)]
hdt: MAC Address should only be displayed on the PXE Device

Impact: MAC address were shown on invalid devices

Prior to that commit, the mac address of the PXE booted network card was
displayed on every pci devices.... weird.

15 years agohdt: fixing typo
Erwan Velu [Sun, 19 Apr 2009 07:42:25 +0000 (09:42 +0200)]
hdt: fixing typo

Impact: fixing compilation errors

Wrong call :(

15 years agohdt: Cleaning dmi chassis asset tag output
Erwan Velu [Sun, 19 Apr 2009 07:40:41 +0000 (09:40 +0200)]
hdt: Cleaning dmi chassis asset tag output

Impact: Visual

Some users reported this dmi/chassis/asset tag could reports many
spaces.

15 years agohdt: removing multiple spaces
Erwan Velu [Sun, 19 Apr 2009 07:35:06 +0000 (09:35 +0200)]
hdt: removing multiple spaces

Impact: Improving visual experience

Some hardware reported strings contains multiple spaces.
This isn't very nice for managing display. The del_multiple_spaces()
function is removing multiple spaces.

15 years agohdt: moving contact adress to the mailing list
Erwan Velu [Sat, 18 Apr 2009 17:15:34 +0000 (19:15 +0200)]
hdt: moving contact adress to the mailing list

Impact: none

Mailing list is the best place to have user inputs

15 years agohdt: Add VPD menu item
Pierre-Alexandre Meyer [Sat, 18 Apr 2009 03:08:06 +0000 (20:08 -0700)]
hdt: Add VPD menu item

Add an item to display VPD information, if detected.

Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
15 years agohdt: Add vpd mode (CLI)
Pierre-Alexandre Meyer [Fri, 17 Apr 2009 23:29:49 +0000 (16:29 -0700)]
hdt: Add vpd mode (CLI)

Add the vpd mode to dump the vpd structure, if found.

Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
15 years agoMerge commit 'erwan/master' into for-erwan
Pierre-Alexandre Meyer [Fri, 17 Apr 2009 21:55:12 +0000 (14:55 -0700)]
Merge commit 'erwan/master' into for-erwan

Conflicts:
com32/hdt/hdt-cli-hdt.c
com32/hdt/hdt-cli.c

15 years agohdt: Get rid of nb_modules in struct cli_module_descr
Pierre-Alexandre Meyer [Fri, 17 Apr 2009 21:35:52 +0000 (14:35 -0700)]
hdt: Get rid of nb_modules in struct cli_module_descr

End list of modules commands by NULL instead of managing manually
the number in nb_modules. This should limit the number of bugs when adding new
features.

Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
15 years agohdt: fix format string warnings
Sebastian Herbszt [Fri, 17 Apr 2009 17:28:03 +0000 (19:28 +0200)]
hdt: fix format string warnings

Fix format string warnings spit by the compiler.

- Sebastian

15 years agocom32: remove unused variables
Sebastian Herbszt [Fri, 17 Apr 2009 17:23:32 +0000 (19:23 +0200)]
com32: remove unused variables

Silence compiler warnings by removing unused variables.

- Sebastian

15 years agobcopyxx: when going to 16-bit PM, might as well do it right
H. Peter Anvin [Fri, 17 Apr 2009 00:19:24 +0000 (17:19 -0700)]
bcopyxx: when going to 16-bit PM, might as well do it right

When entering 16-bit PM after shuffle and boot, we might as well
do so sanely.  Specifically, set up the data segments so that they
match the code segment, generating a 16-bit "tiny" model environment.

This makes it a lot saner to bootstrap a proper PM environment from
there if that is what the user intends.  For the presumably more
common case of RM entry, it won't do any harm, and it's only a handful
of additional instructions.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agohdt: Get rid of MAX_MODES
Pierre-Alexandre Meyer [Thu, 16 Apr 2009 22:27:39 +0000 (15:27 -0700)]
hdt: Get rid of MAX_MODES

End the list of modes by NULL instead of managing manually the length.

Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
15 years agohdt: removing useless clear_screen
Erwan Velu [Thu, 16 Apr 2009 20:54:03 +0000 (22:54 +0200)]
hdt: removing useless clear_screen

Impact: Improve user experience

Prevent clear screen when not necessary

15 years agohdt: Improving more_printf & clear_screen management
Erwan Velu [Thu, 16 Apr 2009 20:48:14 +0000 (22:48 +0200)]
hdt: Improving more_printf & clear_screen management

Impact: greatly improve user experience

This commit adds more coherency in more_printf & clear_screen usage

15 years agohdt: Fixing wrong printf calls
Erwan Velu [Thu, 16 Apr 2009 20:33:47 +0000 (22:33 +0200)]
hdt: Fixing wrong printf calls

Impact: Removing memory corruption

Some printf called were badly setup

15 years agohdt: Adding reset_more_printf()
Erwan Velu [Thu, 16 Apr 2009 19:38:45 +0000 (21:38 +0200)]
hdt: Adding reset_more_printf()

Impact: first step toward more_printf() rationalization

reset_more_printf() reset the counter used by more_printf to count
lines.

15 years agohdt: menu should be 80x25
Erwan Velu [Thu, 16 Apr 2009 19:34:00 +0000 (21:34 +0200)]
hdt: menu should be 80x25

Impact: increasing menu size to improve display

80x24 was a mistake, it have to be 80x25

15 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/boot/syslinux/syslinux into...
Erwan Velu [Thu, 16 Apr 2009 19:32:22 +0000 (21:32 +0200)]
Merge branch 'master' of git://git./boot/syslinux/syslinux into erwan

15 years agoMerge branch 'syslinux-3.7x'
H. Peter Anvin [Thu, 16 Apr 2009 18:04:52 +0000 (11:04 -0700)]
Merge branch 'syslinux-3.7x'

15 years agorosh: don't compile rosh.lnx by default syslinux-3.75
H. Peter Anvin [Thu, 16 Apr 2009 04:42:14 +0000 (21:42 -0700)]
rosh: don't compile rosh.lnx by default

Don't compile rosh.lnx by default.  It causes unnecessary dependencies
on the host system.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoNEWS: document HDT PCI fix syslinux-3.75-pre4
H. Peter Anvin [Wed, 15 Apr 2009 23:26:49 +0000 (16:26 -0700)]
NEWS: document HDT PCI fix

15 years agohdt: Fixing latency indentation
Erwan Velu [Tue, 14 Apr 2009 19:55:14 +0000 (21:55 +0200)]
hdt: Fixing latency indentation

Impact: Improving display

Removing useless space

15 years agopci: Using for_each_pci_func3
Erwan Velu [Wed, 15 Apr 2009 19:05:19 +0000 (21:05 +0200)]
pci: Using for_each_pci_func3

Impact: cleaning code

Using for_each_pci_func3 instead of for_each_pci_func + pci_mkaddr

15 years agopci: add pci_for_each_func3() which produces an address
H. Peter Anvin [Tue, 14 Apr 2009 20:45:33 +0000 (13:45 -0700)]
pci: add pci_for_each_func3() which produces an address

Add pci_for_each_func3() iterator, which produces an address in
addition to the device pointer.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoPCI: Fixing freeze when detecting many PCI devices
Erwan Velu [Tue, 14 Apr 2009 19:41:05 +0000 (21:41 +0200)]
PCI: Fixing freeze when detecting many PCI devices

Impact: Prevent hard freeze when having many PCI devices

A user reported that calling gather_additional_pci_config() when many
PCI devices exists on a host could lead to a complete freeze.
This patch remove some useless code and use for_each_pci_func() instead.
This prevent useless memory allocation.

15 years agopci: Using for_each_pci_func3
Erwan Velu [Wed, 15 Apr 2009 19:05:19 +0000 (21:05 +0200)]
pci: Using for_each_pci_func3

Impact: cleaning code

Using for_each_pci_func3 instead of for_each_pci_func + pci_mkaddr

15 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/boot/syslinux/syslinux
Erwan Velu [Wed, 15 Apr 2009 18:26:22 +0000 (20:26 +0200)]
Merge branch 'master' of git://git./boot/syslinux/syslinux

15 years agoNEWS: add the latest stuff... syslinux-3.75-pre3
H. Peter Anvin [Wed, 15 Apr 2009 04:55:08 +0000 (21:55 -0700)]
NEWS: add the latest stuff...

Document additional changes since 3.74.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agogpxe: Don't use "lret $2" to return from an interrupt
H. Peter Anvin [Wed, 15 Apr 2009 04:52:50 +0000 (21:52 -0700)]
gpxe: Don't use "lret $2" to return from an interrupt

Using "lret $2" to return from an interrupt causes interrupts to be
disabled in the calling program, since the INT instruction will have
disabled interrupts.  Instead, patch CF on the stack and use iret to
return.

Interestingly, the original PC BIOS had this bug in at least one
place.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agomenu: modify MENU SAVE to be a cascading default
H. Peter Anvin [Wed, 15 Apr 2009 04:45:54 +0000 (21:45 -0700)]
menu: modify MENU SAVE to be a cascading default

Change MENU SAVE to be a cascading default that can be reverted with
MENU NOSAVE.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agodoc: fix stray parenthesis in syslinux.txt
H. Peter Anvin [Tue, 14 Apr 2009 22:36:05 +0000 (15:36 -0700)]
doc: fix stray parenthesis in syslinux.txt

Remove stay parenthesis in syslinux.txt

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agopci: add pci_for_each_func3() which produces an address
H. Peter Anvin [Tue, 14 Apr 2009 20:45:33 +0000 (13:45 -0700)]
pci: add pci_for_each_func3() which produces an address

Add pci_for_each_func3() iterator, which produces an address in
addition to the device pointer.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agohdt: Fixing latency indentation
Erwan Velu [Tue, 14 Apr 2009 19:55:14 +0000 (21:55 +0200)]
hdt: Fixing latency indentation

Impact: Improving display

Removing useless space

15 years agoPCI: Fixing freeze when detecting many PCI devices
Erwan Velu [Tue, 14 Apr 2009 19:41:05 +0000 (21:41 +0200)]
PCI: Fixing freeze when detecting many PCI devices

Impact: Prevent hard freeze when having many PCI devices

A user reported that calling gather_additional_pci_config() when many
PCI devices exists on a host could lead to a complete freeze.
This patch remove some useless code and use for_each_pci_func() instead.
This prevent useless memory allocation.

15 years agodoc: clarify CS.base restriction for KVM
H. Peter Anvin [Tue, 14 Apr 2009 19:37:42 +0000 (12:37 -0700)]
doc: clarify CS.base restriction for KVM

Clarify that the CS.base restriction is a prescription of
compatibility, and not something that the ABI handles transparently.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agodoc: update copyright in syslinux.txt
H. Peter Anvin [Tue, 14 Apr 2009 19:36:21 +0000 (12:36 -0700)]
doc: update copyright in syslinux.txt

Update and clarify copyright in syslinux.txt.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoMerge branch 'syslinux-3.7x'
H. Peter Anvin [Tue, 14 Apr 2009 19:14:04 +0000 (12:14 -0700)]
Merge branch 'syslinux-3.7x'

15 years agoNEWS: the extlinux(1) is from Brian Pellin, not Daniel Baumann.
H. Peter Anvin [Tue, 14 Apr 2009 19:08:08 +0000 (12:08 -0700)]
NEWS: the extlinux(1) is from Brian Pellin, not Daniel Baumann.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoNEWS: document MEMDISK fixes, updates. syslinux-3.75-pre2
H. Peter Anvin [Tue, 14 Apr 2009 19:04:54 +0000 (12:04 -0700)]
NEWS: document MEMDISK fixes, updates.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoAdding manpage from Brian Pellin <bpellin@gmail.com> for extlinux.
Daniel Baumann [Tue, 14 Apr 2009 18:30:55 +0000 (20:30 +0200)]
Adding manpage from Brian Pellin <bpellin@gmail.com> for extlinux.

15 years agoCorrecting typo in extlinux documentation.
Daniel Baumann [Tue, 14 Apr 2009 18:29:43 +0000 (20:29 +0200)]
Correcting typo in extlinux documentation.

15 years agoMEMDISK: traceability for the geometry
H. Peter Anvin [Tue, 14 Apr 2009 19:02:11 +0000 (12:02 -0700)]
MEMDISK: traceability for the geometry

Print the source of the geometry determination.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoMEMDISK: fix MBR geometry extraction
H. Peter Anvin [Tue, 14 Apr 2009 19:01:07 +0000 (12:01 -0700)]
MEMDISK: fix MBR geometry extraction

Fix the MBR geometry extraction; there was an off-by-2 error in the
MBR signature offset.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoMerge branch 'syslinux-3.7x'
H. Peter Anvin [Tue, 14 Apr 2009 18:27:25 +0000 (11:27 -0700)]
Merge branch 'syslinux-3.7x'

Conflicts:
core/bootsect.inc
version

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agoNEWS, version: bump version to 3.75, document keeppxe fix syslinux-3.75-pre1
H. Peter Anvin [Tue, 14 Apr 2009 18:22:07 +0000 (11:22 -0700)]
NEWS, version: bump version to 3.75, document keeppxe fix

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agopxelinux: fix the handling of KeepPXE
H. Peter Anvin [Tue, 14 Apr 2009 18:20:03 +0000 (11:20 -0700)]
pxelinux: fix the handling of KeepPXE

KeepPXE was broken in 3.74, because we tried to use both bits 0 and 1,
but failed to actually test both bits.  Instead, just use bit 0, but
move the place where we clear the bits.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agocore/bcopyxx.inc: save a few bytes
H. Peter Anvin [Tue, 14 Apr 2009 05:34:55 +0000 (22:34 -0700)]
core/bcopyxx.inc: save a few bytes

Muck with the GDT patching logic to save a few bytes.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoFix infinite loop in syslinux_memmap_find()
H. Peter Anvin [Tue, 14 Apr 2009 05:13:22 +0000 (22:13 -0700)]
Fix infinite loop in syslinux_memmap_find()

We can't use continue; since we're not using a for loop; we have to
advance to the next list entry...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoMerge branch 'timeout-fix'
H. Peter Anvin [Tue, 14 Apr 2009 03:31:40 +0000 (20:31 -0700)]
Merge branch 'timeout-fix'

15 years agopxelinux: fix the new timeout code
H. Peter Anvin [Tue, 14 Apr 2009 03:30:26 +0000 (20:30 -0700)]
pxelinux: fix the new timeout code

Fix the new timeout code; in particular:

- on receiving an ERROR packet, we fake an immediate timeout;
  this has to be done differently now.
- fix missing decrement of timeout counter.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agocom32: use xfer_buf_seg as the bounce buffer
H. Peter Anvin [Tue, 14 Apr 2009 03:06:00 +0000 (20:06 -0700)]
com32: use xfer_buf_seg as the bounce buffer

We cannot realistically realign comboot_seg without breaking com16
modules (which have the DOS-derived assumption that they own the rest
of low memory.)  However, we can use xfer_buf_seg as the com32 bounce
buffer, which allows us to retain the benefit of a 64K-aligned buffer.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agodoc: add note about KVM restriction on CS.base
H. Peter Anvin [Tue, 14 Apr 2009 02:43:35 +0000 (19:43 -0700)]
doc: add note about KVM restriction on CS.base

Add note about KVM restrictions on CS.base before entering real mode.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agocore: don't misalign xfer_buf_seg
H. Peter Anvin [Tue, 14 Apr 2009 02:32:00 +0000 (19:32 -0700)]
core: don't misalign xfer_buf_seg

xfer_buf_seg is used for bulk transfers, and we really don't want
to break it up in order to avoid 64K DMA boundaries.

Note: the same is true for the com32 bounce buffer, which is
real_mode_seg.  However, there are hard assumptions in the code that
real_mode_seg is the last segment; those need to be cleaned up, or we
need to verify that xfer_buf_seg can be used as the com32 bounce
buffer.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoSomething slightly saner for DummyTSS
H. Peter Anvin [Tue, 14 Apr 2009 02:28:20 +0000 (19:28 -0700)]
Something slightly saner for DummyTSS

DummyTSS should hopefully never be actually used.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoGDT: remove unused DS16_4G and SS16 descriptors
H. Peter Anvin [Tue, 14 Apr 2009 02:25:50 +0000 (19:25 -0700)]
GDT: remove unused DS16_4G and SS16 descriptors

We no longer use the DS16_4G and SS16 descriptors; we now use 32-bit
protected mode for all "big" work.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoshuffle_rm.c: minor style cleanup
H. Peter Anvin [Tue, 14 Apr 2009 02:19:34 +0000 (19:19 -0700)]
shuffle_rm.c: minor style cleanup

Try to make the code just a little easier to read.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoshuffler: work around KVM problem with the new shuffler
H. Peter Anvin [Tue, 14 Apr 2009 02:11:30 +0000 (19:11 -0700)]
shuffler: work around KVM problem with the new shuffler

KVM uses V86 mode to simulate real mode.  This causes problems with
the new shuffler.  This changes the shuffler handover to be in
16-bit protected mode instead, and requires the stub to do the actual
entry to real mode.  For the KVM hack to work, all segments must have:

(seg.base & 0xfff0000f) == 0 && seg.limit == 0xffff

As a result, we have to make sure the real-mode entry stub is
paragraph-aligned, lest we violate the first criterion.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agocore: move vgafontbuf out of the zero segment
H. Peter Anvin [Mon, 13 Apr 2009 22:39:04 +0000 (15:39 -0700)]
core: move vgafontbuf out of the zero segment

vgafontbuf is one of the largest (bss) structures in the zero segment,
together with the trackbuf (which we realistically can't move.)
Create a new "auxilliary segment" for fixed-sized data which needs to
be in the low megabyte, but not necessarily in the zero segment.

This pushes up the low memory usage, but only by 8K.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agocore: add alignz macro (analogous to "alignb") for zero-pad align
H. Peter Anvin [Mon, 13 Apr 2009 22:09:41 +0000 (15:09 -0700)]
core: add alignz macro (analogous to "alignb") for zero-pad align

Add a new macro "alignz" to align with zero bytes; use to align inside
a data section (i.e. a progbits section which doesn't contain code.)

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agocore/macros.inc: iterative definition of asciidec
H. Peter Anvin [Mon, 13 Apr 2009 22:04:20 +0000 (15:04 -0700)]
core/macros.inc: iterative definition of asciidec

A cleaner iterative defintion of the asciidec macro.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agobootrm: allow entering with IF=1; smarter stub location
H. Peter Anvin [Mon, 13 Apr 2009 21:13:52 +0000 (14:13 -0700)]
bootrm: allow entering with IF=1; smarter stub location

Change the stub location algorithm to prefer low memory above
0x800; above 0x510 if that is unavailable.  Also add the ability
to invoke the real-mode code with IF=1 if so is desired.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agopxelinux: use a table-driven backoff
H. Peter Anvin [Mon, 13 Apr 2009 20:54:33 +0000 (13:54 -0700)]
pxelinux: use a table-driven backoff

Use a table-driven backoff so we can provide a backoff which doesn't
increase as sharply (by integral powers of two) as before.  Rather
than worrying about doing fractional multiplication, simply provide a
backoff table.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
15 years agohdt: Shortening extension when using ISOLINUX
Erwan Velu [Mon, 13 Apr 2009 20:19:50 +0000 (22:19 +0200)]
hdt: Shortening extension when using ISOLINUX

Impact: When using ISOLINUX, we have to shorten the extension

Shortening extension when using ISOLINUX.
i.e: modules.pcimap is convertd to modules.pci

15 years agohdt: Opening console earlier
Erwan Velu [Mon, 13 Apr 2009 20:16:54 +0000 (22:16 +0200)]
hdt: Opening console earlier

Impact: Earlier printf are now possible

Prior to that commit, it was impossible to printf during paramaters
& syslinux checks

15 years agohdt: Detect syslinux earlier
Erwan Velu [Mon, 13 Apr 2009 19:49:00 +0000 (21:49 +0200)]
hdt: Detect syslinux earlier

Impact: Internal changes

Some parameters might be dependant on syslinux's version

15 years agohdt: 0.3.0
Erwan Velu [Mon, 13 Apr 2009 19:28:19 +0000 (21:28 +0200)]
hdt: 0.3.0

Impact: This commit ends the merge with pam's branch

CLI is improved and manage completion
Thx to pierre for that great work

15 years agoMerge branch 'for-erwan' of ssh://erwan@terminus.zytor.com/pub/git/users/pam/hdt...
Erwan Velu [Mon, 13 Apr 2009 18:54:22 +0000 (20:54 +0200)]
Merge branch 'for-erwan' of ssh://erwan@terminus.zytor.com/pub/git/users/pam/hdt-pierre into pam

Conflicts:
com32/hdt/hdt-cli.c

15 years agopxelinux: be more aggressive about retransmitting ACKs
H. Peter Anvin [Mon, 13 Apr 2009 17:37:37 +0000 (10:37 -0700)]
pxelinux: be more aggressive about retransmitting ACKs

Some PXE stacks drop packets on transmit on a regular basis.  Avoid
severe slowdowns by being much more aggressive about ACK
retransmissions.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agoMakefile: add missing MBR variants to BOBJECTS
H. Peter Anvin [Mon, 13 Apr 2009 17:36:36 +0000 (10:36 -0700)]
Makefile: add missing MBR variants to BOBJECTS

Add missing variants to BOBJECTS.

15 years agopxelinux: be more paranoid about saving/restoring flags
H. Peter Anvin [Sun, 12 Apr 2009 23:36:35 +0000 (16:36 -0700)]
pxelinux: be more paranoid about saving/restoring flags

Save and restore flags around writechr and the PXE stack call, just in
case the underlying stack does something weird.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
15 years agohdt: DEL must be handle as BACKSPACE
Pierre-Alexandre Meyer [Sat, 11 Apr 2009 17:50:30 +0000 (10:50 -0700)]
hdt: DEL must be handle as BACKSPACE

Impact: Better conformity to standards

To conform with serial lines, DEL must be handled as BACKSPACE
Using Ctrl+D to delete a char
Taken from http://www.gnu.org/software/bash/manual/html_node/Commands-For-Text.html
(cherry picked from commit 5be7f0228dea745aa8e1fe18036517675bbe8c1e)

15 years agoMerge branch 'master' into for-erwan
Pierre-Alexandre Meyer [Sat, 11 Apr 2009 17:46:38 +0000 (10:46 -0700)]
Merge branch 'master' into for-erwan

Conflicts:

com32/hdt/Makefile

15 years agoMerge branch 'for-erwan' of ssh://erwan@terminus.zytor.com/pub/git/users/pam/hdt...
Erwan Velu [Sat, 11 Apr 2009 07:25:55 +0000 (09:25 +0200)]
Merge branch 'for-erwan' of ssh://erwan@terminus.zytor.com/pub/git/users/pam/hdt-pierre into pam

15 years agoMerge commit 'hdt-erwan/master' into for-erwan
Pierre-Alexandre Meyer [Sat, 11 Apr 2009 01:49:24 +0000 (18:49 -0700)]
Merge commit 'hdt-erwan/master' into for-erwan

Conflicts:

com32/hdt/hdt-ata.c
com32/hdt/hdt-cli-pxe.c
com32/hdt/hdt-cli-vesa.c
com32/hdt/hdt-cli.c
com32/hdt/hdt-common.c
com32/hdt/hdt-menu-pci.c

15 years agoVPD: Adding the Virtual Product Data detection
Erwan Velu [Fri, 10 Apr 2009 19:53:00 +0000 (21:53 +0200)]
VPD: Adding the Virtual Product Data detection

Impact: It's now possible to reach VPD's info

Calling vpd_decode() populate a VPD structure to display :
- VPD's base address
- Bios Build ID
- Bios Release Date
- Bios Version
- Box Serial Number
- Motherboard Serial Number
- Machine Type/Model
- Default Flash Filename

15 years agohdt: Fixing typo. Thx to dag.
Erwan Velu [Thu, 9 Apr 2009 19:53:25 +0000 (21:53 +0200)]
hdt: Fixing typo. Thx to dag.

Impact: Cosmetic

Typo error

15 years agoMerge commit 'syslinux-3.74'
H. Peter Anvin [Thu, 9 Apr 2009 18:46:19 +0000 (11:46 -0700)]
Merge commit 'syslinux-3.74'

15 years agogfxboot: parse DEFAULT keywork in syslinux config file syslinux-3.74
Christophe Fergeau [Thu, 9 Apr 2009 09:09:55 +0000 (11:09 +0200)]
gfxboot: parse DEFAULT keywork in syslinux config file

The gfxboot COM module currently ignores the DEFAULT entry set in
syslinux config file and always default to 0 instead. This patch parses
DEFAULT entries in the config file and set the default entry
accordingly.

Signed-off-by: Christophe Fergeau <cfergeau@mandriva.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>