Module Name:    src
Committed By:   christos
Date:           Fri Jun  3 03:09:02 UTC 2011

Modified Files:
        src/sys/arch/sparc64/dev: psm.c

Log Message:
CFATTACH_DECL_NEW


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/sparc64/dev/psm.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/arch/sparc64/dev/psm.c
diff -u src/sys/arch/sparc64/dev/psm.c:1.7 src/sys/arch/sparc64/dev/psm.c:1.8
--- src/sys/arch/sparc64/dev/psm.c:1.7	Sat Apr  5 09:40:05 2008
+++ src/sys/arch/sparc64/dev/psm.c	Thu Jun  2 23:09:02 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: psm.c,v 1.7 2008/04/05 13:40:05 cegger Exp $ */
+/* $NetBSD: psm.c,v 1.8 2011/06/03 03:09:02 christos Exp $ */
 /*
  * Copyright (c) 2006 Itronix Inc.
  * All rights reserved.
@@ -36,7 +36,7 @@
  * time with APM at this point, and some of sysmon seems "lacking".
  */
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: psm.c,v 1.7 2008/04/05 13:40:05 cegger Exp $");
+__KERNEL_RCSID(0, "$NetBSD: psm.c,v 1.8 2011/06/03 03:09:02 christos Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -60,7 +60,7 @@
 #include <sparc64/dev/psmreg.h>
 
 struct psm_softc {
-	struct device		sc_dev;
+	device_t		sc_dev;
 	bus_space_tag_t		sc_memt;
 	bus_space_handle_t	sc_memh;
 
@@ -120,15 +120,15 @@
     uint8_t);
 STATIC int psm_ecmd_wr8(struct psm_softc *, uint8_t, uint8_t, uint8_t,
     uint8_t);
-STATIC int psm_match(struct device *, struct cfdata *, void *);
-STATIC void psm_attach(struct device *, struct device *, void *);
+STATIC int psm_match(device_t, cfdata_t, void *);
+STATIC void psm_attach(device_t, device_t, void *);
 
-CFATTACH_DECL(psm, sizeof(struct psm_softc),
+CFATTACH_DECL_NEW(psm, sizeof(struct psm_softc),
     psm_match, psm_attach, NULL, NULL);
 
 
 int
-psm_match(struct device *parent, struct cfdata *cf, void *aux)
+psm_match(struct device *parent, cfdata_t cf, void *aux)
 {
 	struct ebus_attach_args *ea = aux;
 
@@ -140,16 +140,17 @@
 void
 psm_attach(struct device *parent, struct device *self, void *aux)
 {
-	struct psm_softc	*sc = (struct psm_softc *)self;
+	struct psm_softc	*sc = device_private(self);
 	struct ebus_attach_args	*ea = aux;
 	bus_addr_t		devaddr;
 	const char		*xname;
 
-	xname = device_xname(&sc->sc_dev);
 
+	sc->sc_dev = self;
 	sc->sc_memt = ea->ea_bustag;
 	devaddr = EBUS_ADDR_FROM_REG(&ea->ea_reg[0]);
 
+	xname = device_xname(sc->sc_dev);
 	if (bus_space_map(sc->sc_memt, devaddr, ea->ea_reg[0].size,
 		0, &sc->sc_memh) != 0) {
 		printf(": unable to map device registers\n");
@@ -165,8 +166,8 @@
 	psm_sysmon_setup(sc);
 
 	if (kthread_create(PRI_NONE, 0, NULL, psm_event_thread, sc,
-	    &sc->sc_thread, "%s", device_xname(&sc->sc_dev)) != 0) {
-		aprint_error_dev(&sc->sc_dev, "unable to create event kthread\n");
+	    &sc->sc_thread, "%s", xname) != 0) {
+		aprint_error_dev(sc->sc_dev, "unable to create event kthread\n");
 	}
 
 	/*
@@ -175,7 +176,7 @@
 	(void) bus_intr_establish(sc->sc_memt, ea->ea_intr[0], IPL_HIGH,
 	    psm_intr, sc);
 	evcnt_attach_dynamic(&sc->sc_intrcnt, EVCNT_TYPE_INTR, NULL,
-	    device_xname(&sc->sc_dev), "intr");
+	    xname, "intr");
 }
 
 /*
@@ -184,7 +185,7 @@
 void
 psm_sysmon_setup(struct psm_softc *sc)
 {
-	const char	*xname	= device_xname(&sc->sc_dev);
+	const char	*xname	= device_xname(sc->sc_dev);
 
 
 	/*
@@ -271,7 +272,7 @@
 	/* make sure that UPS battery is reasonable */
 	if (psm_misc_rd(sc, PSM_MISC_UPS, &batt) || (batt > PSM_MAX_BATTERIES))
 		if (psm_misc_wr(sc, PSM_MISC_UPS, batt))
-			aprint_error_dev(&sc->sc_dev, "cannot set UPS battery");
+			aprint_error_dev(sc->sc_dev, "cannot set UPS battery");
 
 	return (0);
 }

Reply via email to