Module Name: src Committed By: pgoyette Date: Mon Feb 26 07:28:02 UTC 2018
Modified Files: src/sys/dev/pci: ichsmb.c Log Message: Modularize the ichsmb(4) driver. No functional changes. To generate a diff of this commit: cvs rdiff -u -r1.52 -r1.53 src/sys/dev/pci/ichsmb.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/pci/ichsmb.c diff -u src/sys/dev/pci/ichsmb.c:1.52 src/sys/dev/pci/ichsmb.c:1.53 --- src/sys/dev/pci/ichsmb.c:1.52 Thu Feb 22 05:09:56 2018 +++ src/sys/dev/pci/ichsmb.c Mon Feb 26 07:28:02 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: ichsmb.c,v 1.52 2018/02/22 05:09:56 msaitoh Exp $ */ +/* $NetBSD: ichsmb.c,v 1.53 2018/02/26 07:28:02 pgoyette Exp $ */ /* $OpenBSD: ichiic.c,v 1.18 2007/05/03 09:36:26 dlg Exp $ */ /* @@ -22,7 +22,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ichsmb.c,v 1.52 2018/02/22 05:09:56 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ichsmb.c,v 1.53 2018/02/26 07:28:02 pgoyette Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -30,6 +30,7 @@ __KERNEL_RCSID(0, "$NetBSD: ichsmb.c,v 1 #include <sys/kernel.h> #include <sys/mutex.h> #include <sys/proc.h> +#include <sys/module.h> #include <sys/bus.h> @@ -82,6 +83,7 @@ static int ichsmb_i2c_exec(void *, i2c_o static int ichsmb_intr(void *); +#include "ioconf.h" CFATTACH_DECL3_NEW(ichsmb, sizeof(struct ichsmb_softc), ichsmb_match, ichsmb_attach, NULL, NULL, ichsmb_rescan, ichsmb_chdet, 0); @@ -450,3 +452,37 @@ done: wakeup(sc); return (1); } + +MODULE(MODULE_CLASS_DRIVER, ichsmb, "pci"); + +#ifdef _MODULE +#include "ioconf.c" +#endif + +static int +ichsmb_modcmd(modcmd_t cmd, void *opaque) +{ + int error = 0; + + switch (cmd) { + case MODULE_CMD_INIT: +#ifdef _MODULE + error = config_init_component(cfdriver_ioconf_ichsmb, + cfattach_ioconf_ichsmb, cfdata_ioconf_ichsmb); +#endif + break; + case MODULE_CMD_FINI: +#ifdef _MODULE + error = config_fini_component(cfdriver_ioconf_ichsmb, + cfattach_ioconf_ichsmb, cfdata_ioconf_ichsmb); +#endif + break; + default: +#ifdef _MODULE + error = ENOTTY; +#endif + break; + } + + return error; +}