Commit 6f9f4b7a authored by Chris Wilson's avatar Chris Wilson

drm/i915/opregion: Convert to using native drm_i915_private

Prefer passing struct drm_i915_private to internal interfaces as this
saves us having to dance between drm_device and our native struct. The
savings hare are small (only 70 bytes of unrequired dancing), but
progressive!
Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1464012490-30961-1-git-send-email-chris@chris-wilson.co.ukReviewed-by: default avatarJani Nikula <jani.nikula@linux.intel.com>
parent 11825b0d
...@@ -1310,7 +1310,7 @@ static int i915_driver_init_hw(struct drm_i915_private *dev_priv) ...@@ -1310,7 +1310,7 @@ static int i915_driver_init_hw(struct drm_i915_private *dev_priv)
intel_uncore_sanitize(dev_priv); intel_uncore_sanitize(dev_priv);
intel_opregion_setup(dev); intel_opregion_setup(dev_priv);
i915_gem_load_init_fences(dev_priv); i915_gem_load_init_fences(dev_priv);
...@@ -1379,7 +1379,7 @@ static void i915_driver_register(struct drm_i915_private *dev_priv) ...@@ -1379,7 +1379,7 @@ static void i915_driver_register(struct drm_i915_private *dev_priv)
if (INTEL_INFO(dev_priv)->num_pipes) { if (INTEL_INFO(dev_priv)->num_pipes) {
/* Must be done after probing outputs */ /* Must be done after probing outputs */
intel_opregion_init(dev); intel_opregion_init(dev_priv);
acpi_video_register(); acpi_video_register();
} }
...@@ -1398,7 +1398,7 @@ static void i915_driver_unregister(struct drm_i915_private *dev_priv) ...@@ -1398,7 +1398,7 @@ static void i915_driver_unregister(struct drm_i915_private *dev_priv)
i915_audio_component_cleanup(dev_priv); i915_audio_component_cleanup(dev_priv);
intel_gpu_ips_teardown(); intel_gpu_ips_teardown();
acpi_video_unregister(); acpi_video_unregister();
intel_opregion_fini(dev_priv->dev); intel_opregion_fini(dev_priv);
i915_teardown_sysfs(dev_priv->dev); i915_teardown_sysfs(dev_priv->dev);
i915_gem_shrinker_cleanup(dev_priv); i915_gem_shrinker_cleanup(dev_priv);
} }
......
...@@ -628,10 +628,10 @@ static int i915_drm_suspend(struct drm_device *dev) ...@@ -628,10 +628,10 @@ static int i915_drm_suspend(struct drm_device *dev)
i915_save_state(dev); i915_save_state(dev);
opregion_target_state = suspend_to_idle(dev_priv) ? PCI_D1 : PCI_D3cold; opregion_target_state = suspend_to_idle(dev_priv) ? PCI_D1 : PCI_D3cold;
intel_opregion_notify_adapter(dev, opregion_target_state); intel_opregion_notify_adapter(dev_priv, opregion_target_state);
intel_uncore_forcewake_reset(dev_priv, false); intel_uncore_forcewake_reset(dev_priv, false);
intel_opregion_fini(dev); intel_opregion_fini(dev_priv);
intel_fbdev_set_suspend(dev, FBINFO_STATE_SUSPENDED, true); intel_fbdev_set_suspend(dev, FBINFO_STATE_SUSPENDED, true);
...@@ -749,7 +749,7 @@ static int i915_drm_resume(struct drm_device *dev) ...@@ -749,7 +749,7 @@ static int i915_drm_resume(struct drm_device *dev)
mutex_unlock(&dev->struct_mutex); mutex_unlock(&dev->struct_mutex);
i915_restore_state(dev); i915_restore_state(dev);
intel_opregion_setup(dev); intel_opregion_setup(dev_priv);
intel_init_pch_refclk(dev); intel_init_pch_refclk(dev);
drm_mode_config_reset(dev); drm_mode_config_reset(dev);
...@@ -794,7 +794,7 @@ static int i915_drm_resume(struct drm_device *dev) ...@@ -794,7 +794,7 @@ static int i915_drm_resume(struct drm_device *dev)
/* Config may have changed between suspend and resume */ /* Config may have changed between suspend and resume */
drm_helper_hpd_irq_event(dev); drm_helper_hpd_irq_event(dev);
intel_opregion_init(dev); intel_opregion_init(dev_priv);
intel_fbdev_set_suspend(dev, FBINFO_STATE_RUNNING, false); intel_fbdev_set_suspend(dev, FBINFO_STATE_RUNNING, false);
...@@ -802,7 +802,7 @@ static int i915_drm_resume(struct drm_device *dev) ...@@ -802,7 +802,7 @@ static int i915_drm_resume(struct drm_device *dev)
dev_priv->modeset_restore = MODESET_DONE; dev_priv->modeset_restore = MODESET_DONE;
mutex_unlock(&dev_priv->modeset_restore_lock); mutex_unlock(&dev_priv->modeset_restore_lock);
intel_opregion_notify_adapter(dev, PCI_D0); intel_opregion_notify_adapter(dev_priv, PCI_D0);
drm_kms_helper_poll_enable(dev); drm_kms_helper_poll_enable(dev);
...@@ -1596,14 +1596,14 @@ static int intel_runtime_suspend(struct device *device) ...@@ -1596,14 +1596,14 @@ static int intel_runtime_suspend(struct device *device)
* FIXME: We really should find a document that references the arguments * FIXME: We really should find a document that references the arguments
* used below! * used below!
*/ */
if (IS_BROADWELL(dev)) { if (IS_BROADWELL(dev_priv)) {
/* /*
* On Broadwell, if we use PCI_D1 the PCH DDI ports will stop * On Broadwell, if we use PCI_D1 the PCH DDI ports will stop
* being detected, and the call we do at intel_runtime_resume() * being detected, and the call we do at intel_runtime_resume()
* won't be able to restore them. Since PCI_D3hot matches the * won't be able to restore them. Since PCI_D3hot matches the
* actual specification and appears to be working, use it. * actual specification and appears to be working, use it.
*/ */
intel_opregion_notify_adapter(dev, PCI_D3hot); intel_opregion_notify_adapter(dev_priv, PCI_D3hot);
} else { } else {
/* /*
* current versions of firmware which depend on this opregion * current versions of firmware which depend on this opregion
...@@ -1612,7 +1612,7 @@ static int intel_runtime_suspend(struct device *device) ...@@ -1612,7 +1612,7 @@ static int intel_runtime_suspend(struct device *device)
* to distinguish it from notifications that might be sent via * to distinguish it from notifications that might be sent via
* the suspend path. * the suspend path.
*/ */
intel_opregion_notify_adapter(dev, PCI_D1); intel_opregion_notify_adapter(dev_priv, PCI_D1);
} }
assert_forcewakes_inactive(dev_priv); assert_forcewakes_inactive(dev_priv);
...@@ -1636,7 +1636,7 @@ static int intel_runtime_resume(struct device *device) ...@@ -1636,7 +1636,7 @@ static int intel_runtime_resume(struct device *device)
WARN_ON_ONCE(atomic_read(&dev_priv->pm.wakeref_count)); WARN_ON_ONCE(atomic_read(&dev_priv->pm.wakeref_count));
disable_rpm_wakeref_asserts(dev_priv); disable_rpm_wakeref_asserts(dev_priv);
intel_opregion_notify_adapter(dev, PCI_D0); intel_opregion_notify_adapter(dev_priv, PCI_D0);
dev_priv->pm.suspended = false; dev_priv->pm.suspended = false;
if (intel_uncore_unclaimed_mmio(dev_priv)) if (intel_uncore_unclaimed_mmio(dev_priv))
DRM_DEBUG_DRIVER("Unclaimed access during suspend, bios?\n"); DRM_DEBUG_DRIVER("Unclaimed access during suspend, bios?\n");
......
...@@ -3608,19 +3608,19 @@ bool intel_bios_is_port_hpd_inverted(struct drm_i915_private *dev_priv, ...@@ -3608,19 +3608,19 @@ bool intel_bios_is_port_hpd_inverted(struct drm_i915_private *dev_priv,
/* intel_opregion.c */ /* intel_opregion.c */
#ifdef CONFIG_ACPI #ifdef CONFIG_ACPI
extern int intel_opregion_setup(struct drm_device *dev); extern int intel_opregion_setup(struct drm_i915_private *dev_priv);
extern void intel_opregion_init(struct drm_device *dev); extern void intel_opregion_init(struct drm_i915_private *dev_priv);
extern void intel_opregion_fini(struct drm_device *dev); extern void intel_opregion_fini(struct drm_i915_private *dev_priv);
extern void intel_opregion_asle_intr(struct drm_i915_private *dev_priv); extern void intel_opregion_asle_intr(struct drm_i915_private *dev_priv);
extern int intel_opregion_notify_encoder(struct intel_encoder *intel_encoder, extern int intel_opregion_notify_encoder(struct intel_encoder *intel_encoder,
bool enable); bool enable);
extern int intel_opregion_notify_adapter(struct drm_device *dev, extern int intel_opregion_notify_adapter(struct drm_i915_private *dev_priv,
pci_power_t state); pci_power_t state);
extern int intel_opregion_get_panel_type(struct drm_device *dev); extern int intel_opregion_get_panel_type(struct drm_i915_private *dev_priv);
#else #else
static inline int intel_opregion_setup(struct drm_device *dev) { return 0; } static inline int intel_opregion_setup(struct drm_i915_private *dev) { return 0; }
static inline void intel_opregion_init(struct drm_device *dev) { return; } static inline void intel_opregion_init(struct drm_i915_private *dev) { }
static inline void intel_opregion_fini(struct drm_device *dev) { return; } static inline void intel_opregion_fini(struct drm_i915_private *dev) { }
static inline void intel_opregion_asle_intr(struct drm_i915_private *dev_priv) static inline void intel_opregion_asle_intr(struct drm_i915_private *dev_priv)
{ {
} }
...@@ -3630,11 +3630,11 @@ intel_opregion_notify_encoder(struct intel_encoder *intel_encoder, bool enable) ...@@ -3630,11 +3630,11 @@ intel_opregion_notify_encoder(struct intel_encoder *intel_encoder, bool enable)
return 0; return 0;
} }
static inline int static inline int
intel_opregion_notify_adapter(struct drm_device *dev, pci_power_t state) intel_opregion_notify_adapter(struct drm_i915_private *dev, pci_power_t state)
{ {
return 0; return 0;
} }
static inline int intel_opregion_get_panel_type(struct drm_device *dev) static inline int intel_opregion_get_panel_type(struct drm_i915_private *dev)
{ {
return -ENODEV; return -ENODEV;
} }
......
...@@ -213,7 +213,7 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv, ...@@ -213,7 +213,7 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
dev_priv->vbt.lvds_dither = lvds_options->pixel_dither; dev_priv->vbt.lvds_dither = lvds_options->pixel_dither;
ret = intel_opregion_get_panel_type(dev_priv->dev); ret = intel_opregion_get_panel_type(dev_priv);
if (ret >= 0) { if (ret >= 0) {
WARN_ON(ret > 0xf); WARN_ON(ret > 0xf);
panel_type = ret; panel_type = ret;
......
This diff is collapsed.
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