Re: [PATCH v5 2/2] media: hantro: use DEFINE_RUNTIME_DEV_PM_OPS

From: Frank Li

Date: Wed Jul 29 2026 - 13:26:30 EST


On Wed, Jul 29, 2026 at 06:04:40AM +0000, Tharit Tangkijwanichakul wrote:
> The runtime suspend and resume callbacks are currently guarded by
> CONFIG_PM. Removing the guard directly would leave the callbacks unused
> when CONFIG_PM is disabled.
>
> Define the PM operations with DEFINE_RUNTIME_DEV_PM_OPS() and use
> pm_ptr() when assigning them to the platform driver. This keeps the PM
> callbacks available when needed while avoiding unused-function warnings
> for CONFIG_PM=n builds.
>
> Signed-off-by: Tharit Tangkijwanichakul <tharitt97@xxxxxxxxx>
> ---

Reviewed-by: Frank Li <Frank.Li@xxxxxxx>

> drivers/media/platform/verisilicon/hantro_drv.c | 11 +++--------
> 1 file changed, 3 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/platform/verisilicon/hantro_drv.c
> index d6fcd4f7f9da..35302cf9f233 100644
> --- a/drivers/media/platform/verisilicon/hantro_drv.c
> +++ b/drivers/media/platform/verisilicon/hantro_drv.c
> @@ -1284,7 +1284,6 @@ static void hantro_remove(struct platform_device *pdev)
> pm_runtime_disable(vpu->dev);
> }
>
> -#ifdef CONFIG_PM
> static int hantro_runtime_resume(struct device *dev)
> {
> struct hantro_dev *vpu = dev_get_drvdata(dev);
> @@ -1314,13 +1313,9 @@ static int hantro_runtime_suspend(struct device *dev)
> clk_bulk_disable(vpu->variant->num_clocks, vpu->clocks);
> return 0;
> }
> -#endif
>
> -static const struct dev_pm_ops hantro_pm_ops = {
> - SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
> - pm_runtime_force_resume)
> - SET_RUNTIME_PM_OPS(hantro_runtime_suspend, hantro_runtime_resume, NULL)
> -};
> +static DEFINE_RUNTIME_DEV_PM_OPS(hantro_pm_ops, hantro_runtime_suspend,
> + hantro_runtime_resume, NULL);
>
> static struct platform_driver hantro_driver = {
> .probe = hantro_probe,
> @@ -1328,7 +1323,7 @@ static struct platform_driver hantro_driver = {
> .driver = {
> .name = DRIVER_NAME,
> .of_match_table = of_hantro_match,
> - .pm = &hantro_pm_ops,
> + .pm = pm_ptr(&hantro_pm_ops),
> },
> };
> module_platform_driver(hantro_driver);
> --
> 2.47.3
>