All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/10] drm: Add drm_plane_mask()
@ 2018-06-26 19:47 Ville Syrjala
  2018-06-26 19:47 ` [PATCH 02/10] drm: Use drm_crtc_mask() Ville Syrjala
                   ` (12 more replies)
  0 siblings, 13 replies; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Add drm_plane_mask() which returns the 1<<index for the plane.
We already have an identical drm_crtc_mask() for crtcs.

Mostly performed with coccinelle:
@@
@@
- (1<<drm_plane_index(
+ drm_plane_mask(
  ...)
-  )

@@
@@
- 1<<drm_plane_index(
+ drm_plane_mask(
  ...)

@@
@@
- BIT(drm_plane_index(
+ drm_plane_mask(
  ...)
- )

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/drm_atomic.c            |  4 ++--
 drivers/gpu/drm/drm_framebuffer.c       |  2 +-
 drivers/gpu/drm/drm_simple_kms_helper.c |  2 +-
 include/drm/drm_plane.h                 | 14 ++++++++++++--
 4 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index 178842380f75..684c9d3a1d6c 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -1581,7 +1581,7 @@ drm_atomic_set_crtc_for_plane(struct drm_plane_state *plane_state,
 		if (WARN_ON(IS_ERR(crtc_state)))
 			return PTR_ERR(crtc_state);
 
-		crtc_state->plane_mask &= ~(1 << drm_plane_index(plane));
+		crtc_state->plane_mask &= ~drm_plane_mask(plane);
 	}
 
 	plane_state->crtc = crtc;
@@ -1591,7 +1591,7 @@ drm_atomic_set_crtc_for_plane(struct drm_plane_state *plane_state,
 						       crtc);
 		if (IS_ERR(crtc_state))
 			return PTR_ERR(crtc_state);
-		crtc_state->plane_mask |= (1 << drm_plane_index(plane));
+		crtc_state->plane_mask |= drm_plane_mask(plane);
 	}
 
 	if (crtc)
diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c
index ed90974a452a..781af1d42d76 100644
--- a/drivers/gpu/drm/drm_framebuffer.c
+++ b/drivers/gpu/drm/drm_framebuffer.c
@@ -847,7 +847,7 @@ static int atomic_remove_fb(struct drm_framebuffer *fb)
 		if (ret)
 			goto unlock;
 
-		plane_mask |= BIT(drm_plane_index(plane));
+		plane_mask |= drm_plane_mask(plane);
 	}
 
 	/* This list is only filled when disable_crtcs is set. */
diff --git a/drivers/gpu/drm/drm_simple_kms_helper.c b/drivers/gpu/drm/drm_simple_kms_helper.c
index 7a00455ca568..9d87961da1db 100644
--- a/drivers/gpu/drm/drm_simple_kms_helper.c
+++ b/drivers/gpu/drm/drm_simple_kms_helper.c
@@ -52,7 +52,7 @@ static int drm_simple_kms_crtc_check(struct drm_crtc *crtc,
 				     struct drm_crtc_state *state)
 {
 	bool has_primary = state->plane_mask &
-			   BIT(drm_plane_index(crtc->primary));
+			   drm_plane_mask(crtc->primary);
 
 	/* We always want to have an active plane with an active CRTC */
 	if (has_primary != state->enable)
diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h
index 7d4d6c7f0afd..cee9dfaaa740 100644
--- a/include/drm/drm_plane.h
+++ b/include/drm/drm_plane.h
@@ -639,10 +639,20 @@ void drm_plane_cleanup(struct drm_plane *plane);
  * Given a registered plane, return the index of that plane within a DRM
  * device's list of planes.
  */
-static inline unsigned int drm_plane_index(struct drm_plane *plane)
+static inline unsigned int drm_plane_index(const struct drm_plane *plane)
 {
 	return plane->index;
 }
+
+/**
+ * drm_plane_mask - find the mask of a registered plane
+ * @plane: plane to find mask for
+ */
+static inline u32 drm_plane_mask(const struct drm_plane *plane)
+{
+	return 1 << drm_plane_index(plane);
+}
+
 struct drm_plane * drm_plane_from_index(struct drm_device *dev, int idx);
 void drm_plane_force_disable(struct drm_plane *plane);
 
@@ -678,7 +688,7 @@ static inline struct drm_plane *drm_plane_find(struct drm_device *dev,
  */
 #define drm_for_each_plane_mask(plane, dev, plane_mask) \
 	list_for_each_entry((plane), &(dev)->mode_config.plane_list, head) \
-		for_each_if ((plane_mask) & (1 << drm_plane_index(plane)))
+		for_each_if ((plane_mask) & drm_plane_mask(plane))
 
 /**
  * drm_for_each_legacy_plane - iterate over all planes for legacy userspace
-- 
2.16.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 02/10] drm: Use drm_crtc_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:11   ` Rodrigo Vivi
  2018-06-26 19:47 ` [PATCH 03/10] drm: Add drm_encoder_mask() Ville Syrjala
                   ` (11 subsequent siblings)
  12 siblings, 1 reply; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use drm_crtc_mask() where appropriate.

Mostly performed with coccinelle:
@@
@@
- (1<<drm_crtc_index(
+ drm_crtc_mask(
  ...)
-  )

@@
@@
- 1<<drm_crtc_index(
+ drm_crtc_mask(
  ...)

@@
@@
- BIT(drm_crtc_index(
+ drm_crtc_mask(
  ...)
- )

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/drm_crtc.c              | 4 ++--
 drivers/gpu/drm/drm_simple_kms_helper.c | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
index f45e7a8d4acd..c762e75a2d94 100644
--- a/drivers/gpu/drm/drm_crtc.c
+++ b/drivers/gpu/drm/drm_crtc.c
@@ -329,9 +329,9 @@ int drm_crtc_init_with_planes(struct drm_device *dev, struct drm_crtc *crtc,
 	crtc->primary = primary;
 	crtc->cursor = cursor;
 	if (primary && !primary->possible_crtcs)
-		primary->possible_crtcs = 1 << drm_crtc_index(crtc);
+		primary->possible_crtcs = drm_crtc_mask(crtc);
 	if (cursor && !cursor->possible_crtcs)
-		cursor->possible_crtcs = 1 << drm_crtc_index(crtc);
+		cursor->possible_crtcs = drm_crtc_mask(crtc);
 
 	ret = drm_crtc_crc_init(crtc);
 	if (ret) {
diff --git a/drivers/gpu/drm/drm_simple_kms_helper.c b/drivers/gpu/drm/drm_simple_kms_helper.c
index 9d87961da1db..b72fcf1e9605 100644
--- a/drivers/gpu/drm/drm_simple_kms_helper.c
+++ b/drivers/gpu/drm/drm_simple_kms_helper.c
@@ -281,7 +281,7 @@ int drm_simple_display_pipe_init(struct drm_device *dev,
 	if (ret)
 		return ret;
 
-	encoder->possible_crtcs = 1 << drm_crtc_index(crtc);
+	encoder->possible_crtcs = drm_crtc_mask(crtc);
 	ret = drm_encoder_init(dev, encoder, &drm_simple_kms_encoder_funcs,
 			       DRM_MODE_ENCODER_NONE, NULL);
 	if (ret || !connector)
-- 
2.16.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 03/10] drm: Add drm_encoder_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
  2018-06-26 19:47 ` [PATCH 02/10] drm: Use drm_crtc_mask() Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:11   ` Rodrigo Vivi
  2018-06-26 19:47 ` [PATCH 04/10] drm: Add drm_connector_mask() Ville Syrjala
                   ` (10 subsequent siblings)
  12 siblings, 1 reply; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Add drm_encoder_mask() which returns the 1<<index for the encoder.
We already have an identical drm_crtc_mask() for crtcs.

Mostly performed with coccinelle:
@@
@@
- (1<<drm_encoder_index(
+ drm_encoder_mask(
  ...)
-  )

@@
@@
- 1<<drm_encoder_index(
+ drm_encoder_mask(
  ...)

@@
@@
- BIT(drm_encoder_index(
+ drm_encoder_mask(
  ...)
- )

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/drm_atomic_helper.c | 10 +++++-----
 include/drm/drm_encoder.h           | 16 ++++++++++++++--
 2 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
index 17baf5057132..e022cacdae34 100644
--- a/drivers/gpu/drm/drm_atomic_helper.c
+++ b/drivers/gpu/drm/drm_atomic_helper.c
@@ -121,7 +121,7 @@ static int handle_conflicting_encoders(struct drm_atomic_state *state,
 			new_encoder = drm_atomic_helper_best_encoder(connector);
 
 		if (new_encoder) {
-			if (encoder_mask & (1 << drm_encoder_index(new_encoder))) {
+			if (encoder_mask & drm_encoder_mask(new_encoder)) {
 				DRM_DEBUG_ATOMIC("[ENCODER:%d:%s] on [CONNECTOR:%d:%s] already assigned\n",
 					new_encoder->base.id, new_encoder->name,
 					connector->base.id, connector->name);
@@ -129,7 +129,7 @@ static int handle_conflicting_encoders(struct drm_atomic_state *state,
 				return -EINVAL;
 			}
 
-			encoder_mask |= 1 << drm_encoder_index(new_encoder);
+			encoder_mask |= drm_encoder_mask(new_encoder);
 		}
 	}
 
@@ -155,7 +155,7 @@ static int handle_conflicting_encoders(struct drm_atomic_state *state,
 			continue;
 
 		encoder = connector->state->best_encoder;
-		if (!encoder || !(encoder_mask & (1 << drm_encoder_index(encoder))))
+		if (!encoder || !(encoder_mask & drm_encoder_mask(encoder)))
 			continue;
 
 		if (!disable_conflicting_encoders) {
@@ -223,7 +223,7 @@ set_best_encoder(struct drm_atomic_state *state,
 			crtc_state = drm_atomic_get_new_crtc_state(state, crtc);
 
 			crtc_state->encoder_mask &=
-				~(1 << drm_encoder_index(conn_state->best_encoder));
+				~drm_encoder_mask(conn_state->best_encoder);
 		}
 	}
 
@@ -234,7 +234,7 @@ set_best_encoder(struct drm_atomic_state *state,
 			crtc_state = drm_atomic_get_new_crtc_state(state, crtc);
 
 			crtc_state->encoder_mask |=
-				1 << drm_encoder_index(encoder);
+				drm_encoder_mask(encoder);
 		}
 	}
 
diff --git a/include/drm/drm_encoder.h b/include/drm/drm_encoder.h
index fb299696c7c4..4f597c0730b4 100644
--- a/include/drm/drm_encoder.h
+++ b/include/drm/drm_encoder.h
@@ -191,11 +191,23 @@ int drm_encoder_init(struct drm_device *dev,
  * Given a registered encoder, return the index of that encoder within a DRM
  * device's list of encoders.
  */
-static inline unsigned int drm_encoder_index(struct drm_encoder *encoder)
+static inline unsigned int drm_encoder_index(const struct drm_encoder *encoder)
 {
 	return encoder->index;
 }
 
+/**
+ * drm_encoder_mask - find the mask of a registered ENCODER
+ * @encoder: encoder to find mask for
+ *
+ * Given a registered encoder, return the mask bit of that encoder for an
+ * encoder's possible_clones field.
+ */
+static inline u32 drm_encoder_mask(const struct drm_encoder *encoder)
+{
+	return 1 << drm_encoder_index(encoder);
+}
+
 /**
  * drm_encoder_crtc_ok - can a given crtc drive a given encoder?
  * @encoder: encoder to test
@@ -241,7 +253,7 @@ void drm_encoder_cleanup(struct drm_encoder *encoder);
  */
 #define drm_for_each_encoder_mask(encoder, dev, encoder_mask) \
 	list_for_each_entry((encoder), &(dev)->mode_config.encoder_list, head) \
-		for_each_if ((encoder_mask) & (1 << drm_encoder_index(encoder)))
+		for_each_if ((encoder_mask) & drm_encoder_mask(encoder))
 
 /**
  * drm_for_each_encoder - iterate over all encoders
-- 
2.16.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 04/10] drm: Add drm_connector_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
  2018-06-26 19:47 ` [PATCH 02/10] drm: Use drm_crtc_mask() Ville Syrjala
  2018-06-26 19:47 ` [PATCH 03/10] drm: Add drm_encoder_mask() Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:12   ` Rodrigo Vivi
  2018-06-26 19:47 ` [PATCH 05/10] drm/i915: Use drm_plane_mask() & co Ville Syrjala
                   ` (9 subsequent siblings)
  12 siblings, 1 reply; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Add drm_connector_mask() which returns the 1<<index for the connector.
We already have an identical drm_crtc_mask() for crtcs.

Mostly performed with coccinelle:
@@
@@
- (1<<drm_connector_index(
+ drm_connector_mask(
  ...)
-  )

@@
@@
- 1<<drm_connector_index(
+ drm_connector_mask(
  ...)

@@
@@
- BIT(drm_connector_index(
+ drm_connector_mask(
  ...)
- )

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/drm_atomic.c | 6 +++---
 include/drm/drm_connector.h  | 8 +++++++-
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index 684c9d3a1d6c..d5cefb1cb2a2 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -1700,7 +1700,7 @@ drm_atomic_set_crtc_for_connector(struct drm_connector_state *conn_state,
 							   conn_state->crtc);
 
 		crtc_state->connector_mask &=
-			~(1 << drm_connector_index(conn_state->connector));
+			~drm_connector_mask(conn_state->connector);
 
 		drm_connector_put(conn_state->connector);
 		conn_state->crtc = NULL;
@@ -1712,7 +1712,7 @@ drm_atomic_set_crtc_for_connector(struct drm_connector_state *conn_state,
 			return PTR_ERR(crtc_state);
 
 		crtc_state->connector_mask |=
-			1 << drm_connector_index(conn_state->connector);
+			drm_connector_mask(conn_state->connector);
 
 		drm_connector_get(conn_state->connector);
 		conn_state->crtc = crtc;
@@ -1839,7 +1839,7 @@ drm_atomic_add_affected_connectors(struct drm_atomic_state *state,
 	 */
 	drm_connector_list_iter_begin(state->dev, &conn_iter);
 	drm_for_each_connector_iter(connector, &conn_iter) {
-		if (!(crtc_state->connector_mask & (1 << drm_connector_index(connector))))
+		if (!(crtc_state->connector_mask & drm_connector_mask(connector)))
 			continue;
 
 		conn_state = drm_atomic_get_connector_state(state, connector);
diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
index 14ab58ade87f..bf0f0f0786d3 100644
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
@@ -1030,11 +1030,17 @@ int drm_mode_connector_attach_encoder(struct drm_connector *connector,
 				      struct drm_encoder *encoder);
 
 void drm_connector_cleanup(struct drm_connector *connector);
-static inline unsigned drm_connector_index(struct drm_connector *connector)
+
+static inline unsigned int drm_connector_index(const struct drm_connector *connector)
 {
 	return connector->index;
 }
 
+static inline u32 drm_connector_mask(const struct drm_connector *connector)
+{
+	return 1 << connector->index;
+}
+
 /**
  * drm_connector_lookup - lookup connector object
  * @dev: DRM device
-- 
2.16.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 05/10] drm/i915: Use drm_plane_mask() & co.
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (2 preceding siblings ...)
  2018-06-26 19:47 ` [PATCH 04/10] drm: Add drm_connector_mask() Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:16   ` Rodrigo Vivi
  2018-06-26 19:47 ` [PATCH 06/10] drm/imx: Use drm_plane_mask() Ville Syrjala
                   ` (8 subsequent siblings)
  12 siblings, 1 reply; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use drm_{plane,crtc,encoder,connector}_mask() where appropriate.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/intel_display.c  | 14 +++++++-------
 drivers/gpu/drm/i915/intel_display.h  |  4 ++--
 drivers/gpu/drm/i915/intel_dpll_mgr.c |  6 +++---
 3 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index eaa0663963a5..7cc70e751c82 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -2756,10 +2756,10 @@ intel_set_plane_visible(struct intel_crtc_state *crtc_state,
 
 	/* FIXME pre-g4x don't work like this */
 	if (visible) {
-		crtc_state->base.plane_mask |= BIT(drm_plane_index(&plane->base));
+		crtc_state->base.plane_mask |= drm_plane_mask(&plane->base);
 		crtc_state->active_planes |= BIT(plane->id);
 	} else {
-		crtc_state->base.plane_mask &= ~BIT(drm_plane_index(&plane->base));
+		crtc_state->base.plane_mask &= ~drm_plane_mask(&plane->base);
 		crtc_state->active_planes &= ~BIT(plane->id);
 	}
 
@@ -11896,7 +11896,7 @@ verify_single_dpll_state(struct drm_i915_private *dev_priv,
 			 struct drm_crtc_state *new_state)
 {
 	struct intel_dpll_hw_state dpll_hw_state;
-	unsigned crtc_mask;
+	unsigned int crtc_mask;
 	bool active;
 
 	memset(&dpll_hw_state, 0, sizeof(dpll_hw_state));
@@ -11923,7 +11923,7 @@ verify_single_dpll_state(struct drm_i915_private *dev_priv,
 		return;
 	}
 
-	crtc_mask = 1 << drm_crtc_index(crtc);
+	crtc_mask = drm_crtc_mask(crtc);
 
 	if (new_state->active)
 		I915_STATE_WARN(!(pll->active_mask & crtc_mask),
@@ -11958,7 +11958,7 @@ verify_shared_dpll_state(struct drm_device *dev, struct drm_crtc *crtc,
 
 	if (old_state->shared_dpll &&
 	    old_state->shared_dpll != new_state->shared_dpll) {
-		unsigned crtc_mask = 1 << drm_crtc_index(crtc);
+		unsigned int crtc_mask = drm_crtc_mask(crtc);
 		struct intel_shared_dpll *pll = old_state->shared_dpll;
 
 		I915_STATE_WARN(pll->active_mask & crtc_mask,
@@ -15636,9 +15636,9 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
 				 * rely on the connector_mask being accurate.
 				 */
 				encoder->base.crtc->state->connector_mask |=
-					1 << drm_connector_index(&connector->base);
+					drm_connector_mask(&connector->base);
 				encoder->base.crtc->state->encoder_mask |=
-					1 << drm_encoder_index(&encoder->base);
+					drm_encoder_mask(&encoder->base);
 			}
 
 		} else {
diff --git a/drivers/gpu/drm/i915/intel_display.h b/drivers/gpu/drm/i915/intel_display.h
index dfb02da73ac8..dd30cae5eb00 100644
--- a/drivers/gpu/drm/i915/intel_display.h
+++ b/drivers/gpu/drm/i915/intel_display.h
@@ -261,7 +261,7 @@ struct intel_link_m_n {
 			    &(dev)->mode_config.plane_list,		\
 			    base.head)					\
 		for_each_if((plane_mask) &				\
-			    BIT(drm_plane_index(&intel_plane->base)))
+			    drm_plane_mask(&intel_plane->base)))
 
 #define for_each_intel_plane_on_crtc(dev, intel_crtc, intel_plane)	\
 	list_for_each_entry(intel_plane,				\
@@ -278,7 +278,7 @@ struct intel_link_m_n {
 	list_for_each_entry(intel_crtc,					\
 			    &(dev)->mode_config.crtc_list,		\
 			    base.head)					\
-		for_each_if((crtc_mask) & BIT(drm_crtc_index(&intel_crtc->base)))
+		for_each_if((crtc_mask) & drm_crtc_mask(&intel_crtc->base))
 
 #define for_each_intel_encoder(dev, intel_encoder)		\
 	list_for_each_entry(intel_encoder,			\
diff --git a/drivers/gpu/drm/i915/intel_dpll_mgr.c b/drivers/gpu/drm/i915/intel_dpll_mgr.c
index 57342364fd30..e4ac7f980c9e 100644
--- a/drivers/gpu/drm/i915/intel_dpll_mgr.c
+++ b/drivers/gpu/drm/i915/intel_dpll_mgr.c
@@ -163,8 +163,8 @@ void intel_enable_shared_dpll(struct intel_crtc *crtc)
 	struct drm_device *dev = crtc->base.dev;
 	struct drm_i915_private *dev_priv = to_i915(dev);
 	struct intel_shared_dpll *pll = crtc->config->shared_dpll;
-	unsigned crtc_mask = 1 << drm_crtc_index(&crtc->base);
-	unsigned old_mask;
+	unsigned int crtc_mask = drm_crtc_mask(&crtc->base);
+	unsigned int old_mask;
 
 	if (WARN_ON(pll == NULL))
 		return;
@@ -207,7 +207,7 @@ void intel_disable_shared_dpll(struct intel_crtc *crtc)
 {
 	struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
 	struct intel_shared_dpll *pll = crtc->config->shared_dpll;
-	unsigned crtc_mask = 1 << drm_crtc_index(&crtc->base);
+	unsigned int crtc_mask = drm_crtc_mask(&crtc->base);
 
 	/* PCH only available on ILK+ */
 	if (INTEL_GEN(dev_priv) < 5)
-- 
2.16.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 06/10] drm/imx: Use drm_plane_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (3 preceding siblings ...)
  2018-06-26 19:47 ` [PATCH 05/10] drm/i915: Use drm_plane_mask() & co Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:16   ` Rodrigo Vivi
  2018-06-27  8:01   ` Philipp Zabel
  2018-06-26 19:47 ` [PATCH 07/10] drm/rockchip: Use drm_crtc_mask() Ville Syrjala
                   ` (7 subsequent siblings)
  12 siblings, 2 replies; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx, Philipp Zabel

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use drm_plane_mask() where appropriate.

Cc: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/imx/ipuv3-crtc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c
index e83af0f2be86..21d002859ae0 100644
--- a/drivers/gpu/drm/imx/ipuv3-crtc.c
+++ b/drivers/gpu/drm/imx/ipuv3-crtc.c
@@ -213,7 +213,7 @@ static bool ipu_crtc_mode_fixup(struct drm_crtc *crtc,
 static int ipu_crtc_atomic_check(struct drm_crtc *crtc,
 				 struct drm_crtc_state *state)
 {
-	u32 primary_plane_mask = 1 << drm_plane_index(crtc->primary);
+	u32 primary_plane_mask = drm_plane_mask(crtc->primary);
 
 	if (state->active && (primary_plane_mask & state->plane_mask) == 0)
 		return -EINVAL;
-- 
2.16.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 07/10] drm/rockchip: Use drm_crtc_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (4 preceding siblings ...)
  2018-06-26 19:47 ` [PATCH 06/10] drm/imx: Use drm_plane_mask() Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:16   ` [Intel-gfx] " Rodrigo Vivi
  2018-06-27 13:09   ` Heiko Stuebner
  2018-06-26 19:47 ` [PATCH 08/10] drm/sun4i: " Ville Syrjala
                   ` (6 subsequent siblings)
  12 siblings, 2 replies; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use drm_crtc_mask() where appropriate.

Cc: Sandy Huang <hjc@rock-chips.com>
Cc: "Heiko Stübner" <heiko@sntech.de>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
index c9222119767d..effecbed2d11 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
@@ -1308,7 +1308,7 @@ static int vop_create_crtc(struct vop *vop)
 	for (i = 0; i < vop_data->win_size; i++) {
 		struct vop_win *vop_win = &vop->win[i];
 		const struct vop_win_data *win_data = vop_win->data;
-		unsigned long possible_crtcs = 1 << drm_crtc_index(crtc);
+		unsigned long possible_crtcs = drm_crtc_mask(crtc);
 
 		if (win_data->type != DRM_PLANE_TYPE_OVERLAY)
 			continue;
-- 
2.16.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 08/10] drm/sun4i: Use drm_crtc_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (5 preceding siblings ...)
  2018-06-26 19:47 ` [PATCH 07/10] drm/rockchip: Use drm_crtc_mask() Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:17   ` Rodrigo Vivi
  2018-06-27  7:34   ` Maxime Ripard
  2018-06-26 19:47 ` [PATCH 09/10] drm/vc4: " Ville Syrjala
                   ` (5 subsequent siblings)
  12 siblings, 2 replies; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: Maxime Ripard, intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use drm_crtc_mask() where appropriate.

Cc: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/sun4i/sun4i_crtc.c | 2 +-
 drivers/gpu/drm/sun4i/sun4i_lvds.c | 2 +-
 drivers/gpu/drm/sun4i/sun4i_rgb.c  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/sun4i/sun4i_crtc.c b/drivers/gpu/drm/sun4i/sun4i_crtc.c
index 2d7c57406715..3eedf335a935 100644
--- a/drivers/gpu/drm/sun4i/sun4i_crtc.c
+++ b/drivers/gpu/drm/sun4i/sun4i_crtc.c
@@ -242,7 +242,7 @@ struct sun4i_crtc *sun4i_crtc_init(struct drm_device *drm,
 
 	/* Set possible_crtcs to this crtc for overlay planes */
 	for (i = 0; planes[i]; i++) {
-		uint32_t possible_crtcs = BIT(drm_crtc_index(&scrtc->crtc));
+		uint32_t possible_crtcs = drm_crtc_mask(&scrtc->crtc);
 		struct drm_plane *plane = planes[i];
 
 		if (plane->type == DRM_PLANE_TYPE_OVERLAY)
diff --git a/drivers/gpu/drm/sun4i/sun4i_lvds.c b/drivers/gpu/drm/sun4i/sun4i_lvds.c
index be3f14d7746d..a69fe2e1f9d1 100644
--- a/drivers/gpu/drm/sun4i/sun4i_lvds.c
+++ b/drivers/gpu/drm/sun4i/sun4i_lvds.c
@@ -136,7 +136,7 @@ int sun4i_lvds_init(struct drm_device *drm, struct sun4i_tcon *tcon)
 	}
 
 	/* The LVDS encoder can only work with the TCON channel 0 */
-	lvds->encoder.possible_crtcs = BIT(drm_crtc_index(&tcon->crtc->crtc));
+	lvds->encoder.possible_crtcs = drm_crtc_mask(&tcon->crtc->crtc);
 
 	if (tcon->panel) {
 		drm_connector_helper_add(&lvds->connector,
diff --git a/drivers/gpu/drm/sun4i/sun4i_rgb.c b/drivers/gpu/drm/sun4i/sun4i_rgb.c
index f2fa1f210509..96d21b07f8fc 100644
--- a/drivers/gpu/drm/sun4i/sun4i_rgb.c
+++ b/drivers/gpu/drm/sun4i/sun4i_rgb.c
@@ -202,7 +202,7 @@ int sun4i_rgb_init(struct drm_device *drm, struct sun4i_tcon *tcon)
 	}
 
 	/* The RGB encoder can only work with the TCON channel 0 */
-	rgb->encoder.possible_crtcs = BIT(drm_crtc_index(&tcon->crtc->crtc));
+	rgb->encoder.possible_crtcs = drm_crtc_mask(&tcon->crtc->crtc);
 
 	if (tcon->panel) {
 		drm_connector_helper_add(&rgb->connector,
-- 
2.16.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 09/10] drm/vc4: Use drm_crtc_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (6 preceding siblings ...)
  2018-06-26 19:47 ` [PATCH 08/10] drm/sun4i: " Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:17   ` Rodrigo Vivi
  2018-06-26 23:08   ` Eric Anholt
  2018-06-26 19:47 ` [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co Ville Syrjala
                   ` (4 subsequent siblings)
  12 siblings, 2 replies; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use drm_crtc_mask() where appropriate.

Cc: Eric Anholt <eric@anholt.net>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/vc4/vc4_crtc.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/vc4/vc4_crtc.c b/drivers/gpu/drm/vc4/vc4_crtc.c
index dcadf793ee80..d222358fa8a7 100644
--- a/drivers/gpu/drm/vc4/vc4_crtc.c
+++ b/drivers/gpu/drm/vc4/vc4_crtc.c
@@ -1081,7 +1081,7 @@ static int vc4_crtc_bind(struct device *dev, struct device *master, void *data)
 		if (IS_ERR(plane))
 			continue;
 
-		plane->possible_crtcs = 1 << drm_crtc_index(crtc);
+		plane->possible_crtcs = drm_crtc_mask(crtc);
 	}
 
 	/* Set up the legacy cursor after overlay initialization,
@@ -1090,7 +1090,7 @@ static int vc4_crtc_bind(struct device *dev, struct device *master, void *data)
 	 */
 	cursor_plane = vc4_plane_init(drm, DRM_PLANE_TYPE_CURSOR);
 	if (!IS_ERR(cursor_plane)) {
-		cursor_plane->possible_crtcs = 1 << drm_crtc_index(crtc);
+		cursor_plane->possible_crtcs = drm_crtc_mask(crtc);
 		crtc->cursor = cursor_plane;
 	}
 
@@ -1118,7 +1118,7 @@ static int vc4_crtc_bind(struct device *dev, struct device *master, void *data)
 err_destroy_planes:
 	list_for_each_entry_safe(destroy_plane, temp,
 				 &drm->mode_config.plane_list, head) {
-		if (destroy_plane->possible_crtcs == 1 << drm_crtc_index(crtc))
+		if (destroy_plane->possible_crtcs == drm_crtc_mask(crtc))
 		    destroy_plane->funcs->destroy(destroy_plane);
 	}
 err:
-- 
2.16.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co.
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (7 preceding siblings ...)
  2018-06-26 19:47 ` [PATCH 09/10] drm/vc4: " Ville Syrjala
@ 2018-06-26 19:47 ` Ville Syrjala
  2018-06-26 20:17   ` Rodrigo Vivi
  2018-07-02 17:00   ` Sinclair Yeh
  2018-06-26 20:09 ` [PATCH 01/10] drm: Add drm_plane_mask() Rodrigo Vivi
                   ` (3 subsequent siblings)
  12 siblings, 2 replies; 30+ messages in thread
From: Ville Syrjala @ 2018-06-26 19:47 UTC (permalink / raw)
  To: dri-devel; +Cc: intel-gfx, VMware Graphics, Thomas Hellstrom

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use drm_{plane,connector}_mask() where appropriate.

Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
Cc: Sinclair Yeh <syeh@vmware.com>
Cc: Thomas Hellstrom <thellstrom@vmware.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
index ef96ba7432ad..17e01423ead1 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
@@ -535,9 +535,9 @@ int vmw_du_crtc_atomic_check(struct drm_crtc *crtc,
 			     struct drm_crtc_state *new_state)
 {
 	struct vmw_display_unit *du = vmw_crtc_to_du(new_state->crtc);
-	int connector_mask = 1 << drm_connector_index(&du->connector);
+	int connector_mask = drm_connector_mask(&du->connector);
 	bool has_primary = new_state->plane_mask &
-			   BIT(drm_plane_index(crtc->primary));
+			   drm_plane_mask(crtc->primary);
 
 	/* We always want to have an active plane with an active CRTC */
 	if (has_primary != new_state->enable)
-- 
2.16.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* Re: [PATCH 01/10] drm: Add drm_plane_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (8 preceding siblings ...)
  2018-06-26 19:47 ` [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co Ville Syrjala
@ 2018-06-26 20:09 ` Rodrigo Vivi
  2018-07-02 15:55   ` Ville Syrjälä
  2018-06-26 20:13 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [01/10] " Patchwork
                   ` (2 subsequent siblings)
  12 siblings, 1 reply; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:09 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:07PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Add drm_plane_mask() which returns the 1<<index for the plane.
> We already have an identical drm_crtc_mask() for crtcs.
> 
> Mostly performed with coccinelle:
> @@
> @@
> - (1<<drm_plane_index(
> + drm_plane_mask(
>   ...)
> -  )
> 
> @@
> @@
> - 1<<drm_plane_index(
> + drm_plane_mask(
>   ...)
> 
> @@
> @@
> - BIT(drm_plane_index(
> + drm_plane_mask(
>   ...)
> - )
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/drm_atomic.c            |  4 ++--
>  drivers/gpu/drm/drm_framebuffer.c       |  2 +-
>  drivers/gpu/drm/drm_simple_kms_helper.c |  2 +-
>  include/drm/drm_plane.h                 | 14 ++++++++++++--
>  4 files changed, 16 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index 178842380f75..684c9d3a1d6c 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -1581,7 +1581,7 @@ drm_atomic_set_crtc_for_plane(struct drm_plane_state *plane_state,
>  		if (WARN_ON(IS_ERR(crtc_state)))
>  			return PTR_ERR(crtc_state);
>  
> -		crtc_state->plane_mask &= ~(1 << drm_plane_index(plane));
> +		crtc_state->plane_mask &= ~drm_plane_mask(plane);
>  	}
>  
>  	plane_state->crtc = crtc;
> @@ -1591,7 +1591,7 @@ drm_atomic_set_crtc_for_plane(struct drm_plane_state *plane_state,
>  						       crtc);
>  		if (IS_ERR(crtc_state))
>  			return PTR_ERR(crtc_state);
> -		crtc_state->plane_mask |= (1 << drm_plane_index(plane));
> +		crtc_state->plane_mask |= drm_plane_mask(plane);
>  	}
>  
>  	if (crtc)
> diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c
> index ed90974a452a..781af1d42d76 100644
> --- a/drivers/gpu/drm/drm_framebuffer.c
> +++ b/drivers/gpu/drm/drm_framebuffer.c
> @@ -847,7 +847,7 @@ static int atomic_remove_fb(struct drm_framebuffer *fb)
>  		if (ret)
>  			goto unlock;
>  
> -		plane_mask |= BIT(drm_plane_index(plane));
> +		plane_mask |= drm_plane_mask(plane);
>  	}
>  
>  	/* This list is only filled when disable_crtcs is set. */
> diff --git a/drivers/gpu/drm/drm_simple_kms_helper.c b/drivers/gpu/drm/drm_simple_kms_helper.c
> index 7a00455ca568..9d87961da1db 100644
> --- a/drivers/gpu/drm/drm_simple_kms_helper.c
> +++ b/drivers/gpu/drm/drm_simple_kms_helper.c
> @@ -52,7 +52,7 @@ static int drm_simple_kms_crtc_check(struct drm_crtc *crtc,
>  				     struct drm_crtc_state *state)
>  {
>  	bool has_primary = state->plane_mask &
> -			   BIT(drm_plane_index(crtc->primary));
> +			   drm_plane_mask(crtc->primary);
>  
>  	/* We always want to have an active plane with an active CRTC */
>  	if (has_primary != state->enable)
> diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h
> index 7d4d6c7f0afd..cee9dfaaa740 100644
> --- a/include/drm/drm_plane.h
> +++ b/include/drm/drm_plane.h
> @@ -639,10 +639,20 @@ void drm_plane_cleanup(struct drm_plane *plane);
>   * Given a registered plane, return the index of that plane within a DRM
>   * device's list of planes.
>   */
> -static inline unsigned int drm_plane_index(struct drm_plane *plane)
> +static inline unsigned int drm_plane_index(const struct drm_plane *plane)
>  {
>  	return plane->index;
>  }
> +
> +/**
> + * drm_plane_mask - find the mask of a registered plane
> + * @plane: plane to find mask for
> + */
> +static inline u32 drm_plane_mask(const struct drm_plane *plane)
> +{
> +	return 1 << drm_plane_index(plane);
> +}
> +
>  struct drm_plane * drm_plane_from_index(struct drm_device *dev, int idx);
>  void drm_plane_force_disable(struct drm_plane *plane);
>  
> @@ -678,7 +688,7 @@ static inline struct drm_plane *drm_plane_find(struct drm_device *dev,
>   */
>  #define drm_for_each_plane_mask(plane, dev, plane_mask) \
>  	list_for_each_entry((plane), &(dev)->mode_config.plane_list, head) \
> -		for_each_if ((plane_mask) & (1 << drm_plane_index(plane)))
> +		for_each_if ((plane_mask) & drm_plane_mask(plane))
>  
>  /**
>   * drm_for_each_legacy_plane - iterate over all planes for legacy userspace
> -- 
> 2.16.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 02/10] drm: Use drm_crtc_mask()
  2018-06-26 19:47 ` [PATCH 02/10] drm: Use drm_crtc_mask() Ville Syrjala
@ 2018-06-26 20:11   ` Rodrigo Vivi
  0 siblings, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:11 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:08PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_crtc_mask() where appropriate.
> 
> Mostly performed with coccinelle:
> @@
> @@
> - (1<<drm_crtc_index(
> + drm_crtc_mask(
>   ...)
> -  )
> 
> @@
> @@
> - 1<<drm_crtc_index(
> + drm_crtc_mask(
>   ...)
> 
> @@
> @@
> - BIT(drm_crtc_index(
> + drm_crtc_mask(
>   ...)
> - )
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/drm_crtc.c              | 4 ++--
>  drivers/gpu/drm/drm_simple_kms_helper.c | 2 +-
>  2 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
> index f45e7a8d4acd..c762e75a2d94 100644
> --- a/drivers/gpu/drm/drm_crtc.c
> +++ b/drivers/gpu/drm/drm_crtc.c
> @@ -329,9 +329,9 @@ int drm_crtc_init_with_planes(struct drm_device *dev, struct drm_crtc *crtc,
>  	crtc->primary = primary;
>  	crtc->cursor = cursor;
>  	if (primary && !primary->possible_crtcs)
> -		primary->possible_crtcs = 1 << drm_crtc_index(crtc);
> +		primary->possible_crtcs = drm_crtc_mask(crtc);
>  	if (cursor && !cursor->possible_crtcs)
> -		cursor->possible_crtcs = 1 << drm_crtc_index(crtc);
> +		cursor->possible_crtcs = drm_crtc_mask(crtc);
>  
>  	ret = drm_crtc_crc_init(crtc);
>  	if (ret) {
> diff --git a/drivers/gpu/drm/drm_simple_kms_helper.c b/drivers/gpu/drm/drm_simple_kms_helper.c
> index 9d87961da1db..b72fcf1e9605 100644
> --- a/drivers/gpu/drm/drm_simple_kms_helper.c
> +++ b/drivers/gpu/drm/drm_simple_kms_helper.c
> @@ -281,7 +281,7 @@ int drm_simple_display_pipe_init(struct drm_device *dev,
>  	if (ret)
>  		return ret;
>  
> -	encoder->possible_crtcs = 1 << drm_crtc_index(crtc);
> +	encoder->possible_crtcs = drm_crtc_mask(crtc);
>  	ret = drm_encoder_init(dev, encoder, &drm_simple_kms_encoder_funcs,
>  			       DRM_MODE_ENCODER_NONE, NULL);
>  	if (ret || !connector)
> -- 
> 2.16.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 03/10] drm: Add drm_encoder_mask()
  2018-06-26 19:47 ` [PATCH 03/10] drm: Add drm_encoder_mask() Ville Syrjala
@ 2018-06-26 20:11   ` Rodrigo Vivi
  0 siblings, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:11 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:09PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Add drm_encoder_mask() which returns the 1<<index for the encoder.
> We already have an identical drm_crtc_mask() for crtcs.
> 
> Mostly performed with coccinelle:
> @@
> @@
> - (1<<drm_encoder_index(
> + drm_encoder_mask(
>   ...)
> -  )
> 
> @@
> @@
> - 1<<drm_encoder_index(
> + drm_encoder_mask(
>   ...)
> 
> @@
> @@
> - BIT(drm_encoder_index(
> + drm_encoder_mask(
>   ...)
> - )
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/drm_atomic_helper.c | 10 +++++-----
>  include/drm/drm_encoder.h           | 16 ++++++++++++++--
>  2 files changed, 19 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
> index 17baf5057132..e022cacdae34 100644
> --- a/drivers/gpu/drm/drm_atomic_helper.c
> +++ b/drivers/gpu/drm/drm_atomic_helper.c
> @@ -121,7 +121,7 @@ static int handle_conflicting_encoders(struct drm_atomic_state *state,
>  			new_encoder = drm_atomic_helper_best_encoder(connector);
>  
>  		if (new_encoder) {
> -			if (encoder_mask & (1 << drm_encoder_index(new_encoder))) {
> +			if (encoder_mask & drm_encoder_mask(new_encoder)) {
>  				DRM_DEBUG_ATOMIC("[ENCODER:%d:%s] on [CONNECTOR:%d:%s] already assigned\n",
>  					new_encoder->base.id, new_encoder->name,
>  					connector->base.id, connector->name);
> @@ -129,7 +129,7 @@ static int handle_conflicting_encoders(struct drm_atomic_state *state,
>  				return -EINVAL;
>  			}
>  
> -			encoder_mask |= 1 << drm_encoder_index(new_encoder);
> +			encoder_mask |= drm_encoder_mask(new_encoder);
>  		}
>  	}
>  
> @@ -155,7 +155,7 @@ static int handle_conflicting_encoders(struct drm_atomic_state *state,
>  			continue;
>  
>  		encoder = connector->state->best_encoder;
> -		if (!encoder || !(encoder_mask & (1 << drm_encoder_index(encoder))))
> +		if (!encoder || !(encoder_mask & drm_encoder_mask(encoder)))
>  			continue;
>  
>  		if (!disable_conflicting_encoders) {
> @@ -223,7 +223,7 @@ set_best_encoder(struct drm_atomic_state *state,
>  			crtc_state = drm_atomic_get_new_crtc_state(state, crtc);
>  
>  			crtc_state->encoder_mask &=
> -				~(1 << drm_encoder_index(conn_state->best_encoder));
> +				~drm_encoder_mask(conn_state->best_encoder);
>  		}
>  	}
>  
> @@ -234,7 +234,7 @@ set_best_encoder(struct drm_atomic_state *state,
>  			crtc_state = drm_atomic_get_new_crtc_state(state, crtc);
>  
>  			crtc_state->encoder_mask |=
> -				1 << drm_encoder_index(encoder);
> +				drm_encoder_mask(encoder);
>  		}
>  	}
>  
> diff --git a/include/drm/drm_encoder.h b/include/drm/drm_encoder.h
> index fb299696c7c4..4f597c0730b4 100644
> --- a/include/drm/drm_encoder.h
> +++ b/include/drm/drm_encoder.h
> @@ -191,11 +191,23 @@ int drm_encoder_init(struct drm_device *dev,
>   * Given a registered encoder, return the index of that encoder within a DRM
>   * device's list of encoders.
>   */
> -static inline unsigned int drm_encoder_index(struct drm_encoder *encoder)
> +static inline unsigned int drm_encoder_index(const struct drm_encoder *encoder)
>  {
>  	return encoder->index;
>  }
>  
> +/**
> + * drm_encoder_mask - find the mask of a registered ENCODER
> + * @encoder: encoder to find mask for
> + *
> + * Given a registered encoder, return the mask bit of that encoder for an
> + * encoder's possible_clones field.
> + */
> +static inline u32 drm_encoder_mask(const struct drm_encoder *encoder)
> +{
> +	return 1 << drm_encoder_index(encoder);
> +}
> +
>  /**
>   * drm_encoder_crtc_ok - can a given crtc drive a given encoder?
>   * @encoder: encoder to test
> @@ -241,7 +253,7 @@ void drm_encoder_cleanup(struct drm_encoder *encoder);
>   */
>  #define drm_for_each_encoder_mask(encoder, dev, encoder_mask) \
>  	list_for_each_entry((encoder), &(dev)->mode_config.encoder_list, head) \
> -		for_each_if ((encoder_mask) & (1 << drm_encoder_index(encoder)))
> +		for_each_if ((encoder_mask) & drm_encoder_mask(encoder))
>  
>  /**
>   * drm_for_each_encoder - iterate over all encoders
> -- 
> 2.16.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 04/10] drm: Add drm_connector_mask()
  2018-06-26 19:47 ` [PATCH 04/10] drm: Add drm_connector_mask() Ville Syrjala
@ 2018-06-26 20:12   ` Rodrigo Vivi
  0 siblings, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:12 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:10PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Add drm_connector_mask() which returns the 1<<index for the connector.
> We already have an identical drm_crtc_mask() for crtcs.
> 
> Mostly performed with coccinelle:
> @@
> @@
> - (1<<drm_connector_index(
> + drm_connector_mask(
>   ...)
> -  )
> 
> @@
> @@
> - 1<<drm_connector_index(
> + drm_connector_mask(
>   ...)
> 
> @@
> @@
> - BIT(drm_connector_index(
> + drm_connector_mask(
>   ...)
> - )
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/drm_atomic.c | 6 +++---
>  include/drm/drm_connector.h  | 8 +++++++-
>  2 files changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index 684c9d3a1d6c..d5cefb1cb2a2 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -1700,7 +1700,7 @@ drm_atomic_set_crtc_for_connector(struct drm_connector_state *conn_state,
>  							   conn_state->crtc);
>  
>  		crtc_state->connector_mask &=
> -			~(1 << drm_connector_index(conn_state->connector));
> +			~drm_connector_mask(conn_state->connector);
>  
>  		drm_connector_put(conn_state->connector);
>  		conn_state->crtc = NULL;
> @@ -1712,7 +1712,7 @@ drm_atomic_set_crtc_for_connector(struct drm_connector_state *conn_state,
>  			return PTR_ERR(crtc_state);
>  
>  		crtc_state->connector_mask |=
> -			1 << drm_connector_index(conn_state->connector);
> +			drm_connector_mask(conn_state->connector);
>  
>  		drm_connector_get(conn_state->connector);
>  		conn_state->crtc = crtc;
> @@ -1839,7 +1839,7 @@ drm_atomic_add_affected_connectors(struct drm_atomic_state *state,
>  	 */
>  	drm_connector_list_iter_begin(state->dev, &conn_iter);
>  	drm_for_each_connector_iter(connector, &conn_iter) {
> -		if (!(crtc_state->connector_mask & (1 << drm_connector_index(connector))))
> +		if (!(crtc_state->connector_mask & drm_connector_mask(connector)))
>  			continue;
>  
>  		conn_state = drm_atomic_get_connector_state(state, connector);
> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
> index 14ab58ade87f..bf0f0f0786d3 100644
> --- a/include/drm/drm_connector.h
> +++ b/include/drm/drm_connector.h
> @@ -1030,11 +1030,17 @@ int drm_mode_connector_attach_encoder(struct drm_connector *connector,
>  				      struct drm_encoder *encoder);
>  
>  void drm_connector_cleanup(struct drm_connector *connector);
> -static inline unsigned drm_connector_index(struct drm_connector *connector)
> +
> +static inline unsigned int drm_connector_index(const struct drm_connector *connector)
>  {
>  	return connector->index;
>  }
>  
> +static inline u32 drm_connector_mask(const struct drm_connector *connector)
> +{
> +	return 1 << connector->index;
> +}
> +
>  /**
>   * drm_connector_lookup - lookup connector object
>   * @dev: DRM device
> -- 
> 2.16.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* ✗ Fi.CI.CHECKPATCH: warning for series starting with [01/10] drm: Add drm_plane_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (9 preceding siblings ...)
  2018-06-26 20:09 ` [PATCH 01/10] drm: Add drm_plane_mask() Rodrigo Vivi
@ 2018-06-26 20:13 ` Patchwork
  2018-06-26 20:30 ` ✓ Fi.CI.BAT: success " Patchwork
  2018-06-26 23:04 ` ✓ Fi.CI.IGT: " Patchwork
  12 siblings, 0 replies; 30+ messages in thread
From: Patchwork @ 2018-06-26 20:13 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx

== Series Details ==

Series: series starting with [01/10] drm: Add drm_plane_mask()
URL   : https://patchwork.freedesktop.org/series/45433/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
cf6d660dc7b3 drm: Add drm_plane_mask()
-:115: WARNING:SPACING: space prohibited between function name and open parenthesis '('
#115: FILE: include/drm/drm_plane.h:691:
+		for_each_if ((plane_mask) & drm_plane_mask(plane))

total: 0 errors, 1 warnings, 0 checks, 61 lines checked
4233ab431143 drm: Use drm_crtc_mask()
2e0aefe1e96d drm: Add drm_encoder_mask()
-:118: WARNING:SPACING: space prohibited between function name and open parenthesis '('
#118: FILE: include/drm/drm_encoder.h:256:
+		for_each_if ((encoder_mask) & drm_encoder_mask(encoder))

total: 0 errors, 1 warnings, 0 checks, 72 lines checked
f167f7ef2509 drm: Add drm_connector_mask()
b7bf6a12e811 drm/i915: Use drm_plane_mask() & co.
fb3e128362f7 drm/imx: Use drm_plane_mask()
44af7ec81e12 drm/rockchip: Use drm_crtc_mask()
92c17c0bd2c6 drm/sun4i: Use drm_crtc_mask()
7a6de11658cb drm/vc4: Use drm_crtc_mask()
-:41: WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (16, 20)
#41: FILE: drivers/gpu/drm/vc4/vc4_crtc.c:1121:
+		if (destroy_plane->possible_crtcs == drm_crtc_mask(crtc))
 		    destroy_plane->funcs->destroy(destroy_plane);

total: 0 errors, 1 warnings, 0 checks, 24 lines checked
52ee5878407b drm/vmwgfx: Use drm_plane_mask() & co.

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 05/10] drm/i915: Use drm_plane_mask() & co.
  2018-06-26 19:47 ` [PATCH 05/10] drm/i915: Use drm_plane_mask() & co Ville Syrjala
@ 2018-06-26 20:16   ` Rodrigo Vivi
  0 siblings, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:16 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:11PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_{plane,crtc,encoder,connector}_mask() where appropriate.
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/i915/intel_display.c  | 14 +++++++-------
>  drivers/gpu/drm/i915/intel_display.h  |  4 ++--
>  drivers/gpu/drm/i915/intel_dpll_mgr.c |  6 +++---
>  3 files changed, 12 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index eaa0663963a5..7cc70e751c82 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -2756,10 +2756,10 @@ intel_set_plane_visible(struct intel_crtc_state *crtc_state,
>  
>  	/* FIXME pre-g4x don't work like this */
>  	if (visible) {
> -		crtc_state->base.plane_mask |= BIT(drm_plane_index(&plane->base));
> +		crtc_state->base.plane_mask |= drm_plane_mask(&plane->base);
>  		crtc_state->active_planes |= BIT(plane->id);
>  	} else {
> -		crtc_state->base.plane_mask &= ~BIT(drm_plane_index(&plane->base));
> +		crtc_state->base.plane_mask &= ~drm_plane_mask(&plane->base);
>  		crtc_state->active_planes &= ~BIT(plane->id);
>  	}
>  
> @@ -11896,7 +11896,7 @@ verify_single_dpll_state(struct drm_i915_private *dev_priv,
>  			 struct drm_crtc_state *new_state)
>  {
>  	struct intel_dpll_hw_state dpll_hw_state;
> -	unsigned crtc_mask;
> +	unsigned int crtc_mask;
>  	bool active;
>  
>  	memset(&dpll_hw_state, 0, sizeof(dpll_hw_state));
> @@ -11923,7 +11923,7 @@ verify_single_dpll_state(struct drm_i915_private *dev_priv,
>  		return;
>  	}
>  
> -	crtc_mask = 1 << drm_crtc_index(crtc);
> +	crtc_mask = drm_crtc_mask(crtc);
>  
>  	if (new_state->active)
>  		I915_STATE_WARN(!(pll->active_mask & crtc_mask),
> @@ -11958,7 +11958,7 @@ verify_shared_dpll_state(struct drm_device *dev, struct drm_crtc *crtc,
>  
>  	if (old_state->shared_dpll &&
>  	    old_state->shared_dpll != new_state->shared_dpll) {
> -		unsigned crtc_mask = 1 << drm_crtc_index(crtc);
> +		unsigned int crtc_mask = drm_crtc_mask(crtc);
>  		struct intel_shared_dpll *pll = old_state->shared_dpll;
>  
>  		I915_STATE_WARN(pll->active_mask & crtc_mask,
> @@ -15636,9 +15636,9 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
>  				 * rely on the connector_mask being accurate.
>  				 */
>  				encoder->base.crtc->state->connector_mask |=
> -					1 << drm_connector_index(&connector->base);
> +					drm_connector_mask(&connector->base);
>  				encoder->base.crtc->state->encoder_mask |=
> -					1 << drm_encoder_index(&encoder->base);
> +					drm_encoder_mask(&encoder->base);
>  			}
>  
>  		} else {
> diff --git a/drivers/gpu/drm/i915/intel_display.h b/drivers/gpu/drm/i915/intel_display.h
> index dfb02da73ac8..dd30cae5eb00 100644
> --- a/drivers/gpu/drm/i915/intel_display.h
> +++ b/drivers/gpu/drm/i915/intel_display.h
> @@ -261,7 +261,7 @@ struct intel_link_m_n {
>  			    &(dev)->mode_config.plane_list,		\
>  			    base.head)					\
>  		for_each_if((plane_mask) &				\
> -			    BIT(drm_plane_index(&intel_plane->base)))
> +			    drm_plane_mask(&intel_plane->base)))
>  
>  #define for_each_intel_plane_on_crtc(dev, intel_crtc, intel_plane)	\
>  	list_for_each_entry(intel_plane,				\
> @@ -278,7 +278,7 @@ struct intel_link_m_n {
>  	list_for_each_entry(intel_crtc,					\
>  			    &(dev)->mode_config.crtc_list,		\
>  			    base.head)					\
> -		for_each_if((crtc_mask) & BIT(drm_crtc_index(&intel_crtc->base)))
> +		for_each_if((crtc_mask) & drm_crtc_mask(&intel_crtc->base))
>  
>  #define for_each_intel_encoder(dev, intel_encoder)		\
>  	list_for_each_entry(intel_encoder,			\
> diff --git a/drivers/gpu/drm/i915/intel_dpll_mgr.c b/drivers/gpu/drm/i915/intel_dpll_mgr.c
> index 57342364fd30..e4ac7f980c9e 100644
> --- a/drivers/gpu/drm/i915/intel_dpll_mgr.c
> +++ b/drivers/gpu/drm/i915/intel_dpll_mgr.c
> @@ -163,8 +163,8 @@ void intel_enable_shared_dpll(struct intel_crtc *crtc)
>  	struct drm_device *dev = crtc->base.dev;
>  	struct drm_i915_private *dev_priv = to_i915(dev);
>  	struct intel_shared_dpll *pll = crtc->config->shared_dpll;
> -	unsigned crtc_mask = 1 << drm_crtc_index(&crtc->base);
> -	unsigned old_mask;
> +	unsigned int crtc_mask = drm_crtc_mask(&crtc->base);
> +	unsigned int old_mask;
>  
>  	if (WARN_ON(pll == NULL))
>  		return;
> @@ -207,7 +207,7 @@ void intel_disable_shared_dpll(struct intel_crtc *crtc)
>  {
>  	struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
>  	struct intel_shared_dpll *pll = crtc->config->shared_dpll;
> -	unsigned crtc_mask = 1 << drm_crtc_index(&crtc->base);
> +	unsigned int crtc_mask = drm_crtc_mask(&crtc->base);
>  
>  	/* PCH only available on ILK+ */
>  	if (INTEL_GEN(dev_priv) < 5)
> -- 
> 2.16.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 06/10] drm/imx: Use drm_plane_mask()
  2018-06-26 19:47 ` [PATCH 06/10] drm/imx: Use drm_plane_mask() Ville Syrjala
@ 2018-06-26 20:16   ` Rodrigo Vivi
  2018-06-27  8:01   ` Philipp Zabel
  1 sibling, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:16 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:12PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_plane_mask() where appropriate.
> 
> Cc: Philipp Zabel <p.zabel@pengutronix.de>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/imx/ipuv3-crtc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c
> index e83af0f2be86..21d002859ae0 100644
> --- a/drivers/gpu/drm/imx/ipuv3-crtc.c
> +++ b/drivers/gpu/drm/imx/ipuv3-crtc.c
> @@ -213,7 +213,7 @@ static bool ipu_crtc_mode_fixup(struct drm_crtc *crtc,
>  static int ipu_crtc_atomic_check(struct drm_crtc *crtc,
>  				 struct drm_crtc_state *state)
>  {
> -	u32 primary_plane_mask = 1 << drm_plane_index(crtc->primary);
> +	u32 primary_plane_mask = drm_plane_mask(crtc->primary);
>  
>  	if (state->active && (primary_plane_mask & state->plane_mask) == 0)
>  		return -EINVAL;
> -- 
> 2.16.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [Intel-gfx] [PATCH 07/10] drm/rockchip: Use drm_crtc_mask()
  2018-06-26 19:47 ` [PATCH 07/10] drm/rockchip: Use drm_crtc_mask() Ville Syrjala
@ 2018-06-26 20:16   ` Rodrigo Vivi
  2018-06-27 13:09   ` Heiko Stuebner
  1 sibling, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:16 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:13PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_crtc_mask() where appropriate.
> 
> Cc: Sandy Huang <hjc@rock-chips.com>
> Cc: "Heiko Stübner" <heiko@sntech.de>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> index c9222119767d..effecbed2d11 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> @@ -1308,7 +1308,7 @@ static int vop_create_crtc(struct vop *vop)
>  	for (i = 0; i < vop_data->win_size; i++) {
>  		struct vop_win *vop_win = &vop->win[i];
>  		const struct vop_win_data *win_data = vop_win->data;
> -		unsigned long possible_crtcs = 1 << drm_crtc_index(crtc);
> +		unsigned long possible_crtcs = drm_crtc_mask(crtc);
>  
>  		if (win_data->type != DRM_PLANE_TYPE_OVERLAY)
>  			continue;
> -- 
> 2.16.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 08/10] drm/sun4i: Use drm_crtc_mask()
  2018-06-26 19:47 ` [PATCH 08/10] drm/sun4i: " Ville Syrjala
@ 2018-06-26 20:17   ` Rodrigo Vivi
  2018-06-27  7:34   ` Maxime Ripard
  1 sibling, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:17 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: Maxime Ripard, intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:14PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_crtc_mask() where appropriate.
> 
> Cc: Maxime Ripard <maxime.ripard@bootlin.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/sun4i/sun4i_crtc.c | 2 +-
>  drivers/gpu/drm/sun4i/sun4i_lvds.c | 2 +-
>  drivers/gpu/drm/sun4i/sun4i_rgb.c  | 2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/sun4i/sun4i_crtc.c b/drivers/gpu/drm/sun4i/sun4i_crtc.c
> index 2d7c57406715..3eedf335a935 100644
> --- a/drivers/gpu/drm/sun4i/sun4i_crtc.c
> +++ b/drivers/gpu/drm/sun4i/sun4i_crtc.c
> @@ -242,7 +242,7 @@ struct sun4i_crtc *sun4i_crtc_init(struct drm_device *drm,
>  
>  	/* Set possible_crtcs to this crtc for overlay planes */
>  	for (i = 0; planes[i]; i++) {
> -		uint32_t possible_crtcs = BIT(drm_crtc_index(&scrtc->crtc));
> +		uint32_t possible_crtcs = drm_crtc_mask(&scrtc->crtc);
>  		struct drm_plane *plane = planes[i];
>  
>  		if (plane->type == DRM_PLANE_TYPE_OVERLAY)
> diff --git a/drivers/gpu/drm/sun4i/sun4i_lvds.c b/drivers/gpu/drm/sun4i/sun4i_lvds.c
> index be3f14d7746d..a69fe2e1f9d1 100644
> --- a/drivers/gpu/drm/sun4i/sun4i_lvds.c
> +++ b/drivers/gpu/drm/sun4i/sun4i_lvds.c
> @@ -136,7 +136,7 @@ int sun4i_lvds_init(struct drm_device *drm, struct sun4i_tcon *tcon)
>  	}
>  
>  	/* The LVDS encoder can only work with the TCON channel 0 */
> -	lvds->encoder.possible_crtcs = BIT(drm_crtc_index(&tcon->crtc->crtc));
> +	lvds->encoder.possible_crtcs = drm_crtc_mask(&tcon->crtc->crtc);
>  
>  	if (tcon->panel) {
>  		drm_connector_helper_add(&lvds->connector,
> diff --git a/drivers/gpu/drm/sun4i/sun4i_rgb.c b/drivers/gpu/drm/sun4i/sun4i_rgb.c
> index f2fa1f210509..96d21b07f8fc 100644
> --- a/drivers/gpu/drm/sun4i/sun4i_rgb.c
> +++ b/drivers/gpu/drm/sun4i/sun4i_rgb.c
> @@ -202,7 +202,7 @@ int sun4i_rgb_init(struct drm_device *drm, struct sun4i_tcon *tcon)
>  	}
>  
>  	/* The RGB encoder can only work with the TCON channel 0 */
> -	rgb->encoder.possible_crtcs = BIT(drm_crtc_index(&tcon->crtc->crtc));
> +	rgb->encoder.possible_crtcs = drm_crtc_mask(&tcon->crtc->crtc);
>  
>  	if (tcon->panel) {
>  		drm_connector_helper_add(&rgb->connector,
> -- 
> 2.16.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 09/10] drm/vc4: Use drm_crtc_mask()
  2018-06-26 19:47 ` [PATCH 09/10] drm/vc4: " Ville Syrjala
@ 2018-06-26 20:17   ` Rodrigo Vivi
  2018-06-26 23:08   ` Eric Anholt
  1 sibling, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:17 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:15PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_crtc_mask() where appropriate.
> 
> Cc: Eric Anholt <eric@anholt.net>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/vc4/vc4_crtc.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/vc4/vc4_crtc.c b/drivers/gpu/drm/vc4/vc4_crtc.c
> index dcadf793ee80..d222358fa8a7 100644
> --- a/drivers/gpu/drm/vc4/vc4_crtc.c
> +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
> @@ -1081,7 +1081,7 @@ static int vc4_crtc_bind(struct device *dev, struct device *master, void *data)
>  		if (IS_ERR(plane))
>  			continue;
>  
> -		plane->possible_crtcs = 1 << drm_crtc_index(crtc);
> +		plane->possible_crtcs = drm_crtc_mask(crtc);
>  	}
>  
>  	/* Set up the legacy cursor after overlay initialization,
> @@ -1090,7 +1090,7 @@ static int vc4_crtc_bind(struct device *dev, struct device *master, void *data)
>  	 */
>  	cursor_plane = vc4_plane_init(drm, DRM_PLANE_TYPE_CURSOR);
>  	if (!IS_ERR(cursor_plane)) {
> -		cursor_plane->possible_crtcs = 1 << drm_crtc_index(crtc);
> +		cursor_plane->possible_crtcs = drm_crtc_mask(crtc);
>  		crtc->cursor = cursor_plane;
>  	}
>  
> @@ -1118,7 +1118,7 @@ static int vc4_crtc_bind(struct device *dev, struct device *master, void *data)
>  err_destroy_planes:
>  	list_for_each_entry_safe(destroy_plane, temp,
>  				 &drm->mode_config.plane_list, head) {
> -		if (destroy_plane->possible_crtcs == 1 << drm_crtc_index(crtc))
> +		if (destroy_plane->possible_crtcs == drm_crtc_mask(crtc))
>  		    destroy_plane->funcs->destroy(destroy_plane);
>  	}
>  err:
> -- 
> 2.16.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co.
  2018-06-26 19:47 ` [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co Ville Syrjala
@ 2018-06-26 20:17   ` Rodrigo Vivi
  2018-07-02 17:00   ` Sinclair Yeh
  1 sibling, 0 replies; 30+ messages in thread
From: Rodrigo Vivi @ 2018-06-26 20:17 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, VMware Graphics, Thomas Hellstrom, dri-devel

On Tue, Jun 26, 2018 at 10:47:16PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_{plane,connector}_mask() where appropriate.
> 
> Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
> Cc: Sinclair Yeh <syeh@vmware.com>
> Cc: Thomas Hellstrom <thellstrom@vmware.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> ---
>  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> index ef96ba7432ad..17e01423ead1 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> @@ -535,9 +535,9 @@ int vmw_du_crtc_atomic_check(struct drm_crtc *crtc,
>  			     struct drm_crtc_state *new_state)
>  {
>  	struct vmw_display_unit *du = vmw_crtc_to_du(new_state->crtc);
> -	int connector_mask = 1 << drm_connector_index(&du->connector);
> +	int connector_mask = drm_connector_mask(&du->connector);
>  	bool has_primary = new_state->plane_mask &
> -			   BIT(drm_plane_index(crtc->primary));
> +			   drm_plane_mask(crtc->primary);
>  
>  	/* We always want to have an active plane with an active CRTC */
>  	if (has_primary != new_state->enable)
> -- 
> 2.16.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 30+ messages in thread

* ✓ Fi.CI.BAT: success for series starting with [01/10] drm: Add drm_plane_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (10 preceding siblings ...)
  2018-06-26 20:13 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [01/10] " Patchwork
@ 2018-06-26 20:30 ` Patchwork
  2018-06-26 23:04 ` ✓ Fi.CI.IGT: " Patchwork
  12 siblings, 0 replies; 30+ messages in thread
From: Patchwork @ 2018-06-26 20:30 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx

== Series Details ==

Series: series starting with [01/10] drm: Add drm_plane_mask()
URL   : https://patchwork.freedesktop.org/series/45433/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4382 -> Patchwork_9429 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/45433/revisions/1/mbox/

== Known issues ==

  Here are the changes found in Patchwork_9429 that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
      fi-skl-guc:         PASS -> FAIL (fdo#104724, fdo#103191)

    
    ==== Possible fixes ====

    igt@gem_exec_gttfill@basic:
      fi-byt-n2820:       FAIL (fdo#106744) -> PASS

    
  fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#106744 https://bugs.freedesktop.org/show_bug.cgi?id=106744


== Participating hosts (44 -> 39) ==

  Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-hsw-4200u 


== Build changes ==

    * Linux: CI_DRM_4382 -> Patchwork_9429

  CI_DRM_4382: ffc2d866e9b04af3cc2244bb7448d7f7eb438a89 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4530: 0e98bf69f146eb72fe3a7c3b19a049b5786f0ca3 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9429: 52ee5878407ba7463503f72e878c899f51721d09 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

52ee5878407b drm/vmwgfx: Use drm_plane_mask() & co.
7a6de11658cb drm/vc4: Use drm_crtc_mask()
92c17c0bd2c6 drm/sun4i: Use drm_crtc_mask()
44af7ec81e12 drm/rockchip: Use drm_crtc_mask()
fb3e128362f7 drm/imx: Use drm_plane_mask()
b7bf6a12e811 drm/i915: Use drm_plane_mask() & co.
f167f7ef2509 drm: Add drm_connector_mask()
2e0aefe1e96d drm: Add drm_encoder_mask()
4233ab431143 drm: Use drm_crtc_mask()
cf6d660dc7b3 drm: Add drm_plane_mask()

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9429/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* ✓ Fi.CI.IGT: success for series starting with [01/10] drm: Add drm_plane_mask()
  2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
                   ` (11 preceding siblings ...)
  2018-06-26 20:30 ` ✓ Fi.CI.BAT: success " Patchwork
@ 2018-06-26 23:04 ` Patchwork
  12 siblings, 0 replies; 30+ messages in thread
From: Patchwork @ 2018-06-26 23:04 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx

== Series Details ==

Series: series starting with [01/10] drm: Add drm_plane_mask()
URL   : https://patchwork.freedesktop.org/series/45433/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4382_full -> Patchwork_9429_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9429_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9429_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9429_full:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_exec_schedule@deep-blt:
      shard-kbl:          PASS -> SKIP

    igt@gem_exec_schedule@deep-vebox:
      shard-kbl:          SKIP -> PASS +2

    igt@gem_linear_blits@interruptible:
      shard-apl:          PASS -> SKIP

    igt@kms_cursor_crc@cursor-128x128-offscreen:
      shard-snb:          PASS -> SKIP

    igt@kms_plane_multiple@atomic-pipe-b-tiling-x:
      shard-snb:          SKIP -> PASS +1

    
== Known issues ==

  Here are the changes found in Patchwork_9429_full that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_selftest@live_hangcheck:
      shard-glk:          PASS -> DMESG-FAIL (fdo#106560, fdo#106947)

    igt@gem_exec_schedule@pi-ringfull-bsd2:
      shard-kbl:          NOTRUN -> FAIL (fdo#103158)

    igt@gem_exec_schedule@preemptive-hang-render:
      shard-snb:          SKIP -> INCOMPLETE (fdo#105411)

    igt@kms_flip@dpms-vs-vblank-race:
      shard-glk:          PASS -> FAIL (fdo#103060)

    igt@kms_flip_tiling@flip-to-x-tiled:
      shard-glk:          PASS -> FAIL (fdo#103822, fdo#104724)

    igt@kms_flip_tiling@flip-x-tiled:
      shard-glk:          PASS -> FAIL (fdo#104724)

    igt@kms_setmode@basic:
      shard-apl:          PASS -> FAIL (fdo#99912)

    
    ==== Possible fixes ====

    igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size:
      shard-hsw:          FAIL (fdo#103355) -> PASS

    igt@kms_flip@flip-vs-expired-vblank:
      shard-glk:          FAIL (fdo#105363, fdo#102887) -> PASS

    igt@kms_flip@plain-flip-fb-recreate:
      shard-glk:          FAIL (fdo#100368) -> PASS +1

    igt@kms_setmode@basic:
      shard-kbl:          FAIL (fdo#99912) -> PASS

    
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158
  fdo#103355 https://bugs.freedesktop.org/show_bug.cgi?id=103355
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
  fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
  fdo#106947 https://bugs.freedesktop.org/show_bug.cgi?id=106947
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

    * Linux: CI_DRM_4382 -> Patchwork_9429

  CI_DRM_4382: ffc2d866e9b04af3cc2244bb7448d7f7eb438a89 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4530: 0e98bf69f146eb72fe3a7c3b19a049b5786f0ca3 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9429: 52ee5878407ba7463503f72e878c899f51721d09 @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9429/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 09/10] drm/vc4: Use drm_crtc_mask()
  2018-06-26 19:47 ` [PATCH 09/10] drm/vc4: " Ville Syrjala
  2018-06-26 20:17   ` Rodrigo Vivi
@ 2018-06-26 23:08   ` Eric Anholt
  1 sibling, 0 replies; 30+ messages in thread
From: Eric Anholt @ 2018-06-26 23:08 UTC (permalink / raw)
  To: Ville Syrjala, dri-devel; +Cc: intel-gfx


[-- Attachment #1.1: Type: text/plain, Size: 205 bytes --]

Ville Syrjala <ville.syrjala@linux.intel.com> writes:

> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Use drm_crtc_mask() where appropriate.

Reviewed-by: Eric Anholt <eric@anholt.net>

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 08/10] drm/sun4i: Use drm_crtc_mask()
  2018-06-26 19:47 ` [PATCH 08/10] drm/sun4i: " Ville Syrjala
  2018-06-26 20:17   ` Rodrigo Vivi
@ 2018-06-27  7:34   ` Maxime Ripard
  1 sibling, 0 replies; 30+ messages in thread
From: Maxime Ripard @ 2018-06-27  7:34 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 10:47:14PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_crtc_mask() where appropriate.
> 
> Cc: Maxime Ripard <maxime.ripard@bootlin.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>

Maxime

-- 
Maxime Ripard, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 06/10] drm/imx: Use drm_plane_mask()
  2018-06-26 19:47 ` [PATCH 06/10] drm/imx: Use drm_plane_mask() Ville Syrjala
  2018-06-26 20:16   ` Rodrigo Vivi
@ 2018-06-27  8:01   ` Philipp Zabel
  1 sibling, 0 replies; 30+ messages in thread
From: Philipp Zabel @ 2018-06-27  8:01 UTC (permalink / raw)
  To: Ville Syrjala, dri-devel; +Cc: intel-gfx

On Tue, 2018-06-26 at 22:47 +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_plane_mask() where appropriate.
> 
> Cc: Philipp Zabel <p.zabel@pengutronix.de>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
>  drivers/gpu/drm/imx/ipuv3-crtc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c
> index e83af0f2be86..21d002859ae0 100644
> --- a/drivers/gpu/drm/imx/ipuv3-crtc.c
> +++ b/drivers/gpu/drm/imx/ipuv3-crtc.c
> @@ -213,7 +213,7 @@ static bool ipu_crtc_mode_fixup(struct drm_crtc *crtc,
>  static int ipu_crtc_atomic_check(struct drm_crtc *crtc,
>  				 struct drm_crtc_state *state)
>  {
> -	u32 primary_plane_mask = 1 << drm_plane_index(crtc->primary);
> +	u32 primary_plane_mask = drm_plane_mask(crtc->primary);
>  
>  	if (state->active && (primary_plane_mask & state->plane_mask) == 0)
>  		return -EINVAL;

Acked-by: Philipp Zabel <p.zabel@pengutronix.de>

regards
Philipp
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 07/10] drm/rockchip: Use drm_crtc_mask()
  2018-06-26 19:47 ` [PATCH 07/10] drm/rockchip: Use drm_crtc_mask() Ville Syrjala
  2018-06-26 20:16   ` [Intel-gfx] " Rodrigo Vivi
@ 2018-06-27 13:09   ` Heiko Stuebner
  1 sibling, 0 replies; 30+ messages in thread
From: Heiko Stuebner @ 2018-06-27 13:09 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, Sandy Huang, dri-devel

Am Dienstag, 26. Juni 2018, 21:47:13 CEST schrieb Ville Syrjala:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_crtc_mask() where appropriate.
> 
> Cc: Sandy Huang <hjc@rock-chips.com>
> Cc: "Heiko Stübner" <heiko@sntech.de>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

thanks for that small cleanup, applied to drm-misc-next

Thanks
Heiko


_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 01/10] drm: Add drm_plane_mask()
  2018-06-26 20:09 ` [PATCH 01/10] drm: Add drm_plane_mask() Rodrigo Vivi
@ 2018-07-02 15:55   ` Ville Syrjälä
  0 siblings, 0 replies; 30+ messages in thread
From: Ville Syrjälä @ 2018-07-02 15:55 UTC (permalink / raw)
  To: Rodrigo Vivi; +Cc: intel-gfx, dri-devel

On Tue, Jun 26, 2018 at 01:09:53PM -0700, Rodrigo Vivi wrote:
> On Tue, Jun 26, 2018 at 10:47:07PM +0300, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > 
> > Add drm_plane_mask() which returns the 1<<index for the plane.
> > We already have an identical drm_crtc_mask() for crtcs.
> > 
> > Mostly performed with coccinelle:
> > @@
> > @@
> > - (1<<drm_plane_index(
> > + drm_plane_mask(
> >   ...)
> > -  )
> > 
> > @@
> > @@
> > - 1<<drm_plane_index(
> > + drm_plane_mask(
> >   ...)
> > 
> > @@
> > @@
> > - BIT(drm_plane_index(
> > + drm_plane_mask(
> >   ...)
> > - )
> > 
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

Series pushed to drm-misc-next. Thanks for the reviews/acks.

> 
> > ---
> >  drivers/gpu/drm/drm_atomic.c            |  4 ++--
> >  drivers/gpu/drm/drm_framebuffer.c       |  2 +-
> >  drivers/gpu/drm/drm_simple_kms_helper.c |  2 +-
> >  include/drm/drm_plane.h                 | 14 ++++++++++++--
> >  4 files changed, 16 insertions(+), 6 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> > index 178842380f75..684c9d3a1d6c 100644
> > --- a/drivers/gpu/drm/drm_atomic.c
> > +++ b/drivers/gpu/drm/drm_atomic.c
> > @@ -1581,7 +1581,7 @@ drm_atomic_set_crtc_for_plane(struct drm_plane_state *plane_state,
> >  		if (WARN_ON(IS_ERR(crtc_state)))
> >  			return PTR_ERR(crtc_state);
> >  
> > -		crtc_state->plane_mask &= ~(1 << drm_plane_index(plane));
> > +		crtc_state->plane_mask &= ~drm_plane_mask(plane);
> >  	}
> >  
> >  	plane_state->crtc = crtc;
> > @@ -1591,7 +1591,7 @@ drm_atomic_set_crtc_for_plane(struct drm_plane_state *plane_state,
> >  						       crtc);
> >  		if (IS_ERR(crtc_state))
> >  			return PTR_ERR(crtc_state);
> > -		crtc_state->plane_mask |= (1 << drm_plane_index(plane));
> > +		crtc_state->plane_mask |= drm_plane_mask(plane);
> >  	}
> >  
> >  	if (crtc)
> > diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c
> > index ed90974a452a..781af1d42d76 100644
> > --- a/drivers/gpu/drm/drm_framebuffer.c
> > +++ b/drivers/gpu/drm/drm_framebuffer.c
> > @@ -847,7 +847,7 @@ static int atomic_remove_fb(struct drm_framebuffer *fb)
> >  		if (ret)
> >  			goto unlock;
> >  
> > -		plane_mask |= BIT(drm_plane_index(plane));
> > +		plane_mask |= drm_plane_mask(plane);
> >  	}
> >  
> >  	/* This list is only filled when disable_crtcs is set. */
> > diff --git a/drivers/gpu/drm/drm_simple_kms_helper.c b/drivers/gpu/drm/drm_simple_kms_helper.c
> > index 7a00455ca568..9d87961da1db 100644
> > --- a/drivers/gpu/drm/drm_simple_kms_helper.c
> > +++ b/drivers/gpu/drm/drm_simple_kms_helper.c
> > @@ -52,7 +52,7 @@ static int drm_simple_kms_crtc_check(struct drm_crtc *crtc,
> >  				     struct drm_crtc_state *state)
> >  {
> >  	bool has_primary = state->plane_mask &
> > -			   BIT(drm_plane_index(crtc->primary));
> > +			   drm_plane_mask(crtc->primary);
> >  
> >  	/* We always want to have an active plane with an active CRTC */
> >  	if (has_primary != state->enable)
> > diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h
> > index 7d4d6c7f0afd..cee9dfaaa740 100644
> > --- a/include/drm/drm_plane.h
> > +++ b/include/drm/drm_plane.h
> > @@ -639,10 +639,20 @@ void drm_plane_cleanup(struct drm_plane *plane);
> >   * Given a registered plane, return the index of that plane within a DRM
> >   * device's list of planes.
> >   */
> > -static inline unsigned int drm_plane_index(struct drm_plane *plane)
> > +static inline unsigned int drm_plane_index(const struct drm_plane *plane)
> >  {
> >  	return plane->index;
> >  }
> > +
> > +/**
> > + * drm_plane_mask - find the mask of a registered plane
> > + * @plane: plane to find mask for
> > + */
> > +static inline u32 drm_plane_mask(const struct drm_plane *plane)
> > +{
> > +	return 1 << drm_plane_index(plane);
> > +}
> > +
> >  struct drm_plane * drm_plane_from_index(struct drm_device *dev, int idx);
> >  void drm_plane_force_disable(struct drm_plane *plane);
> >  
> > @@ -678,7 +688,7 @@ static inline struct drm_plane *drm_plane_find(struct drm_device *dev,
> >   */
> >  #define drm_for_each_plane_mask(plane, dev, plane_mask) \
> >  	list_for_each_entry((plane), &(dev)->mode_config.plane_list, head) \
> > -		for_each_if ((plane_mask) & (1 << drm_plane_index(plane)))
> > +		for_each_if ((plane_mask) & drm_plane_mask(plane))
> >  
> >  /**
> >   * drm_for_each_legacy_plane - iterate over all planes for legacy userspace
> > -- 
> > 2.16.4
> > 
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co.
  2018-06-26 19:47 ` [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co Ville Syrjala
  2018-06-26 20:17   ` Rodrigo Vivi
@ 2018-07-02 17:00   ` Sinclair Yeh
  2018-07-03 12:34     ` Ville Syrjälä
  1 sibling, 1 reply; 30+ messages in thread
From: Sinclair Yeh @ 2018-07-02 17:00 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: intel-gfx, VMware Graphics, Thomas Hellstrom, dri-devel

Reviewed-by: Sinclair Yeh <syeh@vmware.com>

I assume you'll upstream this as part of your series?

On Tue, Jun 26, 2018 at 10:47:16PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Use drm_{plane,connector}_mask() where appropriate.
> 
> Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
> Cc: Sinclair Yeh <syeh@vmware.com>
> Cc: Thomas Hellstrom <thellstrom@vmware.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
>  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> index ef96ba7432ad..17e01423ead1 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> @@ -535,9 +535,9 @@ int vmw_du_crtc_atomic_check(struct drm_crtc *crtc,
>  			     struct drm_crtc_state *new_state)
>  {
>  	struct vmw_display_unit *du = vmw_crtc_to_du(new_state->crtc);
> -	int connector_mask = 1 << drm_connector_index(&du->connector);
> +	int connector_mask = drm_connector_mask(&du->connector);
>  	bool has_primary = new_state->plane_mask &
> -			   BIT(drm_plane_index(crtc->primary));
> +			   drm_plane_mask(crtc->primary);
>  
>  	/* We always want to have an active plane with an active CRTC */
>  	if (has_primary != new_state->enable)
> -- 
> 2.16.4
> 
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co.
  2018-07-02 17:00   ` Sinclair Yeh
@ 2018-07-03 12:34     ` Ville Syrjälä
  0 siblings, 0 replies; 30+ messages in thread
From: Ville Syrjälä @ 2018-07-03 12:34 UTC (permalink / raw)
  To: Sinclair Yeh; +Cc: intel-gfx, VMware Graphics, Thomas Hellstrom, dri-devel

On Mon, Jul 02, 2018 at 10:00:35AM -0700, Sinclair Yeh wrote:
> Reviewed-by: Sinclair Yeh <syeh@vmware.com>
> 
> I assume you'll upstream this as part of your series?

Already pushed actually. In my haste I failed to realize I was
still missing an ack/rb for vmwgfx. Sorry about that.

> 
> On Tue, Jun 26, 2018 at 10:47:16PM +0300, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > 
> > Use drm_{plane,connector}_mask() where appropriate.
> > 
> > Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
> > Cc: Sinclair Yeh <syeh@vmware.com>
> > Cc: Thomas Hellstrom <thellstrom@vmware.com>
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> >  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> > index ef96ba7432ad..17e01423ead1 100644
> > --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> > +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> > @@ -535,9 +535,9 @@ int vmw_du_crtc_atomic_check(struct drm_crtc *crtc,
> >  			     struct drm_crtc_state *new_state)
> >  {
> >  	struct vmw_display_unit *du = vmw_crtc_to_du(new_state->crtc);
> > -	int connector_mask = 1 << drm_connector_index(&du->connector);
> > +	int connector_mask = drm_connector_mask(&du->connector);
> >  	bool has_primary = new_state->plane_mask &
> > -			   BIT(drm_plane_index(crtc->primary));
> > +			   drm_plane_mask(crtc->primary);
> >  
> >  	/* We always want to have an active plane with an active CRTC */
> >  	if (has_primary != new_state->enable)
> > -- 
> > 2.16.4
> > 

-- 
Ville Syrjälä
Intel
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2018-07-03 12:34 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-26 19:47 [PATCH 01/10] drm: Add drm_plane_mask() Ville Syrjala
2018-06-26 19:47 ` [PATCH 02/10] drm: Use drm_crtc_mask() Ville Syrjala
2018-06-26 20:11   ` Rodrigo Vivi
2018-06-26 19:47 ` [PATCH 03/10] drm: Add drm_encoder_mask() Ville Syrjala
2018-06-26 20:11   ` Rodrigo Vivi
2018-06-26 19:47 ` [PATCH 04/10] drm: Add drm_connector_mask() Ville Syrjala
2018-06-26 20:12   ` Rodrigo Vivi
2018-06-26 19:47 ` [PATCH 05/10] drm/i915: Use drm_plane_mask() & co Ville Syrjala
2018-06-26 20:16   ` Rodrigo Vivi
2018-06-26 19:47 ` [PATCH 06/10] drm/imx: Use drm_plane_mask() Ville Syrjala
2018-06-26 20:16   ` Rodrigo Vivi
2018-06-27  8:01   ` Philipp Zabel
2018-06-26 19:47 ` [PATCH 07/10] drm/rockchip: Use drm_crtc_mask() Ville Syrjala
2018-06-26 20:16   ` [Intel-gfx] " Rodrigo Vivi
2018-06-27 13:09   ` Heiko Stuebner
2018-06-26 19:47 ` [PATCH 08/10] drm/sun4i: " Ville Syrjala
2018-06-26 20:17   ` Rodrigo Vivi
2018-06-27  7:34   ` Maxime Ripard
2018-06-26 19:47 ` [PATCH 09/10] drm/vc4: " Ville Syrjala
2018-06-26 20:17   ` Rodrigo Vivi
2018-06-26 23:08   ` Eric Anholt
2018-06-26 19:47 ` [PATCH 10/10] drm/vmwgfx: Use drm_plane_mask() & co Ville Syrjala
2018-06-26 20:17   ` Rodrigo Vivi
2018-07-02 17:00   ` Sinclair Yeh
2018-07-03 12:34     ` Ville Syrjälä
2018-06-26 20:09 ` [PATCH 01/10] drm: Add drm_plane_mask() Rodrigo Vivi
2018-07-02 15:55   ` Ville Syrjälä
2018-06-26 20:13 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [01/10] " Patchwork
2018-06-26 20:30 ` ✓ Fi.CI.BAT: success " Patchwork
2018-06-26 23:04 ` ✓ Fi.CI.IGT: " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.