I am at my wits end regarding how to get the serial ports on the epia-m to
run at full 115,200 baud rate. Here is a summary of what is known:
1) The serial ports are driven by the VT1211 superio chip.
2) Under AWARD bios the serial ports are capable of 115,200 operation.
3) Under linuxbios they can only run at 57,600 max.
4) Booting up with AWARD then soft reset (or hit reset button on motherboard)
into linuxbios still maintains 115,200 baud
5) Hard reset (power off then on) into linuxbios reduces maximum baud rate to
57,600.
6) All registers of the VT1211 are identical after linuxbios bootup, whether
from award -> softreset -> linuxbios bootup or hardreset -> linuxbios bootup.
I am speaking of all registers of all logical devices of the VT1211, including
all the global registers. I wrote a program to dump everything then diff'd the
two outputs, they're identical.
I have repeatedly tried asking VIA for help, in various different ways. The
VT1211 datasheet and the VT1211 bios porting guide have not resolved the
issue. VIA has proven incapable of addressing the problem.
I have one last idea. There is an emulator to test VGA bios's, I was messing
with it a few months back. Is there an emulator for the full BIOS? I'd like
to be able to watch all io port accesses of the award bios, maybe I can
trap when it goes to write to the 0x2e + 0x2f io ports to configure the
vt1211 serial ports, then look for something near there that might be related.
The idea would be to figure out what magical thing the AWARD bios is doing
to initialize the serial port.
Failing that is there any way to disassemble a BIOS image?
Any ideas welcome.
BTW if anyone has figured out how to fix the problem, please just f*cking
out with it, I think I've been very generous in the past with enhancements
and turnabout is fair play.
Thanks--
Dave