---
name: "firewire-phy-command"
section: "8"
platform: "linux"
package: "linux-firewire-utils"
version: "0.5.1-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/firewire-phy-command"
---

# firewire-phy-command(8)

low-level FireWire bus and PHY configuration

## NAME

firewire-phy-command - low-level FireWire bus and PHY configuration

## SYNOPSIS

**firewire-phy-command** \[*options*\] *command* \[*parameters*\]

## DESCRIPTION

**firewire-phy-command** is a utility to set low-level configuration parameters and to manage port power saving.

In the following commands, numbers must be specified in decimal, or in hexadecimal with a "0x" prefix.

*node* is either the device file (**/dev/fw**\*) of the node that is to be accessed, or the node number.

The following commands are available:

- **firewire-phy-command** **config** \[**root** *node*\] \[**gapcount** *gapcount*\]

  The **root** parameter specifies the node that is forced to become the next root node.

-

  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.

-

  At least one of **root** or **gapcount** must be specified.

-

  The configuration changes take effect after the next bus reset, which must be issued immediately after this command; see the **reset** command below.

- **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.

- **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.

- **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.

  - **nop**

    Do nothing, just return the status. This can be used to read the port status, or to check whether a port exists.

  - **disable**

    Disable the port and its connected peer port. This is the equivalent of breaking the connection between the port and the cable.

  - **enable**

    Re-enable a disabled port.

  - **suspend**

    Suspend the connection between the port and its peer port, and recursively suspend all other active ports on the peer port's node.

  - **resume**

    Resume the port and all other ports in the suspended domain.

  - **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.

- **firewire-phy-command** **resume**

  Broadcast a resume packet to all ports on the bus.

- **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.

- **firewire-phy-command** **reset**

  Issue a bus reset.

## 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's *node* parameter specifies a device node, as that parameter already implies the bus to use.

- **-h**, **--help**

  Print a summary of the command-line options and exit.

- **-V**, **--version**

  Print the version number of **firewire-phy-command** on the standard output and exit.

## NOTES

This program needs to access all FireWire device files, which usually requires root privileges.

## 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/"\>.

## SEE ALSO

[**lsfirewirephy**(8)](/lsfirewirephy/8.md), [**firewire-request**(8)](/firewire-request/8.md)
