summaryrefslogtreecommitdiffstats
path: root/sys/dev/firewire/fwohci.c
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>2004-05-23 14:22:11 +0000
committerdfr <dfr@FreeBSD.org>2004-05-23 14:22:11 +0000
commitff01686c8e08e20ddcd7292b31a6699572f6990b (patch)
treef14be0c396518806705b586f17b6f4beeb15bac5 /sys/dev/firewire/fwohci.c
parentc9b2ae89c1115585a0560294e0ecdbec337600f8 (diff)
downloadFreeBSD-src-ff01686c8e08e20ddcd7292b31a6699572f6990b.zip
FreeBSD-src-ff01686c8e08e20ddcd7292b31a6699572f6990b.tar.gz
Initialise OHCI_CROMHDR and OHCI_BUS_OPT in fwohci_ibr to make sure that
they have the right values at the first bus reset.
Diffstat (limited to 'sys/dev/firewire/fwohci.c')
-rw-r--r--sys/dev/firewire/fwohci.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/dev/firewire/fwohci.c b/sys/dev/firewire/fwohci.c
index 8915d72..c6e58c5 100644
--- a/sys/dev/firewire/fwohci.c
+++ b/sys/dev/firewire/fwohci.c
@@ -2433,6 +2433,13 @@ fwohci_ibr(struct firewire_comm *fc)
sc = (struct fwohci_softc *)fc;
/*
+ * Make sure our cached values from the config rom are
+ * initialised.
+ */
+ OWRITE(sc, OHCI_CROMHDR, ntohl(sc->fc.config_rom[0]));
+ OWRITE(sc, OHCI_BUS_OPT, ntohl(sc->fc.config_rom[2]));
+
+ /*
* Set root hold-off bit so that non cyclemaster capable node
* shouldn't became the root node.
*/
OpenPOWER on IntegriCloud