TLDR: Changes since v3: * address XArray-issues found by Sashiko (patch 1) * rename functions from hwspinlock_* to hwspin_lock_* for consistency (patches 1+2) * add low level debug capabilitites (new patch 3)
I will not add more functionality to upcoming versions of this series, only address review comments. I do have a list of issues I still want to fix in hwspinlock, but only once this series is applied. So, I hope we can upstream this soon. Renesas R-Car SoCs have their spinlocks inside a unit called MFIS. Up to R-Car Gen4, there was only one MFIS unit on the SoC. Gen5, though, has multiple instances and, thus, multiple spinlock providers. The spinlocks are meant for specific cases (AP<->AP, AP<->RT, AP<->SCP...). For development on these systems, it is helpful to have an overview of registered spinlocks in debugfs. Also, for debugging the hwspinlock core, it is helpful to change lock states from userspace to trigger corner cases. This series adds support for all that. The first patch converts the subsystem from the deprecated radix-tree to the easier to handle XArray (Thank you again, Matthew!). The second patch adds the summary in debugfs based on the new XArray implementation. The third patch implements the low level debug interface. Patches are based on linux-next as of 20260714, no more dependencies. A branch for testing is here: git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git renesas/mfis/hwspinlock It has been tested on a SparrowHawk board (R-Car V4H) with one MFIS instance and an Ironhide board (R-Car X5H) with two MFIS instances. Looking forward to comments. Matthew Wilcox (Oracle) (1): hwspinlock: Convert to XArray Wolfram Sang (2): hwspinlock: add list of mailboxes to debugfs hwspinlock: add low level debug capabilities drivers/hwspinlock/hwspinlock_core.c | 349 +++++++++++++++++++-------- 1 file changed, 254 insertions(+), 95 deletions(-) -- 2.51.0

