Re: [PATCH] firewire: core: check for 1394a compliant IRM, fixinaccessibility of Sony camcorder

From: Stefan Richter
Date: Sun May 30 2010 - 14:06:33 EST


> Per IEEE 1394 clause 8.4.2.3, a contender for the IRM role shall check
> whether the current IRM complies to 1394a-2000 or later. If not force a
> compliant node (e.g. itself) to become IRM. This was implemented in the
> older ieee1394 driver but not yet in firewire-core.

While I don't have an IRM that features the DCR-TRV25 bug, I did at
least quick tests of the patch with the following consistent results:
- Joined three nodes to a bus, only one node of them IRM capable,
but being a 1394-1995-only implementation.
- Plugged in Linux node into this bus, got the following log:
firewire_ohci: isochronous cycle inconsistent
firewire_core: created device fw8: GUID 00d04b21010212c8, S400
firewire_core: created device fw9: GUID 008088030960484b, S100
firewire_core: phy config: card 4, new root=ffc3, gap_count=7
firewire_core: IRM is not 1394a compliant, making local node (ffc1) root.
firewire_core: phy config: card 4, new root=ffc1, gap_count=7
and all is well as far as kernel, gscanbus, and Kino can tell.
--
Stefan Richter
-=====-==-=- -=-= ====-
http://arcgraph.de/sr/

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/