fwcontrol — FireWire control utility
fwcontrol [−u bus_num] [−prt] [−c node] [−d node] [−o node] [−s node] [−l file] [−g gap_count] [−b pri_req] [−R filename] [−S filename]
The fwcontrol utility is designed to provide a way for users to access and control the FreeBSD FireWire subsystem. Without options, fwcontrol will output a list of devices that are/were connected to the bus.
The following options are available:
Specify the FireWire bus number to be operated on.
Initiate bus reset.
Show the topology map.
Dump PHY registers.
Show the configuration ROM on the node.
Hex dump of the configuration ROM.
Send a link-on PHY packet to the node.
Write to the RESET_START register on the node.
Load hex dump file of the configuration ROM and parse it.
Broadcast gap_count by phy_config packet.
Set the PRIORITY_BUDGET register on all supported nodes.
Receive DV stream and dump it to a file. Use Ctrl-C to stop the receiving. Some DV cameras seem not to send the stream if a bus manager exits. If you cannot get the stream, try the following commands:
The resulting file contains raw DV data excluding isochronous header and CIP header. It can be handled by libdv in the FreeBSD Ports Collection.
Send a DV file as isochronous stream.
Each DV frame has a fixed size and it is easy to edit the frame order.
fwcontrol -R original.dv
dd if=original.dv of=first.dv bs=120000 count=30
Get first 30 frames(NTSC).
dd if=original.dv of=second.dv bs=120000 skip=30 count=30
Get second 30 frames(NTSC).
cat second.dv first.dv | fwcontrol -S /dev/stdin
Swap first and second 30 frames and send them to DV recorder.
For PAL, replace ’’bs=120000’’ with ’’bs=144000’’.
The fwcontrol utility first appeared in FreeBSD 5.0.
Hidetoshi Shimokawa <simokawa [AT] FreeBSD.org>
This utility is still under development and provided for debugging purposes.
BSD December 30, 2002 BSD