----- Ursprüngliche Mail -----
> An update:
> If the 16550A driver is modprobed with no arguments, it apparently
> probes the PCI subsystem, gets the irq, and interrupts are enabled OK.
> The serial port can send/receive data.
> But, if a port= or irq= argument is passed into the 16550A driver,
> then the driver seems to skip probing the PCI syubsystem, and the
> driver fails to enable the irq. No data can transmitted or received by
> the port, even though the driver has done an  rtdm_irq_request() of
> the correct irq level.
> 
> This is a problem for my application because I have 6 serial ports and
> some must have different baud_base args, which is now impossible with
> this inconsistent driver behavior.

And just passing baud_base=X,Y,..,Z does not work?
Sure this is still hacky since it depends on the PCI probe order...

We could make baud_base configurable via ioctl, the driver supports already
plenty of them.
Or exposing this and other properties as sysfs attributes.

Further I suggest splitting the driver in at at least two kernel modules.
One for PCI and another one for legacy PIO/PNP.
The current probe interface is IMHO confusing and error prone.

Thanks,
//richard

Reply via email to