Module Name: src Committed By: haad Date: Fri Jan 28 23:54:28 UTC 2011
Modified Files: src/sys/dev/pud: pud.c Added Files: src/sys/modules/pud: Makefile Log Message: Add support for building pud as module. Do it in a same way how putter is done. To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/sys/dev/pud/pud.c cvs rdiff -u -r0 -r1.1 src/sys/modules/pud/Makefile 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/pud/pud.c diff -u src/sys/dev/pud/pud.c:1.8 src/sys/dev/pud/pud.c:1.9 --- src/sys/dev/pud/pud.c:1.8 Wed Mar 18 10:22:41 2009 +++ src/sys/dev/pud/pud.c Fri Jan 28 23:54:28 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pud.c,v 1.8 2009/03/18 10:22:41 cegger Exp $ */ +/* $NetBSD: pud.c,v 1.9 2011/01/28 23:54:28 haad Exp $ */ /* * Copyright (c) 2007 Antti Kantee. All Rights Reserved. @@ -29,11 +29,12 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pud.c,v 1.8 2009/03/18 10:22:41 cegger Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pud.c,v 1.9 2011/01/28 23:54:28 haad Exp $"); #include <sys/param.h> #include <sys/conf.h> #include <sys/kmem.h> +#include <sys/module.h> #include <sys/poll.h> #include <sys/queue.h> @@ -381,3 +382,28 @@ } mutex_init(&pud_mtx, MUTEX_DEFAULT, IPL_NONE); } + +MODULE(MODULE_CLASS_DRIVER, pud, putter); + +static int +pud_modcmd(modcmd_t cmd, void *arg) +{ + #ifdef _MODULE + devmajor_t bmajor = NODEVMAJOR, cmajor = NODEVMAJOR; + + switch (cmd) { + case MODULE_CMD_INIT: + pudattach(); + return devsw_attach("pud", NULL, &bmajor, + &pud_cdevsw, &cmajor); + case MODULE_CMD_FINI: + return ENOTTY; /* XXX: puddetach */ + default: + return ENOTTY; + } + #else + if (cmd == MODULE_CMD_INIT) + return 0; + return ENOTTY; + #endif +} Added files: Index: src/sys/modules/pud/Makefile diff -u /dev/null src/sys/modules/pud/Makefile:1.1 --- /dev/null Fri Jan 28 23:54:28 2011 +++ src/sys/modules/pud/Makefile Fri Jan 28 23:54:28 2011 @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1 2011/01/28 23:54:28 haad Exp $ + +.include "../Makefile.inc" + +.PATH: ${S}/dev/pud + +KMOD= pud +SRCS= pud.c pud_dev.c + +.include <bsd.kmodule.mk>