Re: wrong number of serial port detected

Jason Dravet
2005-12-10T17:56:14Z

>From: Russell King <rmk+lkml@arm.linux.org.uk>
>To: Jason Dravet <dravet@hotmail.com>
>CC: bjorn.helgaas@hp.com, linux-kernel@vger.kernel.org
>Subject: Re: wrong number of serial port detected
>Date: Sat, 10 Dec 2005 15:46:28 +0000
>
>On Sat, Dec 10, 2005 at 08:24:59AM -0600, Jason Dravet wrote:
> > How is this for an idea? The serial driver enumerates ACPI, PNPBIOS, or
> > whaterver it needs for the onboard serial ports. If you have a PCI
>based
> > serial card it would show up in the emuneration of the PCI bus, right?
>For
> > the case of ISA serial cards couldn't they have an option in
>modprobe.conf
> > to tell the kernel about the ISA serial card and the proper number of
> > serial ports on the card itself?
>
>That's already thought about and rejected.
>
>If you want to pass a string telling the serial module where the ports
>are, you could be looking at a very _long_ string. You need to specify
>the IO address, IRQ and base baud as a minimum for every port, along
>with optional flags.
>
>Assuming 5 characters for the IO address, 1 for the IRQ, and 6 for
>the baud base, plus 2 for separators between each of these, and one
>character separator per group, you're looking at 15 characters
>minimum per port. For 8 ports, that's 120 characters. 16 would
>be 240 characters. If the driver is built-in to the kernel, you're
>limited to 255 characters to describe all kernel options, so you
>couldn't hope to describe 32 ports.

I was not aware that it worked like that. My last experience with ISA cards
was to put a line in the modules.conf that pointed to the base IO and IRQ
for the card. There was a serperate file that setup the serial ports. This
was way back in RedHat 6.x days. Thank you for the new information.

>The alternative is something like Dave's patch which allows you to
>tell the driver the number of ports you want to support and setserial.

Dave's patch is good and I look forward to seeing it in the kernel.

Thanks,
Jason