
From: Adam Belay <ambx1@neo.rr.com>

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). */

_
