[PATCH v2 0/2] firewire: Simplify storing pointers in device id struct
From: Uwe Kleine-König (The Capable Hub)
Date: Mon May 11 2026 - 06:50:05 EST
Hello,
v1 of this series can be found at
https://lore.kernel.org/all/cover.1776579304.git.u.kleine-koenig@xxxxxxxxxxxx
.
The changes introduced here are the same as before, but the commit log
of the first patch is (hopefully) improved to better point out the
advantage of the approach for mainline. The second patch demonstrates
the explicit casts can be dropped after the first patch.
The patch series intends to not change the runtime behaviour, however
the 2nd patch introduces a few changes to the generated code. Looking at
these for an arm64 build they only affected register allocation (so
where x0 was used before it's x1 after the patch). I'm not proficient in
x86 assembly enough to understand the changes there, but I guess they
also don't affect the runtime behaviour.
My motivation for this patch set is to reduce the patch stack for Linux
CHERI support. This affects firewire because with CHERI you cannot store
a pointer in an unsigned long variable. But I hope these changes qualify
as cleanup worth to be applied even without considering CHERI.
For merging I suggest to take the whole series via the ALSA tree during
the next merge window, as there are no modified files that are specific
to firewire only and the second patch depends on the first.
Best regards
Uwe
Uwe Kleine-König (The Capable Hub) (2):
firewire: Simplify storing pointers in device id struct
ALSA: firewire: Make use of ieee1394's .driver_data_ptr
include/linux/mod_devicetable.h | 5 ++++-
sound/firewire/dice/dice.c | 34 ++++++++++++++++-----------------
sound/firewire/fireface/ff.c | 12 ++++++------
sound/firewire/motu/motu.c | 6 +++---
sound/firewire/oxfw/oxfw.c | 4 ++--
5 files changed, 32 insertions(+), 29 deletions(-)
base-commit: 254f49634ee16a731174d2ae34bc50bd5f45e731
--
2.47.3