* [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.