summaryrefslogtreecommitdiff
path: root/sys/dev/firewire
diff options
context:
space:
mode:
authorHidetoshi Shimokawa <simokawa@FreeBSD.org>2003-01-07 04:40:47 +0000
committerHidetoshi Shimokawa <simokawa@FreeBSD.org>2003-01-07 04:40:47 +0000
commitd94dd548dda806462dd1825bf2b071b40bd26717 (patch)
tree76e3774ac80bf7edb53d835e9417d23b9acb3dc2 /sys/dev/firewire
parentc603a65f95fdfe8e86dc1bcddeaabf9b61f6dc89 (diff)
Notes
Diffstat (limited to 'sys/dev/firewire')
-rw-r--r--sys/dev/firewire/firewire.c10
-rw-r--r--sys/dev/firewire/firewirereg.h2
-rw-r--r--sys/dev/firewire/fwdev.c2
3 files changed, 11 insertions, 3 deletions
diff --git a/sys/dev/firewire/firewire.c b/sys/dev/firewire/firewire.c
index 612997cd925c..e6023cb24516 100644
--- a/sys/dev/firewire/firewire.c
+++ b/sys/dev/firewire/firewire.c
@@ -522,6 +522,13 @@ firewire_attach( device_t dev )
#endif
sc->fc->timeouthandle = timeout((timeout_t *)sc->fc->timeout, (void *)sc->fc, hz * 10);
+ callout_init(&sc->fc->busprobe_callout
+#if __FreeBSD_version >= 500000
+ , /* mpsafe? */ 0);
+#else
+ );
+#endif
+
/* Locate our children */
bus_generic_probe(dev);
@@ -1215,7 +1222,8 @@ void fw_sidrcv(struct firewire_comm* fc, caddr_t buf, u_int len, u_int off)
}
#endif
#if 1
- timeout((timeout_t *)fw_bus_probe, (void *)fc, hz/4);
+ callout_reset(&fc->busprobe_callout, hz/4,
+ (void *)fw_bus_probe, (void *)fc);
#else
fw_bus_probe(fc);
#endif
diff --git a/sys/dev/firewire/firewirereg.h b/sys/dev/firewire/firewirereg.h
index 9549a299c22f..bfa7256cbb7b 100644
--- a/sys/dev/firewire/firewirereg.h
+++ b/sys/dev/firewire/firewirereg.h
@@ -225,7 +225,7 @@ struct firewire_comm{
u_int32_t *config_rom;
struct fw_topology_map *topology_map;
struct fw_speed_map *speed_map;
- struct callout_handle tlhandle;
+ struct callout busprobe_callout;
struct callout_handle bmrhandle;
struct callout_handle timeouthandle;
struct callout_handle retry_probe_handle;
diff --git a/sys/dev/firewire/fwdev.c b/sys/dev/firewire/fwdev.c
index 1c9a70d705da..8c54848caa1b 100644
--- a/sys/dev/firewire/fwdev.c
+++ b/sys/dev/firewire/fwdev.c
@@ -729,7 +729,7 @@ fw_ioctl (dev_t dev, u_long cmd, caddr_t data, int flag, fw_proc *td)
fwdev = fw_noderesolve(sc->fc, asyreq->req.dst.eui);
if (fwdev == NULL) {
printf("%s:cannot find node\n",
- device_get_nameunit(sc->fc->dev));
+ device_get_nameunit(sc->fc->bdev));
err = EINVAL;
goto error;
}