linux/drivers/firewire
Linus Torvalds 205f1a0d18 firewire updates for v6.19
This release includes two changes for core functions, which affects all
 use cases of this subsystem.
 
  - Handle per-device interoperability quirks
    It is well known that some devices have quirks affecting
    interoperability. To identify such quirks at an early stages of
    device detection, the step for reading the configuration ROM contents
    has been changed. As a side effect, the entire detection process is
    now performed at the basic transaction speed (S100), without no trial
    to probe higher supported speeds.
    With this change, the following devices should now work with fewer
    issues:
    - TASCAM FW-1884, FW-1804, and FW-1082
    - MOTU Audio Express
 
  - Safer removals of host card
    There was a race condition between host card removal and handling of
    bus reset events in the workqueue. This appears to be a long standing
    issue (for a dozen years or so[1]), and recent changes to use more
    workqueues escalate it. To solve it, a new callback has been added to
    the 1394 OHCI PCI driver to unregister the interrupt sources and wait
    for workqueue completions when removing a card instance.
 
 [1] https://sourceforge.net/p/linux1394/mailman/linux1394-devel/thread/20250629024836.GA16759%40workstation.local/#msg59200628
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQE66IEYNDXNBPeGKSsLtaWM8LwEwUCaS4gGwAKCRCsLtaWM8Lw
 E1EhAP48BItL1FUcn1oHGU019iHCE57vTOxPE89LXlinAe7GAAD/WUq77tQ84RUJ
 gCuml3cWgRJuDqT6rksDQNNPOFbPbgI=
 =B7Xh
 -----END PGP SIGNATURE-----

Merge tag 'firewire-updates-6.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394

Pull firewire updates from Takashi Sakamoto:
 "This includes two changes for core functions, which affects all use
  cases of this subsystem:

   - Handle per-device interoperability quirks

     Some devices have quirks affecting interoperability. To identify
     such quirks at an early stages of device detection, the step for
     reading the configuration ROM contents has been changed. As a side
     effect, the entire detection process is now performed at the basic
     transaction speed (S100), without a trial to probe higher
     supported speeds.

     With this change, the following devices should now work with fewer
     issues:
      - TASCAM FW-1884, FW-1804, and FW-1082
      - MOTU Audio Express

   - Safer removals of host card

     There was a race condition between host card removal and handling
     of bus reset events in the workqueue. This appears to be a long
     standing issue, and recent changes to use more workqueues escalate
     it.

     To solve it, a new callback has been added to the 1394 OHCI PCI
     driver to unregister the interrupt sources and wait for workqueue
     completions when removing a card instance"

* tag 'firewire-updates-6.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
  firewire: core: abort pending transactions at card removal
  firewire: core: add WQ_UNBOUND to alloc_workqueue users
  firewire: core: clear sources of hardware interrupt at card removal
  firewire: core: code refactoring to find and pop transaction entry
  firewire: core: code refactoring to remove transaction entry
  firewire: core: use cleanup function to release cached configuration ROM
  ALSA: firewire-tascam: reserve resources for transferred isochronous packets at S400
  firewire: core: handle device quirk of TASCAM FW-1884/FW-1804/FW-1082
  firewire: core: determine transaction speed after detecting quirks
  firewire: core: code refactoring to compute transaction speed
  firewire: core: handle device quirk of MOTU Audio Express
  firewire: core: detect device quirk when reading configuration ROM
2025-12-04 12:26:36 -08:00
..
.kunitconfig firewire: ohci: add static inline functions to deserialize for Self-ID DMA operation 2024-07-04 08:12:48 +09:00
Kconfig PCI: Add CONFIG_MMU dependency 2025-04-23 15:40:30 -05:00
Makefile firewire: ohci: add static inline functions to deserialize for Self-ID DMA operation 2024-07-04 08:12:48 +09:00
core-card.c firewire updates for v6.19 2025-12-04 12:26:36 -08:00
core-cdev.c firewire updates for v6.18 2025-10-01 12:52:43 -07:00
core-device.c firewire: core: use cleanup function to release cached configuration ROM 2025-10-20 21:00:38 +09:00
core-iso.c firewire: core: update documentation of kernel APIs for flushing completions 2024-09-12 22:30:37 +09:00
core-topology.c firewire: core: fix to update generation field in topology map 2025-11-16 21:30:26 +09:00
core-trace.c firewire: core: move copy_port_status() helper function to TP_fast_assign() block 2024-07-12 14:34:12 +09:00
core-transaction.c firewire updates for v6.19 2025-12-04 12:26:36 -08:00
core.h firewire: core: abort pending transactions at card removal 2025-11-14 04:30:58 +09:00
device-attribute-test.c firewire: test: Fix potential null dereference in firewire kunit test 2025-01-13 10:31:27 +09:00
init_ohci1394_dma.c firewire: init_ohci1394_dma: add missing function parameter documentation 2025-10-25 08:29:56 +09:00
net.c firewire: ohci: use workqueue to handle events of AT request/response contexts 2025-06-15 22:40:29 +09:00
nosy-user.h
nosy.c firewire: nosy: ensure user_length is taken into account when fetching packet contents 2024-04-29 18:35:55 +09:00
nosy.h
ohci-serdes-test.c firewire: ohci: add static inline functions to serialize/deserialize data of IT DMA 2024-08-02 09:36:05 +09:00
ohci.c firewire: core: abort pending transactions at card removal 2025-11-14 04:30:58 +09:00
ohci.h firewire: ohci: add static inline functions to serialize/deserialize data of IT DMA 2024-08-02 09:36:05 +09:00
packet-header-definitions.h firewire: core: arrangement header inclusion for tracepoints events 2024-06-17 08:37:03 +09:00
packet-serdes-test.c firewire: core: add tests for serialization/deserialization of phy config packet 2024-06-17 08:37:03 +09:00
phy-packet-definitions.h firewire: core: add tests for serialization/deserialization of phy config packet 2024-06-17 08:37:03 +09:00
sbp2.c scsi: Rename .device_configure() into .sdev_configure() 2024-12-04 15:34:28 -05:00
self-id-sequence-helper-test.c firewire: core: add helper function to handle port status from self ID sequence and its KUnit test 2024-06-17 08:37:02 +09:00
uapi-test.c firewire: add missing MODULE_DESCRIPTION() to test modules 2024-05-27 07:34:58 +09:00