Commit 261200eb authored by Jani Nikula's avatar Jani Nikula

drm/i915/rpm: add rpm_to_i915() helper around container_of()

Reduce the duplication.
Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Reviewed-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231205121545.2338665-1-jani.nikula@intel.com
parent dcdf1bbe
...@@ -50,6 +50,11 @@ ...@@ -50,6 +50,11 @@
* present for a given platform. * present for a given platform.
*/ */
static struct drm_i915_private *rpm_to_i915(struct intel_runtime_pm *rpm)
{
return container_of(rpm, struct drm_i915_private, runtime_pm);
}
#if IS_ENABLED(CONFIG_DRM_I915_DEBUG_RUNTIME_PM) #if IS_ENABLED(CONFIG_DRM_I915_DEBUG_RUNTIME_PM)
#include <linux/sort.h> #include <linux/sort.h>
...@@ -349,9 +354,7 @@ intel_runtime_pm_release(struct intel_runtime_pm *rpm, int wakelock) ...@@ -349,9 +354,7 @@ intel_runtime_pm_release(struct intel_runtime_pm *rpm, int wakelock)
static intel_wakeref_t __intel_runtime_pm_get(struct intel_runtime_pm *rpm, static intel_wakeref_t __intel_runtime_pm_get(struct intel_runtime_pm *rpm,
bool wakelock) bool wakelock)
{ {
struct drm_i915_private *i915 = container_of(rpm, struct drm_i915_private *i915 = rpm_to_i915(rpm);
struct drm_i915_private,
runtime_pm);
int ret; int ret;
ret = pm_runtime_get_sync(rpm->kdev); ret = pm_runtime_get_sync(rpm->kdev);
...@@ -556,9 +559,7 @@ void intel_runtime_pm_put(struct intel_runtime_pm *rpm, intel_wakeref_t wref) ...@@ -556,9 +559,7 @@ void intel_runtime_pm_put(struct intel_runtime_pm *rpm, intel_wakeref_t wref)
*/ */
void intel_runtime_pm_enable(struct intel_runtime_pm *rpm) void intel_runtime_pm_enable(struct intel_runtime_pm *rpm)
{ {
struct drm_i915_private *i915 = container_of(rpm, struct drm_i915_private *i915 = rpm_to_i915(rpm);
struct drm_i915_private,
runtime_pm);
struct device *kdev = rpm->kdev; struct device *kdev = rpm->kdev;
/* /*
...@@ -611,9 +612,7 @@ void intel_runtime_pm_enable(struct intel_runtime_pm *rpm) ...@@ -611,9 +612,7 @@ void intel_runtime_pm_enable(struct intel_runtime_pm *rpm)
void intel_runtime_pm_disable(struct intel_runtime_pm *rpm) void intel_runtime_pm_disable(struct intel_runtime_pm *rpm)
{ {
struct drm_i915_private *i915 = container_of(rpm, struct drm_i915_private *i915 = rpm_to_i915(rpm);
struct drm_i915_private,
runtime_pm);
struct device *kdev = rpm->kdev; struct device *kdev = rpm->kdev;
/* Transfer rpm ownership back to core */ /* Transfer rpm ownership back to core */
...@@ -628,9 +627,7 @@ void intel_runtime_pm_disable(struct intel_runtime_pm *rpm) ...@@ -628,9 +627,7 @@ void intel_runtime_pm_disable(struct intel_runtime_pm *rpm)
void intel_runtime_pm_driver_release(struct intel_runtime_pm *rpm) void intel_runtime_pm_driver_release(struct intel_runtime_pm *rpm)
{ {
struct drm_i915_private *i915 = container_of(rpm, struct drm_i915_private *i915 = rpm_to_i915(rpm);
struct drm_i915_private,
runtime_pm);
int count = atomic_read(&rpm->wakeref_count); int count = atomic_read(&rpm->wakeref_count);
intel_wakeref_auto_fini(&rpm->userfault_wakeref); intel_wakeref_auto_fini(&rpm->userfault_wakeref);
...@@ -645,8 +642,7 @@ void intel_runtime_pm_driver_release(struct intel_runtime_pm *rpm) ...@@ -645,8 +642,7 @@ void intel_runtime_pm_driver_release(struct intel_runtime_pm *rpm)
void intel_runtime_pm_init_early(struct intel_runtime_pm *rpm) void intel_runtime_pm_init_early(struct intel_runtime_pm *rpm)
{ {
struct drm_i915_private *i915 = struct drm_i915_private *i915 = rpm_to_i915(rpm);
container_of(rpm, struct drm_i915_private, runtime_pm);
struct pci_dev *pdev = to_pci_dev(i915->drm.dev); struct pci_dev *pdev = to_pci_dev(i915->drm.dev);
struct device *kdev = &pdev->dev; struct device *kdev = &pdev->dev;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment