diff options
| author | pgoyette <pgoyette@NetBSD.org> | 2012-05-31 16:09:33 +0000 |
|---|---|---|
| committer | pgoyette <pgoyette@NetBSD.org> | 2012-05-31 16:09:33 +0000 |
| commit | c3bfd43d4ac6526b49a303073ea8965e4fb81c4d (patch) | |
| tree | 54b99613513c0c8a1d82c2e5c6574aecdd93b639 /sys/dev | |
| parent | ea0cf66c0db6ba9640f3a295afad98aacfa7d5e8 (diff) | |
Update handling of sysctl stuff when built as modules
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/i2c/dbcool.c | 13 | ||||
| -rw-r--r-- | sys/dev/i2c/spdmem_i2c.c | 9 | ||||
| -rw-r--r-- | sys/dev/ic/spdmem.c | 14 |
3 files changed, 26 insertions, 10 deletions
diff --git a/sys/dev/i2c/dbcool.c b/sys/dev/i2c/dbcool.c index 7ad1ddf1b6d..f72fec5e306 100644 --- a/sys/dev/i2c/dbcool.c +++ b/sys/dev/i2c/dbcool.c @@ -1,4 +1,4 @@ -/* $NetBSD: dbcool.c,v 1.36 2012/04/28 17:27:08 wiz Exp $ */ +/* $NetBSD: dbcool.c,v 1.37 2012/05/31 16:09:33 pgoyette Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -50,7 +50,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: dbcool.c,v 1.36 2012/04/28 17:27:08 wiz Exp $"); +__KERNEL_RCSID(0, "$NetBSD: dbcool.c,v 1.37 2012/05/31 16:09:33 pgoyette Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -1115,7 +1115,11 @@ dbcool_read_volt(struct dbcool_softc *sc, uint8_t reg, int nom_idx, bool extres) SYSCTL_SETUP(sysctl_dbcoolsetup, "sysctl dBCool subtree setup") { sysctl_createv(clog, 0, NULL, NULL, +#ifdef _MODULE + 0, +#else CTLFLAG_PERMANENT, +#endif CTLTYPE_NODE, "hw", NULL, NULL, 0, NULL, 0, CTL_HW, CTL_EOL); @@ -2178,18 +2182,23 @@ static int dbcool_modcmd(modcmd_t cmd, void *opaque) { int error = 0; +#ifdef _MODULE + static struct sysctllog *dbcool_sysctl_clog; +#endif switch (cmd) { case MODULE_CMD_INIT: #ifdef _MODULE error = config_init_component(cfdriver_ioconf_dbcool, cfattach_ioconf_dbcool, cfdata_ioconf_dbcool); + sysctl_dbcoolsetup(&dbcool_sysctl_clog); #endif return error; case MODULE_CMD_FINI: #ifdef _MODULE error = config_fini_component(cfdriver_ioconf_dbcool, cfattach_ioconf_dbcool, cfdata_ioconf_dbcool); + sysctl_teardown(&dbcool_sysctl_clog); #endif return error; default: diff --git a/sys/dev/i2c/spdmem_i2c.c b/sys/dev/i2c/spdmem_i2c.c index a7b3dc9f594..7c71ce1ced9 100644 --- a/sys/dev/i2c/spdmem_i2c.c +++ b/sys/dev/i2c/spdmem_i2c.c @@ -1,4 +1,4 @@ -/* $NetBSD: spdmem_i2c.c,v 1.4 2012/01/22 10:36:52 nakayama Exp $ */ +/* $NetBSD: spdmem_i2c.c,v 1.5 2012/05/31 16:09:33 pgoyette Exp $ */ /* * Copyright (c) 2007 Nicolas Joly @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: spdmem_i2c.c,v 1.4 2012/01/22 10:36:52 nakayama Exp $"); +__KERNEL_RCSID(0, "$NetBSD: spdmem_i2c.c,v 1.5 2012/05/31 16:09:33 pgoyette Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -145,18 +145,23 @@ static int spdmem_modcmd(modcmd_t cmd, void *opaque) { int error = 0; +#ifdef _MODULE + static struct sysctllog *spdmem_sysctl_clog; +#endif switch (cmd) { case MODULE_CMD_INIT: #ifdef _MODULE error = config_init_component(cfdriver_ioconf_spdmem, cfattach_ioconf_spdmem, cfdata_ioconf_spdmem); + sysctl_spdmem_setup(&spdmem_sysctl_clog); #endif return error; case MODULE_CMD_FINI: #ifdef _MODULE error = config_fini_component(cfdriver_ioconf_spdmem, cfattach_ioconf_spdmem, cfdata_ioconf_spdmem); + sysctl_teardown(&spdmem_sysctl_clog); #endif return error; default: diff --git a/sys/dev/ic/spdmem.c b/sys/dev/ic/spdmem.c index c288a7863a2..1408b82299a 100644 --- a/sys/dev/ic/spdmem.c +++ b/sys/dev/ic/spdmem.c @@ -1,4 +1,4 @@ -/* $NetBSD: spdmem.c,v 1.5 2011/08/19 09:46:10 wiz Exp $ */ +/* $NetBSD: spdmem.c,v 1.6 2012/05/31 16:09:34 pgoyette Exp $ */ /* * Copyright (c) 2007 Nicolas Joly @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: spdmem.c,v 1.5 2011/08/19 09:46:10 wiz Exp $"); +__KERNEL_RCSID(0, "$NetBSD: spdmem.c,v 1.6 2012/05/31 16:09:34 pgoyette Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -276,9 +276,6 @@ spdmem_common_attach(struct spdmem_softc *sc, device_t self) * Setup our sysctl subtree, hw.spdmemN */ sc->sc_sysctl_log = NULL; -#ifdef _MODULE - sysctl_spdmem_setup(&sc->sc_sysctl_log); -#endif if (hw_node != CTL_EOL) sysctl_createv(&sc->sc_sysctl_log, 0, NULL, &node, 0, CTLTYPE_NODE, @@ -401,7 +398,12 @@ SYSCTL_SETUP(sysctl_spdmem_setup, "sysctl hw.spdmem subtree setup") { const struct sysctlnode *node; - if (sysctl_createv(clog, 0, NULL, &node, CTLFLAG_PERMANENT, + if (sysctl_createv(clog, 0, NULL, &node, +#ifdef _MODULE + 0, +#else + CTLFLAG_PERMANENT, +#endif CTLTYPE_NODE, "hw", NULL, NULL, 0, NULL, 0, CTL_HW, CTL_EOL) != 0) return; |
