[syslinux:elflink] serial: fix SERIAL directive for ports > 0
syslinux-bot for Matt Fleming
matt.fleming at intel.com
Wed May 29 07:33:08 PDT 2013
Commit-ID: 4e682dcc05b0911365aa92c4f848daf013d3a635
Gitweb: http://www.syslinux.org/commit/4e682dcc05b0911365aa92c4f848daf013d3a635
Author: Matt Fleming <matt.fleming at intel.com>
AuthorDate: Wed, 29 May 2013 15:01:12 +0100
Committer: Matt Fleming <matt.fleming at intel.com>
CommitDate: Wed, 29 May 2013 15:27:28 +0100
serial: fix SERIAL directive for ports > 0
There is a bug in the SERIAL directive parsing code that means that
using a port other than the first (SERIAL 0) results in a non-working
serial console. We need to use the serial port number from the config
file to offset the BIOS I/O port base address, otherwise we always
lookup the I/O port address for the first serial port instead of the one
the user specified.
Signed-off-by: Matt Fleming <matt.fleming at intel.com>
---
com32/elflink/ldlinux/readconfig.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/com32/elflink/ldlinux/readconfig.c b/com32/elflink/ldlinux/readconfig.c
index 9d50c2f..7ac216b 100644
--- a/com32/elflink/ldlinux/readconfig.c
+++ b/com32/elflink/ldlinux/readconfig.c
@@ -1286,7 +1286,7 @@ do_include:
if (port <= 3) {
/* Get the I/O port from the BIOS */
port <<= 1;
- port = *(volatile uint16_t *)serial_base;
+ port = *(volatile uint16_t *)(serial_base + port);
}
More information about the Syslinux-commits
mailing list