[Public]

> -----Original Message-----
> From: Sakari Ailus <[email protected]>
> Sent: Monday, October 27, 2025 9:15 AM
> To: [email protected]
> Cc: Deucher, Alexander <[email protected]>; Koenig, Christian
> <[email protected]>; David Airlie <[email protected]>; Simona Vetter
> <[email protected]>; Kuehling, Felix <[email protected]>; Feng, Kenneth
> <[email protected]>; Lyude Paul <[email protected]>; Danilo Krummrich
> <[email protected]>; Maarten Lankhorst <[email protected]>;
> Maxime Ripard <[email protected]>; Thomas Zimmermann
> <[email protected]>; Limonciello, Mario <[email protected]>;
> Hung, Alex <[email protected]>; Antonio Quartulli <[email protected]>;
> Nirujogi, Pratap <[email protected]>; Lazar, Lijo <[email protected]>;
> Dmitry Baryshkov <[email protected]>; SHANMUGAM, SRINIVASAN
> <[email protected]>; Wang, Yang(Kevin)
> <[email protected]>; Khatri, Sunil <[email protected]>; Zhang,
> Jesse(Jie) <[email protected]>; Ville Syrjälä 
> <[email protected]>;
> Liviu Dudau <[email protected]>; Laurent Pinchart
> <[email protected]>; Zhang, Hawking
> <[email protected]>; Prosyak, Vitaly <[email protected]>; Arnd
> Bergmann <[email protected]>; Thomas Gleixner <[email protected]>; Ingo Molnar
> <[email protected]>; Liao Yuanhong <[email protected]>; Rodrigo Siqueira
> <[email protected]>; Liang, Prike <[email protected]>; Sharma, Shashank
> <[email protected]>; Paneer Selvam, Arunpravin
> <[email protected]>; Zhou1, Tao <[email protected]>;
> Chai, Thomas <[email protected]>; Xie, Patrick <[email protected]>;
> Liu, Xiang(Dean) <[email protected]>; Skvortsov, Victor
> <[email protected]>; Sun, Ce(Overlord) <[email protected]>; Dave
> Airlie <[email protected]>; Jani Nikula <[email protected]>; Gustavo A. 
> R.
> Silva <[email protected]>; Imre Deak <[email protected]>; Ben Skeggs
> <[email protected]>; [email protected]; amd-
> [email protected]
> Subject: [PATCH 1/3] drm/amd: Remove redundant pm_runtime_mark_last_busy()
> calls
>
> pm_runtime_put_autosuspend(), pm_runtime_put_sync_autosuspend(),
> pm_runtime_autosuspend() and pm_request_autosuspend() now include a call to
> pm_runtime_mark_last_busy(). Remove the now-reduntant explicit call to
> pm_runtime_mark_last_busy().


Typo: should be "now-redundant"

>
> Signed-off-by: Sakari Ailus <[email protected]>

Patches 1, 3 are:
Acked-by: Alex Deucher <[email protected]>

When did mark_last_busy get pulled into the other runtime_pm functions?  Did 
you want me to pick these up or did you want to send them via some other tree?

Thanks,

Alex


> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c      |  1 -
>  .../gpu/drm/amd/amdgpu/amdgpu_connectors.c    | 16 +++---------
>  drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c   | 25 -------------------
>  drivers/gpu/drm/amd/amdgpu/amdgpu_display.c   |  2 --
>  drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c       |  4 ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c     |  2 --
>  drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c       |  1 -
>  drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c       |  2 --
>  drivers/gpu/drm/amd/amdgpu/amdgpu_rap.c       |  1 -
>  drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c       |  1 -
>  .../gpu/drm/amd/amdgpu/amdgpu_securedisplay.c |  1 -
>  drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c     |  1 -
>  drivers/gpu/drm/amd/amdkfd/kfd_process.c      |  1 -
>  drivers/gpu/drm/amd/pm/amdgpu_pm.c            |  1 -
>  14 files changed, 4 insertions(+), 55 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
> index 6c62e27b9800..d31460a9e958 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
> @@ -507,7 +507,6 @@ static int amdgpu_atif_handler(struct amdgpu_device
> *adev,
>                               pm_runtime_get_sync(adev_to_drm(adev)->dev);
>                               /* Just fire off a uevent and let userspace 
> tell us what
> to do */
>                               drm_helper_hpd_irq_event(adev_to_drm(adev));
> -                             pm_runtime_mark_last_busy(adev_to_drm(adev)-
> >dev);
>                               pm_runtime_put_autosuspend(adev_to_drm(adev)-
> >dev);
>                       }
>               }
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
> index 47e9bfba0642..9f96d568acf2 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
> @@ -734,10 +734,8 @@ amdgpu_connector_lvds_detect(struct drm_connector
> *connector, bool force)
>
>       amdgpu_connector_update_scratch_regs(connector, ret);
>
> -     if (!drm_kms_helper_is_poll_worker()) {
> -             pm_runtime_mark_last_busy(connector->dev->dev);
> +     if (!drm_kms_helper_is_poll_worker())
>               pm_runtime_put_autosuspend(connector->dev->dev);
> -     }
>
>       return ret;
>  }
> @@ -919,10 +917,8 @@ amdgpu_connector_vga_detect(struct drm_connector
> *connector, bool force)
>       amdgpu_connector_update_scratch_regs(connector, ret);
>
>  out:
> -     if (!drm_kms_helper_is_poll_worker()) {
> -             pm_runtime_mark_last_busy(connector->dev->dev);
> +     if (!drm_kms_helper_is_poll_worker())
>               pm_runtime_put_autosuspend(connector->dev->dev);
> -     }
>
>       return ret;
>  }
> @@ -1146,10 +1142,8 @@ amdgpu_connector_dvi_detect(struct drm_connector
> *connector, bool force)
>       amdgpu_connector_update_scratch_regs(connector, ret);
>
>  exit:
> -     if (!drm_kms_helper_is_poll_worker()) {
> -             pm_runtime_mark_last_busy(connector->dev->dev);
> +     if (!drm_kms_helper_is_poll_worker())
>               pm_runtime_put_autosuspend(connector->dev->dev);
> -     }
>
>       return ret;
>  }
> @@ -1486,10 +1480,8 @@ amdgpu_connector_dp_detect(struct drm_connector
> *connector, bool force)
>
>       amdgpu_connector_update_scratch_regs(connector, ret);
>  out:
> -     if (!drm_kms_helper_is_poll_worker()) {
> -             pm_runtime_mark_last_busy(connector->dev->dev);
> +     if (!drm_kms_helper_is_poll_worker())
>               pm_runtime_put_autosuspend(connector->dev->dev);
> -     }
>
>       if (connector->connector_type ==
> DRM_MODE_CONNECTOR_DisplayPort ||
>           connector->connector_type == DRM_MODE_CONNECTOR_eDP) diff --
> git a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> index d3a5189bd512..62d43b8cbe58 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> @@ -129,7 +129,6 @@ static int  amdgpu_debugfs_process_reg_op(bool read,
> struct file *f,
>       if (use_bank) {
>               if ((sh_bank != 0xFFFFFFFF && sh_bank >= adev-
> >gfx.config.max_sh_per_se) ||
>                   (se_bank != 0xFFFFFFFF && se_bank >= adev-
> >gfx.config.max_shader_engines)) {
> -                     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>                       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>                       amdgpu_virt_disable_access_debugfs(adev);
>                       return -EINVAL;
> @@ -179,7 +178,6 @@ static int  amdgpu_debugfs_process_reg_op(bool read,
> struct file *f,
>       if (pm_pg_lock)
>               mutex_unlock(&adev->pm.mutex);
>
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       amdgpu_virt_disable_access_debugfs(adev);
> @@ -255,7 +253,6 @@ static ssize_t amdgpu_debugfs_regs2_op(struct file *f,
> char __user *buf, u32 off
>       if (rd->id.use_grbm) {
>               if ((rd->id.grbm.sh != 0xFFFFFFFF && rd->id.grbm.sh >= adev-
> >gfx.config.max_sh_per_se) ||
>                   (rd->id.grbm.se != 0xFFFFFFFF && rd->id.grbm.se >= adev-
> >gfx.config.max_shader_engines)) {
> -                     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>                       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>                       amdgpu_virt_disable_access_debugfs(adev);
>                       mutex_unlock(&rd->lock);
> @@ -310,7 +307,6 @@ static ssize_t amdgpu_debugfs_regs2_op(struct file *f,
> char __user *buf, u32 off
>
>       mutex_unlock(&rd->lock);
>
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       amdgpu_virt_disable_access_debugfs(adev);
> @@ -446,7 +442,6 @@ static ssize_t amdgpu_debugfs_gprwave_read(struct file
> *f, char __user *buf, siz
>       amdgpu_gfx_select_se_sh(adev, 0xFFFFFFFF, 0xFFFFFFFF,
> 0xFFFFFFFF, rd->id.xcc_id);
>       mutex_unlock(&adev->grbm_idx_mutex);
>
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       if (!x) {
> @@ -557,7 +552,6 @@ static ssize_t amdgpu_debugfs_regs_pcie_read(struct file
> *f, char __user *buf,
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>       amdgpu_virt_disable_access_debugfs(adev);
>       return r;
> @@ -617,7 +611,6 @@ static ssize_t amdgpu_debugfs_regs_pcie_write(struct file
> *f, const char __user
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>       amdgpu_virt_disable_access_debugfs(adev);
>       return r;
> @@ -676,7 +669,6 @@ static ssize_t amdgpu_debugfs_regs_didt_read(struct file
> *f, char __user *buf,
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>       amdgpu_virt_disable_access_debugfs(adev);
>       return r;
> @@ -736,7 +728,6 @@ static ssize_t amdgpu_debugfs_regs_didt_write(struct file
> *f, const char __user
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>       amdgpu_virt_disable_access_debugfs(adev);
>       return r;
> @@ -795,7 +786,6 @@ static ssize_t amdgpu_debugfs_regs_smc_read(struct file
> *f, char __user *buf,
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>       amdgpu_virt_disable_access_debugfs(adev);
>       return r;
> @@ -855,7 +845,6 @@ static ssize_t amdgpu_debugfs_regs_smc_write(struct file
> *f, const char __user *
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>       amdgpu_virt_disable_access_debugfs(adev);
>       return r;
> @@ -1003,7 +992,6 @@ static ssize_t amdgpu_debugfs_sensor_read(struct file
> *f, char __user *buf,
>
>       r = amdgpu_dpm_read_sensor(adev, idx, &values[0], &valuesize);
>
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       if (r) {
> @@ -1094,7 +1082,6 @@ static ssize_t amdgpu_debugfs_wave_read(struct file *f,
> char __user *buf,
>       amdgpu_gfx_select_se_sh(adev, 0xFFFFFFFF, 0xFFFFFFFF,
> 0xFFFFFFFF, 0);
>       mutex_unlock(&adev->grbm_idx_mutex);
>
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       if (!x) {
> @@ -1192,7 +1179,6 @@ static ssize_t amdgpu_debugfs_gpr_read(struct file *f,
> char __user *buf,
>       amdgpu_gfx_select_se_sh(adev, 0xFFFFFFFF, 0xFFFFFFFF,
> 0xFFFFFFFF, 0);
>       mutex_unlock(&adev->grbm_idx_mutex);
>
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       while (size) {
> @@ -1266,7 +1252,6 @@ static ssize_t
> amdgpu_debugfs_gfxoff_residency_read(struct file *f, char __user
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       return r;
> @@ -1315,7 +1300,6 @@ static ssize_t
> amdgpu_debugfs_gfxoff_residency_write(struct file *f, const char
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       return r;
> @@ -1365,7 +1349,6 @@ static ssize_t
> amdgpu_debugfs_gfxoff_count_read(struct file *f, char __user *buf
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       return r;
> @@ -1414,7 +1397,6 @@ static ssize_t amdgpu_debugfs_gfxoff_write(struct file
> *f, const char __user *bu
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       return r;
> @@ -1460,7 +1442,6 @@ static ssize_t amdgpu_debugfs_gfxoff_read(struct file 
> *f,
> char __user *buf,
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       return r;
> @@ -1501,7 +1482,6 @@ static ssize_t
> amdgpu_debugfs_gfxoff_status_read(struct file *f, char __user *bu
>
>       r = result;
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       return r;
> @@ -1701,7 +1681,6 @@ static int amdgpu_debugfs_test_ib_show(struct seq_file
> *m, void *unused)
>
>       up_write(&adev->reset_domain->sem);
>
> -     pm_runtime_mark_last_busy(dev->dev);
>       pm_runtime_put_autosuspend(dev->dev);
>
>       return 0;
> @@ -1721,7 +1700,6 @@ static int amdgpu_debugfs_evict_vram(void *data, u64
> *val)
>
>       *val = amdgpu_ttm_evict_resources(adev, TTM_PL_VRAM);
>
> -     pm_runtime_mark_last_busy(dev->dev);
>       pm_runtime_put_autosuspend(dev->dev);
>
>       return 0;
> @@ -1742,7 +1720,6 @@ static int amdgpu_debugfs_evict_gtt(void *data, u64
> *val)
>
>       *val = amdgpu_ttm_evict_resources(adev, TTM_PL_TT);
>
> -     pm_runtime_mark_last_busy(dev->dev);
>       pm_runtime_put_autosuspend(dev->dev);
>
>       return 0;
> @@ -1762,7 +1739,6 @@ static int amdgpu_debugfs_benchmark(void *data, u64
> val)
>
>       r = amdgpu_benchmark(adev, val);
>
> -     pm_runtime_mark_last_busy(dev->dev);
>       pm_runtime_put_autosuspend(dev->dev);
>
>       return r;
> @@ -2014,7 +1990,6 @@ static int amdgpu_debugfs_sclk_set(void *data, u64 val)
>               ret = -EINVAL;
>
>  out:
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       return ret;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> index 51bab32fd8c6..eca8443d9256 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
> @@ -332,8 +332,6 @@ int amdgpu_display_crtc_set_config(struct drm_mode_set
> *set,
>               if (crtc->enabled)
>                       active = true;
>
> -     pm_runtime_mark_last_busy(dev->dev);
> -
>       adev = drm_to_adev(dev);
>       /* if we have active crtcs and we don't have a power ref,
>        * take the current one
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> index a36e15beafeb..f159515b7d95 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> @@ -2228,7 +2228,6 @@ static void amdgpu_get_secondary_funcs(struct
> amdgpu_device *adev)
>                                               adev->pdev->bus->number, i);
>               if (p) {
>                       pm_runtime_get_sync(&p->dev);
> -                     pm_runtime_mark_last_busy(&p->dev);
>                       pm_runtime_put_autosuspend(&p->dev);
>                       pci_dev_put(p);
>               }
> @@ -2474,7 +2473,6 @@ static int amdgpu_pci_probe(struct pci_dev *pdev,
>
>               pm_runtime_allow(ddev->dev);
>
> -             pm_runtime_mark_last_busy(ddev->dev);
>               pm_runtime_put_autosuspend(ddev->dev);
>
>               pci_wake_from_d3(pdev, TRUE);
> @@ -2934,7 +2932,6 @@ static int amdgpu_pmops_runtime_idle(struct device
> *dev)
>
>       ret = amdgpu_runtime_idle_check_userq(dev);
>  done:
> -     pm_runtime_mark_last_busy(dev);
>       pm_runtime_autosuspend(dev);
>       return ret;
>  }
> @@ -2970,7 +2967,6 @@ long amdgpu_drm_ioctl(struct file *filp,
>
>       ret = drm_ioctl(filp, cmd, arg);
>
> -     pm_runtime_mark_last_busy(dev->dev);
>  out:
>       pm_runtime_put_autosuspend(dev->dev);
>       return ret;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> index 1fe31d2f2706..c7843e336310 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> @@ -250,7 +250,6 @@ bool amdgpu_fence_process(struct amdgpu_ring *ring)
>               drv->signalled_wptr = am_fence->wptr;
>               dma_fence_signal(fence);
>               dma_fence_put(fence);
> -             pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>               pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>       } while (last_seq != seq);
>
> @@ -928,7 +927,6 @@ static int gpu_recover_get(void *data, u64 *val)
>
>       *val = atomic_read(&adev->reset_domain->reset_res);
>
> -     pm_runtime_mark_last_busy(dev->dev);
>       pm_runtime_put_autosuspend(dev->dev);
>
>       return 0;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> index 29c927f4d6df..8b118c53f351 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
> @@ -1670,7 +1670,6 @@ static ssize_t
> amdgpu_gfx_set_run_cleaner_shader(struct device *dev,
>
>       ret = amdgpu_gfx_run_cleaner_shader(adev, value);
>
> -     pm_runtime_mark_last_busy(ddev->dev);
>       pm_runtime_put_autosuspend(ddev->dev);
>
>       if (ret)
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> index b3e6b3fcdf2c..6ee77f431d56 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> @@ -1471,7 +1471,6 @@ int amdgpu_driver_open_kms(struct drm_device *dev,
> struct drm_file *file_priv)
>       kfree(fpriv);
>
>  out_suspend:
> -     pm_runtime_mark_last_busy(dev->dev);
>  pm_put:
>       pm_runtime_put_autosuspend(dev->dev);
>
> @@ -1539,7 +1538,6 @@ void amdgpu_driver_postclose_kms(struct drm_device
> *dev,
>       kfree(fpriv);
>       file_priv->driver_priv = NULL;
>
> -     pm_runtime_mark_last_busy(dev->dev);
>       pm_runtime_put_autosuspend(dev->dev);
>  }
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_rap.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_rap.c
> index 123bcf5c2bb1..bacf888735db 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_rap.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_rap.c
> @@ -101,7 +101,6 @@ static ssize_t amdgpu_rap_debugfs_write(struct file *f,
> const char __user *buf,
>       }
>
>       amdgpu_gfx_off_ctrl(adev, true);
> -     pm_runtime_mark_last_busy(dev->dev);
>       pm_runtime_put_autosuspend(dev->dev);
>
>       return size;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> index ff34e1c0d9e2..c806d4af8c05 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> @@ -4099,7 +4099,6 @@ static void amdgpu_ras_counte_dw(struct work_struct
> *work)
>               atomic_set(&con->ras_ue_count, ue_count);
>       }
>
> -     pm_runtime_mark_last_busy(dev->dev);
>  Out:
>       pm_runtime_put_autosuspend(dev->dev);
>  }
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c
> index 41ebe690eeff..3739be1b71e0 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c
> @@ -159,7 +159,6 @@ static ssize_t
> amdgpu_securedisplay_debugfs_write(struct file *f, const char __u
>               dev_err(adev->dev, "Invalid input: %s\n", str);
>       }
>
> -     pm_runtime_mark_last_busy(dev->dev);
>       pm_runtime_put_autosuspend(dev->dev);
>
>       return size;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
> index 9d4751a39c20..3f75d5daa5a8 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
> @@ -479,7 +479,6 @@ amdgpu_userq_destroy(struct drm_file *filp, int queue_id)
>       amdgpu_userq_cleanup(uq_mgr, queue, queue_id);
>       mutex_unlock(&uq_mgr->userq_mutex);
>
> -     pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
>       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
>
>       return r;
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c
> b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
> index ddfe30c13e9d..9e30b9df6d53 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
> @@ -1083,7 +1083,6 @@ static void kfd_process_destroy_pdds(struct
> kfd_process *p)
>                * for auto suspend
>                */
>               if (pdd->runtime_inuse) {
> -                     pm_runtime_mark_last_busy(adev_to_drm(pdd->dev-
> >adev)->dev);
>                       pm_runtime_put_autosuspend(adev_to_drm(pdd->dev-
> >adev)->dev);
>                       pdd->runtime_inuse = false;
>               }
> diff --git a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
> b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
> index c83d69994380..c88a76cce401 100644
> --- a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
> +++ b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
> @@ -174,7 +174,6 @@ static int amdgpu_pm_get_access_if_active(struct
> amdgpu_device *adev)
>   */
>  static inline void amdgpu_pm_put_access(struct amdgpu_device *adev)  {
> -     pm_runtime_mark_last_busy(adev->dev);
>       pm_runtime_put_autosuspend(adev->dev);
>  }
>
> --
> 2.47.3

Reply via email to