[Midnightbsd-cvs] src: dev/pcf: merge

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Sat Dec 13 14:44:15 EST 2008


Log Message:
-----------
merge

Modified Files:
--------------
    src/sys/dev/pcf:
        envctrl.c (r1.1.1.1 -> r1.2)
        pcf_ebus.c (r1.1.1.1 -> r1.2)
        pcf_isa.c (r1.1.1.1 -> r1.2)

-------------- next part --------------
Index: pcf_ebus.c
===================================================================
RCS file: /home/cvs/src/sys/dev/pcf/pcf_ebus.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -L sys/dev/pcf/pcf_ebus.c -L sys/dev/pcf/pcf_ebus.c -u -r1.1.1.1 -r1.2
--- sys/dev/pcf/pcf_ebus.c
+++ sys/dev/pcf/pcf_ebus.c
@@ -28,7 +28,7 @@
  * SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/pcf/pcf_ebus.c,v 1.4 2005/06/04 20:29:28 marius Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/pcf/pcf_ebus.c,v 1.7 2007/03/21 03:38:36 nyan Exp $");
 
 /*
  * Device specific driver for the EBus i2c devices found on some sun4u
@@ -193,8 +193,8 @@
 	pcf_rst_card(dev, IIC_FASTEST, own_addr, NULL);
 
 	if (sc->res_irq) {
-		rv = BUS_SETUP_INTR(device_get_parent(dev), dev, sc->res_irq,
-		    INTR_TYPE_NET /* | INTR_ENTROPY */, pcf_intr, sc,
+		rv = bus_setup_intr(dev, sc->res_irq,
+		    INTR_TYPE_NET /* | INTR_ENTROPY */, NULL, pcf_intr, sc,
 		    &sc->intr_cookie);
 		if (rv) {
 			device_printf(dev, "could not setup IRQ\n");
@@ -212,14 +212,10 @@
 
 error:
 	if (sc->res_irq != 0) {
-		bus_deactivate_resource(dev, SYS_RES_IRQ, sc->rid_irq,
-		    sc->res_irq);
 		bus_release_resource(dev, SYS_RES_IRQ, sc->rid_irq,
 		    sc->res_irq);
 	}
 	if (sc->res_ioport != 0) {
-		bus_deactivate_resource(dev, SYS_RES_MEMORY, sc->rid_ioport,
-		    sc->res_ioport);
 		bus_release_resource(dev, SYS_RES_MEMORY, sc->rid_ioport,
 		    sc->res_ioport);
 	}
@@ -241,16 +237,12 @@
 		return (rv);
 
 	if (sc->res_irq != 0) {
-		BUS_TEARDOWN_INTR(device_get_parent(dev), dev, sc->res_irq,
+		bus_teardown_intr(dev, sc->res_irq,
 		    sc->intr_cookie);
-		bus_deactivate_resource(dev, SYS_RES_IRQ, sc->rid_irq,
-		    sc->res_irq);
 		bus_release_resource(dev, SYS_RES_IRQ, sc->rid_irq,
 		    sc->res_irq);
 	}
 
-	bus_deactivate_resource(dev, SYS_RES_MEMORY, sc->rid_ioport,
-	    sc->res_ioport);
 	bus_release_resource(dev, SYS_RES_MEMORY, sc->rid_ioport,
 	    sc->res_ioport);
 
Index: pcf_isa.c
===================================================================
RCS file: /home/cvs/src/sys/dev/pcf/pcf_isa.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -L sys/dev/pcf/pcf_isa.c -L sys/dev/pcf/pcf_isa.c -u -r1.1.1.1 -r1.2
--- sys/dev/pcf/pcf_isa.c
+++ sys/dev/pcf/pcf_isa.c
@@ -28,7 +28,7 @@
  * SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/pcf/pcf_isa.c,v 1.5 2004/08/11 21:19:31 marius Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/pcf/pcf_isa.c,v 1.9 2007/03/21 03:38:36 nyan Exp $");
 
 /*
  * Hardware driver for a Philips PCF8584 I2C bus controller sitting
@@ -101,9 +101,12 @@
 	u_long		start, count;
 	u_int		rid = 0, port, error;
 
-	bus_get_resource(dev, SYS_RES_IOPORT, rid, &start, &count);
-	
+	/* skip PnP probes */
+	if (isa_get_logicalid(dev))
+		return (ENXIO);
+
 	/* The port address must be explicitly specified */
+	bus_get_resource(dev, SYS_RES_IOPORT, rid, &start, &count);
 	if ((error = resource_int_value(PCF_NAME, 0, "port", &port) != 0))
 		return (error);
 
@@ -150,9 +153,9 @@
 	pcf_rst_card(dev, IIC_FASTEST, PCF_DEFAULT_ADDR, NULL);
 
 	if (sc->res_irq) {
-		rv = BUS_SETUP_INTR(device_get_parent(dev), dev, sc->res_irq,
+		rv = bus_setup_intr(dev, sc->res_irq,
 				    INTR_TYPE_NET /* | INTR_ENTROPY */,
-				    pcf_intr, sc, &sc->intr_cookie);
+				    NULL, pcf_intr, sc, &sc->intr_cookie);
 		if (rv) {
 			device_printf(dev, "could not setup IRQ\n");
 			goto error;
@@ -169,14 +172,10 @@
 
 error:
 	if (sc->res_irq != 0) {
-		bus_deactivate_resource(dev, SYS_RES_IRQ, sc->rid_irq,
-					sc->res_irq);
 		bus_release_resource(dev, SYS_RES_IRQ, sc->rid_irq,
 				     sc->res_irq);
 	}
 	if (sc->res_ioport != 0) {
-		bus_deactivate_resource(dev, SYS_RES_IOPORT, sc->rid_ioport,
-					sc->res_ioport);
 		bus_release_resource(dev, SYS_RES_IOPORT, sc->rid_ioport,
 				     sc->res_ioport);
 	}
@@ -198,13 +197,10 @@
 		return (rv);
 
 	if (sc->res_irq != 0) {
-		BUS_TEARDOWN_INTR(device_get_parent(dev), dev, sc->res_irq,
-				  sc->intr_cookie);
-		bus_deactivate_resource(dev, SYS_RES_IRQ, sc->rid_irq, sc->res_irq);
+		bus_teardown_intr(dev, sc->res_irq, sc->intr_cookie);
 		bus_release_resource(dev, SYS_RES_IRQ, sc->rid_irq, sc->res_irq);
 	}
 
-	bus_deactivate_resource(dev, SYS_RES_IOPORT, sc->rid_ioport, sc->res_ioport);
 	bus_release_resource(dev, SYS_RES_IOPORT, sc->rid_ioport, sc->res_ioport);
 
 	return (0);
Index: envctrl.c
===================================================================
RCS file: /home/cvs/src/sys/dev/pcf/envctrl.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -L sys/dev/pcf/envctrl.c -L sys/dev/pcf/envctrl.c -u -r1.1.1.1 -r1.2
--- sys/dev/pcf/envctrl.c
+++ sys/dev/pcf/envctrl.c
@@ -28,7 +28,7 @@
  * SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/pcf/envctrl.c,v 1.5 2005/06/04 20:29:28 marius Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/pcf/envctrl.c,v 1.8 2007/03/21 03:38:36 nyan Exp $");
 
 /*
  * Device specific driver for the SUNW,envctrl device found on some
@@ -133,9 +133,9 @@
 	/* reset the chip */
 	pcf_rst_card(dev, IIC_FASTEST, PCF_DEFAULT_ADDR, NULL);
 
-	rv = BUS_SETUP_INTR(device_get_parent(dev), dev, sc->res_irq,
+	rv = bus_setup_intr(dev, sc->res_irq,
 			    INTR_TYPE_NET /* | INTR_ENTROPY */,
-			    pcf_intr, sc, &sc->intr_cookie);
+			    NULL, pcf_intr, sc, &sc->intr_cookie);
 	if (rv) {
 		device_printf(dev, "could not setup IRQ\n");
 		goto error;
@@ -151,14 +151,10 @@
 
 error:
 	if (sc->res_irq != 0) {
-		bus_deactivate_resource(dev, SYS_RES_IRQ, sc->rid_irq,
-					sc->res_irq);
 		bus_release_resource(dev, SYS_RES_IRQ, sc->rid_irq,
 				     sc->res_irq);
 	}
 	if (sc->res_ioport != 0) {
-		bus_deactivate_resource(dev, SYS_RES_MEMORY, sc->rid_ioport,
-					sc->res_ioport);
 		bus_release_resource(dev, SYS_RES_MEMORY, sc->rid_ioport,
 				     sc->res_ioport);
 	}
@@ -180,13 +176,10 @@
 		return (rv);
 
 	if (sc->res_irq != 0) {
-		BUS_TEARDOWN_INTR(device_get_parent(dev), dev, sc->res_irq,
-				  sc->intr_cookie);
-		bus_deactivate_resource(dev, SYS_RES_IRQ, sc->rid_irq, sc->res_irq);
+		bus_teardown_intr(dev, sc->res_irq, sc->intr_cookie);
 		bus_release_resource(dev, SYS_RES_IRQ, sc->rid_irq, sc->res_irq);
 	}
 
-	bus_deactivate_resource(dev, SYS_RES_MEMORY, sc->rid_ioport, sc->res_ioport);
 	bus_release_resource(dev, SYS_RES_MEMORY, sc->rid_ioport, sc->res_ioport);
 
 	return (0);


More information about the Midnightbsd-cvs mailing list