[syslinux] Completely disable local keyboard input in Syslinux / Extlinux?

Alexander Foken alexander at foken.de
Sat Jun 4 12:55:05 PDT 2011


Hello list,

I'm trying to reuse a fairly old PC based embedded system. It has no 
video output at all, no VGA, nothing older, and no keyboard / mouse 
connectors. The console is on a standard RS232 interface, including BIOS 
output and the minimal BIOS loader. The BIOS emulates / redirects text 
output to and keyboard input from the console RS232 interface, but 
unfortunately, this emulation / redirection is so broken that it is just 
sufficient to load the previous, propritary operating system. And there 
is no way to get a BIOS with a less broken redirection.

I try to use Syslinux / Extlinux (first 3.84, then switched to 4.04) to 
load Linux, it works as long as Extlinux does not prompt, with this 
extlinux.conf:

serial 0 9600 0
console 0
default huge.s
prompt 0
timeout 0
say Booting Linux ...
label huge.s
   kernel bzImage
   append initrd=initrd.img e100.eeprom_bad_csum_allow=1 
earlyprintk=ttyS0,9600 console=ttyS0,9600 load_ramdisk=1 
prompt_ramdisk=0 rw printk.time=0 SLACK_KERNEL=huge.s

Note "console 0" to prevent writing to the emulated video output.

As soon as I enable prompting (with a timeout), using the extlinux.conf 
below, ...

serial 0 9600 0
console 0
default huge.s
prompt 1
timeout 100
say Booting Linux ...
label huge.s
   kernel bzImage
   append initrd=initrd.img e100.eeprom_bad_csum_allow=1 
earlyprintk=ttyS0,9600 console=ttyS0,9600 load_ramdisk=1 
prompt_ramdisk=0 rw printk.time=0 SLACK_KERNEL=huge.s

... the broken BIOS sends junk to Extlinux as if a key was stuck a local 
PS/2 or USB keyboard (there is no local keyboard, not even a port for 
one). Extlinux stops responding after displaying 2048(!) "¶" characters 
(0xB6).

And I can't find a way to tell Syslinux / Extlinux to completely ignore 
the local keyboard and use only the RS232 interface. "console 0" 
suppresses only writing to the graphics card, but it does not disable 
reading the local keyboard.

Perhaps there is a way to (ab-)use the keymap feature, mapping all keys 
to "no key pressed"?

Alexander


-- 
Alexander Foken
mailto:alexander at foken.de  http://www.foken.de/alexander/




More information about the Syslinux mailing list