This series adds hardware semaphore support for Broadcom set-top SoCs via the generic hwspinlock framework.
The semaphore registers live in the sundry block; the DT binding describes only the semaphore register range. The compatible is brcm,bcm7038-sun-top-ctrl-semaphore (BCM7038 is where this block first appeared on set-top chips). The driver has been tested built-in and as a module. v7 changes : - Rebase: Whole series rebased onto Linux 7.1-rc1 (254f49634ee1) so it applies cleanly on current upstream. - Reviewed-by tag (PATCH 1/3, dt-bindings): Krzysztof Kozlowski's v6 changes: Addressed review comments from Krzysztof Kozlowski: - Renamed DT binding YAML file from "brcm,brcmstb-hwspinlock.yaml" to "brcm,bcm7038-sun-top-ctrl-semaphore.yaml" to match the compatible string - Updated $id in the YAML to match the new filename - Updated MAINTAINERS F: entry to match the new filename v5 changes: Addressed review comments from Krzysztof Kozlowski: - Changed compatible to "brcm,bcm7038-sun-top-ctrl-semaphore" using the SoC where the semaphore hardware was first introduced, following the brcm,bcm7038-l1-intc convention v4 changes: Addressed review comments from Krzysztof Kozlowski and Rob Herring: - Renamed compatible from "brcm,brcmstb-hwspinlock" to "brcm,brcmstb-sun-top-ctrl-semaphore" to use the hardware name - Added description block to the DT binding YAML explaining what the semaphore registers are and their relationship to the sundry block - Fixed typo in Kconfig "Setttop" -> "Settop" - Fixed email typo in MODULE_AUTHOR v3 changes: Added detailed explanation in the all commit messages as per review comments - Added description of 'sundry' ip block that the hardware semaphore belongs to - Added reasoning for using common compatible string v2 changes: Addressed following review comments: - fixed ordering of obj brcmstb_hwspinlock.o in Makefile - fixed ordering of 'config HWSPINLOCK_BRCMSTB' block in Kconfig - Renamed BRCMSTB_MAX_SEMAPHORES to BRCMSTB_NUM_SEMAPHORES - Removed unnecessary platform_set_drvdata(pdev, bank); Also addressing duplicate PATCH 1/3 sent in error as part of v1 change. v1 changes: based on fixes made to Initial patch: Link: https://github.com/intel-lab-lkp/linux/commits/Kamal-Dasu/dt-bindings-brcmstb-hwspinlock-support-for-hwspinlock/20250712-034624 Link: https://lore.kernel.org/r/20250711154221.928164-4-kamal.dasu%40broadcom.com [PATCH 2/4] hwspinlock: brcmstb hardware semaphore support All the review comments and build warning have been fixed. Kamal Dasu (3): dt-bindings: hwlock: Adding brcmstb-hwspinlock support hwspinlock: brcmstb hardware semaphore support MAINTAINERS: adding entry for BRCMSTB HWSPINLOCK driver .../brcm,bcm7038-sun-top-ctrl-semaphore.yaml | 44 +++++++++ MAINTAINERS | 8 ++ drivers/hwspinlock/Kconfig | 10 ++ drivers/hwspinlock/Makefile | 1 + drivers/hwspinlock/brcmstb_hwspinlock.c | 96 +++++++++++++++++++ 5 files changed, 159 insertions(+) create mode 100644 Documentation/devicetree/bindings/hwlock/brcm,bcm7038-sun-top-ctrl-semaphore.yaml create mode 100644 drivers/hwspinlock/brcmstb_hwspinlock.c -- 2.34.1

