Problems getting firewire properly initialized.

Dieter freebsd at sopwith.solgatos.com
Mon Jan 16 14:14:23 PST 2006


First, I assume that hot-plugging firewire devices is supposed to
work in FreeBSD?

I have

	FreeBSD 6.0
	AMD64 / nforce4 ultra
	onboard VT6307 firewire controller
	NEC uPD72871/2  firewire controller on PCI card
	Canon DV firewire camcorder

With the NEC fw controller,

If I power up the camcorder after FreeBSD is running, FreeBSD does notice.
"BUS reset" , "New S100 device" ...

But "fwcontrol -S" doesn't work quite right.  I suspect some flow control
or protocol problem.

If I bring down FreeBSD, power up the camcorder, then bring up FreeBSD,
"fwcontrol -S" works fine.

I'm guessing that something isn't getting initialized properly
in the hot-plug (actually hot-powerup) case.

I have tried "fwcontrol -s" and "fwcontrol -r" and they don't help.

Interestingly, rebooting doesn't affect things.  If it is working and
I reboot, it still works after reboot.  If it isn't working, rebooting
doesn't help.

Power cycling the camcorder does affect it.  If it is working and I
power cycle the camcorder, it stops working.

The only method I have found that works is to power up the camcorder
when FreeBSD is not running (e.g. at firmware or boot loader prompt),
and then bring up FreeBSD.

With the onboard VT6307 fw controller, I have yet to find a way to
get "fwcontrol -S" to work properly.  Perhaps related.


More information about the freebsd-firewire mailing list