Re: questions about 8250 uart support for adhoc boards

From: Rob Prowel
Date: Fri Feb 23 2007 - 15:48:48 EST


Thanks so much for your followup.


Russell King wrote:
On Fri, Feb 23, 2007 at 12:05:48PM -0500, Rob Prowel wrote:
At least now, with fourport compiled into the kernel,

You don't even need to do that. Just configure SERIAL_8250_NR_UARTS
and SERIAL_8250_RUNTIME_UARTS appropriately for your system. There's
absolutely no need to build any of the additional modules.

Unfortunately what I'm seeing in 2.6.20.1 seems to differ from this. If I use the options below:

CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_NR_UARTS=32
CONFIG_SERIAL_8250_RUNTIME_UARTS=16
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
# CONFIG_SERIAL_8250_FOURPORT is not set
# CONFIG_SERIAL_8250_ACCENT is not set
# CONFIG_SERIAL_8250_BOCA is not set
# CONFIG_SERIAL_8250_EXAR_ST16C554 is not set
# CONFIG_SERIAL_8250_HUB6 is not set
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y
# Non-8250 serial port support

Then I can only access ttyS0 through ttyS3 sith setserial. Only after I add
CONFIG_SERIAL_8250_FOURPORT=y am I actually able to do anything with the additional ports. I would otherwise get the evil setserial: invalid parameter error.

If you'd like I can offline you my complete .config file. lemme know.

I can use setserial to see the uarts and correctly identify them...but the shared interrupt vector doesn't seem to work. I haven't even attempted yet to try stty or echoing data our to an o-scope.

I dropped support for the shared interrupt vector - having multiple
different ISRs depending on the way the wind was blowing was extremely
complex, and in this day and age of GHz CPUs rather silly.

The serial driver can still share interrupts just fine. Just omit
configuring the multiport address and masks.


OK. Fair enough. My question then becomes, how does the driver deal with this now? scan all applicable uarts when any relevant interrupt is detected (as identified in setserial)?


Thanks.



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/