wiki:mars

mars

mars is a machine comparable to terra

mars also has a Lava Octopus-550 8-port RS232 PCI card.

it shows up under lspci -v as:

0000:01:03.0 Serial controller: Lava Computer mfg Inc Lava Octo A (prog-if 02 [16550])
	Subsystem: Lava Computer mfg Inc Lava Octo A
	Flags: slow devsel, IRQ 169
	I/O ports at 8000 [size=8]
	I/O ports at 8400 [size=8]
	I/O ports at 8800 [size=8]
	I/O ports at 8c00 [size=8]

0000:01:03.1 Serial controller: Lava Computer mfg Inc Lava Octo B (prog-if 02 [16550])
	Subsystem: Lava Computer mfg Inc Lava Octo B
	Flags: slow devsel, IRQ 169
	I/O ports at 9000 [size=8]
	I/O ports at 9400 [size=8]
	I/O ports at 9800 [size=8]
	I/O ports at 9c00 [size=8]

there are linux configuration instructions online

as it turned out, to properly configure the device, i needed to:

  • install a modern kernel. debian Linux 2.6.18-3-686 has a decent internal serial configuration capable of supporting up to 16 UARTS:
    caladmin@mars:~$ grep UARTS /boot/config-2.6.18-3-686 
    CONFIG_SERIAL_8250_NR_UARTS=16
    CONFIG_SERIAL_8250_RUNTIME_UARTS=4
    caladmin@mars:~$ 
    
  • This defaults to using only 4 out of 16 ports, though, so you need to pass the kernel 8250.nr_uarts=10 at boot time to make the full complement of 10.
  • After boot, you want the setserial package to configure the tools. Tell debconf to configure it manually, and then create an /etc/serial.conf that looks like this:
/dev/ttyS0 uart 16550A port 0x03f8 irq 4 baud_base 115200 spd_normal skip_test
/dev/ttyS1 uart 16550A port 0x02f8 irq 3 baud_base 115200 spd_normal skip_test
## to deconfigure these guys initially so that they can be reset: 
## (don't know why they seem to be set in the first place)
/dev/ttyS2 uart none port 0x8000 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS3 uart none port 0x8400 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS4 uart none port 0x8000 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS5 uart none port 0x8400 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS6 uart none port 0x8000 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS7 uart none port 0x8400 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS8 uart none port 0x8000 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS9 uart none port 0x8400 irq 169 baud_base 115200 spd_normal skip_test

# now we configure them all:
/dev/ttyS2 uart 16550A port 0x8000 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS3 uart 16550A port 0x8400 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS4 uart 16550A port 0x8800 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS5 uart 16550A port 0x8c00 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS6 uart 16550A port 0x9000 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS7 uart 16550A port 0x9400 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS8 uart 16550A port 0x9800 irq 169 baud_base 115200 spd_normal skip_test
/dev/ttyS9 uart 16550A port 0x9c00 irq 169 baud_base 115200 spd_normal skip_test
Last modified 19 years ago Last modified on 02/01/07 17:24:44
Note: See TracWiki for help on using the wiki.