lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID:
 <DM4PR12MB610977A84E60005E87C1B45D8C07A@DM4PR12MB6109.namprd12.prod.outlook.com>
Date: Mon, 1 Sep 2025 07:48:27 +0000
From: "Guntupalli, Manikanta" <manikanta.guntupalli@....com>
To: "Guntupalli, Manikanta" <manikanta.guntupalli@....com>, "git (AMD-Xilinx)"
	<git@....com>, "alexandre.belloni@...tlin.com"
	<alexandre.belloni@...tlin.com>, "Frank.Li@....com" <Frank.Li@....com>,
	"wsa+renesas@...g-engineering.com" <wsa+renesas@...g-engineering.com>,
	"quic_msavaliy@...cinc.com" <quic_msavaliy@...cinc.com>, "S-k, Shyam-sundar"
	<Shyam-sundar.S-k@....com>, "xiaopei01@...inos.cn" <xiaopei01@...inos.cn>,
	"billy_tsai@...eedtech.com" <billy_tsai@...eedtech.com>,
	"linux-i3c@...ts.infradead.org" <linux-i3c@...ts.infradead.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
CC: "Simek, Michal" <michal.simek@....com>, "Pandey, Radhey Shyam"
	<radhey.shyam.pandey@....com>, "Goud, Srinivas" <srinivas.goud@....com>,
	"Datta, Shubhrajyoti" <shubhrajyoti.datta@....com>, "manion05gk@...il.com"
	<manion05gk@...il.com>
Subject: RE: [PATCH V2] i3c: dw: Add shutdown support to dw_i3c_master driver

[Public]

Ping!

> -----Original Message-----
> From: Manikanta Guntupalli <manikanta.guntupalli@....com>
> Sent: Wednesday, July 30, 2025 8:42 PM
> To: git (AMD-Xilinx) <git@....com>; alexandre.belloni@...tlin.com;
> Frank.Li@....com; wsa+renesas@...g-engineering.com;
> quic_msavaliy@...cinc.com; S-k, Shyam-sundar <Shyam-sundar.S-k@....com>;
> xiaopei01@...inos.cn; billy_tsai@...eedtech.com; linux-i3c@...ts.infradead.org;
> linux-kernel@...r.kernel.org
> Cc: Simek, Michal <michal.simek@....com>; Pandey, Radhey Shyam
> <radhey.shyam.pandey@....com>; Goud, Srinivas <srinivas.goud@....com>;
> Datta, Shubhrajyoti <shubhrajyoti.datta@....com>; manion05gk@...il.com;
> Guntupalli, Manikanta <manikanta.guntupalli@....com>
> Subject: [PATCH V2] i3c: dw: Add shutdown support to dw_i3c_master driver
>
> Add shutdown handler to the Synopsys DesignWare I3C master driver, ensuring the
> device is gracefully disabled during system shutdown.
>
> The shutdown handler cancels any pending hot-join work and disables interrupts.
>
> Signed-off-by: Manikanta Guntupalli <manikanta.guntupalli@....com>
> ---
> Changes for V2:
> Removed pm_runtime_mark_last_busy() call from the shutdown handler, as it is
> being removed in the following commit.
> https://lore.kernel.org/linux-pm/20250704075225.3212486-1-
> sakari.ailus@...ux.intel.com/
> ---
>  drivers/i3c/master/dw-i3c-master.c | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>
> diff --git a/drivers/i3c/master/dw-i3c-master.c b/drivers/i3c/master/dw-i3c-master.c
> index ae1992665673..2d16b7d74743 100644
> --- a/drivers/i3c/master/dw-i3c-master.c
> +++ b/drivers/i3c/master/dw-i3c-master.c
> @@ -1762,6 +1762,28 @@ static const struct dev_pm_ops dw_i3c_pm_ops = {
>       SET_RUNTIME_PM_OPS(dw_i3c_master_runtime_suspend,
> dw_i3c_master_runtime_resume, NULL)  };
>
> +static void dw_i3c_shutdown(struct platform_device *pdev) {
> +     struct dw_i3c_master *master = platform_get_drvdata(pdev);
> +     int ret;
> +
> +     ret = pm_runtime_resume_and_get(master->dev);
> +     if (ret < 0) {
> +             dev_err(master->dev,
> +                     "<%s> cannot resume i3c bus master, err: %d\n",
> +                     __func__, ret);
> +             return;
> +     }
> +
> +     cancel_work_sync(&master->hj_work);
> +
> +     /* Disable interrupts */
> +     writel((u32)~INTR_ALL, master->regs + INTR_STATUS_EN);
> +     writel((u32)~INTR_ALL, master->regs + INTR_SIGNAL_EN);
> +
> +     pm_runtime_put_autosuspend(master->dev);
> +}
> +
>  static const struct of_device_id dw_i3c_master_of_match[] = {
>       { .compatible = "snps,dw-i3c-master-1.00a", },
>       {},
> @@ -1777,6 +1799,7 @@ MODULE_DEVICE_TABLE(acpi,
> amd_i3c_device_match);  static struct platform_driver dw_i3c_driver = {
>       .probe = dw_i3c_probe,
>       .remove = dw_i3c_remove,
> +     .shutdown = dw_i3c_shutdown,
>       .driver = {
>               .name = "dw-i3c-master",
>               .of_match_table = dw_i3c_master_of_match,
> --
> 2.34.1

Thanks,
Manikanta.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ