Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2196664/?format=api
{ "id": 2196664, "url": "http://patchwork.ozlabs.org/api/patches/2196664/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260215225501.6365-14-wsa+renesas@sang-engineering.com/", "project": { "id": 42, "url": "http://patchwork.ozlabs.org/api/projects/42/?format=api", "name": "Linux GPIO development", "link_name": "linux-gpio", "list_id": "linux-gpio.vger.kernel.org", "list_email": "linux-gpio@vger.kernel.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260215225501.6365-14-wsa+renesas@sang-engineering.com>", "list_archive_url": null, "date": "2026-02-15T22:54:53", "name": "[RFC,v2,13/13] hwspinlock: refactor consumer.h from public header", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "044b237f4fc623b208cf9e55b4356eedfa3170c7", "submitter": { "id": 69646, "url": "http://patchwork.ozlabs.org/api/people/69646/?format=api", "name": "Wolfram Sang", "email": "wsa+renesas@sang-engineering.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260215225501.6365-14-wsa+renesas@sang-engineering.com/mbox/", "series": [ { "id": 492237, "url": "http://patchwork.ozlabs.org/api/series/492237/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/list/?series=492237", "date": "2026-02-15T22:54:40", "name": "hwspinlock: move device alloc into core and refactor includes", "version": 2, "mbox": "http://patchwork.ozlabs.org/series/492237/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2196664/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2196664/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <linux-gpio+bounces-31695-incoming=patchwork.ozlabs.org@vger.kernel.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "linux-gpio@vger.kernel.org" ], "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n secure) header.d=sang-engineering.com header.i=@sang-engineering.com\n header.a=rsa-sha256 header.s=k1 header.b=HsL6Kboi;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c0a:e001:db::12fc:5321; helo=sea.lore.kernel.org;\n envelope-from=linux-gpio+bounces-31695-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)", "smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=sang-engineering.com\n header.i=@sang-engineering.com header.b=\"HsL6Kboi\"", "smtp.subspace.kernel.org;\n arc=none smtp.client-ip=194.117.254.33", "smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=sang-engineering.com", "smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=sang-engineering.com" ], "Received": [ "from sea.lore.kernel.org (sea.lore.kernel.org\n [IPv6:2600:3c0a:e001:db::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fDh8s5p24z1xtN\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 16 Feb 2026 09:56:13 +1100 (AEDT)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 0380A3039CB6\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 15 Feb 2026 22:55:51 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id AE3BB30BF52;\n\tSun, 15 Feb 2026 22:55:50 +0000 (UTC)", "from mail.zeus03.de (zeus03.de [194.117.254.33])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id C02F730BF4F\n\tfor <linux-gpio@vger.kernel.org>; Sun, 15 Feb 2026 22:55:48 +0000 (UTC)", "(qmail 3011809 invoked from network); 15 Feb 2026 23:55:22 +0100", "by mail.zeus03.de with ESMTPSA (TLS_AES_256_GCM_SHA384 encrypted,\n authenticated); 15 Feb 2026 23:55:22 +0100" ], "ARC-Seal": "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1771196150; cv=none;\n b=OuAUZp3M24UVMJyVL1JzWLSKlOErZxxLAS1vtloWPbTQHvS/dPyh1c/3MqyYghhC2wnViYInwIyLFos9GvQEbVw465NGTnNUdhosy5ZOuPl9TQKECex+qqIVgTb9rOLNcttVfijENzjFfpG8v970A89IUxDUQ6+gNARb5GAiJJ0=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1771196150; c=relaxed/simple;\n\tbh=Asjb0neNHRskCehaI2tbprIvH7xzFuR5HTp96o2NrOY=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=eDl+5YqELIUTVG82XgiujU8bw8TiiiRFh2AUtBybvtCzyJqkWtYofx+O3OdKhSa4DxB2FAa0XGpexFfaWKPRzgT+0MywTf/QjVnkBV72sasPf6eEmeDDzDFexaXXuUn42O+J93m8jcDQNuRnB2Mh/FOgbejstESjHYyAxSjL3MI=", "ARC-Authentication-Results": "i=1; smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=sang-engineering.com;\n spf=pass smtp.mailfrom=sang-engineering.com;\n dkim=pass (2048-bit key) header.d=sang-engineering.com\n header.i=@sang-engineering.com header.b=HsL6Kboi;\n arc=none smtp.client-ip=194.117.254.33", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n\tsang-engineering.com; h=from:to:cc:subject:date:message-id\n\t:in-reply-to:references:mime-version:content-transfer-encoding;\n\t s=k1; bh=f63y7Wq2UjRJwaDurNk5EkD4fofDVgyaXt3x3vGItDA=; b=HsL6Kb\n\toidDyjlA5DER1h1Z56zGsiZ/6NJLRuwIOww7Dc6aGPZWz6LWUs4qR7Ys/ezJMn91\n\tLiRJy4XDaPgHdGPCBkTF8zxI60/6w9E1c8KV4vAM6ep0Z2g27S3Gdv4QXkF3HhjU\n\tMCtmVaUdAu7r6PaRVvEE3/iTa4ziWloP4eokLNJ1F6ThkzxMVP6E2N/i/rKVzCzj\n\t/h50Zx+lD9zECGJZ72Kb1uva6TqLRW8kEyp+PWv7suKzg2y5AIj6wCHQ4pxvdEkX\n\t0B0rSikBDybvLhXumFb77OHI7nw1EbK72/QF+y51mCKDBulQmr532oTNREZNgD76\n\toX10FSLJEvNERQew==", "X-UD-Smtp-Session": "l3s3148p1@V3+qu+RKdOUujns5", "From": "Wolfram Sang <wsa+renesas@sang-engineering.com>", "To": "linux-renesas-soc@vger.kernel.org", "Cc": "Andy Shevchenko <andriy.shevchenko@intel.com>,\n linux-arm-kernel@lists.infradead.org,\n Wolfram Sang <wsa+renesas@sang-engineering.com>,\n Bjorn Andersson <andersson@kernel.org>,\n Baolin Wang <baolin.wang@linux.alibaba.com>,\n Peter Zijlstra <peterz@infradead.org>, Ingo Molnar <mingo@redhat.com>,\n Will Deacon <will@kernel.org>, Boqun Feng <boqun@kernel.org>,\n Waiman Long <longman@redhat.com>, Jonathan Corbet <corbet@lwn.net>,\n Shuah Khan <skhan@linuxfoundation.org>, Mark Brown <broonie@kernel.org>,\n Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>, Danilo Krummrich <dakr@kernel.org>,\n Jonathan Cameron <jic23@kernel.org>, David Lechner <dlechner@baylibre.com>,\n\t=?utf-8?q?Nuno_S=C3=A1?= <nuno.sa@analog.com>,\n Andy Shevchenko <andy@kernel.org>, Orson Zhai <orsonzhai@gmail.com>,\n Chunyan Zhang <zhang.lyra@gmail.com>, Thomas Gleixner <tglx@kernel.org>,\n Maxime Coquelin <mcoquelin.stm32@gmail.com>,\n Alexandre Torgue <alexandre.torgue@foss.st.com>, Lee Jones <lee@kernel.org>,\n Arnd Bergmann <arnd@arndb.de>, Srinivas Kandagatla <srini@kernel.org>,\n Antonio Borneo <antonio.borneo@foss.st.com>,\n Linus Walleij <linusw@kernel.org>, Konrad Dybcio <konradybcio@kernel.org>,\n linux-remoteproc@vger.kernel.org, linux-doc@vger.kernel.org,\n driver-core@lists.linux.dev, linux-iio@vger.kernel.org,\n linux-stm32@st-md-mailman.stormreply.com, linux-gpio@vger.kernel.org,\n linux-arm-msm@vger.kernel.org, linux-spi@vger.kernel.org", "Subject": "[RFC PATCH v2 13/13] hwspinlock: refactor consumer.h from public\n header", "Date": "Sun, 15 Feb 2026 23:54:53 +0100", "Message-ID": "<20260215225501.6365-14-wsa+renesas@sang-engineering.com>", "X-Mailer": "git-send-email 2.51.0", "In-Reply-To": "<20260215225501.6365-1-wsa+renesas@sang-engineering.com>", "References": "<20260215225501.6365-1-wsa+renesas@sang-engineering.com>", "Precedence": "bulk", "X-Mailing-List": "linux-gpio@vger.kernel.org", "List-Id": "<linux-gpio.vger.kernel.org>", "List-Subscribe": "<mailto:linux-gpio+subscribe@vger.kernel.org>", "List-Unsubscribe": "<mailto:linux-gpio+unsubscribe@vger.kernel.org>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit" }, "content": "Factor out the entries only needed for consumers from the generic public\nheader. This allows for a clean separation between providers and\nconsumers.\n\nFIXME: separate driver changes?\n\nSigned-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>\n---\n Documentation/locking/hwspinlock.rst | 2 +-\n MAINTAINERS | 1 -\n drivers/base/regmap/regmap.c | 2 +-\n drivers/hwspinlock/hwspinlock_core.c | 2 +-\n drivers/iio/adc/sc27xx_adc.c | 2 +-\n drivers/irqchip/irq-stm32mp-exti.c | 2 +-\n drivers/mfd/syscon.c | 2 +-\n drivers/nvmem/sc27xx-efuse.c | 2 +-\n drivers/nvmem/sprd-efuse.c | 2 +-\n drivers/pinctrl/stm32/pinctrl-stm32.c | 2 +-\n drivers/soc/qcom/smem.c | 2 +-\n drivers/spi/spi-sprd-adi.c | 2 +-\n .../linux/{hwspinlock.h => hwspinlock/consumer.h} | 15 ++++++---------\n 13 files changed, 17 insertions(+), 21 deletions(-)\n rename include/linux/{hwspinlock.h => hwspinlock/consumer.h} (98%)", "diff": "diff --git a/Documentation/locking/hwspinlock.rst b/Documentation/locking/hwspinlock.rst\nindex a737c702a7d1..001bcab86690 100644\n--- a/Documentation/locking/hwspinlock.rst\n+++ b/Documentation/locking/hwspinlock.rst\n@@ -306,7 +306,7 @@ Typical usage\n \n ::\n \n-\t#include <linux/hwspinlock.h>\n+\t#include <linux/hwspinlock/consumer.h>\n \t#include <linux/err.h>\n \n \tint hwspinlock_example(void)\ndiff --git a/MAINTAINERS b/MAINTAINERS\nindex f9131b8cd5d2..8141a8a5ea01 100644\n--- a/MAINTAINERS\n+++ b/MAINTAINERS\n@@ -11216,7 +11216,6 @@ F:\tDocumentation/devicetree/bindings/hwlock/\n F:\tDocumentation/locking/hwspinlock.rst\n F:\tdrivers/hwspinlock/\n F:\tinclude/linux/hwspinlock/\n-F:\tinclude/linux/hwspinlock.h\n \n HARDWARE TRACING FACILITIES\n M:\tAlexander Shishkin <alexander.shishkin@linux.intel.com>\ndiff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c\nindex 4231e9d4b8ff..3f4c254e8ac7 100644\n--- a/drivers/base/regmap/regmap.c\n+++ b/drivers/base/regmap/regmap.c\n@@ -16,7 +16,7 @@\n #include <linux/sched.h>\n #include <linux/delay.h>\n #include <linux/log2.h>\n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/unaligned.h>\n \n #define CREATE_TRACE_POINTS\ndiff --git a/drivers/hwspinlock/hwspinlock_core.c b/drivers/hwspinlock/hwspinlock_core.c\nindex 6c8a03deb00c..e78ec4b5cfa3 100644\n--- a/drivers/hwspinlock/hwspinlock_core.c\n+++ b/drivers/hwspinlock/hwspinlock_core.c\n@@ -12,7 +12,7 @@\n #include <linux/delay.h>\n #include <linux/device.h>\n #include <linux/err.h>\n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/hwspinlock/provider.h>\n #include <linux/jiffies.h>\n #include <linux/kernel.h>\ndiff --git a/drivers/iio/adc/sc27xx_adc.c b/drivers/iio/adc/sc27xx_adc.c\nindex 6209499c5c37..8a881d63b7dd 100644\n--- a/drivers/iio/adc/sc27xx_adc.c\n+++ b/drivers/iio/adc/sc27xx_adc.c\n@@ -1,7 +1,7 @@\n // SPDX-License-Identifier: GPL-2.0\n // Copyright (C) 2018 Spreadtrum Communications Inc.\n \n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/iio/iio.h>\n #include <linux/module.h>\n #include <linux/mutex.h>\ndiff --git a/drivers/irqchip/irq-stm32mp-exti.c b/drivers/irqchip/irq-stm32mp-exti.c\nindex a24f4f1a4f8f..25d5aa67728a 100644\n--- a/drivers/irqchip/irq-stm32mp-exti.c\n+++ b/drivers/irqchip/irq-stm32mp-exti.c\n@@ -6,7 +6,7 @@\n */\n \n #include <linux/bitops.h>\n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/interrupt.h>\n #include <linux/io.h>\n #include <linux/irq.h>\ndiff --git a/drivers/mfd/syscon.c b/drivers/mfd/syscon.c\nindex e5d5def594f6..49473669e84e 100644\n--- a/drivers/mfd/syscon.c\n+++ b/drivers/mfd/syscon.c\n@@ -11,7 +11,7 @@\n #include <linux/cleanup.h>\n #include <linux/clk.h>\n #include <linux/err.h>\n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/list.h>\n #include <linux/mutex.h>\n #include <linux/of.h>\ndiff --git a/drivers/nvmem/sc27xx-efuse.c b/drivers/nvmem/sc27xx-efuse.c\nindex 4e2ffefac96c..309090cd4ff0 100644\n--- a/drivers/nvmem/sc27xx-efuse.c\n+++ b/drivers/nvmem/sc27xx-efuse.c\n@@ -1,7 +1,7 @@\n // SPDX-License-Identifier: GPL-2.0\n // Copyright (C) 2018 Spreadtrum Communications Inc.\n \n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/module.h>\n #include <linux/of.h>\n #include <linux/platform_device.h>\ndiff --git a/drivers/nvmem/sprd-efuse.c b/drivers/nvmem/sprd-efuse.c\nindex 1a7e4e5d8b86..92e3092719ba 100644\n--- a/drivers/nvmem/sprd-efuse.c\n+++ b/drivers/nvmem/sprd-efuse.c\n@@ -3,7 +3,7 @@\n \n #include <linux/clk.h>\n #include <linux/delay.h>\n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/io.h>\n #include <linux/module.h>\n #include <linux/nvmem-provider.h>\ndiff --git a/drivers/pinctrl/stm32/pinctrl-stm32.c b/drivers/pinctrl/stm32/pinctrl-stm32.c\nindex 6a99708a5a23..17b2072d609e 100644\n--- a/drivers/pinctrl/stm32/pinctrl-stm32.c\n+++ b/drivers/pinctrl/stm32/pinctrl-stm32.c\n@@ -10,7 +10,7 @@\n #include <linux/clk.h>\n #include <linux/export.h>\n #include <linux/gpio/driver.h>\n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/io.h>\n #include <linux/irq.h>\n #include <linux/mfd/syscon.h>\ndiff --git a/drivers/soc/qcom/smem.c b/drivers/soc/qcom/smem.c\nindex d5c94b47f431..6d574d65b4a3 100644\n--- a/drivers/soc/qcom/smem.c\n+++ b/drivers/soc/qcom/smem.c\n@@ -4,7 +4,7 @@\n * Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.\n */\n \n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/io.h>\n #include <linux/module.h>\n #include <linux/of.h>\ndiff --git a/drivers/spi/spi-sprd-adi.c b/drivers/spi/spi-sprd-adi.c\nindex e7d83c16b46c..04313e4a63dd 100644\n--- a/drivers/spi/spi-sprd-adi.c\n+++ b/drivers/spi/spi-sprd-adi.c\n@@ -5,7 +5,7 @@\n */\n \n #include <linux/delay.h>\n-#include <linux/hwspinlock.h>\n+#include <linux/hwspinlock/consumer.h>\n #include <linux/init.h>\n #include <linux/io.h>\n #include <linux/kernel.h>\ndiff --git a/include/linux/hwspinlock.h b/include/linux/hwspinlock/consumer.h\nsimilarity index 98%\nrename from include/linux/hwspinlock.h\nrename to include/linux/hwspinlock/consumer.h\nindex 4fe1c8831cd1..f476222ec924 100644\n--- a/include/linux/hwspinlock.h\n+++ b/include/linux/hwspinlock/consumer.h\n@@ -1,17 +1,16 @@\n /* SPDX-License-Identifier: GPL-2.0 */\n /*\n- * Hardware spinlock public header\n+ * Hardware spinlock public header for consumers\n *\n * Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com\n- *\n- * Contact: Ohad Ben-Cohen <ohad@wizery.com>\n+ * Copyright (C) 2026 Sang Engineering\n+ * Copyright (C) 2026 Renesas Solutions Corp.\n */\n \n-#ifndef __LINUX_HWSPINLOCK_H\n-#define __LINUX_HWSPINLOCK_H\n+#ifndef __LINUX_HWSPINLOCK_CONSUMER_H\n+#define __LINUX_HWSPINLOCK_CONSUMER_H\n \n #include <linux/err.h>\n-#include <linux/sched.h>\n \n /* hwspinlock mode argument */\n #define HWLOCK_IRQSTATE\t\t0x01 /* Disable interrupts, save state */\n@@ -22,8 +21,6 @@\n struct device;\n struct device_node;\n struct hwspinlock;\n-struct hwspinlock_device;\n-struct hwspinlock_ops;\n \n #ifdef CONFIG_HWSPINLOCK\n \n@@ -403,4 +400,4 @@ static inline void hwspin_unlock(struct hwspinlock *hwlock)\n \t__hwspin_unlock(hwlock, 0, NULL);\n }\n \n-#endif /* __LINUX_HWSPINLOCK_H */\n+#endif /* __LINUX_HWSPINLOCK_CONSUMER_H */\n", "prefixes": [ "RFC", "v2", "13/13" ] }