Re: [Intel-gfx] [PATCH 3/5] drm/i915: sysfs spring cleaning

2016-08-09 Thread David Weinehall
On Mon, Aug 08, 2016 at 04:23:53PM +0100, Chris Wilson wrote:
> On Mon, Aug 08, 2016 at 04:19:59PM +0300, David Weinehall wrote:
> > -static inline struct drm_minor *kdev_to_drm_minor(struct device *kdev)
> > +static inline struct drm_i915_private *kdev_to_i915_dm(struct device *kdev)
> 
> Grumble.
> 
> What is i915_dm?
> 
> minor_kdev_to_i915()
> kdev_minor_to_i915()
> 
> The latter I guess.

The latter does indeed sound better. I'll respin the patch.
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 3/5] drm/i915: sysfs spring cleaning

2016-08-08 Thread Chris Wilson
On Mon, Aug 08, 2016 at 04:19:59PM +0300, David Weinehall wrote:
> -static inline struct drm_minor *kdev_to_drm_minor(struct device *kdev)
> +static inline struct drm_i915_private *kdev_to_i915_dm(struct device *kdev)

Grumble.

What is i915_dm?

minor_kdev_to_i915()
kdev_minor_to_i915()

The latter I guess.

Otherwise, looks good.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 3/5] drm/i915: sysfs spring cleaning

2016-08-08 Thread David Weinehall
Pass dev_priv instead of dev to all feature macros (IS_, HAS_,
INTEL_, etc.). This has the side effect that a bunch of functions
now get dev_priv passed instead of dev.

The main use of kdev_to_drm_minor() was as an intermediate step
when extracting dev_priv, so make that helper do that bit too,
and rename it kdev_to_i915_dm() (to differentiate it from
kdev_to_i915(), which goes about this in a different, non-compatible,
way).

All calls to INTEL_INFO()->gen have been replaced with
INTEL_GEN().

Signed-off-by: David Weinehall 
---
 drivers/gpu/drm/i915/i915_drv.c   |   4 +-
 drivers/gpu/drm/i915/i915_drv.h   |   4 +-
 drivers/gpu/drm/i915/i915_sysfs.c | 148 +-
 3 files changed, 69 insertions(+), 87 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index e324cd0dbfa9..5e9325e4b1e5 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -1131,7 +1131,7 @@ static void i915_driver_register(struct drm_i915_private 
*dev_priv)
/* Reveal our presence to userspace */
if (drm_dev_register(dev, 0) == 0) {
i915_debugfs_register(dev_priv);
-   i915_setup_sysfs(dev);
+   i915_setup_sysfs(dev_priv);
} else
DRM_ERROR("Failed to register driver for userspace access!\n");
 
@@ -1168,7 +1168,7 @@ static void i915_driver_unregister(struct 
drm_i915_private *dev_priv)
acpi_video_unregister();
intel_opregion_unregister(dev_priv);
 
-   i915_teardown_sysfs(_priv->drm);
+   i915_teardown_sysfs(dev_priv);
i915_debugfs_unregister(dev_priv);
drm_dev_unregister(_priv->drm);
 
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 4975de75e2a1..751f2b4d7b4a 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -3531,8 +3531,8 @@ extern int i915_save_state(struct drm_device *dev);
 extern int i915_restore_state(struct drm_device *dev);
 
 /* i915_sysfs.c */
-void i915_setup_sysfs(struct drm_device *dev_priv);
-void i915_teardown_sysfs(struct drm_device *dev_priv);
+void i915_setup_sysfs(struct drm_i915_private *dev_priv);
+void i915_teardown_sysfs(struct drm_i915_private *dev_priv);
 
 /* intel_i2c.c */
 extern int intel_setup_gmbus(struct drm_device *dev);
diff --git a/drivers/gpu/drm/i915/i915_sysfs.c 
b/drivers/gpu/drm/i915/i915_sysfs.c
index 05cb95bf2f4b..87368202f3c1 100644
--- a/drivers/gpu/drm/i915/i915_sysfs.c
+++ b/drivers/gpu/drm/i915/i915_sysfs.c
@@ -32,16 +32,16 @@
 #include "intel_drv.h"
 #include "i915_drv.h"
 
-static inline struct drm_minor *kdev_to_drm_minor(struct device *kdev)
+static inline struct drm_i915_private *kdev_to_i915_dm(struct device *kdev)
 {
-   return dev_get_drvdata(kdev);
+   struct drm_minor *minor = dev_get_drvdata(kdev);
+   return to_i915(minor->dev);
 }
 
 #ifdef CONFIG_PM
-static u32 calc_residency(struct drm_device *dev,
+static u32 calc_residency(struct drm_i915_private *dev_priv,
  i915_reg_t reg)
 {
-   struct drm_i915_private *dev_priv = to_i915(dev);
u64 raw_time; /* 32b value may overflow during fixed point math */
u64 units = 128ULL, div = 10ULL;
u32 ret;
@@ -52,13 +52,13 @@ static u32 calc_residency(struct drm_device *dev,
intel_runtime_pm_get(dev_priv);
 
/* On VLV and CHV, residency time is in CZ units rather than 1.28us */
-   if (IS_VALLEYVIEW(dev) || IS_CHERRYVIEW(dev)) {
+   if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) {
units = 1;
div = dev_priv->czclk_freq;
 
if (I915_READ(VLV_COUNTER_CONTROL) & VLV_COUNT_RANGE_HIGH)
units <<= 8;
-   } else if (IS_BROXTON(dev)) {
+   } else if (IS_BROXTON(dev_priv)) {
units = 1;
div = 1200; /* 833.33ns */
}
@@ -79,32 +79,32 @@ show_rc6_mask(struct device *kdev, struct device_attribute 
*attr, char *buf)
 static ssize_t
 show_rc6_ms(struct device *kdev, struct device_attribute *attr, char *buf)
 {
-   struct drm_minor *dminor = dev_get_drvdata(kdev);
-   u32 rc6_residency = calc_residency(dminor->dev, GEN6_GT_GFX_RC6);
+   struct drm_i915_private *dev_priv = kdev_to_i915_dm(kdev);
+   u32 rc6_residency = calc_residency(dev_priv, GEN6_GT_GFX_RC6);
return snprintf(buf, PAGE_SIZE, "%u\n", rc6_residency);
 }
 
 static ssize_t
 show_rc6p_ms(struct device *kdev, struct device_attribute *attr, char *buf)
 {
-   struct drm_minor *dminor = kdev_to_drm_minor(kdev);
-   u32 rc6p_residency = calc_residency(dminor->dev, GEN6_GT_GFX_RC6p);
+   struct drm_i915_private *dev_priv = kdev_to_i915_dm(kdev);
+   u32 rc6p_residency = calc_residency(dev_priv, GEN6_GT_GFX_RC6p);
return snprintf(buf, PAGE_SIZE, "%u\n", rc6p_residency);
 }
 
 static ssize_t