[GIT PULL] firewire updates for 6.5-rc1

From: Takashi Sakamoto
Date: Tue Jul 04 2023 - 08:19:05 EST


Hi Linus,

Please pull firewire updates for v6.5-rc1.

The following changes since commit 44c026a73be8038f03dbdeef028b642880cf1511:

Linux 6.4-rc3 (2023-05-21 14:05:48 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394.git tags/firewire-6.5-rc1

for you to fetch changes up to 3ff256751a2853e1ffaa36958ff933ccc98c6cb5:

firewire: net: fix use after free in fwnet_finish_incoming_packet() (2023-06-24 14:03:46 +0900)

----------------------------------------------------------------
firewire updates for 6.5-rc1

The updates consist of three parts; UAPI update, OHCI driver update, and
several bug fixes.

Firstly, the 1394 OHCI specification defines method to retrieve hardware
time stamps for asynchronous communication, which was previously
unavailable in user space. This change adds new events to the UAPI,
allowing applications to retrieve the time when asynchronous packet are
received and sent. The new events are tested in the breeding edge of
libhinawa and look to work well. The new version of libhinawa will be
released after current merge window is closed.

* https://git.kernel.org/pub/scm/libs/ieee1394/libhinawa.git/

Secondly, the FireWire stack includes a PCM device driver for 1394 OHCI
hardware, This change modernizes the driver by managed resource (devres)
framework.

Lastly, the rest of change is bug fixes for firewire-net and firewire-core.

----------------------------------------------------------------
Takashi Sakamoto (24):
firewire: add KUnit test to check layout of UAPI structures
firewire: cdev: add new version of ABI to notify time stamp at request/response subaction of transaction
firewire: cdev: add new event to notify request subaction with time stamp
firewire: cdev: implement new event to notify request subaction with time stamp
firewire: core: use union for callback of transaction completion
firewire: core: implement variations to send request and wait for response with time stamp
firewire: cdev: code refactoring to operate event of response
firewire: cdev: add new event to notify response subaction with time stamp
firewire: cdev: implement new event to notify response subaction with time stamp
firewire: cdev: code refactoring to dispatch event for phy packet
firewire: cdev: add new event to notify phy packet with time stamp
firewire: cdev: implement new event relevant to phy packet with time stamp
firewire: fix build failure due to missing module license
firewire: fix warnings to generate UAPI documentation
firewire: ohci: use devres for memory object of ohci structure
firewire: ohci: use devres for PCI-related resources
firewire: ohci: use devres for MMIO region mapping
firewire: ohci: use devres for misc DMA buffer
firewire: ohci: use devres for requested IRQ
firewire: ohci: use devres for list of isochronous contexts
firewire: ohci: use devres for IT, IR, AT/receive, and AT/request contexts
firewire: ohci: use devres for content of configuration ROM
firewire: ohci: release buffer for AR req/resp contexts when managed resource is released
firewire: core: obsolete usage of GFP_ATOMIC at building node tree

Zhang Shurong (1):
firewire: net: fix use after free in fwnet_finish_incoming_packet()

drivers/firewire/.kunitconfig | 4 +
drivers/firewire/Kconfig | 16 +++
drivers/firewire/Makefile | 3 +
drivers/firewire/core-cdev.c | 252 +++++++++++++++++++++++++++---------
drivers/firewire/core-device.c | 2 +-
drivers/firewire/core-topology.c | 2 +-
drivers/firewire/core-transaction.c | 93 +++++++++----
drivers/firewire/core.h | 7 +
drivers/firewire/net.c | 6 +-
drivers/firewire/ohci.c | 191 +++++++++++----------------
drivers/firewire/uapi-test.c | 89 +++++++++++++
include/linux/firewire.h | 82 +++++++++++-
include/uapi/linux/firewire-cdev.h | 178 +++++++++++++++++++++----
13 files changed, 694 insertions(+), 231 deletions(-)
create mode 100644 drivers/firewire/.kunitconfig
create mode 100644 drivers/firewire/uapi-test.c