]> git.ipfire.org Git - thirdparty/linux.git/commit
firewire: core: handle device quirk of MOTU Audio Express
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Mon, 13 Oct 2025 14:03:11 +0000 (23:03 +0900)
committerTakashi Sakamoto <o-takashi@sakamocchi.jp>
Mon, 13 Oct 2025 14:07:25 +0000 (23:07 +0900)
commit15f9610fc96ac6fd2844e63f7bf5a0b08e1c31c8
treef16aa0efbb21b48c9b786526759e879dbfb77710
parent5a43dc9f4ee0a3624d0598ee14e8ef8468914525
firewire: core: handle device quirk of MOTU Audio Express

A commit 3a93d082bacf ("ALSA: firewire-motu: add support for MOTU Audio
Express") describes a quirk of MOTU Audio Express. The device returns
acknowledge packet with 0x10 as the pending state of any types of
asynchronous request transaction. It is completely out of specification.

This commit implements handling for that device-specific quirk. The quirk
is detected after reading the root directory of configuration ROM. When
processing the acknowledge code in 1394 OHCI AT context event handler,
firewire-ohci module seeks the device instance of destination node by
traversing device hierarchy. If the device has the quirk, the acknowledge
code is replaced with the standard code.

The 1394 OHCI AT context events occur for outgoing asynchronous request
packets. The device traversal is safe since no new request initiators
exist after the fw_card_instance has been invalidated.

Link: https://lore.kernel.org/r/20251013140311.97159-3-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
drivers/firewire/core-device.c
drivers/firewire/ohci.c
include/linux/firewire.h