How can I tell if my FireWire port is 400 or 800? (Linux)

1

I know this sounds very similar to How do I tell if my firewire connection is running as 400 or 800?, but the difference is, I don't have a FireWire device yet.

The whole reason I'm asking is that I'm trying to decide between two portable hard drives - which both have USB interfaces regardless - and are completely identical except one has a FireWire 800 interface (and is more expensive, natch).

I don't know if my port/controller supports 800 MHz speeds or not. I've done a lot of internet searching and even tried jujuutils, but that was a little too low-level for me to interpret the results.

Here's the lspci output, fwiw:

04:00.0 FireWire (IEEE 1394) [0c00]: O2 Micro, Inc. 1394 OHCI Compliant Host Controller [1217:13f7] (rev 05) (prog-if 10 [OHCI])
    Subsystem: Dell Device [1028:0494]
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 0, Cache Line Size: 64 bytes
    Interrupt: pin A routed to IRQ 17
    Region 0: Memory at e4b30000 (32-bit, non-prefetchable) [size=4K]
    Capabilities: [a0] Power Management version 3
        Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
        Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Capabilities: [48] MSI: Enable- Count=1/1 Maskable+ 64bit+
        Address: 0000000000000000  Data: 0000
        Masking: 00000000  Pending: 00000000
    Capabilities: [80] Express (v1) Endpoint, MSI 00
        DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <4us, L1 <64us
            ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
        DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
            RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+
            MaxPayload 128 bytes, MaxReadReq 512 bytes
        DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend-
        LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <64ns, L1 unlimited
            ClockPM+ Surprise- LLActRep- BwNot-
        LnkCtl: ASPM L0s Enabled; RCB 64 bytes Disabled- Retrain- CommClk-
            ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
        LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
    Capabilities: [100 v1] Virtual Channel
        Caps:   LPEVC=0 RefClk=100ns PATEntryBits=1
        Arb:    Fixed- WRR32- WRR64- WRR128-
        Ctrl:   ArbSelect=Fixed
        Status: InProgress-
        VC0:    Caps:   PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
            Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
            Ctrl:   Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
            Status: NegoPending- InProgress-
    Capabilities: [200 v1] Advanced Error Reporting
        UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
        UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
        UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
        CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
        CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
        AERCap: First Error Pointer: 00, GenCap- CGenEn- ChkCap- ChkEn-
    Kernel driver in use: firewire_ohci
    Kernel modules: firewire-ohci

Steven Collins

Posted 2013-07-26T15:37:26.173

Reputation: 13

You won't regret getting firewire 800 now. Even if your current computer can't take advantage of 800, your next computer likely will. – spuder – 2013-07-26T15:57:19.150

Answers

0

Just look at your firewire port on your computer.

If you have a 9 pin connector, then it will run at 800 and 400

If you have a 6 pin or a 4 pin connector, then it will run at 400


9 pin connector

enter image description here


6 pin connector

enter image description here


Resources

http://www.cablestogo.com/support/connector-guides/firewire
https://en.wikipedia.org/wiki/IEEE_1394

spuder

Posted 2013-07-26T15:37:26.173

Reputation: 8 755

0

Maybe when the firewire-ohci driver was loaded, it outputs the detected speed. Look in your /var/log/dmesg for kernel output from your last boot and see if you find where the driver is being loaded.

You could also rmmod firewire-ochi and then insmod firewire-ochi to see if any informational messages are output.

LawrenceC

Posted 2013-07-26T15:37:26.173

Reputation: 63 487