[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <0df6882b-5ac7-48d4-abf6-470921fea81f@oss.qualcomm.com>
Date: Thu, 13 Nov 2025 15:54:47 +0530
From: Hrishabh Rajput <hrishabh.rajput@....qualcomm.com>
To: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
Cc: Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>,
Wim Van Sebroeck <wim@...ux-watchdog.org>,
Guenter Roeck
<linux@...ck-us.net>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley
<conor+dt@...nel.org>, linux-arm-msm@...r.kernel.org,
linux-watchdog@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
Pavan Kondeti
<pavan.kondeti@....qualcomm.com>,
Neil Armstrong <neil.armstrong@...aro.org>
Subject: Re: [PATCH v6 1/2] firmware: qcom: scm: Register gunyah watchdog
device
On 11/13/2025 1:32 AM, Dmitry Baryshkov wrote:
> On Wed, Nov 12, 2025 at 07:35:20PM +0000, Hrishabh Rajput wrote:
>> To restrict Gunyah watchdog initialization to Qualcomm platforms running
>> under the Gunyah Hypervisor, register the watchdog device in the QCOM
>> SCM driver.
>>
>> When Gunyah is not present or Gunyah emulates MMIO-based watchdog, we
>> expect Qualcomm watchdog or ARM SBSA watchdog device to be present in
>> the devicetree. First, we make sure we're running under the Gunyah
>> Hypervisor. Then we move to check if any of the above mentioned
>> watchdog device nodes are present, if not then we proceed to register
>> the SMC-based Gunyah watchdog device.
>>
>> Signed-off-by: Hrishabh Rajput <hrishabh.rajput@....qualcomm.com>
>> ---
>> drivers/firmware/qcom/qcom_scm.c | 53 ++++++++++++++++++++++++++++++++++++++++
>> 1 file changed, 53 insertions(+)
>>
>> diff --git a/drivers/firmware/qcom/qcom_scm.c b/drivers/firmware/qcom/qcom_scm.c
>> index e777b7cb9b12..3f45cc69ef83 100644
>> --- a/drivers/firmware/qcom/qcom_scm.c
>> +++ b/drivers/firmware/qcom/qcom_scm.c
>> @@ -2182,6 +2182,56 @@ int qcom_scm_qtee_callback_response(phys_addr_t buf, size_t buf_size,
>> }
>> EXPORT_SYMBOL(qcom_scm_qtee_callback_response);
>>
>> +static void qcom_scm_gunyah_wdt_free(void *data)
>> +{
>> + struct platform_device *gunyah_wdt_dev = data;
>> +
>> + platform_device_unregister(gunyah_wdt_dev);
>> +}
>> +
>> +static void qcom_scm_gunyah_wdt_init(struct qcom_scm *scm)
>> +{
>> + struct platform_device *gunyah_wdt_dev;
>> + struct device_node *np;
>> + bool of_wdt_available;
>> + int i;
>> + const uuid_t gunyah_uuid = UUID_INIT(0xc1d58fcd, 0xa453, 0x5fdb,
>
> static const
>
>> + 0x92, 0x65, 0xce, 0x36,
>> + 0x67, 0x3d, 0x5f, 0x14);
>> + const char * const of_wdt_compatible[] = {
>
> static const
Thanks. I will make both of these arrays `static const` in the next
patch version. Have taken a note of this so I do this moving forward.
Thanks,
Hrishabh
>
>> + "qcom,kpss-wdt",
>> + "arm,sbsa-gwdt",
>> + };
>> +
>
Powered by blists - more mailing lists