smbios: catch zero-length strings

qemu may pass us zero-length strings for smbios fields, when starting
qemu this way  ...

	qemu -smbios type=1,version=,serial=test

... for example.

Today we don't specifically handle them and simply append them to the
string list.  Therefore we get two string-terminating zeros in a row.
Result is that we by accident create a end-of-entry marker in the middle
of the entry.

Fix this by handling zero-length strings like non-present strings.

Cc: armbru@redhat.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
build: Update kconfig to version in Linux 3.13.

Update kconfig (from Linux v3.11-rc6) to the latest version (Linux
v3.13).

This copyies kconfig from Linux with only the changes necessary to
work with the SeaBIOS build (the equivalent of the earlier SeaBIOS
0da7bfdf commit) and the changes necessary to always emit symbols
(SeaBIOS b623e7c5 commit).

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
scripts: Allow encodeint.py to take integers in hex notation.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
coreboot: Support alternative locations for CBFS.

The Google builds of SeaBIOS place the CBFS data in a non-standard
location.  Add a config parameter to support non-standard locations.
This is based on a patch from Stefan Reinauer <reinauer@chromium.org>
in the Chromium seabios repo (commit 60534ec785).

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
debug: Add runtime option to not report the debug serial port to the OS.

DOS resets the serial ports reported by the BIOS.  This can mess up
debugging and timing when the serial baud rate changes on the debug
port.  The new "etc/advertise-serial-debug-port" option allows one to
suppress the debug serial port from the normal list of serial ports
the BIOS reports to DOS.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
debug: Only call serial_debug_preinit() at startup.

The serial_debug_preinit() function disables serial interrupts so that
the OS doesn't get confused by "transmit buffer empty" interrupts
caused when seabios writes to the serial port.  It's unnecessary
paranoia to keep rechecking that interrupts are disabled.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
debug: Unify the SeaBIOS debug version banner.

Introduce debug_banner() and use it in all the places SeaBIOS version
is displayed for debugging purposes.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>