Re: [PATCH v2 0/8] firewire: core: support legacy layout of configuration ROM for AV/C device

From: Takashi Sakamoto
Date: Fri Dec 22 2023 - 09:14:31 EST


On Thu, Dec 21, 2023 at 10:48:41PM +0900, Takashi Sakamoto wrote:
> Hi,
>
> This series of change is take 2 of my previous post[1].
>
> Current core function of Linux FireWire subsystem has support for legacy
> layout of configuration ROM, described in annex of 1394TA document[2].
> However, in a point of device attributes (e.g. nodes in sysfs), there
> are differences between devices with the legacy and standard layout of
> configuration ROM. The differences bring some inconveniences to users[3].
> The series includes changes to solve them.
>
> The series includes changes relevant to driver matching procedure and
> notification to user space, thus could easily bring functional regression.
> For safe, the series includes some KUnit applications to test the change.
>
> However, backward incompatibility is inevitable due to change of modalias
> for device corresponding to unit. As long as I investigated, any unit
> drivers in kernel are not affected by the change. Additionally, less
> applications in user space are not as well. I think we can be optimistic
> to the regression.
>
> Changes from v1 series:
> * fix evaluation of uninitialized variable in 7th patch
>
> [1] [PATCH 0/8] firewire: core: support legacy layout of configuration ROM
> for AV/C device
> https://lore.kernel.org/lkml/20231220041806.39816-1-o-takashi@xxxxxxxxxxxxx/
> [2] Configuration ROM for AV/C Devices 1.0 (December 12, 2000, 1394
> Trading Association, TA Document 1999027)
> https://web.archive.org/web/20210216003030/http://1394ta.org/wp-content/uploads/2015/07/1999027.pdf
> [3] [PATCH] Fix missing sysfs vendor/model entries for some devices
> https://sourceforge.net/p/linux1394/mailman/message/55802731/
>
>
> Takashi Sakamoto (8):
> firewire: core: adds constant qualifier for local helper functions
> firewire: core: replace magic number with macro
> firewire: test: add KUnit test for device attributes
> firewire: test: add test of device attributes for simple AV/C device
> firewire: test: add test of device attributes for legacy AV/C device
> firewire: core: detect numeric model identifier for legacy layout of
> configuration ROM
> firewire: core: detect model name for legacy layout of configuration
> ROM
> firewire: core: change modalias of unit device with backward
> incompatibility
>
> drivers/firewire/.kunitconfig | 1 +
> drivers/firewire/Kconfig | 16 ++
> drivers/firewire/core-device.c | 127 +++++++++---
> drivers/firewire/device-attribute-test.c | 251 +++++++++++++++++++++++
> 4 files changed, 368 insertions(+), 27 deletions(-)
> create mode 100644 drivers/firewire/device-attribute-test.c

Applied the above patches to for-next branch[1]. Thanks for your reviewing.


[1] https://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394.git/log/?h=for-next

Takashi Sakamoto