Commit dc97997a authored by Chris Wilson's avatar Chris Wilson

drm/i915: Use drm_i915_private as the native pointer for intel_uncore.c

Pass drm_i915_private to the uncore init/fini routines and their
subservients as it is their native type.

   text    data     bss     dec     hex filename
6309978 3578778  696320 10585076         a183f4 vmlinux
6309530 3578778  696320 10584628         a18234 vmlinux

a modest 400 bytes of saving, but 60 lines of code deleted!
Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: default avatarJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1462885804-26750-1-git-send-email-chris@chris-wilson.co.uk
parent ac840ae5
...@@ -4981,7 +4981,7 @@ i915_max_freq_set(void *data, u64 val) ...@@ -4981,7 +4981,7 @@ i915_max_freq_set(void *data, u64 val)
dev_priv->rps.max_freq_softlimit = val; dev_priv->rps.max_freq_softlimit = val;
intel_set_rps(dev, val); intel_set_rps(dev_priv, val);
mutex_unlock(&dev_priv->rps.hw_lock); mutex_unlock(&dev_priv->rps.hw_lock);
...@@ -5048,7 +5048,7 @@ i915_min_freq_set(void *data, u64 val) ...@@ -5048,7 +5048,7 @@ i915_min_freq_set(void *data, u64 val)
dev_priv->rps.min_freq_softlimit = val; dev_priv->rps.min_freq_softlimit = val;
intel_set_rps(dev, val); intel_set_rps(dev_priv, val);
mutex_unlock(&dev_priv->rps.hw_lock); mutex_unlock(&dev_priv->rps.hw_lock);
......
...@@ -223,8 +223,7 @@ static int i915_getparam(struct drm_device *dev, void *data, ...@@ -223,8 +223,7 @@ static int i915_getparam(struct drm_device *dev, void *data,
return -ENODEV; return -ENODEV;
break; break;
case I915_PARAM_HAS_GPU_RESET: case I915_PARAM_HAS_GPU_RESET:
value = i915.enable_hangcheck && value = i915.enable_hangcheck && intel_has_gpu_reset(dev_priv);
intel_has_gpu_reset(dev);
break; break;
case I915_PARAM_HAS_RESOURCE_STREAMER: case I915_PARAM_HAS_RESOURCE_STREAMER:
value = HAS_RESOURCE_STREAMER(dev); value = HAS_RESOURCE_STREAMER(dev);
...@@ -427,6 +426,8 @@ static const struct vga_switcheroo_client_ops i915_switcheroo_ops = { ...@@ -427,6 +426,8 @@ static const struct vga_switcheroo_client_ops i915_switcheroo_ops = {
static void i915_gem_fini(struct drm_device *dev) static void i915_gem_fini(struct drm_device *dev)
{ {
struct drm_i915_private *dev_priv = to_i915(dev);
/* /*
* Neither the BIOS, ourselves or any other kernel * Neither the BIOS, ourselves or any other kernel
* expects the system to be in execlists mode on startup, * expects the system to be in execlists mode on startup,
...@@ -447,7 +448,7 @@ static void i915_gem_fini(struct drm_device *dev) ...@@ -447,7 +448,7 @@ static void i915_gem_fini(struct drm_device *dev)
* machine in an unusable condition. * machine in an unusable condition.
*/ */
if (HAS_HW_CONTEXTS(dev)) { if (HAS_HW_CONTEXTS(dev)) {
int reset = intel_gpu_reset(dev, ALL_ENGINES); int reset = intel_gpu_reset(dev_priv, ALL_ENGINES);
WARN_ON(reset && reset != -ENODEV); WARN_ON(reset && reset != -ENODEV);
} }
...@@ -1189,7 +1190,7 @@ static int i915_driver_init_mmio(struct drm_i915_private *dev_priv) ...@@ -1189,7 +1190,7 @@ static int i915_driver_init_mmio(struct drm_i915_private *dev_priv)
if (ret < 0) if (ret < 0)
goto put_bridge; goto put_bridge;
intel_uncore_init(dev); intel_uncore_init(dev_priv);
return 0; return 0;
...@@ -1207,7 +1208,7 @@ static void i915_driver_cleanup_mmio(struct drm_i915_private *dev_priv) ...@@ -1207,7 +1208,7 @@ static void i915_driver_cleanup_mmio(struct drm_i915_private *dev_priv)
{ {
struct drm_device *dev = dev_priv->dev; struct drm_device *dev = dev_priv->dev;
intel_uncore_fini(dev); intel_uncore_fini(dev_priv);
i915_mmio_cleanup(dev); i915_mmio_cleanup(dev);
pci_dev_put(dev_priv->bridge_dev); pci_dev_put(dev_priv->bridge_dev);
} }
...@@ -1288,7 +1289,7 @@ static int i915_driver_init_hw(struct drm_i915_private *dev_priv) ...@@ -1288,7 +1289,7 @@ static int i915_driver_init_hw(struct drm_i915_private *dev_priv)
pm_qos_add_request(&dev_priv->pm_qos, PM_QOS_CPU_DMA_LATENCY, pm_qos_add_request(&dev_priv->pm_qos, PM_QOS_CPU_DMA_LATENCY,
PM_QOS_DEFAULT_VALUE); PM_QOS_DEFAULT_VALUE);
intel_uncore_sanitize(dev); intel_uncore_sanitize(dev_priv);
intel_opregion_setup(dev); intel_opregion_setup(dev);
......
...@@ -606,7 +606,7 @@ static int i915_drm_suspend(struct drm_device *dev) ...@@ -606,7 +606,7 @@ static int i915_drm_suspend(struct drm_device *dev)
intel_guc_suspend(dev); intel_guc_suspend(dev);
intel_suspend_gt_powersave(dev); intel_suspend_gt_powersave(dev_priv);
intel_display_suspend(dev); intel_display_suspend(dev);
...@@ -626,7 +626,7 @@ static int i915_drm_suspend(struct drm_device *dev) ...@@ -626,7 +626,7 @@ static int i915_drm_suspend(struct drm_device *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, opregion_target_state);
intel_uncore_forcewake_reset(dev, false); intel_uncore_forcewake_reset(dev_priv, false);
intel_opregion_fini(dev); intel_opregion_fini(dev);
intel_fbdev_set_suspend(dev, FBINFO_STATE_SUSPENDED, true); intel_fbdev_set_suspend(dev, FBINFO_STATE_SUSPENDED, true);
...@@ -866,9 +866,9 @@ static int i915_drm_resume_early(struct drm_device *dev) ...@@ -866,9 +866,9 @@ static int i915_drm_resume_early(struct drm_device *dev)
DRM_ERROR("Resume prepare failed: %d, continuing anyway\n", DRM_ERROR("Resume prepare failed: %d, continuing anyway\n",
ret); ret);
intel_uncore_early_sanitize(dev, true); intel_uncore_early_sanitize(dev_priv, true);
if (IS_BROXTON(dev)) { if (IS_BROXTON(dev_priv)) {
if (!dev_priv->suspended_to_idle) if (!dev_priv->suspended_to_idle)
gen9_sanitize_dc_state(dev_priv); gen9_sanitize_dc_state(dev_priv);
bxt_disable_dc9(dev_priv); bxt_disable_dc9(dev_priv);
...@@ -876,7 +876,7 @@ static int i915_drm_resume_early(struct drm_device *dev) ...@@ -876,7 +876,7 @@ static int i915_drm_resume_early(struct drm_device *dev)
hsw_disable_pc8(dev_priv); hsw_disable_pc8(dev_priv);
} }
intel_uncore_sanitize(dev); intel_uncore_sanitize(dev_priv);
if (IS_BROXTON(dev_priv) || if (IS_BROXTON(dev_priv) ||
!(dev_priv->suspended_to_idle && dev_priv->csr.dmc_payload)) !(dev_priv->suspended_to_idle && dev_priv->csr.dmc_payload))
...@@ -926,7 +926,7 @@ int i915_reset(struct drm_i915_private *dev_priv) ...@@ -926,7 +926,7 @@ int i915_reset(struct drm_i915_private *dev_priv)
unsigned reset_counter; unsigned reset_counter;
int ret; int ret;
intel_reset_gt_powersave(dev); intel_reset_gt_powersave(dev_priv);
mutex_lock(&dev->struct_mutex); mutex_lock(&dev->struct_mutex);
...@@ -942,7 +942,7 @@ int i915_reset(struct drm_i915_private *dev_priv) ...@@ -942,7 +942,7 @@ int i915_reset(struct drm_i915_private *dev_priv)
i915_gem_reset(dev); i915_gem_reset(dev);
ret = intel_gpu_reset(dev, ALL_ENGINES); ret = intel_gpu_reset(dev_priv, ALL_ENGINES);
/* Also reset the gpu hangman. */ /* Also reset the gpu hangman. */
if (error->stop_rings != 0) { if (error->stop_rings != 0) {
...@@ -997,7 +997,7 @@ int i915_reset(struct drm_i915_private *dev_priv) ...@@ -997,7 +997,7 @@ int i915_reset(struct drm_i915_private *dev_priv)
* of re-init after reset. * of re-init after reset.
*/ */
if (INTEL_INFO(dev)->gen > 5) if (INTEL_INFO(dev)->gen > 5)
intel_enable_gt_powersave(dev); intel_enable_gt_powersave(dev_priv);
return 0; return 0;
...@@ -1474,7 +1474,7 @@ static int intel_runtime_suspend(struct device *device) ...@@ -1474,7 +1474,7 @@ static int intel_runtime_suspend(struct device *device)
struct drm_i915_private *dev_priv = dev->dev_private; struct drm_i915_private *dev_priv = dev->dev_private;
int ret; int ret;
if (WARN_ON_ONCE(!(dev_priv->rps.enabled && intel_enable_rc6(dev)))) if (WARN_ON_ONCE(!(dev_priv->rps.enabled && intel_enable_rc6())))
return -ENODEV; return -ENODEV;
if (WARN_ON_ONCE(!HAS_RUNTIME_PM(dev))) if (WARN_ON_ONCE(!HAS_RUNTIME_PM(dev)))
...@@ -1513,7 +1513,7 @@ static int intel_runtime_suspend(struct device *device) ...@@ -1513,7 +1513,7 @@ static int intel_runtime_suspend(struct device *device)
intel_guc_suspend(dev); intel_guc_suspend(dev);
intel_suspend_gt_powersave(dev); intel_suspend_gt_powersave(dev_priv);
intel_runtime_pm_disable_interrupts(dev_priv); intel_runtime_pm_disable_interrupts(dev_priv);
ret = 0; ret = 0;
...@@ -1535,7 +1535,7 @@ static int intel_runtime_suspend(struct device *device) ...@@ -1535,7 +1535,7 @@ static int intel_runtime_suspend(struct device *device)
return ret; return ret;
} }
intel_uncore_forcewake_reset(dev, false); intel_uncore_forcewake_reset(dev_priv, false);
enable_rpm_wakeref_asserts(dev_priv); enable_rpm_wakeref_asserts(dev_priv);
WARN_ON_ONCE(atomic_read(&dev_priv->pm.wakeref_count)); WARN_ON_ONCE(atomic_read(&dev_priv->pm.wakeref_count));
...@@ -1616,7 +1616,7 @@ static int intel_runtime_resume(struct device *device) ...@@ -1616,7 +1616,7 @@ static int intel_runtime_resume(struct device *device)
* we can do is to hope that things will still work (and disable RPM). * we can do is to hope that things will still work (and disable RPM).
*/ */
i915_gem_init_swizzling(dev); i915_gem_init_swizzling(dev);
gen6_update_ring_freq(dev); gen6_update_ring_freq(dev_priv);
intel_runtime_pm_enable_interrupts(dev_priv); intel_runtime_pm_enable_interrupts(dev_priv);
...@@ -1628,7 +1628,7 @@ static int intel_runtime_resume(struct device *device) ...@@ -1628,7 +1628,7 @@ static int intel_runtime_resume(struct device *device)
if (!IS_VALLEYVIEW(dev_priv) && !IS_CHERRYVIEW(dev_priv)) if (!IS_VALLEYVIEW(dev_priv) && !IS_CHERRYVIEW(dev_priv))
intel_hpd_init(dev_priv); intel_hpd_init(dev_priv);
intel_enable_gt_powersave(dev); intel_enable_gt_powersave(dev_priv);
enable_rpm_wakeref_asserts(dev_priv); enable_rpm_wakeref_asserts(dev_priv);
......
...@@ -2777,8 +2777,8 @@ extern void i915_driver_postclose(struct drm_device *dev, ...@@ -2777,8 +2777,8 @@ extern void i915_driver_postclose(struct drm_device *dev,
extern long i915_compat_ioctl(struct file *filp, unsigned int cmd, extern long i915_compat_ioctl(struct file *filp, unsigned int cmd,
unsigned long arg); unsigned long arg);
#endif #endif
extern int intel_gpu_reset(struct drm_device *dev, u32 engine_mask); extern int intel_gpu_reset(struct drm_i915_private *dev_priv, u32 engine_mask);
extern bool intel_has_gpu_reset(struct drm_device *dev); extern bool intel_has_gpu_reset(struct drm_i915_private *dev_priv);
extern int i915_reset(struct drm_i915_private *dev_priv); extern int i915_reset(struct drm_i915_private *dev_priv);
extern int intel_guc_reset(struct drm_i915_private *dev_priv); extern int intel_guc_reset(struct drm_i915_private *dev_priv);
extern void intel_engine_init_hangcheck(struct intel_engine_cs *engine); extern void intel_engine_init_hangcheck(struct intel_engine_cs *engine);
...@@ -2807,14 +2807,15 @@ extern void intel_irq_init(struct drm_i915_private *dev_priv); ...@@ -2807,14 +2807,15 @@ extern void intel_irq_init(struct drm_i915_private *dev_priv);
int intel_irq_install(struct drm_i915_private *dev_priv); int intel_irq_install(struct drm_i915_private *dev_priv);
void intel_irq_uninstall(struct drm_i915_private *dev_priv); void intel_irq_uninstall(struct drm_i915_private *dev_priv);
extern void intel_uncore_sanitize(struct drm_device *dev); extern void intel_uncore_sanitize(struct drm_i915_private *dev_priv);
extern void intel_uncore_early_sanitize(struct drm_device *dev, extern void intel_uncore_early_sanitize(struct drm_i915_private *dev_priv,
bool restore_forcewake); bool restore_forcewake);
extern void intel_uncore_init(struct drm_device *dev); extern void intel_uncore_init(struct drm_i915_private *dev_priv);
extern bool intel_uncore_unclaimed_mmio(struct drm_i915_private *dev_priv); extern bool intel_uncore_unclaimed_mmio(struct drm_i915_private *dev_priv);
extern bool intel_uncore_arm_unclaimed_mmio_detection(struct drm_i915_private *dev_priv); extern bool intel_uncore_arm_unclaimed_mmio_detection(struct drm_i915_private *dev_priv);
extern void intel_uncore_fini(struct drm_device *dev); extern void intel_uncore_fini(struct drm_i915_private *dev_priv);
extern void intel_uncore_forcewake_reset(struct drm_device *dev, bool restore); extern void intel_uncore_forcewake_reset(struct drm_i915_private *dev_priv,
bool restore);
const char *intel_uncore_forcewake_domain_to_str(const enum forcewake_domain_id id); const char *intel_uncore_forcewake_domain_to_str(const enum forcewake_domain_id id);
void intel_uncore_forcewake_get(struct drm_i915_private *dev_priv, void intel_uncore_forcewake_get(struct drm_i915_private *dev_priv,
enum forcewake_domains domains); enum forcewake_domains domains);
...@@ -3547,11 +3548,10 @@ extern void i915_redisable_vga(struct drm_device *dev); ...@@ -3547,11 +3548,10 @@ extern void i915_redisable_vga(struct drm_device *dev);
extern void i915_redisable_vga_power_on(struct drm_device *dev); extern void i915_redisable_vga_power_on(struct drm_device *dev);
extern bool ironlake_set_drps(struct drm_i915_private *dev_priv, u8 val); extern bool ironlake_set_drps(struct drm_i915_private *dev_priv, u8 val);
extern void intel_init_pch_refclk(struct drm_device *dev); extern void intel_init_pch_refclk(struct drm_device *dev);
extern void intel_set_rps(struct drm_device *dev, u8 val); extern void intel_set_rps(struct drm_i915_private *dev_priv, u8 val);
extern void intel_set_memory_cxsr(struct drm_i915_private *dev_priv, extern void intel_set_memory_cxsr(struct drm_i915_private *dev_priv,
bool enable); bool enable);
extern void intel_detect_pch(struct drm_device *dev); extern void intel_detect_pch(struct drm_device *dev);
extern int intel_enable_rc6(const struct drm_device *dev);
extern bool i915_semaphore_is_enabled(struct drm_i915_private *dev_priv); extern bool i915_semaphore_is_enabled(struct drm_i915_private *dev_priv);
int i915_reg_read_ioctl(struct drm_device *dev, void *data, int i915_reg_read_ioctl(struct drm_device *dev, void *data,
......
...@@ -2279,12 +2279,11 @@ static void undo_idling(struct drm_i915_private *dev_priv, bool interruptible) ...@@ -2279,12 +2279,11 @@ static void undo_idling(struct drm_i915_private *dev_priv, bool interruptible)
dev_priv->mm.interruptible = interruptible; dev_priv->mm.interruptible = interruptible;
} }
void i915_check_and_clear_faults(struct drm_device *dev) void i915_check_and_clear_faults(struct drm_i915_private *dev_priv)
{ {
struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_engine_cs *engine; struct intel_engine_cs *engine;
if (INTEL_INFO(dev)->gen < 6) if (INTEL_INFO(dev_priv)->gen < 6)
return; return;
for_each_engine(engine, dev_priv) { for_each_engine(engine, dev_priv) {
...@@ -2328,7 +2327,7 @@ void i915_gem_suspend_gtt_mappings(struct drm_device *dev) ...@@ -2328,7 +2327,7 @@ void i915_gem_suspend_gtt_mappings(struct drm_device *dev)
if (INTEL_INFO(dev)->gen < 6) if (INTEL_INFO(dev)->gen < 6)
return; return;
i915_check_and_clear_faults(dev); i915_check_and_clear_faults(dev_priv);
ggtt->base.clear_range(&ggtt->base, ggtt->base.start, ggtt->base.total, ggtt->base.clear_range(&ggtt->base, ggtt->base.start, ggtt->base.total,
true); true);
...@@ -3248,7 +3247,7 @@ void i915_gem_restore_gtt_mappings(struct drm_device *dev) ...@@ -3248,7 +3247,7 @@ void i915_gem_restore_gtt_mappings(struct drm_device *dev)
struct i915_vma *vma; struct i915_vma *vma;
bool flush; bool flush;
i915_check_and_clear_faults(dev); i915_check_and_clear_faults(dev_priv);
/* First fill our portion of the GTT with scratch pages */ /* First fill our portion of the GTT with scratch pages */
ggtt->base.clear_range(&ggtt->base, ggtt->base.start, ggtt->base.total, ggtt->base.clear_range(&ggtt->base, ggtt->base.start, ggtt->base.total,
......
...@@ -536,7 +536,7 @@ static inline void i915_ppgtt_put(struct i915_hw_ppgtt *ppgtt) ...@@ -536,7 +536,7 @@ static inline void i915_ppgtt_put(struct i915_hw_ppgtt *ppgtt)
kref_put(&ppgtt->ref, i915_ppgtt_release); kref_put(&ppgtt->ref, i915_ppgtt_release);
} }
void i915_check_and_clear_faults(struct drm_device *dev); void i915_check_and_clear_faults(struct drm_i915_private *dev_priv);
void i915_gem_suspend_gtt_mappings(struct drm_device *dev); void i915_gem_suspend_gtt_mappings(struct drm_device *dev);
void i915_gem_restore_gtt_mappings(struct drm_device *dev); void i915_gem_restore_gtt_mappings(struct drm_device *dev);
......
...@@ -158,8 +158,7 @@ static int host2guc_sample_forcewake(struct intel_guc *guc, ...@@ -158,8 +158,7 @@ static int host2guc_sample_forcewake(struct intel_guc *guc,
data[0] = HOST2GUC_ACTION_SAMPLE_FORCEWAKE; data[0] = HOST2GUC_ACTION_SAMPLE_FORCEWAKE;
/* WaRsDisableCoarsePowerGating:skl,bxt */ /* WaRsDisableCoarsePowerGating:skl,bxt */
if (!intel_enable_rc6(dev) || if (!intel_enable_rc6() || NEEDS_WaRsDisableCoarsePowerGating(dev))
NEEDS_WaRsDisableCoarsePowerGating(dev))
data[1] = 0; data[1] = 0;
else else
/* bit 0 and 1 are for Render and Media domain separately */ /* bit 0 and 1 are for Render and Media domain separately */
......
...@@ -336,9 +336,8 @@ void gen6_disable_pm_irq(struct drm_i915_private *dev_priv, uint32_t mask) ...@@ -336,9 +336,8 @@ void gen6_disable_pm_irq(struct drm_i915_private *dev_priv, uint32_t mask)
__gen6_disable_pm_irq(dev_priv, mask); __gen6_disable_pm_irq(dev_priv, mask);
} }
void gen6_reset_rps_interrupts(struct drm_device *dev) void gen6_reset_rps_interrupts(struct drm_i915_private *dev_priv)
{ {
struct drm_i915_private *dev_priv = dev->dev_private;
i915_reg_t reg = gen6_pm_iir(dev_priv); i915_reg_t reg = gen6_pm_iir(dev_priv);
spin_lock_irq(&dev_priv->irq_lock); spin_lock_irq(&dev_priv->irq_lock);
...@@ -1168,7 +1167,7 @@ static void gen6_pm_rps_work(struct work_struct *work) ...@@ -1168,7 +1167,7 @@ static void gen6_pm_rps_work(struct work_struct *work)
new_delay += adj; new_delay += adj;
new_delay = clamp_t(int, new_delay, min, max); new_delay = clamp_t(int, new_delay, min, max);
intel_set_rps(dev_priv->dev, new_delay); intel_set_rps(dev_priv, new_delay);
mutex_unlock(&dev_priv->rps.hw_lock); mutex_unlock(&dev_priv->rps.hw_lock);
out: out:
......
...@@ -43,7 +43,7 @@ static u32 calc_residency(struct drm_device *dev, ...@@ -43,7 +43,7 @@ static u32 calc_residency(struct drm_device *dev,
u64 units = 128ULL, div = 100000ULL; u64 units = 128ULL, div = 100000ULL;
u32 ret; u32 ret;
if (!intel_enable_rc6(dev)) if (!intel_enable_rc6())
return 0; return 0;
intel_runtime_pm_get(dev_priv); intel_runtime_pm_get(dev_priv);
...@@ -70,8 +70,7 @@ static u32 calc_residency(struct drm_device *dev, ...@@ -70,8 +70,7 @@ static u32 calc_residency(struct drm_device *dev,
static ssize_t static ssize_t
show_rc6_mask(struct device *kdev, struct device_attribute *attr, char *buf) show_rc6_mask(struct device *kdev, struct device_attribute *attr, char *buf)
{ {
struct drm_minor *dminor = dev_to_drm_minor(kdev); return snprintf(buf, PAGE_SIZE, "%x\n", intel_enable_rc6());
return snprintf(buf, PAGE_SIZE, "%x\n", intel_enable_rc6(dminor->dev));
} }
static ssize_t static ssize_t
...@@ -397,7 +396,7 @@ static ssize_t gt_max_freq_mhz_store(struct device *kdev, ...@@ -397,7 +396,7 @@ static ssize_t gt_max_freq_mhz_store(struct device *kdev,
/* We still need *_set_rps to process the new max_delay and /* We still need *_set_rps to process the new max_delay and
* update the interrupt limits and PMINTRMSK even though * update the interrupt limits and PMINTRMSK even though
* frequency request may be unchanged. */ * frequency request may be unchanged. */
intel_set_rps(dev, val); intel_set_rps(dev_priv, val);
mutex_unlock(&dev_priv->rps.hw_lock); mutex_unlock(&dev_priv->rps.hw_lock);
...@@ -461,7 +460,7 @@ static ssize_t gt_min_freq_mhz_store(struct device *kdev, ...@@ -461,7 +460,7 @@ static ssize_t gt_min_freq_mhz_store(struct device *kdev,
/* We still need *_set_rps to process the new min_delay and /* We still need *_set_rps to process the new min_delay and
* update the interrupt limits and PMINTRMSK even though * update the interrupt limits and PMINTRMSK even though
* frequency request may be unchanged. */ * frequency request may be unchanged. */
intel_set_rps(dev, val); intel_set_rps(dev_priv, val);
mutex_unlock(&dev_priv->rps.hw_lock); mutex_unlock(&dev_priv->rps.hw_lock);
......
...@@ -58,15 +58,14 @@ ...@@ -58,15 +58,14 @@
* This function is called at the initialization stage, to detect whether * This function is called at the initialization stage, to detect whether
* running on a vGPU. * running on a vGPU.
*/ */
void i915_check_vgpu(struct drm_device *dev) void i915_check_vgpu(struct drm_i915_private *dev_priv)
{ {
struct drm_i915_private *dev_priv = to_i915(dev);
uint64_t magic; uint64_t magic;
uint32_t version; uint32_t version;
BUILD_BUG_ON(sizeof(struct vgt_if) != VGT_PVINFO_SIZE); BUILD_BUG_ON(sizeof(struct vgt_if) != VGT_PVINFO_SIZE);
if (!IS_HASWELL(dev)) if (!IS_HASWELL(dev_priv))
return; return;
magic = __raw_i915_read64(dev_priv, vgtif_reg(magic)); magic = __raw_i915_read64(dev_priv, vgtif_reg(magic));
...@@ -136,7 +135,7 @@ static int vgt_balloon_space(struct drm_mm *mm, ...@@ -136,7 +135,7 @@ static int vgt_balloon_space(struct drm_mm *mm,
/** /**
* intel_vgt_balloon - balloon out reserved graphics address trunks * intel_vgt_balloon - balloon out reserved graphics address trunks
* @dev: drm device * @dev_priv: i915 device
* *
* This function is called at the initialization stage, to balloon out the * This function is called at the initialization stage, to balloon out the
* graphic address space allocated to other vGPUs, by marking these spaces as * graphic address space allocated to other vGPUs, by marking these spaces as
......
...@@ -110,7 +110,7 @@ struct vgt_if { ...@@ -110,7 +110,7 @@ struct vgt_if {
#define VGT_DRV_DISPLAY_NOT_READY 0 #define VGT_DRV_DISPLAY_NOT_READY 0
#define VGT_DRV_DISPLAY_READY 1 /* ready for display switch */ #define VGT_DRV_DISPLAY_READY 1 /* ready for display switch */
extern void i915_check_vgpu(struct drm_device *dev); extern void i915_check_vgpu(struct drm_i915_private *dev_priv);
extern int intel_vgt_balloon(struct drm_device *dev); extern int intel_vgt_balloon(struct drm_device *dev);
extern void intel_vgt_deballoon(void); extern void intel_vgt_deballoon(void);
......
...@@ -15283,7 +15283,7 @@ void intel_modeset_init_hw(struct drm_device *dev) ...@@ -15283,7 +15283,7 @@ void intel_modeset_init_hw(struct drm_device *dev)
dev_priv->atomic_cdclk_freq = dev_priv->cdclk_freq; dev_priv->atomic_cdclk_freq = dev_priv->cdclk_freq;
intel_init_clock_gating(dev); intel_init_clock_gating(dev);
intel_enable_gt_powersave(dev); intel_enable_gt_powersave(dev_priv);
} }
/* /*
...@@ -16011,11 +16011,12 @@ void intel_display_resume(struct drm_device *dev) ...@@ -16011,11 +16011,12 @@ void intel_display_resume(struct drm_device *dev)
void intel_modeset_gem_init(struct drm_device *dev) void intel_modeset_gem_init(struct drm_device *dev)
{ {
struct drm_i915_private *dev_priv = to_i915(dev);
struct drm_crtc *c; struct drm_crtc *c;
struct drm_i915_gem_object *obj; struct drm_i915_gem_object *obj;
int ret; int ret;
intel_init_gt_powersave(dev); intel_init_gt_powersave(dev_priv);
intel_modeset_init_hw(dev); intel_modeset_init_hw(dev);
...@@ -16062,7 +16063,7 @@ void intel_modeset_cleanup(struct drm_device *dev) ...@@ -16062,7 +16063,7 @@ void intel_modeset_cleanup(struct drm_device *dev)
struct drm_i915_private *dev_priv = dev->dev_private; struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_connector *connector; struct intel_connector *connector;
intel_disable_gt_powersave(dev); intel_disable_gt_powersave(dev_priv);
intel_backlight_unregister(dev); intel_backlight_unregister(dev);
...@@ -16094,7 +16095,7 @@ void intel_modeset_cleanup(struct drm_device *dev) ...@@ -16094,7 +16095,7 @@ void intel_modeset_cleanup(struct drm_device *dev)
intel_cleanup_overlay(dev); intel_cleanup_overlay(dev);
intel_cleanup_gt_powersave(dev); intel_cleanup_gt_powersave(dev_priv);
intel_teardown_gmbus(dev); intel_teardown_gmbus(dev);
} }
......
...@@ -1032,7 +1032,7 @@ void gen5_enable_gt_irq(struct drm_i915_private *dev_priv, uint32_t mask); ...@@ -1032,7 +1032,7 @@ void gen5_enable_gt_irq(struct drm_i915_private *dev_priv, uint32_t mask);
void gen5_disable_gt_irq(struct drm_i915_private *dev_priv, uint32_t mask); void gen5_disable_gt_irq(struct drm_i915_private *dev_priv, uint32_t mask);
void gen6_enable_pm_irq(struct drm_i915_private *dev_priv, uint32_t mask); void gen6_enable_pm_irq(struct drm_i915_private *dev_priv, uint32_t mask);
void gen6_disable_pm_irq(struct drm_i915_private *dev_priv, uint32_t mask); void gen6_disable_pm_irq(struct drm_i915_private *dev_priv, uint32_t mask);
void gen6_reset_rps_interrupts(struct drm_device *dev); void gen6_reset_rps_interrupts(struct drm_i915_private *dev_priv);
void gen6_enable_rps_interrupts(struct drm_i915_private *dev_priv); void gen6_enable_rps_interrupts(struct drm_i915_private *dev_priv);
void gen6_disable_rps_interrupts(struct drm_i915_private *dev_priv); void gen6_disable_rps_interrupts(struct drm_i915_private *dev_priv);
u32 gen6_sanitize_rps_pm_mask(struct drm_i915_private *dev_priv, u32 mask); u32 gen6_sanitize_rps_pm_mask(struct drm_i915_private *dev_priv, u32 mask);
...@@ -1612,13 +1612,13 @@ void intel_init_clock_gating_hooks(struct drm_i915_private *dev_priv); ...@@ -1612,13 +1612,13 @@ void intel_init_clock_gating_hooks(struct drm_i915_private *dev_priv);
void intel_pm_setup(struct drm_device *dev); void intel_pm_setup(struct drm_device *dev);
void intel_gpu_ips_init(struct drm_i915_private *dev_priv); void intel_gpu_ips_init(struct drm_i915_private *dev_priv);
void intel_gpu_ips_teardown(void); void intel_gpu_ips_teardown(void);
void intel_init_gt_powersave(struct drm_device *dev); void intel_init_gt_powersave(struct drm_i915_private *dev_priv);
void intel_cleanup_gt_powersave(struct drm_device *dev); void intel_cleanup_gt_powersave(struct drm_i915_private *dev_priv);
void intel_enable_gt_powersave(struct drm_device *dev); void intel_enable_gt_powersave(struct drm_i915_private *dev_priv);
void intel_disable_gt_powersave(struct drm_device *dev); void intel_disable_gt_powersave(struct drm_i915_private *dev_priv);
void intel_suspend_gt_powersave(struct drm_device *dev); void intel_suspend_gt_powersave(struct drm_i915_private *dev_priv);
void intel_reset_gt_powersave(struct drm_device *dev); void intel_reset_gt_powersave(struct drm_i915_private *dev_priv);
void gen6_update_ring_freq(struct drm_device *dev); void gen6_update_ring_freq(struct drm_i915_private *dev_priv);
void gen6_rps_busy(struct drm_i915_private *dev_priv); void gen6_rps_busy(struct drm_i915_private *dev_priv);
void gen6_rps_reset_ei(struct drm_i915_private *dev_priv); void gen6_rps_reset_ei(struct drm_i915_private *dev_priv);
void gen6_rps_idle(struct drm_i915_private *dev_priv); void gen6_rps_idle(struct drm_i915_private *dev_priv);
...@@ -1633,7 +1633,11 @@ void skl_ddb_get_hw_state(struct drm_i915_private *dev_priv, ...@@ -1633,7 +1633,11 @@ void skl_ddb_get_hw_state(struct drm_i915_private *dev_priv,
struct skl_ddb_allocation *ddb /* out */); struct skl_ddb_allocation *ddb /* out */);
uint32_t ilk_pipe_pixel_rate(const struct intel_crtc_state *pipe_config); uint32_t ilk_pipe_pixel_rate(const struct intel_crtc_state *pipe_config);
bool ilk_disable_lp_wm(struct drm_device *dev); bool ilk_disable_lp_wm(struct drm_device *dev);
int sanitize_rc6_option(const struct drm_device *dev, int enable_rc6); int sanitize_rc6_option(struct drm_i915_private *dev_priv, int enable_rc6);
static inline int intel_enable_rc6(void)
{
return i915.enable_rc6;
}
/* intel_sdvo.c */ /* intel_sdvo.c */
bool intel_sdvo_init(struct drm_device *dev, bool intel_sdvo_init(struct drm_device *dev,
......
This diff is collapsed.
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