firewire-phy-command(8)
π firewire-phy-command β the lowkey FireWire bus & PHY glow-up tool π
okay bestie, so this is firewire-phy-command from the linux-firewire-utils collection, section 8 of the manual. it's the utility that lets you poke at low-level FireWire bus and PHY configuration. yes, we're going deep. bring a snack. π
β¨ NAME β¨
firewire-phy-command β low-level FireWire bus and PHY configuration, no cap π¦
π SYNOPSIS π
firewire-phy-command [options] command [parameters]
π DESCRIPTION π
so firewire-phy-command is a utility to set low-level configuration parameters and to manage port power saving. that's the whole vibe. π
in the following commands, numbers must be specified in decimal, or in hexadecimal with a 0x prefix. don't get cute with it, the parser is not your therapist. π
node is either the device file (/dev/fw*) of the node that is to be accessed, or the node number. both slay, pick whichever you vibe with.
the following commands are available:
π₯ the commands π₯
config β set the root & gap count, main character energy
firewire-phy-command config [root node] [gapcount gapcount]
the root parameter specifies the node that is forced to become the next root node. it's giving "you're the leader now, bestie". π
the gapcount parameter specifies a timing parameter used to optimize performance. this must be derived from the actual worst-case round-trip delay between any two nodes. like, actually derived, not guessed. fr fr.
at least one of root or gapcount must be specified. not optional, not vibes-based.
β οΈ the configuration changes take effect after the next bus reset, which must be issued immediately after this command; see the reset command below. do NOT forget the reset or your changes are just sitting there doing nothing. π
ping β say hi, get the self ID back
firewire-phy-command ping node
send a ping packet to node node, and print node's answer (its self ID) together with the round-trip time. it's basically a "u up?" text but for hardware and it always replies. iconic. β¨
read β read a PHY register
firewire-phy-command read node [page port] register
read a PHY register on node node and print the register value.
registers 0 to 7 are global; registers 8 to 15 are paged and require both a page number and a port number. so if you're in the 8β15 zone, bring the whole squad. π«Ά
nop, disable, enable, suspend, resume, clear β the port remote-command girlies
firewire-phy-command nop node port
firewire-phy-command disable node port
firewire-phy-command enable node port
firewire-phy-command suspend node port
firewire-phy-command resume node port
firewire-phy-command clear node port
send a remote command packet to port port of node node, and print the new port status. here's what each one actually does:
nopβ do nothing, just return the status. this can be used to read the port status, or to check whether a port exists. the "just checking in" of commands. π¦disableβ disable the port and its connected peer port. this is the equivalent of breaking the connection between the port and the cable. dramatic breakup energy, but make it physical. πenableβ re-enable a disabled port. we're getting back together. π₯°suspendβ suspend the connection between the port and its peer port, and recursively suspend all other active ports on the peer port's node. it cascades, bestie. it recurses. πresumeβ resume the port and all other ports in the suspended domain. the whole domain wakes up, no stragglers. βclearβ clear the port's fault status bit(s). if a port entered the suspended state in a faulted condition because its peer port did not suspend correctly, clearing the fault is required after the resume to continue normal operation. so like, the resume alone is not enough here. you NEED the clear. no skipping steps. π
resume β the broadcast one
firewire-phy-command resume
broadcast a resume packet to all ports on the bus. everybody up, we're going. π
linkon β wake up babe
firewire-phy-command linkon node
send a link-on packet, which instructs node node to switch on, i.e., to come out of powersaving mode. it's the hardware equivalent of turning the lights on at 3pm. βοΈ
reset β the bus reset
firewire-phy-command reset
issue a bus reset. simple. powerful. necessary after config, as we said above. periodt. π₯
π OPTIONS π
-b,--bus=nodeβ if there are multiple FireWire buses, i.e., if the computer has multiple FireWire controllers, this option specifies on which bus the command is sent. node must be the device file of the controller, or the controller's card number. this option is not needed if a command'snodeparameter specifies a device node, as that parameter already implies the bus to use. so like, don't double-specify, that's cringe. π-h,--helpβ print a summary of the command-line options and exit. the classic "what does anything do" button. π-V,--versionβ print the version number offirewire-phy-commandon the standard output and exit. iykyk. π
πΈ NOTES πΈ
this program needs to access all FireWire device files, which usually requires root privileges. so yes, sudo is your bestie here. π«Ά
π BUGS π
report bugs to <linux1394-devel@sourceforge.net>.
linux-firewire-utils home page: <https://git.kernel.org/pub/scm/utils/ieee1394/linux-firewire-utils.git/>.
(go off, tell them everything, they want to hear it. π)
π§ SEE ALSO π§
lsfirewirephy(8), firewire-request(8)
and that's the whole page, bestie!! this one's from linux-firewire-utils, dated 5 Jun 2011 β yes she's vintage, and yes she still ate. πβ¨ππ¦πΈ
π¦ where this page comes from
- debian trixie: linux-firewire-utils 0.5.1-2 Β· GPL-2.0-only
- ubuntu noble: linux-firewire-utils 0.5.0-2 Β· GPL-2.0-only
- ubuntu questing: linux-firewire-utils 0.5.1-2
- ubuntu resolute: linux-firewire-utils 0.5.1-4 Β· GPL-2.0-only
- ubuntu stonking: linux-firewire-utils 0.5.1-4 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms