aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Zabel <p.zabel@pengutronix.de>2014-12-22 05:46:40 -0500
committerPhilipp Zabel <p.zabel@pengutronix.de>2015-04-08 05:14:26 -0400
commit4af642d5bf75c726c874a198daf742589db30981 (patch)
tree943527ed773fd15cd0bd7ffab081c9da11b4a91f
parent539bb6a248858edd99d8645677345799f37ca51d (diff)
drm/rcar-du: use for_each_endpoint_of_node macro
Using the for_each_... macro should make the code a bit shorter and easier to read. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r--drivers/gpu/drm/rcar-du/rcar_du_kms.c16
1 files changed, 3 insertions, 13 deletions
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_kms.c b/drivers/gpu/drm/rcar-du/rcar_du_kms.c
index 68dab2601bf5..c23507447e3f 100644
--- a/drivers/gpu/drm/rcar-du/rcar_du_kms.c
+++ b/drivers/gpu/drm/rcar-du/rcar_du_kms.c
@@ -224,12 +224,7 @@ static int rcar_du_encoders_init_one(struct rcar_du_device *rcdu,
224 224
225 entity_ep_node = of_parse_phandle(ep->local_node, "remote-endpoint", 0); 225 entity_ep_node = of_parse_phandle(ep->local_node, "remote-endpoint", 0);
226 226
227 while (1) { 227 for_each_endpoint_of_node(entity, ep_node) {
228 ep_node = of_graph_get_next_endpoint(entity, ep_node);
229
230 if (!ep_node)
231 break;
232
233 if (ep_node == entity_ep_node) 228 if (ep_node == entity_ep_node)
234 continue; 229 continue;
235 230
@@ -296,24 +291,19 @@ static int rcar_du_encoders_init_one(struct rcar_du_device *rcdu,
296static int rcar_du_encoders_init(struct rcar_du_device *rcdu) 291static int rcar_du_encoders_init(struct rcar_du_device *rcdu)
297{ 292{
298 struct device_node *np = rcdu->dev->of_node; 293 struct device_node *np = rcdu->dev->of_node;
299 struct device_node *ep_node = NULL; 294 struct device_node *ep_node;
300 unsigned int num_encoders = 0; 295 unsigned int num_encoders = 0;
301 296
302 /* 297 /*
303 * Iterate over the endpoints and create one encoder for each output 298 * Iterate over the endpoints and create one encoder for each output
304 * pipeline. 299 * pipeline.
305 */ 300 */
306 while (1) { 301 for_each_endpoint_of_node(np, ep_node) {
307 enum rcar_du_output output; 302 enum rcar_du_output output;
308 struct of_endpoint ep; 303 struct of_endpoint ep;
309 unsigned int i; 304 unsigned int i;
310 int ret; 305 int ret;
311 306
312 ep_node = of_graph_get_next_endpoint(np, ep_node);
313
314 if (ep_node == NULL)
315 break;
316
317 ret = of_graph_parse_endpoint(ep_node, &ep); 307 ret = of_graph_parse_endpoint(ep_node, &ep);
318 if (ret < 0) { 308 if (ret < 0) {
319 of_node_put(ep_node); 309 of_node_put(ep_node);