aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ow
diff options
context:
space:
mode:
authorPawel Biernacki <kaktus@FreeBSD.org>2020-02-26 14:26:36 +0000
committerPawel Biernacki <kaktus@FreeBSD.org>2020-02-26 14:26:36 +0000
commit7029da5c36f2d3cf6bb6c81bf551229f416399e8 (patch)
tree53cae9da1371117a3ac21d0d0f3f030a692807ae /sys/dev/ow
parentd7313dc6f5fcab29946951936597772dfff6a4be (diff)
Notes
Diffstat (limited to 'sys/dev/ow')
-rw-r--r--sys/dev/ow/ow.c9
-rw-r--r--sys/dev/ow/ow_temp.c3
2 files changed, 7 insertions, 5 deletions
diff --git a/sys/dev/ow/ow.c b/sys/dev/ow/ow.c
index c598be3a4a68..eda33ea986d4 100644
--- a/sys/dev/ow/ow.c
+++ b/sys/dev/ow/ow.c
@@ -160,10 +160,11 @@ static struct ow_timing timing_overdrive = {
.t_lowr = 1, /* 1 <= t < 2 */
};
-SYSCTL_NODE(_hw, OID_AUTO, ow, CTLFLAG_RD, 0, "1-Wire protocol");
-SYSCTL_NODE(_hw_ow, OID_AUTO, regular, CTLFLAG_RD, 0,
+SYSCTL_NODE(_hw, OID_AUTO, ow, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
+ "1-Wire protocol");
+SYSCTL_NODE(_hw_ow, OID_AUTO, regular, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"Regular mode timings");
-SYSCTL_NODE(_hw_ow, OID_AUTO, overdrive, CTLFLAG_RD, 0,
+SYSCTL_NODE(_hw_ow, OID_AUTO, overdrive, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
"Overdrive mode timings");
#define _OW_TIMING_SYSCTL(mode, param) \
@@ -183,7 +184,7 @@ SYSCTL_NODE(_hw_ow, OID_AUTO, overdrive, CTLFLAG_RD, 0,
return (0); \
} \
SYSCTL_PROC(_hw_ow_ ## mode, OID_AUTO, param, \
- CTLTYPE_INT | CTLFLAG_RWTUN, 0, sizeof(int), \
+ CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NEEDGIANT, 0, sizeof(int), \
sysctl_ow_timing_ ## mode ## _ ## param, "I", \
"1-Wire timing parameter in microseconds (-1 resets to default)")
diff --git a/sys/dev/ow/ow_temp.c b/sys/dev/ow/ow_temp.c
index cd0a61838064..b284aabe89a4 100644
--- a/sys/dev/ow/ow_temp.c
+++ b/sys/dev/ow/ow_temp.c
@@ -198,7 +198,8 @@ ow_temp_attach(device_t dev)
sc->type = ow_get_family(dev);
SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev),
SYSCTL_CHILDREN(device_get_sysctl_tree(dev)),
- OID_AUTO, "temperature", CTLFLAG_RD | CTLTYPE_INT,
+ OID_AUTO, "temperature",
+ CTLFLAG_RD | CTLTYPE_INT | CTLFLAG_NEEDGIANT,
&sc->temp, 0, sysctl_handle_int,
"IK3", "Current Temperature");
SYSCTL_ADD_INT(device_get_sysctl_ctx(dev),