summaryrefslogtreecommitdiff
path: root/sys/dev/i2c
diff options
context:
space:
mode:
authorjmcneill <jmcneill@NetBSD.org>2015-03-07 14:16:51 +0000
committerjmcneill <jmcneill@NetBSD.org>2015-03-07 14:16:51 +0000
commit9e86cc08319771cd8ca1d6ace4f0a8dfeb6d4e14 (patch)
treee5098b5229231db6d455c25e8e94642e5fecc097 /sys/dev/i2c
parentd2cbe81cb8b7160997f102b76b9f7f5f72d25a5a (diff)
i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the dependencies in files.i2c and switch device drivers to depend on "i2cexec" module instead. A kernel with a USB stack and no I2C controller / bus attachment would spit out a bunch of "WARNING: module error: can't find builtin dependency `iic'" messages at boot. This change solves that problem.
Diffstat (limited to 'sys/dev/i2c')
-rw-r--r--sys/dev/i2c/au8522.c6
-rw-r--r--sys/dev/i2c/cx24227.c6
-rw-r--r--sys/dev/i2c/dbcool.c6
-rw-r--r--sys/dev/i2c/hytp14.c4
-rw-r--r--sys/dev/i2c/i2c_exec.c22
-rw-r--r--sys/dev/i2c/lg3303.c6
-rw-r--r--sys/dev/i2c/mt2131.c6
-rw-r--r--sys/dev/i2c/nxt2k.c6
-rw-r--r--sys/dev/i2c/sdtemp.c6
-rw-r--r--sys/dev/i2c/spdmem_i2c.c6
-rw-r--r--sys/dev/i2c/tvpll.c6
-rw-r--r--sys/dev/i2c/xc3028.c6
-rw-r--r--sys/dev/i2c/xc5k.c6
-rw-r--r--sys/dev/i2c/zl10353.c6
14 files changed, 58 insertions, 40 deletions
diff --git a/sys/dev/i2c/au8522.c b/sys/dev/i2c/au8522.c
index 9598aadb697..f3ce16ccf5b 100644
--- a/sys/dev/i2c/au8522.c
+++ b/sys/dev/i2c/au8522.c
@@ -1,4 +1,4 @@
-/* $NetBSD: au8522.c,v 1.6 2011/10/02 19:03:56 jmcneill Exp $ */
+/* $NetBSD: au8522.c,v 1.7 2015/03/07 14:16:51 jmcneill Exp $ */
/*-
* Copyright (c) 2010 Jared D. McNeill <jmcneill@invisible.ca>
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: au8522.c,v 1.6 2011/10/02 19:03:56 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: au8522.c,v 1.7 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -419,7 +419,7 @@ au8522_get_snr(struct au8522 *au)
return 0;
}
-MODULE(MODULE_CLASS_DRIVER, au8522, "iic");
+MODULE(MODULE_CLASS_DRIVER, au8522, "i2cexec");
static int
au8522_modcmd(modcmd_t cmd, void *opaque)
diff --git a/sys/dev/i2c/cx24227.c b/sys/dev/i2c/cx24227.c
index dffaa60cae5..e9a688705eb 100644
--- a/sys/dev/i2c/cx24227.c
+++ b/sys/dev/i2c/cx24227.c
@@ -1,4 +1,4 @@
-/* $NetBSD: cx24227.c,v 1.6 2012/03/15 16:20:36 bouyer Exp $ */
+/* $NetBSD: cx24227.c,v 1.7 2015/03/07 14:16:51 jmcneill Exp $ */
/*
* Copyright (c) 2008, 2011 Jonathan A. Kollasch
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cx24227.c,v 1.6 2012/03/15 16:20:36 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cx24227.c,v 1.7 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -328,7 +328,7 @@ cx24227_init(struct cx24227 *sc)
return 0;
}
-MODULE(MODULE_CLASS_DRIVER, cx24227, "iic");
+MODULE(MODULE_CLASS_DRIVER, cx24227, "i2cexec");
static int
cx24227_modcmd(modcmd_t cmd, void *priv)
diff --git a/sys/dev/i2c/dbcool.c b/sys/dev/i2c/dbcool.c
index ed8bcf737a2..30d4ddf5a13 100644
--- a/sys/dev/i2c/dbcool.c
+++ b/sys/dev/i2c/dbcool.c
@@ -1,4 +1,4 @@
-/* $NetBSD: dbcool.c,v 1.41 2014/08/10 16:44:35 tls Exp $ */
+/* $NetBSD: dbcool.c,v 1.42 2015/03/07 14:16:51 jmcneill Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -50,7 +50,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: dbcool.c,v 1.41 2014/08/10 16:44:35 tls Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dbcool.c,v 1.42 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -2161,7 +2161,7 @@ dbcool_set_fan_limits(struct dbcool_softc *sc, int idx,
}
}
-MODULE(MODULE_CLASS_DRIVER, dbcool, "iic");
+MODULE(MODULE_CLASS_DRIVER, dbcool, "i2cexec");
#ifdef _MODULE
#include "ioconf.c"
diff --git a/sys/dev/i2c/hytp14.c b/sys/dev/i2c/hytp14.c
index 1a5a7a1072c..899d08b7136 100644
--- a/sys/dev/i2c/hytp14.c
+++ b/sys/dev/i2c/hytp14.c
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: hytp14.c,v 1.2 2014/06/29 09:52:43 kardel Exp $");
+__KERNEL_RCSID(0, "$NetBSD: hytp14.c,v 1.3 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -283,7 +283,7 @@ hytp14_refresh(struct sysmon_envsys *sme, envsys_data_t *edata)
}
-MODULE(MODULE_CLASS_DRIVER, hythygtemp, "iic");
+MODULE(MODULE_CLASS_DRIVER, hythygtemp, "i2cexec");
#ifdef _MODULE
#include "ioconf.c"
diff --git a/sys/dev/i2c/i2c_exec.c b/sys/dev/i2c/i2c_exec.c
index a54f362e7eb..611285552be 100644
--- a/sys/dev/i2c/i2c_exec.c
+++ b/sys/dev/i2c/i2c_exec.c
@@ -1,4 +1,4 @@
-/* $NetBSD: i2c_exec.c,v 1.9 2013/09/12 20:30:58 martin Exp $ */
+/* $NetBSD: i2c_exec.c,v 1.10 2015/03/07 14:16:51 jmcneill Exp $ */
/*
* Copyright (c) 2003 Wasabi Systems, Inc.
@@ -36,11 +36,12 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: i2c_exec.c,v 1.9 2013/09/12 20:30:58 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: i2c_exec.c,v 1.10 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/device.h>
+#include <sys/module.h>
#include <sys/event.h>
#include <sys/conf.h>
@@ -50,6 +51,8 @@ __KERNEL_RCSID(0, "$NetBSD: i2c_exec.c,v 1.9 2013/09/12 20:30:58 martin Exp $");
static uint8_t iic_smbus_crc8(uint16_t);
static uint8_t iic_smbus_pec(int, uint8_t *, uint8_t *);
+static int i2cexec_modcmd(modcmd_t, void *);
+
/*
* iic_exec:
*
@@ -342,3 +345,18 @@ iic_smbus_pec(int count, uint8_t *s, uint8_t *r)
return crc;
}
+
+MODULE(MODULE_CLASS_MISC, i2cexec, NULL);
+
+static int
+i2cexec_modcmd(modcmd_t cmd, void *opaque)
+{
+ switch (cmd) {
+ case MODULE_CMD_INIT:
+ case MODULE_CMD_FINI:
+ return 0;
+ break;
+ default:
+ return ENOTTY;
+ }
+}
diff --git a/sys/dev/i2c/lg3303.c b/sys/dev/i2c/lg3303.c
index ab3a2d16326..686ddeac31f 100644
--- a/sys/dev/i2c/lg3303.c
+++ b/sys/dev/i2c/lg3303.c
@@ -1,4 +1,4 @@
-/* $NetBSD: lg3303.c,v 1.8 2011/10/02 19:03:56 jmcneill Exp $ */
+/* $NetBSD: lg3303.c,v 1.9 2015/03/07 14:16:51 jmcneill Exp $ */
/*-
* Copyright 2007 Jason Harmening
@@ -28,7 +28,7 @@
*/
#include <sys/param.h>
-__KERNEL_RCSID(0, "$NetBSD: lg3303.c,v 1.8 2011/10/02 19:03:56 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lg3303.c,v 1.9 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/types.h>
#include <sys/kmem.h>
@@ -351,7 +351,7 @@ lg3303_get_ucblocks(struct lg3303 *lg)
return (buffer[0] << 8) | buffer[1];
}
-MODULE(MODULE_CLASS_DRIVER, lg3303, "iic,dtv_math");
+MODULE(MODULE_CLASS_DRIVER, lg3303, "i2cexec,dtv_math");
static int
lg3303_modcmd(modcmd_t cmd, void *opaque)
diff --git a/sys/dev/i2c/mt2131.c b/sys/dev/i2c/mt2131.c
index 268f7cc758e..d89e5bf273f 100644
--- a/sys/dev/i2c/mt2131.c
+++ b/sys/dev/i2c/mt2131.c
@@ -1,4 +1,4 @@
-/* $NetBSD: mt2131.c,v 1.4 2011/10/02 19:03:56 jmcneill Exp $ */
+/* $NetBSD: mt2131.c,v 1.5 2015/03/07 14:16:51 jmcneill Exp $ */
/*
* Copyright (c) 2008, 2011 Jonathan A. Kollasch
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mt2131.c,v 1.4 2011/10/02 19:03:56 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mt2131.c,v 1.5 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -255,7 +255,7 @@ mt2131_write(struct mt2131_softc *sc, uint8_t a, uint8_t v)
return ret;
}
-MODULE(MODULE_CLASS_DRIVER, mt2131, "iic");
+MODULE(MODULE_CLASS_DRIVER, mt2131, "i2cexec");
static int
mt2131_modcmd(modcmd_t cmd, void *priv)
diff --git a/sys/dev/i2c/nxt2k.c b/sys/dev/i2c/nxt2k.c
index 358e4a715af..5b6bb035567 100644
--- a/sys/dev/i2c/nxt2k.c
+++ b/sys/dev/i2c/nxt2k.c
@@ -1,4 +1,4 @@
-/* $NetBSD: nxt2k.c,v 1.3 2011/10/02 19:03:56 jmcneill Exp $ */
+/* $NetBSD: nxt2k.c,v 1.4 2015/03/07 14:16:51 jmcneill Exp $ */
/*
* Copyright (c) 2008, 2011 Jonathan A. Kollasch
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nxt2k.c,v 1.3 2011/10/02 19:03:56 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nxt2k.c,v 1.4 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
@@ -830,7 +830,7 @@ nxt2k_set_modulation(struct nxt2k *nxt, fe_modulation_t modulation)
return nxt2k_fe_set_frontend(nxt, modulation);
}
-MODULE(MODULE_CLASS_DRIVER, nxt2k, "iic");
+MODULE(MODULE_CLASS_DRIVER, nxt2k, "i2cexec");
static int
nxt2k_modcmd(modcmd_t cmd, void *opaque)
diff --git a/sys/dev/i2c/sdtemp.c b/sys/dev/i2c/sdtemp.c
index f04a34e1ff9..70625ddb854 100644
--- a/sys/dev/i2c/sdtemp.c
+++ b/sys/dev/i2c/sdtemp.c
@@ -1,4 +1,4 @@
-/* $NetBSD: sdtemp.c,v 1.23 2014/01/09 16:51:05 mlelstv Exp $ */
+/* $NetBSD: sdtemp.c,v 1.24 2015/03/07 14:16:51 jmcneill Exp $ */
/*
* Copyright (c) 2009 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sdtemp.c,v 1.23 2014/01/09 16:51:05 mlelstv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sdtemp.c,v 1.24 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -553,7 +553,7 @@ sdtemp_pmf_resume(device_t dev, const pmf_qual_t *qual)
return (error == 0);
}
-MODULE(MODULE_CLASS_DRIVER, sdtemp, "iic");
+MODULE(MODULE_CLASS_DRIVER, sdtemp, "i2cexec");
#ifdef _MODULE
#include "ioconf.c"
diff --git a/sys/dev/i2c/spdmem_i2c.c b/sys/dev/i2c/spdmem_i2c.c
index c539285613f..128fa313a65 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.9 2014/04/14 14:30:24 pooka Exp $ */
+/* $NetBSD: spdmem_i2c.c,v 1.10 2015/03/07 14:16:51 jmcneill Exp $ */
/*
* Copyright (c) 2007 Nicolas Joly
@@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: spdmem_i2c.c,v 1.9 2014/04/14 14:30:24 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: spdmem_i2c.c,v 1.10 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/device.h>
@@ -133,7 +133,7 @@ spdmem_i2c_read(struct spdmem_softc *softc, uint8_t reg)
return val;
}
-MODULE(MODULE_CLASS_DRIVER, spdmem, "iic");
+MODULE(MODULE_CLASS_DRIVER, spdmem, "i2cexec");
#ifdef _MODULE
#include "ioconf.c"
diff --git a/sys/dev/i2c/tvpll.c b/sys/dev/i2c/tvpll.c
index 31d4d07c0cc..a71c0a765f2 100644
--- a/sys/dev/i2c/tvpll.c
+++ b/sys/dev/i2c/tvpll.c
@@ -1,4 +1,4 @@
-/* $NetBSD: tvpll.c,v 1.5 2013/10/17 21:18:43 christos Exp $ */
+/* $NetBSD: tvpll.c,v 1.6 2015/03/07 14:16:51 jmcneill Exp $ */
/*
* Copyright (c) 2008, 2011 Jonathan A. Kollasch
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tvpll.c,v 1.5 2013/10/17 21:18:43 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tvpll.c,v 1.6 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -153,7 +153,7 @@ tvpll_tune_dtv(struct tvpll *tvpll,
return rv;
}
-MODULE(MODULE_CLASS_DRIVER, tvpll, "iic");
+MODULE(MODULE_CLASS_DRIVER, tvpll, "i2cexec");
static int
tvpll_modcmd(modcmd_t cmd, void *opaque)
diff --git a/sys/dev/i2c/xc3028.c b/sys/dev/i2c/xc3028.c
index 41880b41df9..79a8236767e 100644
--- a/sys/dev/i2c/xc3028.c
+++ b/sys/dev/i2c/xc3028.c
@@ -1,4 +1,4 @@
-/* $NetBSD: xc3028.c,v 1.6 2015/01/07 07:05:48 ozaki-r Exp $ */
+/* $NetBSD: xc3028.c,v 1.7 2015/03/07 14:16:51 jmcneill Exp $ */
/*-
* Copyright (c) 2011 Jared D. McNeill <jmcneill@invisible.ca>
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xc3028.c,v 1.6 2015/01/07 07:05:48 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xc3028.c,v 1.7 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -564,7 +564,7 @@ xc3028_tune_dtv(struct xc3028 *xc, const struct dvb_frontend_parameters *params)
return 0;
}
-MODULE(MODULE_CLASS_DRIVER, xc3028, "iic");
+MODULE(MODULE_CLASS_DRIVER, xc3028, "i2cexec");
static int
xc3028_modcmd(modcmd_t cmd, void *opaque)
diff --git a/sys/dev/i2c/xc5k.c b/sys/dev/i2c/xc5k.c
index 4635808e135..3ee971d1bce 100644
--- a/sys/dev/i2c/xc5k.c
+++ b/sys/dev/i2c/xc5k.c
@@ -1,4 +1,4 @@
-/* $NetBSD: xc5k.c,v 1.5 2015/01/07 07:05:48 ozaki-r Exp $ */
+/* $NetBSD: xc5k.c,v 1.6 2015/03/07 14:16:51 jmcneill Exp $ */
/*-
* Copyright (c) 2010 Jared D. McNeill <jmcneill@invisible.ca>
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xc5k.c,v 1.5 2015/01/07 07:05:48 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xc5k.c,v 1.6 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -434,7 +434,7 @@ xc5k_get_status(struct xc5k *xc)
return festatus;
}
-MODULE(MODULE_CLASS_DRIVER, xc5k, "iic");
+MODULE(MODULE_CLASS_DRIVER, xc5k, "i2cexec");
static int
xc5k_modcmd(modcmd_t cmd, void *opaque)
diff --git a/sys/dev/i2c/zl10353.c b/sys/dev/i2c/zl10353.c
index f5d45a6faa6..8fe0490d87a 100644
--- a/sys/dev/i2c/zl10353.c
+++ b/sys/dev/i2c/zl10353.c
@@ -1,4 +1,4 @@
-/* $NetBSD: zl10353.c,v 1.3 2011/10/02 19:03:56 jmcneill Exp $ */
+/* $NetBSD: zl10353.c,v 1.4 2015/03/07 14:16:51 jmcneill Exp $ */
/*-
* Copyright (c) 2011 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
* SUCH DAMAGE.
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: zl10353.c,v 1.3 2011/10/02 19:03:56 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: zl10353.c,v 1.4 2015/03/07 14:16:51 jmcneill Exp $");
#include <sys/param.h>
#include <sys/kmem.h>
@@ -650,7 +650,7 @@ zl10353_get_snr(struct zl10353 *zl)
return (val << 8) | val;
}
-MODULE(MODULE_CLASS_DRIVER, zl10353, "iic");
+MODULE(MODULE_CLASS_DRIVER, zl10353, "i2cexec");
static int
zl10353_modcmd(modcmd_t cmd, void *aux)