EPIA-M + second serial port enabler

Dave Ashley linuxbios at xdr.com
Tue Dec 9 13:09:00 CET 2003


In a previous email message
http://www.clustermatic.org/pipermail/linuxbios/2003-November/005891.html

I wrote
In V1 the file to modify is src/superio/via/vt1211/setup_serial.inc
That code sets up ttyS0 which is the VT1211's logical device 2. You
want to add some similiar code for logical device 3 to get ttyS1 working.

Assuming you want it to be at 2f8 you'd merge in these lines:
	OUTPNPADDR($7)
	OUTPNPDATA($3)
	/* set the enable in reg. 0x30 */
	OUTPNPADDR($0x30)
	OUTPNPDATA($0x1)

	/* Serial Port 2 Base Address (BEh) */
	OUTPNPADDR($0x60)
	OUTPNPDATA($0xbe)
	/* Serial Port 2 IRQ (03h) */
	OUTPNPADDR($0x70)
	OUTPNPDATA($0x3)
	/* Serial Port 2 Control */
	OUTPNPADDR($0xf0)
	OUTPNPDATA($0x2)

...then do the turn off pnp
	/* turn off PnP */
	OUTPNPADDR($0xaa)

...then duplicate the serial setup except the address goes from 3f8 -> 2f8


There is a piece missing. I had to enable the second serial port on the VT1211
and although linux recognized it, there was no serial activity on the lines.

These lines need to be added during the vt1211 configuration:

	/* Allow serial port 2 (ldn 3) pins to come out */
	OUTPNPADDR($0x27)
	OUTPNPDATA($00)

This has to be before the $0xaa write to turn off configuration mode.

The default value on powerup for this register on the vt1211 is 0xff.
There are multi purpose pins on the chip and this connects them to the second
serial port.

-Dave




More information about the coreboot mailing list