> > +#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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to