On Fri, Sep 07, 2012 at 01:01:35AM +0100, Alan Cox wrote: > On Thu, 6 Sep 2012 23:20:32 +0100 > Sean Young <sean@xxxxxxxx> wrote: > > > These ports should not be probed, but we need to keep track of them so we > > can prevent the legacy (non-PNP) probe of serial ports from touching them > > too. > > I want to have a think about getting the ordering right so we don't > shuffle the ports on existing boxes for the first half. For the second > part If pnp lists serial devices in a different order than the legacy devices or a singular one which is not the same as ttyS0, things probably will look different. Not sure what can be done or anything needs to be done. > > Signed-off-by: Sean Young <sean@xxxxxxxx> > > --- > > drivers/tty/serial/8250/8250.c | 16 ++++++++++++++-- > > drivers/tty/serial/8250/8250_pnp.c | 23 ++++++++++++++++++----- > > include/linux/serial_core.h | 3 ++- > > 3 files changed, 34 insertions(+), 8 deletions(-) > > > > diff --git a/drivers/tty/serial/8250/8250.c b/drivers/tty/serial/8250/8250.c > > index bc25874..ea9166b 100644 > > --- a/drivers/tty/serial/8250/8250.c > > +++ b/drivers/tty/serial/8250/8250.c > > @@ -290,6 +290,9 @@ static const struct serial8250_config uart_config[] = { > > UART_FCR_R_TRIG_00 | UART_FCR_T_TRIG_00, > > .flags = UART_CAP_FIFO, > > }, > > + [PORT_IR] = { > > + .name = "IR port" > > Please use "CIR port". We have SIR and FIR serial ports (IrDA) too that we > do drive via tty. PORT_8250_CIR for the type might be best too - it means > the tools know what they are looking at and can report it sensibly. At least for the nsc-ircc driver, user space must manually remove the the uart driver and then load the nsc-ircc driver. This patch also fixes that for nsc-ircc devices. It should work although I am unable to find the hardware to test it on yet, I used to have one of these. Testers would be appreciated. See: > diff --git a/drivers/tty/serial/8250/8250_pnp.c b/drivers/tty/serial/8250/8250_pnp.c > index 28bf830..6ab2ce1 100644 > --- a/drivers/tty/serial/8250/8250_pnp.c > +++ b/drivers/tty/serial/8250/8250_pnp.c > @@ -362,6 +362,12 @@ static const struct pnp_device_id pnp_dev_table[] = { > { "PNPCXXX", UNKNOWN_DEV }, > /* More unknown PnP modems */ > { "PNPDXXX", UNKNOWN_DEV }, > + /* IR ports -- should not be probed. We should keep track of them > + to prevent the legacy serial driver from probing */ > + { "WEC1022", IR_PORT }, Winbond CIR > + { "NSC6001", IR_PORT }, > + { "HWPC224", IR_PORT }, > + { "IBM0071", IR_PORT }, nsc-ircc IRDA > { "", 0 } > }; I should have been more explicit about this, possibly in comments. For now I am happy to remove those and rename the port PORT_8250_CIR if you prefer. Sean -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html