From: Adam Belay Fix http://bugme.osdl.org/show_bug.cgi?id=2540 It prevents PnP detection if devices were already detected by SuperIO. --- 25-akpm/drivers/parport/parport_pc.c | 11 +++++++---- 1 files changed, 7 insertions(+), 4 deletions(-) diff -puN drivers/parport/parport_pc.c~parport-pnp-detection-fix drivers/parport/parport_pc.c --- 25/drivers/parport/parport_pc.c~parport-pnp-detection-fix 2004-04-25 22:43:59.735157032 -0700 +++ 25-akpm/drivers/parport/parport_pc.c 2004-04-25 22:43:59.739156424 -0700 @@ -2955,10 +2955,13 @@ static int __init parport_pc_find_ports /* Onboard SuperIO chipsets that show themselves on the PCI bus. */ count += parport_pc_init_superio (autoirq, autodma); - r = pnp_register_driver (&parport_pc_pnp_driver); - if (r >= 0) { - pnp_registered_parport = 1; - count += r; + /* PnP ports, skip detection if SuperIO already found them */ + if (!count) { + r = pnp_register_driver (&parport_pc_pnp_driver); + if (r >= 0) { + pnp_registered_parport = 1; + count += r; + } } /* ISA ports and whatever (see asm/parport.h). */ _