| Previous | Next |
| kIOFireWireSeparateBus | kIOFireWireLowCableVoltage |
kIOFireWireBadSelfIDs
Topology establishment failed before normal traffic
kIOFireWireBadSelfIDs is associated with the self-identification phase used to establish FireWire bus topology after a reset. The return value is not a device-level application response. It tells the caller that the controller could not accept the self-ID information required to build a reliable view of the bus.
Because node IDs and bus generation are reset-sensitive, application code should not continue a transaction using state captured before the failed topology phase. The useful evidence is the reset sequence, controller logs, physical path, and any repeated resets—not an isolated retry of the original I/O command.
Preserve the reset evidence
- Record controller identity, time of reset, prior and new generation when available, attached nodes, and cable or power events.
- Capture repeated-reset patterns; they are more informative than one subsequent timeout.
- Rebuild node and resource state only after the controller reports a stable, usable bus configuration.
- Do not reuse cached node IDs, channel allocations, or transaction context across an unsuccessful self-ID sequence.
References
- Apple: IOFireWireFamilyCommon.h
- Apple: BusReset callback
- Linux kernel: FireWire reset, generation, and Configuration ROM
Looking for a different code? Search another status or error code.