----- 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
