From: Neil Armstrong <neil.armstrong@linaro.org>
To: hrishabh.rajput@oss.qualcomm.com,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konradybcio@kernel.org>,
Wim Van Sebroeck <wim@linux-watchdog.org>,
Guenter Roeck <linux@roeck-us.net>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: linux-arm-msm@vger.kernel.org, linux-watchdog@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
Pavan Kondeti <pavan.kondeti@oss.qualcomm.com>,
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Subject: Re: [PATCH v7 0/2] Add support for Gunyah Watchdog
Date: Mon, 17 Nov 2025 15:45:31 +0100 [thread overview]
Message-ID: <168374f9-cf03-481b-b4b2-ed51787a3def@linaro.org> (raw)
In-Reply-To: <20251114-gunyah_watchdog-v7-0-f5c155b941d5@oss.qualcomm.com>
On 11/14/25 08:57, Hrishabh Rajput via B4 Relay wrote:
> Gunyah is a Type-I hypervisor which was introduced in the patch series
> [1]. It is an open source hypervisor. The source repo is available at
> [2].
>
> The Gunyah Hypervisor doesn't allow its Virtual Machines to directly
> access the MMIO watchdog. It either provides the fully emulated MMIO
> based watchdog interface or the SMC-based watchdog interface depending
> on the hypervisor configuration.
> The SMC-based watchdog follows ARM's SMC Calling Convention (SMCCC)
> version 1.1 and uses Vendor Specific Hypervisor Service Calls space.
>
> This patch series adds support for the SMC-based watchdog interface
> provided by the Gunyah Hypervisor.
>
> This series is tested on SM8750 platform.
>
> [1]
> https://lore.kernel.org/all/20240222-gunyah-v17-0-1e9da6763d38@quicinc.com/
>
> [2]
> https://github.com/quic/gunyah-hypervisor
>
> Signed-off-by: Hrishabh Rajput <hrishabh.rajput@oss.qualcomm.com>
> ---
> Changes in v7:
> - Convert local `const` arrays to `static const` to optimize
> initialization and stack allocation.
> - Link to v6: https://lore.kernel.org/r/20251112-gunyah_watchdog-v6-0-38ad01f8dac0@oss.qualcomm.com
>
> Changes in v6:
> - Fix build issues reported by the kernel test robot on PowerPC and RISC-V
> architectures by adding IS_ENABLED(CONFIG_HAVE_ARM_SMCCC_DISCOVERY) check
> before calling arm_smccc_hypervisor_has_uuid().
> - Link to v5: https://lore.kernel.org/r/20251107-gunyah_watchdog-v5-0-4c6e3fb6eb17@oss.qualcomm.com
>
> Changes in v5:
> - Move the gunyah_wdt device registration from the SMEM driver to the
> SCM driver. Add additional logic to check if we're running under the
> Gunyah Hypervisor.
> - Implement .remove() for gunyah_wdt driver to make it not persistent.
> - Link to v4: https://lore.kernel.org/r/20251031-gunyah_watchdog-v4-0-7abb1ee11315@oss.qualcomm.com
>
> Changes in v4:
> - Move the contents of gunyah_wdt_init() to qcom_smem_probe() to make
> sure we're registering the watchdog only on the Qualcomm devices.
> - Link to v3: https://lore.kernel.org/r/20251028-gunyah_watchdog-v3-1-e6d1ea438b1d@oss.qualcomm.com
>
> Changes in v3:
> - Move back to platform driver model. In module init, determine if we're
> running on a Qualcomm device and there is no supported memory-mapped
> watchdog present. Then proceed to register platform device and driver
> for SMC-based Gunyah watchdog.
> - To determine if we're running on a Qualcomm device we're checking the
> presence of "qcom,smem" compatible devicetree node. As an alternative,
> we also tried using socinfo for the same purpose. When both
> gunyah_wdt and socinfo drivers were made built-in, it couldn't be
> ensured that the socinfo driver probed successfully before gunyah_wdt
> init was called. Hence, we resorted to the devicetree node approach.
> - Limit the errors listed in gunyah_error to the ones that can be
> produced by the driver.
> - Link to v2: https://lore.kernel.org/r/20251006-gunyah_watchdog-v2-1-b99d41d45450@oss.qualcomm.com
>
> Changes in v2:
> - Move away from platform driver model since the devicetree overlay does
> not happen by default.
> See https://lore.kernel.org/all/91002189-9d9e-48a2-8424-c42705fed3f8@quicinc.com/
> - Only when MMIO-based watchdog device is absent in the devicetree,
> proceed to detect SMC-based watchdog using GUNYAH_WDT_STATUS SMC and
> initialize if SMC returns success.
> - Implement pm notifiers as gunyah_wdt is no longer a platform driver so
> dev_pm_ops cannot be used.
> - Pretimeout IRQ is no longer supported.
> - Remove struct gunyah_wdt since it is not required.
> - Move the contents of gunyah_errno.h to gunyah_wdt.c.
> - Link to v1: https://lore.kernel.org/r/20250903-gunyah_watchdog-v1-0-3ae690530e4b@oss.qualcomm.com
>
> ---
> Hrishabh Rajput (2):
> firmware: qcom: scm: Register gunyah watchdog device
> watchdog: Add driver for Gunyah Watchdog
>
> MAINTAINERS | 1 +
> drivers/firmware/qcom/qcom_scm.c | 53 ++++++++
> drivers/watchdog/Kconfig | 13 ++
> drivers/watchdog/Makefile | 1 +
> drivers/watchdog/gunyah_wdt.c | 260 +++++++++++++++++++++++++++++++++++++++
> 5 files changed, 328 insertions(+)
> ---
> base-commit: e9a6fb0bcdd7609be6969112f3fbfcce3b1d4a7c
> change-id: 20250903-gunyah_watchdog-2d2649438e29
>
> Best regards,
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8650-QRD
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8650-HDK
Thanks,
Neil
next prev parent reply other threads:[~2025-11-17 14:45 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-14 7:57 [PATCH v7 0/2] Add support for Gunyah Watchdog Hrishabh Rajput via B4 Relay
2025-11-14 7:57 ` [PATCH v7 1/2] firmware: qcom: scm: Register gunyah watchdog device Hrishabh Rajput via B4 Relay
2025-11-14 11:10 ` Dmitry Baryshkov
2025-11-14 7:57 ` [PATCH v7 2/2] watchdog: Add driver for Gunyah Watchdog Hrishabh Rajput via B4 Relay
2025-11-14 13:36 ` Guenter Roeck
2025-11-17 14:45 ` Neil Armstrong [this message]
2025-11-18 5:11 ` [PATCH v7 0/2] Add support " Shivendra Pratap
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=168374f9-cf03-481b-b4b2-ed51787a3def@linaro.org \
--to=neil.armstrong@linaro.org \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=hrishabh.rajput@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-watchdog@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=pavan.kondeti@oss.qualcomm.com \
--cc=robh@kernel.org \
--cc=wim@linux-watchdog.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).