Module Name:    src
Committed By:   dyoung
Date:           Sun Dec  6 23:05:39 UTC 2009

Modified Files:
        src/sys/dev/pcmcia: if_xi.c if_xivar.h mhzc.c pcmcom.c xirc.c

Log Message:
device_t/softc split.


To generate a diff of this commit:
cvs rdiff -u -r1.68 -r1.69 src/sys/dev/pcmcia/if_xi.c
cvs rdiff -u -r1.5 -r1.6 src/sys/dev/pcmcia/if_xivar.h
cvs rdiff -u -r1.47 -r1.48 src/sys/dev/pcmcia/mhzc.c
cvs rdiff -u -r1.38 -r1.39 src/sys/dev/pcmcia/pcmcom.c
cvs rdiff -u -r1.30 -r1.31 src/sys/dev/pcmcia/xirc.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/if_xi.c
diff -u src/sys/dev/pcmcia/if_xi.c:1.68 src/sys/dev/pcmcia/if_xi.c:1.69
--- src/sys/dev/pcmcia/if_xi.c:1.68	Fri Nov 13 01:14:35 2009
+++ src/sys/dev/pcmcia/if_xi.c	Sun Dec  6 23:05:39 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_xi.c,v 1.68 2009/11/13 01:14:35 dyoung Exp $ */
+/*	$NetBSD: if_xi.c,v 1.69 2009/12/06 23:05:39 dyoung Exp $ */
 /*	OpenBSD: if_xe.c,v 1.9 1999/09/16 11:28:42 niklas Exp 	*/
 
 /*
@@ -55,7 +55,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_xi.c,v 1.68 2009/11/13 01:14:35 dyoung Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_xi.c,v 1.69 2009/12/06 23:05:39 dyoung Exp $");
 
 #include "opt_inet.h"
 #include "opt_ipx.h"
@@ -211,11 +211,11 @@
 	/* Reset and initialize the card. */
 	xi_full_reset(sc);
 
-	printf("%s: MAC address %s\n", device_xname(&sc->sc_dev), ether_sprintf(myea));
+	printf("%s: MAC address %s\n", device_xname(sc->sc_dev), ether_sprintf(myea));
 
 	ifp = &sc->sc_ethercom.ec_if;
 	/* Initialize the ifnet structure. */
-	strlcpy(ifp->if_xname, device_xname(&sc->sc_dev), IFNAMSIZ);
+	strlcpy(ifp->if_xname, device_xname(sc->sc_dev), IFNAMSIZ);
 	ifp->if_softc = sc;
 	ifp->if_start = xi_start;
 	ifp->if_ioctl = xi_ioctl;
@@ -242,9 +242,9 @@
 	ifmedia_init(&sc->sc_mii.mii_media, 0, xi_mediachange,
 	    ether_mediastatus);
 	DPRINTF(XID_MII | XID_CONFIG,
-	    ("xi: bmsr %x\n", xi_mdi_read(&sc->sc_dev, 0, 1)));
+	    ("xi: bmsr %x\n", xi_mdi_read(sc->sc_dev, 0, 1)));
 
-	mii_attach(&sc->sc_dev, &sc->sc_mii, 0xffffffff, MII_PHY_ANY,
+	mii_attach(sc->sc_dev, &sc->sc_mii, 0xffffffff, MII_PHY_ANY,
 		MII_OFFSET_ANY, 0);
 	if (LIST_FIRST(&sc->sc_mii.mii_phys) == NULL)
 		ifmedia_add(&sc->sc_mii.mii_media, IFM_ETHER | IFM_AUTO, 0,
@@ -252,7 +252,7 @@
 	ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER | IFM_AUTO);
 
 #if NRND > 0
-	rnd_attach_source(&sc->sc_rnd_source, device_xname(&sc->sc_dev), RND_TYPE_NET, 0);
+	rnd_attach_source(&sc->sc_rnd_source, device_xname(sc->sc_dev), RND_TYPE_NET, 0);
 #endif
 }
 
@@ -288,8 +288,7 @@
 
 	DPRINTF(XID_CONFIG, ("xi_intr()\n"));
 
-	if (sc->sc_enabled == 0 ||
-	    !device_is_active(&sc->sc_dev))
+	if (sc->sc_enabled == 0 || !device_is_active(sc->sc_dev))
 		return (0);
 
 	ifp->if_timer = 0;	/* turn watchdog timer off */
@@ -307,7 +306,8 @@
 	/* Check to see if card has been ejected. */
 	if (isr == 0xff) {
 #ifdef DIAGNOSTIC
-		printf("%s: interrupt for dead card\n", device_xname(&sc->sc_dev));
+		printf("%s: interrupt for dead card\n",
+		    device_xname(sc->sc_dev));
 #endif
 		goto end;
 	}
@@ -664,7 +664,7 @@
 {
 	struct xi_softc *sc = ifp->if_softc;
 
-	printf("%s: device timeout\n", device_xname(&sc->sc_dev));
+	printf("%s: device timeout\n", device_xname(sc->sc_dev));
 	++ifp->if_oerrors;
 
 	xi_reset(sc);

Index: src/sys/dev/pcmcia/if_xivar.h
diff -u src/sys/dev/pcmcia/if_xivar.h:1.5 src/sys/dev/pcmcia/if_xivar.h:1.6
--- src/sys/dev/pcmcia/if_xivar.h:1.5	Tue May 12 14:42:18 2009
+++ src/sys/dev/pcmcia/if_xivar.h	Sun Dec  6 23:05:39 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_xivar.h,v 1.5 2009/05/12 14:42:18 cegger Exp $	*/
+/*	$NetBSD: if_xivar.h,v 1.6 2009/12/06 23:05:39 dyoung Exp $	*/
 
 /*
  * Copyright (c) 2004 Charles M. Hannum.  All rights reserved.
@@ -25,7 +25,7 @@
 #endif
 
 struct xi_softc {
-	struct device sc_dev;			/* Generic device info */
+	device_t sc_dev;			/* Generic device info */
 	struct ethercom sc_ethercom;		/* Ethernet common part */
 
 	struct mii_data sc_mii;			/* MII media information */

Index: src/sys/dev/pcmcia/mhzc.c
diff -u src/sys/dev/pcmcia/mhzc.c:1.47 src/sys/dev/pcmcia/mhzc.c:1.48
--- src/sys/dev/pcmcia/mhzc.c:1.47	Fri Nov 13 01:14:35 2009
+++ src/sys/dev/pcmcia/mhzc.c	Sun Dec  6 23:05:39 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: mhzc.c,v 1.47 2009/11/13 01:14:35 dyoung Exp $	*/
+/*	$NetBSD: mhzc.c,v 1.48 2009/12/06 23:05:39 dyoung Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2004 The NetBSD Foundation, Inc.
@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mhzc.c,v 1.47 2009/11/13 01:14:35 dyoung Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mhzc.c,v 1.48 2009/12/06 23:05:39 dyoung Exp $");
 
 #include "opt_inet.h"
 #include "bpfilter.h"
@@ -95,7 +95,7 @@
 #include "mhzc.h"
 
 struct mhzc_softc {
-	struct device sc_dev;		/* generic device glue */
+	device_t sc_dev;		/* generic device glue */
 
 	struct pcmcia_function *sc_pf;	/* our PCMCIA function */
 	void *sc_ih;			/* interrupt handle */
@@ -132,8 +132,8 @@
 void	mhzc_childdet(device_t, device_t);
 int	mhzc_detach(device_t, int);
 
-CFATTACH_DECL(mhzc, sizeof(struct mhzc_softc),
-    mhzc_match, mhzc_attach, mhzc_detach, NULL);
+CFATTACH_DECL2_NEW(mhzc, sizeof(struct mhzc_softc),
+    mhzc_match, mhzc_attach, mhzc_detach, NULL, NULL, mhzc_childdet);
 
 int	mhzc_em3336_enaddr(struct mhzc_softc *, u_int8_t *);
 int	mhzc_em3336_enable(struct mhzc_softc *);
@@ -183,6 +183,7 @@
 	struct pcmcia_config_entry *cfe;
 	int error;
 
+	sc->sc_dev = self;
 	sc->sc_pf = pa->pf;
 
 	sc->sc_product = pcmcia_product_lookup(pa, mhzc_products,
@@ -232,14 +233,14 @@
 
 	if (pcmcia_io_map(sc->sc_pf, PCMCIA_WIDTH_IO8, &sc->sc_modem_pcioh,
 	    &sc->sc_modem_io_window)) {
-		aprint_error_dev(&sc->sc_dev, "unable to map I/O space\n");
+		aprint_error_dev(sc->sc_dev, "unable to map I/O space\n");
 		goto fail;
 	}
 	sc->sc_flags |= MHZC_MODEM_MAPPED;
 
 	if (pcmcia_io_map(sc->sc_pf, PCMCIA_WIDTH_AUTO, &sc->sc_ethernet_pcioh,
 	    &sc->sc_ethernet_io_window)) {
-		aprint_error_dev(&sc->sc_dev, "unable to map I/O space\n");
+		aprint_error_dev(sc->sc_dev, "unable to map I/O space\n");
 		goto fail;
 	}
 	sc->sc_flags |= MHZC_ETHERNET_MAPPED;
@@ -393,7 +394,7 @@
 	int error;
 
 	if ((sc->sc_flags & flag) == flag) {
-		printf("%s: already enabled\n", device_xname(&sc->sc_dev));
+		printf("%s: already enabled\n", device_xname(sc->sc_dev));
 		return (0);
 	}
 
@@ -443,7 +444,7 @@
 {
 
 	if ((sc->sc_flags & flag) == 0) {
-		printf("%s: already disabled\n", device_xname(&sc->sc_dev));
+		printf("%s: already disabled\n", device_xname(sc->sc_dev));
 		return;
 	}
 
@@ -468,10 +469,10 @@
 {
 
 	/* Get the station address from CIS tuple 0x81. */
-	if (pcmcia_scan_cis(device_parent(&sc->sc_dev),
+	if (pcmcia_scan_cis(device_parent(sc->sc_dev),
 	    mhzc_em3336_lannid_ciscallback, myla) != 1) {
 		printf("%s: unable to get Ethernet address from CIS\n",
-		    device_xname(&sc->sc_dev));
+		    device_xname(sc->sc_dev));
 		return (0);
 	}
 
@@ -493,13 +494,13 @@
 
 	/* Map the ISRPOWEREG. */
 	if (pcmcia_mem_alloc(sc->sc_pf, 0x1000, &memh) != 0) {
-		aprint_error_dev(&sc->sc_dev, "unable to allocate memory space\n");
+		aprint_error_dev(sc->sc_dev, "unable to allocate memory space\n");
 		return (1);
 	}
 
 	if (pcmcia_mem_map(sc->sc_pf, PCMCIA_MEM_ATTR, 0, 0x1000,
 	    &memh, &memoff, &memwin)) {
-		aprint_error_dev(&sc->sc_dev, "unable to map memory space\n");
+		aprint_error_dev(sc->sc_dev, "unable to map memory space\n");
 		pcmcia_mem_free(sc->sc_pf, &memh);
 		return (1);
 	}

Index: src/sys/dev/pcmcia/pcmcom.c
diff -u src/sys/dev/pcmcia/pcmcom.c:1.38 src/sys/dev/pcmcia/pcmcom.c:1.39
--- src/sys/dev/pcmcia/pcmcom.c:1.38	Thu Nov 12 22:46:47 2009
+++ src/sys/dev/pcmcia/pcmcom.c	Sun Dec  6 23:05:39 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: pcmcom.c,v 1.38 2009/11/12 22:46:47 dyoung Exp $	*/
+/*	$NetBSD: pcmcom.c,v 1.39 2009/12/06 23:05:39 dyoung Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2000, 2004 The NetBSD Foundation, Inc.
@@ -44,7 +44,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pcmcom.c,v 1.38 2009/11/12 22:46:47 dyoung Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pcmcom.c,v 1.39 2009/12/06 23:05:39 dyoung Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -68,7 +68,7 @@
 #include "locators.h"
 
 struct pcmcom_softc {
-	struct device sc_dev;			/* generic device glue */
+	device_t sc_dev;			/* generic device glue */
 
 	struct pcmcia_function *sc_pf;		/* our PCMCIA function */
 	void *sc_ih;				/* interrupt handle */
@@ -144,6 +144,8 @@
 	int error;
 	int locs[PCMCOMCF_NLOCS];
 
+	sc->sc_dev = self;
+
 	sc->sc_pf = pa->pf;
 
 	error = pcmcia_function_configure(pa->pf, pcmcom_validate_config);
@@ -171,7 +173,7 @@
 
 		locs[PCMCOMCF_SLAVE] = slave;
 
-		sc->sc_slaves[slave] = config_found_sm_loc(&sc->sc_dev,
+		sc->sc_slaves[slave] = config_found_sm_loc(sc->sc_dev,
 			"pcmcom", locs,
 			&pca, pcmcom_print, config_stdsubmatch);
 	}

Index: src/sys/dev/pcmcia/xirc.c
diff -u src/sys/dev/pcmcia/xirc.c:1.30 src/sys/dev/pcmcia/xirc.c:1.31
--- src/sys/dev/pcmcia/xirc.c:1.30	Fri Nov 13 01:14:35 2009
+++ src/sys/dev/pcmcia/xirc.c	Sun Dec  6 23:05:39 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: xirc.c,v 1.30 2009/11/13 01:14:35 dyoung Exp $	*/
+/*	$NetBSD: xirc.c,v 1.31 2009/12/06 23:05:39 dyoung Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2004 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xirc.c,v 1.30 2009/11/13 01:14:35 dyoung Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xirc.c,v 1.31 2009/12/06 23:05:39 dyoung Exp $");
 
 #include "opt_inet.h"
 #include "bpfilter.h"
@@ -89,7 +89,7 @@
 #include <dev/pcmcia/if_xireg.h>
 
 struct xirc_softc {
-	struct device sc_dev;		/* generic device glue */
+	device_t sc_dev;		/* generic device glue */
 
 	struct pcmcia_function *sc_pf;	/* our PCMCIA function */
 	void *sc_ih;			/* interrupt handle */
@@ -126,8 +126,8 @@
 int	xirc_detach(device_t, int);
 void	xirc_childdet(device_t, device_t);
 
-CFATTACH_DECL(xirc, sizeof(struct xirc_softc),
-    xirc_match, xirc_attach, xirc_detach, NULL);
+CFATTACH_DECL2_NEW(xirc, sizeof(struct xirc_softc),
+    xirc_match, xirc_attach, xirc_detach, NULL, NULL, xirc_childdet);
 
 int	xirc_print(void *, const char *);
 
@@ -176,6 +176,8 @@
 	int rv;
 	int error;
 
+	sc->sc_dev = self;
+
 	sc->sc_pf = pa->pf;
 
 	pcmcia_socket_enable(parent);
@@ -454,7 +456,7 @@
 	int error;
 
 	if ((sc->sc_flags & flag) == flag) {
-		printf("%s: already enabled\n", device_xname(&sc->sc_dev));
+		printf("%s: already enabled\n", device_xname(sc->sc_dev));
 		return (0);
 	}
 
@@ -501,7 +503,7 @@
 {
 
 	if ((sc->sc_flags & flag) == 0) {
-		printf("%s: already disabled\n", device_xname(&sc->sc_dev));
+		printf("%s: already disabled\n", device_xname(sc->sc_dev));
 		return;
 	}
 
@@ -629,6 +631,8 @@
 	struct xirc_softc *msc = device_private(parent);
 	u_int8_t myla[ETHER_ADDR_LEN];
 
+	sc->sc_dev = self;
+
 	aprint_normal("\n");
 
 	sc->sc_bst = msc->sc_ethernet_pcioh.iot;
@@ -639,7 +643,7 @@
 	sc->sc_enable = xi_xirc_enable;
 	sc->sc_disable = xi_xirc_disable;
 
-	if (!pcmcia_scan_cis(device_parent(&msc->sc_dev),
+	if (!pcmcia_scan_cis(device_parent(msc->sc_dev),
 	    xi_xirc_lan_nid_ciscallback, myla)) {
 		aprint_error_dev(self, "can't find MAC address\n");
 		return;
@@ -652,8 +656,7 @@
 int
 xi_xirc_enable(struct xi_softc *sc)
 {
-	struct xirc_softc *msc =
-	    (struct xirc_softc *)device_parent(&sc->sc_dev);
+	struct xirc_softc *msc = device_private(device_parent(sc->sc_dev));
 
 	return (xirc_enable(msc, XIRC_ETHERNET_ENABLED, XIMEDIA_ETHER));
 }
@@ -661,8 +664,7 @@
 void
 xi_xirc_disable(struct xi_softc *sc)
 {
-	struct xirc_softc *msc =
-	    (struct xirc_softc *)device_parent(&sc->sc_dev);
+	struct xirc_softc *msc = device_private(device_parent(sc->sc_dev));
 
 	xirc_disable(msc, XIRC_ETHERNET_ENABLED, XIMEDIA_ETHER);
 }

Reply via email to