/* Some Titan cards are also a little weird  */
static int titan_400l_800l_setup(struct serial_private *priv, const struct pciserial_board *board, struct uart_port *port, int idx)
/* Some Titan cards are also a little weird  */
static int titan_400l_800l_setup(struct serial_private *priv, const struct pciserial_board *board, struct uart_port *port, int idx)
{
	unsigned int bar, offset = board->first_offset;
	switch (idx) {
	case 0:
		bar = 1;
		break;
	case 1:
		bar = 2;
		break;
	default:
		bar = 4;
		offset = (idx - 2) * board->uart_offset;
	}
	return setup_port(priv, port, bar, offset, board->reg_shift);
}