> > +#ifdef CONFIG_SERIAL_8250 Coule be modular > > + if (!io) { > > + struct uart_port port = { .iobase = data->sbase }; > > + int line = serial8250_find_port(&port); > > + if (line >= 0) { > > + serial8250_unregister_port(line); > > Hmm... Not sure if it makes sense, but perhaps the unregistering code > should be reverting serial8250_unregister_port(line). Can't do that anyway it may well be busy. > > --- a/drivers/tty/serial/8250/8250.c > > +++ b/drivers/tty/serial/8250/8250.c > > @@ -2914,6 +2914,7 @@ int serial8250_find_port(struct uart_port *p) > > } > > return -ENODEV; > > } > > +EXPORT_SYMBOL(serial8250_find_port); No - this leaks all the uart internal abstractions into the tree. We really don't want that happening. The right way to fix this (and a couple of other uglies) is to make 8250 on x86 scan for PnP ports *before* generic ports and to make a note of any ports to skip on the PnP scan (so that the port poking scan ignores them too) Alan -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html