Module Name:    src
Committed By:   dyoung
Date:           Thu Nov 12 20:29:30 UTC 2009

Modified Files:
        src/sys/dev/pcmcia: com_pcmcia.c

Log Message:
Call com_detach() before doing any bus-specific detachment.

Don't use com_activate(), it's going away.


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 src/sys/dev/pcmcia/com_pcmcia.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pcmcia/com_pcmcia.c
diff -u src/sys/dev/pcmcia/com_pcmcia.c:1.59 src/sys/dev/pcmcia/com_pcmcia.c:1.60
--- src/sys/dev/pcmcia/com_pcmcia.c:1.59	Wed Aug 27 05:39:01 2008
+++ src/sys/dev/pcmcia/com_pcmcia.c	Thu Nov 12 20:29:30 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: com_pcmcia.c,v 1.59 2008/08/27 05:39:01 christos Exp $	 */
+/*	$NetBSD: com_pcmcia.c,v 1.60 2009/11/12 20:29:30 dyoung Exp $	 */
 
 /*-
  * Copyright (c) 1998, 2004 The NetBSD Foundation, Inc.
@@ -61,7 +61,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: com_pcmcia.c,v 1.59 2008/08/27 05:39:01 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: com_pcmcia.c,v 1.60 2009/11/12 20:29:30 dyoung Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -107,7 +107,7 @@
 };
 
 CFATTACH_DECL_NEW(com_pcmcia, sizeof(struct com_pcmcia_softc),
-    com_pcmcia_match, com_pcmcia_attach, com_pcmcia_detach, com_activate);
+    com_pcmcia_match, com_pcmcia_attach, com_pcmcia_detach, NULL);
 
 static const struct pcmcia_product com_pcmcia_products[] = {
 	{ PCMCIA_VENDOR_INVALID, PCMCIA_PRODUCT_INVALID,
@@ -230,11 +230,11 @@
 	if (!psc->sc_attached)
 		return (0);
 
-	pmf_device_deregister(self);
-
 	if ((error = com_detach(self, flags)) != 0)
 		return error;
 
+	pmf_device_deregister(self);
+
 	pcmcia_function_unconfigure(psc->sc_pf);
 	return (0);
 }

Reply via email to