All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/10] drm_mode_object_find -> helpers
@ 2014-07-18  3:29 Rob Clark
  2014-07-18  3:29 ` [PATCH 01/10] drm/ast: use helpers Rob Clark
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:29 UTC (permalink / raw)
  To: dri-devel

Slightly overdue, but retrofit recently added helpers to drivers.
Note that there are a couple places left in core, but they get
replaced in the atomic series and I didn't feel like making extra
conflicts for myself.

Rob Clark (10):
  drm/ast: use helpers
  drm/bochs: use helpers
  drm/cirrus: use helpers
  drm/exynos: use helpers
  drm/mgag200: use helpers
  drm/udl: use helpers
  drm/vmwgfx: use helpers
  drm/nouveau: use helpers
  drm/i915: use helpers
  drm/radeon: use helpers

 drivers/gpu/drm/ast/ast_mode.c                | 12 +----
 drivers/gpu/drm/bochs/bochs_kms.c             | 13 +-----
 drivers/gpu/drm/cirrus/cirrus_mode.c          | 14 +-----
 drivers/gpu/drm/exynos/exynos_drm_connector.c | 15 +-----
 drivers/gpu/drm/i915/intel_display.c          |  9 ++--
 drivers/gpu/drm/i915/intel_overlay.c          |  9 ++--
 drivers/gpu/drm/i915/intel_sprite.c           | 12 ++---
 drivers/gpu/drm/mgag200/mgag200_mode.c        | 14 +-----
 drivers/gpu/drm/nouveau/nouveau_connector.c   | 16 +++----
 drivers/gpu/drm/radeon/r100.c                 |  6 +--
 drivers/gpu/drm/radeon/r600_cs.c              |  6 +--
 drivers/gpu/drm/radeon/radeon_connectors.c    | 66 ++++++++-------------------
 drivers/gpu/drm/udl/udl_connector.c           |  9 +---
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c           |  6 +--
 14 files changed, 54 insertions(+), 153 deletions(-)

-- 
1.9.3

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

* [PATCH 01/10] drm/ast: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
@ 2014-07-18  3:29 ` Rob Clark
  2014-07-18  3:29 ` [PATCH 02/10] drm/bochs: " Rob Clark
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:29 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/ast/ast_mode.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/ast/ast_mode.c b/drivers/gpu/drm/ast/ast_mode.c
index 9896286..5389350 100644
--- a/drivers/gpu/drm/ast/ast_mode.c
+++ b/drivers/gpu/drm/ast/ast_mode.c
@@ -667,17 +667,9 @@ static void ast_encoder_destroy(struct drm_encoder *encoder)
 static struct drm_encoder *ast_best_single_encoder(struct drm_connector *connector)
 {
 	int enc_id = connector->encoder_ids[0];
-	struct drm_mode_object *obj;
-	struct drm_encoder *encoder;
-
 	/* pick the encoder ids */
-	if (enc_id) {
-		obj = drm_mode_object_find(connector->dev, enc_id, DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
-			return NULL;
-		encoder = obj_to_encoder(obj);
-		return encoder;
-	}
+	if (enc_id)
+		return drm_encoder_find(connector->dev, enc_id);
 	return NULL;
 }
 
-- 
1.9.3

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

* [PATCH 02/10] drm/bochs: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
  2014-07-18  3:29 ` [PATCH 01/10] drm/ast: use helpers Rob Clark
@ 2014-07-18  3:29 ` Rob Clark
  2014-07-18  3:29 ` [PATCH 03/10] drm/cirrus: " Rob Clark
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:29 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/bochs/bochs_kms.c | 13 ++-----------
 1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/bochs/bochs_kms.c b/drivers/gpu/drm/bochs/bochs_kms.c
index dcf2e55..b3c6130 100644
--- a/drivers/gpu/drm/bochs/bochs_kms.c
+++ b/drivers/gpu/drm/bochs/bochs_kms.c
@@ -216,18 +216,9 @@ static struct drm_encoder *
 bochs_connector_best_encoder(struct drm_connector *connector)
 {
 	int enc_id = connector->encoder_ids[0];
-	struct drm_mode_object *obj;
-	struct drm_encoder *encoder;
-
 	/* pick the encoder ids */
-	if (enc_id) {
-		obj = drm_mode_object_find(connector->dev, enc_id,
-					   DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
-			return NULL;
-		encoder = obj_to_encoder(obj);
-		return encoder;
-	}
+	if (enc_id)
+		return drm_encoder_find(connector->dev, enc_id);
 	return NULL;
 }
 
-- 
1.9.3

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

* [PATCH 03/10] drm/cirrus: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
  2014-07-18  3:29 ` [PATCH 01/10] drm/ast: use helpers Rob Clark
  2014-07-18  3:29 ` [PATCH 02/10] drm/bochs: " Rob Clark
@ 2014-07-18  3:29 ` Rob Clark
  2014-07-18  3:29 ` [PATCH 04/10] drm/exynos: " Rob Clark
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:29 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/cirrus/cirrus_mode.c | 14 ++------------
 1 file changed, 2 insertions(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/cirrus/cirrus_mode.c b/drivers/gpu/drm/cirrus/cirrus_mode.c
index 49332c5..e1c5c32 100644
--- a/drivers/gpu/drm/cirrus/cirrus_mode.c
+++ b/drivers/gpu/drm/cirrus/cirrus_mode.c
@@ -509,19 +509,9 @@ static struct drm_encoder *cirrus_connector_best_encoder(struct drm_connector
 						  *connector)
 {
 	int enc_id = connector->encoder_ids[0];
-	struct drm_mode_object *obj;
-	struct drm_encoder *encoder;
-
 	/* pick the encoder ids */
-	if (enc_id) {
-		obj =
-		    drm_mode_object_find(connector->dev, enc_id,
-					 DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
-			return NULL;
-		encoder = obj_to_encoder(obj);
-		return encoder;
-	}
+	if (enc_id)
+		return drm_encoder_find(connector->dev, enc_id);
 	return NULL;
 }
 
-- 
1.9.3

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

* [PATCH 04/10] drm/exynos: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (2 preceding siblings ...)
  2014-07-18  3:29 ` [PATCH 03/10] drm/cirrus: " Rob Clark
@ 2014-07-18  3:29 ` Rob Clark
  2014-07-18  3:30 ` [PATCH 05/10] drm/mgag200: " Rob Clark
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:29 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/exynos/exynos_drm_connector.c | 15 +--------------
 1 file changed, 1 insertion(+), 14 deletions(-)

diff --git a/drivers/gpu/drm/exynos/exynos_drm_connector.c b/drivers/gpu/drm/exynos/exynos_drm_connector.c
index 25c7888..ba9b3d5 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_connector.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_connector.c
@@ -117,20 +117,7 @@ static struct drm_encoder *exynos_drm_best_encoder(
 	struct drm_device *dev = connector->dev;
 	struct exynos_drm_connector *exynos_connector =
 					to_exynos_connector(connector);
-	struct drm_mode_object *obj;
-	struct drm_encoder *encoder;
-
-	obj = drm_mode_object_find(dev, exynos_connector->encoder_id,
-				   DRM_MODE_OBJECT_ENCODER);
-	if (!obj) {
-		DRM_DEBUG_KMS("Unknown ENCODER ID %d\n",
-				exynos_connector->encoder_id);
-		return NULL;
-	}
-
-	encoder = obj_to_encoder(obj);
-
-	return encoder;
+	return drm_encoder_find(dev, exynos_connector->encoder_id);
 }
 
 static struct drm_connector_helper_funcs exynos_connector_helper_funcs = {
-- 
1.9.3

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

* [PATCH 05/10] drm/mgag200: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (3 preceding siblings ...)
  2014-07-18  3:29 ` [PATCH 04/10] drm/exynos: " Rob Clark
@ 2014-07-18  3:30 ` Rob Clark
  2014-07-18  3:30 ` [PATCH 06/10] drm/udl: " Rob Clark
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:30 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/mgag200/mgag200_mode.c | 14 ++------------
 1 file changed, 2 insertions(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c
index f9fe390..45f04de 100644
--- a/drivers/gpu/drm/mgag200/mgag200_mode.c
+++ b/drivers/gpu/drm/mgag200/mgag200_mode.c
@@ -1562,19 +1562,9 @@ static struct drm_encoder *mga_connector_best_encoder(struct drm_connector
 						  *connector)
 {
 	int enc_id = connector->encoder_ids[0];
-	struct drm_mode_object *obj;
-	struct drm_encoder *encoder;
-
 	/* pick the encoder ids */
-	if (enc_id) {
-		obj =
-		    drm_mode_object_find(connector->dev, enc_id,
-					 DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
-			return NULL;
-		encoder = obj_to_encoder(obj);
-		return encoder;
-	}
+	if (enc_id)
+		return drm_encoder_find(connector->dev, enc_id);
 	return NULL;
 }
 
-- 
1.9.3

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

* [PATCH 06/10] drm/udl: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (4 preceding siblings ...)
  2014-07-18  3:30 ` [PATCH 05/10] drm/mgag200: " Rob Clark
@ 2014-07-18  3:30 ` Rob Clark
  2014-07-18  3:30 ` [PATCH 07/10] drm/vmwgfx: " Rob Clark
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:30 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/udl/udl_connector.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/udl/udl_connector.c b/drivers/gpu/drm/udl/udl_connector.c
index dea38ab..e026a9e 100644
--- a/drivers/gpu/drm/udl/udl_connector.c
+++ b/drivers/gpu/drm/udl/udl_connector.c
@@ -105,14 +105,7 @@ static struct drm_encoder*
 udl_best_single_encoder(struct drm_connector *connector)
 {
 	int enc_id = connector->encoder_ids[0];
-	struct drm_mode_object *obj;
-	struct drm_encoder *encoder;
-
-	obj = drm_mode_object_find(connector->dev, enc_id, DRM_MODE_OBJECT_ENCODER);
-	if (!obj)
-		return NULL;
-	encoder = obj_to_encoder(obj);
-	return encoder;
+	return drm_encoder_find(connector->dev, enc_id);
 }
 
 static int udl_connector_set_property(struct drm_connector *connector,
-- 
1.9.3

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

* [PATCH 07/10] drm/vmwgfx: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (5 preceding siblings ...)
  2014-07-18  3:30 ` [PATCH 06/10] drm/udl: " Rob Clark
@ 2014-07-18  3:30 ` Rob Clark
  2014-07-18  3:30 ` [PATCH 08/10] drm/nouveau: " Rob Clark
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:30 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
index 1a024e3..991e5c8 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
@@ -1501,7 +1501,6 @@ int vmw_kms_cursor_bypass_ioctl(struct drm_device *dev, void *data,
 {
 	struct drm_vmw_cursor_bypass_arg *arg = data;
 	struct vmw_display_unit *du;
-	struct drm_mode_object *obj;
 	struct drm_crtc *crtc;
 	int ret = 0;
 
@@ -1519,13 +1518,12 @@ int vmw_kms_cursor_bypass_ioctl(struct drm_device *dev, void *data,
 		return 0;
 	}
 
-	obj = drm_mode_object_find(dev, arg->crtc_id, DRM_MODE_OBJECT_CRTC);
-	if (!obj) {
+	crtc = drm_crtc_find(dev, arg->crtc_id);
+	if (!crtc) {
 		ret = -ENOENT;
 		goto out;
 	}
 
-	crtc = obj_to_crtc(obj);
 	du = vmw_crtc_to_du(crtc);
 
 	du->hotspot_x = arg->xhot;
-- 
1.9.3

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

* [PATCH 08/10] drm/nouveau: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (6 preceding siblings ...)
  2014-07-18  3:30 ` [PATCH 07/10] drm/vmwgfx: " Rob Clark
@ 2014-07-18  3:30 ` Rob Clark
  2014-07-18  3:30 ` [PATCH 09/10] drm/i915: " Rob Clark
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:30 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/nouveau/nouveau_connector.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
index 680f46d..dbdc9ad 100644
--- a/drivers/gpu/drm/nouveau/nouveau_connector.c
+++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
@@ -63,7 +63,7 @@ find_encoder(struct drm_connector *connector, int type)
 {
 	struct drm_device *dev = connector->dev;
 	struct nouveau_encoder *nv_encoder;
-	struct drm_mode_object *obj;
+	struct drm_encoder *enc;
 	int i, id;
 
 	for (i = 0; i < DRM_CONNECTOR_MAX_ENCODER; i++) {
@@ -71,10 +71,10 @@ find_encoder(struct drm_connector *connector, int type)
 		if (!id)
 			break;
 
-		obj = drm_mode_object_find(dev, id, DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
+		enc = drm_encoder_find(dev, id);
+		if (!enc)
 			continue;
-		nv_encoder = nouveau_encoder(obj_to_encoder(obj));
+		nv_encoder = nouveau_encoder(enc);
 
 		if (type == DCB_OUTPUT_ANY ||
 		    (nv_encoder->dcb && nv_encoder->dcb->type == type))
@@ -119,7 +119,7 @@ nouveau_connector_ddc_detect(struct drm_connector *connector)
 	struct nouveau_drm *drm = nouveau_drm(dev);
 	struct nouveau_gpio *gpio = nouveau_gpio(drm->device);
 	struct nouveau_encoder *nv_encoder;
-	struct drm_mode_object *obj;
+	struct drm_encoder *encoder;
 	int i, panel = -ENODEV;
 
 	/* eDP panels need powering on by us (if the VBIOS doesn't default it
@@ -139,10 +139,10 @@ nouveau_connector_ddc_detect(struct drm_connector *connector)
 		if (id == 0)
 			break;
 
-		obj = drm_mode_object_find(dev, id, DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
+		encoder = drm_encoder_find(dev, id);
+		if (!encoder)
 			continue;
-		nv_encoder = nouveau_encoder(obj_to_encoder(obj));
+		nv_encoder = nouveau_encoder(encoder);
 
 		if (nv_encoder->dcb->type == DCB_OUTPUT_DP) {
 			int ret = nouveau_dp_detect(nv_encoder);
-- 
1.9.3

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

* [PATCH 09/10] drm/i915: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (7 preceding siblings ...)
  2014-07-18  3:30 ` [PATCH 08/10] drm/nouveau: " Rob Clark
@ 2014-07-18  3:30 ` Rob Clark
  2014-07-18  3:30 ` [PATCH 10/10] drm/radeon: " Rob Clark
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:30 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/i915/intel_display.c |  9 ++++-----
 drivers/gpu/drm/i915/intel_overlay.c |  9 ++++-----
 drivers/gpu/drm/i915/intel_sprite.c  | 12 ++++--------
 3 files changed, 12 insertions(+), 18 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 927d247..8796eb1 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -11738,21 +11738,20 @@ int intel_get_pipe_from_crtc_id(struct drm_device *dev, void *data,
 				struct drm_file *file)
 {
 	struct drm_i915_get_pipe_from_crtc_id *pipe_from_crtc_id = data;
-	struct drm_mode_object *drmmode_obj;
+	struct drm_crtc *drmmode_crtc;
 	struct intel_crtc *crtc;
 
 	if (!drm_core_check_feature(dev, DRIVER_MODESET))
 		return -ENODEV;
 
-	drmmode_obj = drm_mode_object_find(dev, pipe_from_crtc_id->crtc_id,
-			DRM_MODE_OBJECT_CRTC);
+	drmmode_crtc = drm_crtc_find(dev, pipe_from_crtc_id->crtc_id);
 
-	if (!drmmode_obj) {
+	if (!drmmode_crtc) {
 		DRM_ERROR("no such CRTC id\n");
 		return -ENOENT;
 	}
 
-	crtc = to_intel_crtc(obj_to_crtc(drmmode_obj));
+	crtc = to_intel_crtc(drmmode_crtc);
 	pipe_from_crtc_id->pipe = crtc->pipe;
 
 	return 0;
diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
index 307c2f1..dc2f4f2 100644
--- a/drivers/gpu/drm/i915/intel_overlay.c
+++ b/drivers/gpu/drm/i915/intel_overlay.c
@@ -1039,7 +1039,7 @@ int intel_overlay_put_image(struct drm_device *dev, void *data,
 	struct drm_intel_overlay_put_image *put_image_rec = data;
 	struct drm_i915_private *dev_priv = dev->dev_private;
 	struct intel_overlay *overlay;
-	struct drm_mode_object *drmmode_obj;
+	struct drm_crtc *drmmode_crtc;
 	struct intel_crtc *crtc;
 	struct drm_i915_gem_object *new_bo;
 	struct put_image_params *params;
@@ -1068,13 +1068,12 @@ int intel_overlay_put_image(struct drm_device *dev, void *data,
 	if (!params)
 		return -ENOMEM;
 
-	drmmode_obj = drm_mode_object_find(dev, put_image_rec->crtc_id,
-					   DRM_MODE_OBJECT_CRTC);
-	if (!drmmode_obj) {
+	drmmode_crtc = drm_crtc_find(dev, put_image_rec->crtc_id);
+	if (!drmmode_crtc) {
 		ret = -ENOENT;
 		goto out_free;
 	}
-	crtc = to_intel_crtc(obj_to_crtc(drmmode_obj));
+	crtc = to_intel_crtc(drmmode_crtc);
 
 	new_bo = to_intel_bo(drm_gem_object_lookup(dev, file_priv,
 						   put_image_rec->bo_handle));
diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
index 985317e..6afd1cf 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
@@ -1123,7 +1123,6 @@ int intel_sprite_set_colorkey(struct drm_device *dev, void *data,
 			      struct drm_file *file_priv)
 {
 	struct drm_intel_sprite_colorkey *set = data;
-	struct drm_mode_object *obj;
 	struct drm_plane *plane;
 	struct intel_plane *intel_plane;
 	int ret = 0;
@@ -1137,13 +1136,12 @@ int intel_sprite_set_colorkey(struct drm_device *dev, void *data,
 
 	drm_modeset_lock_all(dev);
 
-	obj = drm_mode_object_find(dev, set->plane_id, DRM_MODE_OBJECT_PLANE);
-	if (!obj) {
+	plane = drm_plane_find(dev, set->plane_id);
+	if (!plane) {
 		ret = -ENOENT;
 		goto out_unlock;
 	}
 
-	plane = obj_to_plane(obj);
 	intel_plane = to_intel_plane(plane);
 	ret = intel_plane->update_colorkey(plane, set);
 
@@ -1156,7 +1154,6 @@ int intel_sprite_get_colorkey(struct drm_device *dev, void *data,
 			      struct drm_file *file_priv)
 {
 	struct drm_intel_sprite_colorkey *get = data;
-	struct drm_mode_object *obj;
 	struct drm_plane *plane;
 	struct intel_plane *intel_plane;
 	int ret = 0;
@@ -1166,13 +1163,12 @@ int intel_sprite_get_colorkey(struct drm_device *dev, void *data,
 
 	drm_modeset_lock_all(dev);
 
-	obj = drm_mode_object_find(dev, get->plane_id, DRM_MODE_OBJECT_PLANE);
-	if (!obj) {
+	plane = drm_plane_find(dev, get->plane_id);
+	if (!plane) {
 		ret = -ENOENT;
 		goto out_unlock;
 	}
 
-	plane = obj_to_plane(obj);
 	intel_plane = to_intel_plane(plane);
 	intel_plane->get_colorkey(plane, get);
 
-- 
1.9.3

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

* [PATCH 10/10] drm/radeon: use helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (8 preceding siblings ...)
  2014-07-18  3:30 ` [PATCH 09/10] drm/i915: " Rob Clark
@ 2014-07-18  3:30 ` Rob Clark
  2014-07-18 13:38 ` [PATCH 00/10] drm_mode_object_find -> helpers Daniel Vetter
  2014-07-18 14:05 ` Alex Deucher
  11 siblings, 0 replies; 13+ messages in thread
From: Rob Clark @ 2014-07-18  3:30 UTC (permalink / raw)
  To: dri-devel

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 drivers/gpu/drm/radeon/r100.c              |  6 +--
 drivers/gpu/drm/radeon/r600_cs.c           |  6 +--
 drivers/gpu/drm/radeon/radeon_connectors.c | 66 ++++++++----------------------
 3 files changed, 22 insertions(+), 56 deletions(-)

diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index 1544efc..ebdce08 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -1401,7 +1401,6 @@ int r100_cs_parse_packet0(struct radeon_cs_parser *p,
  */
 int r100_cs_packet_parse_vline(struct radeon_cs_parser *p)
 {
-	struct drm_mode_object *obj;
 	struct drm_crtc *crtc;
 	struct radeon_crtc *radeon_crtc;
 	struct radeon_cs_packet p3reloc, waitreloc;
@@ -1441,12 +1440,11 @@ int r100_cs_packet_parse_vline(struct radeon_cs_parser *p)
 	header = radeon_get_ib_value(p, h_idx);
 	crtc_id = radeon_get_ib_value(p, h_idx + 5);
 	reg = R100_CP_PACKET0_GET_REG(header);
-	obj = drm_mode_object_find(p->rdev->ddev, crtc_id, DRM_MODE_OBJECT_CRTC);
-	if (!obj) {
+	crtc = drm_crtc_find(p->rdev->ddev, crtc_id);
+	if (!crtc) {
 		DRM_ERROR("cannot find crtc %d\n", crtc_id);
 		return -ENOENT;
 	}
-	crtc = obj_to_crtc(obj);
 	radeon_crtc = to_radeon_crtc(crtc);
 	crtc_id = radeon_crtc->crtc_id;
 
diff --git a/drivers/gpu/drm/radeon/r600_cs.c b/drivers/gpu/drm/radeon/r600_cs.c
index 12511bb..c47537a 100644
--- a/drivers/gpu/drm/radeon/r600_cs.c
+++ b/drivers/gpu/drm/radeon/r600_cs.c
@@ -825,7 +825,6 @@ int r600_cs_common_vline_parse(struct radeon_cs_parser *p,
 			       uint32_t *vline_start_end,
 			       uint32_t *vline_status)
 {
-	struct drm_mode_object *obj;
 	struct drm_crtc *crtc;
 	struct radeon_crtc *radeon_crtc;
 	struct radeon_cs_packet p3reloc, wait_reg_mem;
@@ -887,12 +886,11 @@ int r600_cs_common_vline_parse(struct radeon_cs_parser *p,
 	crtc_id = radeon_get_ib_value(p, h_idx + 2 + 7 + 1);
 	reg = R600_CP_PACKET0_GET_REG(header);
 
-	obj = drm_mode_object_find(p->rdev->ddev, crtc_id, DRM_MODE_OBJECT_CRTC);
-	if (!obj) {
+	crtc = drm_crtc_find(p->rdev->ddev, crtc_id);
+	if (!crtc) {
 		DRM_ERROR("cannot find crtc %d\n", crtc_id);
 		return -ENOENT;
 	}
-	crtc = obj_to_crtc(obj);
 	radeon_crtc = to_radeon_crtc(crtc);
 	crtc_id = radeon_crtc->crtc_id;
 
diff --git a/drivers/gpu/drm/radeon/radeon_connectors.c b/drivers/gpu/drm/radeon/radeon_connectors.c
index 8137b7a..c667c43 100644
--- a/drivers/gpu/drm/radeon/radeon_connectors.c
+++ b/drivers/gpu/drm/radeon/radeon_connectors.c
@@ -216,7 +216,6 @@ radeon_connector_update_scratch_regs(struct drm_connector *connector, enum drm_c
 	struct drm_encoder *best_encoder = NULL;
 	struct drm_encoder *encoder = NULL;
 	struct drm_connector_helper_funcs *connector_funcs = connector->helper_private;
-	struct drm_mode_object *obj;
 	bool connected;
 	int i;
 
@@ -226,14 +225,11 @@ radeon_connector_update_scratch_regs(struct drm_connector *connector, enum drm_c
 		if (connector->encoder_ids[i] == 0)
 			break;
 
-		obj = drm_mode_object_find(connector->dev,
-					   connector->encoder_ids[i],
-					   DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
+		encoder = drm_encoder_find(connector->dev,
+					   connector->encoder_ids[i]);
+		if (!encoder)
 			continue;
 
-		encoder = obj_to_encoder(obj);
-
 		if ((encoder == best_encoder) && (status == connector_status_connected))
 			connected = true;
 		else
@@ -249,7 +245,6 @@ radeon_connector_update_scratch_regs(struct drm_connector *connector, enum drm_c
 
 static struct drm_encoder *radeon_find_encoder(struct drm_connector *connector, int encoder_type)
 {
-	struct drm_mode_object *obj;
 	struct drm_encoder *encoder;
 	int i;
 
@@ -257,11 +252,10 @@ static struct drm_encoder *radeon_find_encoder(struct drm_connector *connector,
 		if (connector->encoder_ids[i] == 0)
 			break;
 
-		obj = drm_mode_object_find(connector->dev, connector->encoder_ids[i], DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
+		encoder = drm_encoder_find(connector->dev, connector->encoder_ids[i]);
+		if (!encoder)
 			continue;
 
-		encoder = obj_to_encoder(obj);
 		if (encoder->encoder_type == encoder_type)
 			return encoder;
 	}
@@ -271,17 +265,9 @@ static struct drm_encoder *radeon_find_encoder(struct drm_connector *connector,
 static struct drm_encoder *radeon_best_single_encoder(struct drm_connector *connector)
 {
 	int enc_id = connector->encoder_ids[0];
-	struct drm_mode_object *obj;
-	struct drm_encoder *encoder;
-
 	/* pick the encoder ids */
-	if (enc_id) {
-		obj = drm_mode_object_find(connector->dev, enc_id, DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
-			return NULL;
-		encoder = obj_to_encoder(obj);
-		return encoder;
-	}
+	if (enc_id)
+		return drm_encoder_find(connector->dev, enc_id);
 	return NULL;
 }
 
@@ -1048,7 +1034,6 @@ radeon_dvi_detect(struct drm_connector *connector, bool force)
 	struct radeon_connector *radeon_connector = to_radeon_connector(connector);
 	struct drm_encoder *encoder = NULL;
 	struct drm_encoder_helper_funcs *encoder_funcs;
-	struct drm_mode_object *obj;
 	int i, r;
 	enum drm_connector_status ret = connector_status_disconnected;
 	bool dret = false, broken_edid = false;
@@ -1153,14 +1138,11 @@ radeon_dvi_detect(struct drm_connector *connector, bool force)
 			if (connector->encoder_ids[i] == 0)
 				break;
 
-			obj = drm_mode_object_find(connector->dev,
-						   connector->encoder_ids[i],
-						   DRM_MODE_OBJECT_ENCODER);
-			if (!obj)
+			encoder = drm_encoder_find(connector->dev,
+						   connector->encoder_ids[i]);
+			if (!encoder)
 				continue;
 
-			encoder = obj_to_encoder(obj);
-
 			if (encoder->encoder_type != DRM_MODE_ENCODER_DAC &&
 			    encoder->encoder_type != DRM_MODE_ENCODER_TVDAC)
 				continue;
@@ -1225,19 +1207,16 @@ static struct drm_encoder *radeon_dvi_encoder(struct drm_connector *connector)
 {
 	int enc_id = connector->encoder_ids[0];
 	struct radeon_connector *radeon_connector = to_radeon_connector(connector);
-	struct drm_mode_object *obj;
 	struct drm_encoder *encoder;
 	int i;
 	for (i = 0; i < DRM_CONNECTOR_MAX_ENCODER; i++) {
 		if (connector->encoder_ids[i] == 0)
 			break;
 
-		obj = drm_mode_object_find(connector->dev, connector->encoder_ids[i], DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
+		encoder = drm_encoder_find(connector->dev, connector->encoder_ids[i]);
+		if (!encoder)
 			continue;
 
-		encoder = obj_to_encoder(obj);
-
 		if (radeon_connector->use_digital == true) {
 			if (encoder->encoder_type == DRM_MODE_ENCODER_TMDS)
 				return encoder;
@@ -1252,13 +1231,8 @@ static struct drm_encoder *radeon_dvi_encoder(struct drm_connector *connector)
 
 	/* then check use digitial */
 	/* pick the first one */
-	if (enc_id) {
-		obj = drm_mode_object_find(connector->dev, enc_id, DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
-			return NULL;
-		encoder = obj_to_encoder(obj);
-		return encoder;
-	}
+	if (enc_id)
+		return drm_encoder_find(connector->dev, enc_id);
 	return NULL;
 }
 
@@ -1391,7 +1365,6 @@ static int radeon_dp_get_modes(struct drm_connector *connector)
 
 u16 radeon_connector_encoder_get_dp_bridge_encoder_id(struct drm_connector *connector)
 {
-	struct drm_mode_object *obj;
 	struct drm_encoder *encoder;
 	struct radeon_encoder *radeon_encoder;
 	int i;
@@ -1400,11 +1373,10 @@ u16 radeon_connector_encoder_get_dp_bridge_encoder_id(struct drm_connector *conn
 		if (connector->encoder_ids[i] == 0)
 			break;
 
-		obj = drm_mode_object_find(connector->dev, connector->encoder_ids[i], DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
+		encoder = drm_encoder_find(connector->dev, connector->encoder_ids[i]);
+		if (!encoder)
 			continue;
 
-		encoder = obj_to_encoder(obj);
 		radeon_encoder = to_radeon_encoder(encoder);
 
 		switch (radeon_encoder->encoder_id) {
@@ -1421,7 +1393,6 @@ u16 radeon_connector_encoder_get_dp_bridge_encoder_id(struct drm_connector *conn
 
 bool radeon_connector_encoder_is_hbr2(struct drm_connector *connector)
 {
-	struct drm_mode_object *obj;
 	struct drm_encoder *encoder;
 	struct radeon_encoder *radeon_encoder;
 	int i;
@@ -1431,11 +1402,10 @@ bool radeon_connector_encoder_is_hbr2(struct drm_connector *connector)
 		if (connector->encoder_ids[i] == 0)
 			break;
 
-		obj = drm_mode_object_find(connector->dev, connector->encoder_ids[i], DRM_MODE_OBJECT_ENCODER);
-		if (!obj)
+		encoder = drm_encoder_find(connector->dev, connector->encoder_ids[i]);
+		if (!encoder)
 			continue;
 
-		encoder = obj_to_encoder(obj);
 		radeon_encoder = to_radeon_encoder(encoder);
 		if (radeon_encoder->caps & ATOM_ENCODER_CAP_RECORD_HBR2)
 			found = true;
-- 
1.9.3

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

* Re: [PATCH 00/10] drm_mode_object_find -> helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (9 preceding siblings ...)
  2014-07-18  3:30 ` [PATCH 10/10] drm/radeon: " Rob Clark
@ 2014-07-18 13:38 ` Daniel Vetter
  2014-07-18 14:05 ` Alex Deucher
  11 siblings, 0 replies; 13+ messages in thread
From: Daniel Vetter @ 2014-07-18 13:38 UTC (permalink / raw)
  To: Rob Clark; +Cc: dri-devel

On Thu, Jul 17, 2014 at 11:29:55PM -0400, Rob Clark wrote:
> Slightly overdue, but retrofit recently added helpers to drivers.
> Note that there are a couple places left in core, but they get
> replaced in the atomic series and I didn't feel like making extra
> conflicts for myself.
> 
> Rob Clark (10):
>   drm/ast: use helpers
>   drm/bochs: use helpers
>   drm/cirrus: use helpers
>   drm/exynos: use helpers
>   drm/mgag200: use helpers
>   drm/udl: use helpers
>   drm/vmwgfx: use helpers
>   drm/nouveau: use helpers
>   drm/i915: use helpers
>   drm/radeon: use helpers

Yay! On the entire series: Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> 
>  drivers/gpu/drm/ast/ast_mode.c                | 12 +----
>  drivers/gpu/drm/bochs/bochs_kms.c             | 13 +-----
>  drivers/gpu/drm/cirrus/cirrus_mode.c          | 14 +-----
>  drivers/gpu/drm/exynos/exynos_drm_connector.c | 15 +-----
>  drivers/gpu/drm/i915/intel_display.c          |  9 ++--
>  drivers/gpu/drm/i915/intel_overlay.c          |  9 ++--
>  drivers/gpu/drm/i915/intel_sprite.c           | 12 ++---
>  drivers/gpu/drm/mgag200/mgag200_mode.c        | 14 +-----
>  drivers/gpu/drm/nouveau/nouveau_connector.c   | 16 +++----
>  drivers/gpu/drm/radeon/r100.c                 |  6 +--
>  drivers/gpu/drm/radeon/r600_cs.c              |  6 +--
>  drivers/gpu/drm/radeon/radeon_connectors.c    | 66 ++++++++-------------------
>  drivers/gpu/drm/udl/udl_connector.c           |  9 +---
>  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c           |  6 +--
>  14 files changed, 54 insertions(+), 153 deletions(-)
> 
> -- 
> 1.9.3
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

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

* Re: [PATCH 00/10] drm_mode_object_find -> helpers
  2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
                   ` (10 preceding siblings ...)
  2014-07-18 13:38 ` [PATCH 00/10] drm_mode_object_find -> helpers Daniel Vetter
@ 2014-07-18 14:05 ` Alex Deucher
  11 siblings, 0 replies; 13+ messages in thread
From: Alex Deucher @ 2014-07-18 14:05 UTC (permalink / raw)
  To: Rob Clark; +Cc: Maling list - DRI developers

On Thu, Jul 17, 2014 at 11:29 PM, Rob Clark <robdclark@gmail.com> wrote:
> Slightly overdue, but retrofit recently added helpers to drivers.
> Note that there are a couple places left in core, but they get
> replaced in the atomic series and I didn't feel like making extra
> conflicts for myself.
>
> Rob Clark (10):
>   drm/ast: use helpers
>   drm/bochs: use helpers
>   drm/cirrus: use helpers
>   drm/exynos: use helpers
>   drm/mgag200: use helpers
>   drm/udl: use helpers
>   drm/vmwgfx: use helpers
>   drm/nouveau: use helpers
>   drm/i915: use helpers
>   drm/radeon: use helpers
>
>  drivers/gpu/drm/ast/ast_mode.c                | 12 +----
>  drivers/gpu/drm/bochs/bochs_kms.c             | 13 +-----
>  drivers/gpu/drm/cirrus/cirrus_mode.c          | 14 +-----
>  drivers/gpu/drm/exynos/exynos_drm_connector.c | 15 +-----
>  drivers/gpu/drm/i915/intel_display.c          |  9 ++--
>  drivers/gpu/drm/i915/intel_overlay.c          |  9 ++--
>  drivers/gpu/drm/i915/intel_sprite.c           | 12 ++---
>  drivers/gpu/drm/mgag200/mgag200_mode.c        | 14 +-----
>  drivers/gpu/drm/nouveau/nouveau_connector.c   | 16 +++----
>  drivers/gpu/drm/radeon/r100.c                 |  6 +--
>  drivers/gpu/drm/radeon/r600_cs.c              |  6 +--
>  drivers/gpu/drm/radeon/radeon_connectors.c    | 66 ++++++++-------------------
>  drivers/gpu/drm/udl/udl_connector.c           |  9 +---
>  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c           |  6 +--
>  14 files changed, 54 insertions(+), 153 deletions(-)

Nice!

For the series:

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>


>
> --
> 1.9.3
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel

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

end of thread, other threads:[~2014-07-18 14:05 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-18  3:29 [PATCH 00/10] drm_mode_object_find -> helpers Rob Clark
2014-07-18  3:29 ` [PATCH 01/10] drm/ast: use helpers Rob Clark
2014-07-18  3:29 ` [PATCH 02/10] drm/bochs: " Rob Clark
2014-07-18  3:29 ` [PATCH 03/10] drm/cirrus: " Rob Clark
2014-07-18  3:29 ` [PATCH 04/10] drm/exynos: " Rob Clark
2014-07-18  3:30 ` [PATCH 05/10] drm/mgag200: " Rob Clark
2014-07-18  3:30 ` [PATCH 06/10] drm/udl: " Rob Clark
2014-07-18  3:30 ` [PATCH 07/10] drm/vmwgfx: " Rob Clark
2014-07-18  3:30 ` [PATCH 08/10] drm/nouveau: " Rob Clark
2014-07-18  3:30 ` [PATCH 09/10] drm/i915: " Rob Clark
2014-07-18  3:30 ` [PATCH 10/10] drm/radeon: " Rob Clark
2014-07-18 13:38 ` [PATCH 00/10] drm_mode_object_find -> helpers Daniel Vetter
2014-07-18 14:05 ` Alex Deucher

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.