Page MenuHomeFreeBSD

fwohci: fix LPS delay, PHY_INT storm, and SID timeout recovery
ClosedPublic

Authored by seuros on Jul 3 2026, 8:49 PM.
Referenced Files
F169313264: D58033.id181511.diff
Tue, Sep 1, 4:33 AM
F169143759: D58033.id181511.diff
Mon, Aug 31, 2:05 PM
Unknown Object (File)
Sun, Aug 30, 6:16 PM
Unknown Object (File)
Sun, Aug 30, 6:12 PM
Unknown Object (File)
Sat, Aug 29, 11:52 PM
Unknown Object (File)
Wed, Aug 26, 6:17 PM
Unknown Object (File)
Mon, Aug 24, 9:56 AM
Unknown Object (File)
Sat, Aug 22, 10:38 AM
Subscribers

Details

Summary

Fixed the post-LPS delay from 500us to the IEEE 1394a-2000 s6.1 mandated
10ms ceiling. Handled PHY_INT by clearing W1C status bits in register 5
(masked ISBR to avoid spurious bus resets). Added a SID timeout callout
that recovers the state machine when a remote device fails to complete
self-ID. Fixed FW_PHY_SPD operator precedence and gated noisy messages
behind bootverbose/firewire_debug.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 74516
Build 71399: arc lint + arc unit

Event Timeline

seuros requested review of this revision.Jul 3 2026, 8:49 PM

Note: Linux has 50ms delay. The spec has 10ms.

The hardware i tested did not need more than 10ms.

This revision is now accepted and ready to land.Jul 7 2026, 8:42 PM