Re: [PATCH 1/6] drm/i915: Rename the magic polymorphic macro __I915__

Dave Gordon
2016-04-20T14:27:58Z

On 15/04/16 18:46, Chris Wilson wrote:
> To open up the future of using a generic to_i915() convenience macro,
> rename the existing __I915__ superconvenience macro.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/i915_drv.h | 22 +++++++++++-----------
> 1 file changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 78231cc5f40b..6569ebfe8cf1 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -2004,14 +2004,14 @@ struct drm_i915_private {
> */
> };
>
> -static inline struct drm_i915_private *to_i915(const struct drm_device *dev)
> +static inline struct drm_i915_private *__to_i915(const struct drm_device *dev)
> {
> return dev->dev_private;
> }

Could we call this drm_to_i915() ? I like the pattern of XXX_to_i915()
for XXX in { dev, drm, guc, obj, req, ... }

.Dave.

> -static inline struct drm_i915_private *dev_to_i915(struct device *dev)
> +static inline struct drm_i915_private *dev_to_i915(const struct device *dev)
> {
> - return to_i915(dev_get_drvdata(dev));
> + return __to_i915(dev_get_drvdata(dev));
> }
>
> static inline struct drm_i915_private *guc_to_i915(struct intel_guc *guc)
> @@ -2492,20 +2492,20 @@ struct drm_i915_cmd_table {
> };
>
> /* Note that the (struct drm_i915_private *) cast is just to shut up gcc. */
> -#define __I915__(p) ({ \
> +#define to_i915(p) ({ \
> struct drm_i915_private *__p; \
> if (__builtin_types_compatible_p(typeof(*p), struct drm_i915_private)) \
> __p = (struct drm_i915_private *)p; \
> else if (__builtin_types_compatible_p(typeof(*p), struct drm_device)) \
> - __p = to_i915((struct drm_device *)p); \
> + __p = __to_i915((struct drm_device *)p); \
> else \
> BUILD_BUG(); \
> __p; \
> })
> -#define INTEL_INFO(p) (&__I915__(p)->info)
> +#define INTEL_INFO(p) (&to_i915(p)->info)
> #define INTEL_GEN(p) (INTEL_INFO(p)->gen)
> #define INTEL_DEVID(p) (INTEL_INFO(p)->device_id)
> -#define INTEL_REVID(p) (__I915__(p)->dev->pdev->revision)
> +#define INTEL_REVID(p) (to_i915(p)->dev->pdev->revision)
>
> #define REVID_FOREVER 0xff
> /*
> @@ -2630,7 +2630,7 @@ struct drm_i915_cmd_table {
> #define HAS_VEBOX(dev) (INTEL_INFO(dev)->ring_mask & VEBOX_RING)
> #define HAS_LLC(dev) (INTEL_INFO(dev)->has_llc)
> #define HAS_SNOOP(dev) (INTEL_INFO(dev)->has_snoop)
> -#define HAS_EDRAM(dev) (__I915__(dev)->edram_cap & EDRAM_ENABLED)
> +#define HAS_EDRAM(dev) (to_i915(dev)->edram_cap & EDRAM_ENABLED)
> #define HAS_WT(dev) ((IS_HASWELL(dev) || IS_BROADWELL(dev)) && \
> HAS_EDRAM(dev))
> #define I915_NEED_GFX_HWS(dev) (INTEL_INFO(dev)->need_gfx_hws)
> @@ -2714,11 +2714,11 @@ struct drm_i915_cmd_table {
> #define INTEL_PCH_P3X_DEVICE_ID_TYPE 0x7000
> #define INTEL_PCH_QEMU_DEVICE_ID_TYPE 0x2900 /* qemu q35 has 2918 */
>
> -#define INTEL_PCH_TYPE(dev) (__I915__(dev)->pch_type)
> +#define INTEL_PCH_TYPE(dev) (to_i915(dev)->pch_type)
> #define HAS_PCH_SPT(dev) (INTEL_PCH_TYPE(dev) == PCH_SPT)
> #define HAS_PCH_LPT(dev) (INTEL_PCH_TYPE(dev) == PCH_LPT)
> -#define HAS_PCH_LPT_LP(dev) (__I915__(dev)->pch_id == INTEL_PCH_LPT_LP_DEVICE_ID_TYPE)
> -#define HAS_PCH_LPT_H(dev) (__I915__(dev)->pch_id == INTEL_PCH_LPT_DEVICE_ID_TYPE)
> +#define HAS_PCH_LPT_LP(dev) (to_i915(dev)->pch_id == INTEL_PCH_LPT_LP_DEVICE_ID_TYPE)
> +#define HAS_PCH_LPT_H(dev) (to_i915(dev)->pch_id == INTEL_PCH_LPT_DEVICE_ID_TYPE)
> #define HAS_PCH_CPT(dev) (INTEL_PCH_TYPE(dev) == PCH_CPT)
> #define HAS_PCH_IBX(dev) (INTEL_PCH_TYPE(dev) == PCH_IBX)
> #define HAS_PCH_NOP(dev) (INTEL_PCH_TYPE(dev) == PCH_NOP)
>