From patchwork Fri Jan 27 06:38:48 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 9540813 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id C5B06604A0 for ; Fri, 27 Jan 2017 09:11:59 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BE6831FE83 for ; Fri, 27 Jan 2017 09:11:59 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B1F4C27FC0; Fri, 27 Jan 2017 09:11:59 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.8 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, RCVD_IN_DNSWL_NONE, T_DKIM_INVALID autolearn=no version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C5C611FE83 for ; Fri, 27 Jan 2017 09:11:57 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id 224F4267995; Fri, 27 Jan 2017 10:11:56 +0100 (CET) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id BAF82267932; Fri, 27 Jan 2017 10:09:35 +0100 (CET) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 5F22E267931; Fri, 27 Jan 2017 07:38:56 +0100 (CET) Received: from relmlie4.idc.renesas.com (relmlor1.renesas.com [210.160.252.171]) by alsa0.perex.cz (Postfix) with ESMTP id 83CAE26790E for ; Fri, 27 Jan 2017 07:38:53 +0100 (CET) Received: from unknown (HELO relmlir3.idc.renesas.com) ([10.200.68.153]) by relmlie4.idc.renesas.com with ESMTP; 27 Jan 2017 15:38:52 +0900 Received: from relmlac4.idc.renesas.com (relmlac4.idc.renesas.com [10.200.69.24]) by relmlir3.idc.renesas.com (Postfix) with ESMTP id F2087689E5; Fri, 27 Jan 2017 15:38:51 +0900 (JST) Received: by relmlac4.idc.renesas.com (Postfix, from userid 0) id DDB2C480A5; Fri, 27 Jan 2017 15:38:51 +0900 (JST) Received: from relmlac4.idc.renesas.com (localhost [127.0.0.1]) by relmlac4.idc.renesas.com (Postfix) with ESMTP id D657F48014; Fri, 27 Jan 2017 15:38:51 +0900 (JST) Received: from relmlii1.idc.renesas.com [10.200.68.65] by relmlac4.idc.renesas.com with ESMTP id RAF16387; Fri, 27 Jan 2017 15:38:51 +0900 X-IronPort-AV: E=Sophos;i="5.33,293,1477926000"; d="scan'208";a="231997610" Received: from mail-sg2apc01lp0246.outbound.protection.outlook.com (HELO APC01-SG2-obe.outbound.protection.outlook.com) ([65.55.88.246]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-SHA256; 27 Jan 2017 15:38:51 +0900 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=renesasgroup.onmicrosoft.com; s=selector1-renesas-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=r6l2raU1EHkLSSBcs3BbOI60jSHrN8/4nGpIEqxnqqg=; b=jJorWcycnjZxT8W9TezhEKxR5iajiShiiTMzqVN6jGnMFjqAuHsQxRJMshMVfL9uv3xhHDMr9FIJzw1MW+uVxJ99CfOUrWDpRTYr9Xcp59w66NQZBSMgkEqA56Ru6Pzgu4kL+Dg5DPTGHzwNJrPX2gIeAYjo7xcppHOjAQppBeE= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kuninori.morimoto.gx@renesas.com; Received: from morimoto-PC.renesas.com (211.11.155.144) by KL1PR0601MB1928.apcprd06.prod.outlook.com (10.170.164.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.860.13; Fri, 27 Jan 2017 06:38:48 +0000 Message-ID: <8760l1qaam.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 To: Mark Brown , Rob Herring In-Reply-To: <87efzpqaf5.wl%kuninori.morimoto.gx@renesas.com> References: <87efzpqaf5.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Fri, 27 Jan 2017 06:38:48 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: TYXPR0101CA0040.jpnprd01.prod.outlook.com (10.168.40.178) To KL1PR0601MB1928.apcprd06.prod.outlook.com (10.170.164.146) X-MS-Office365-Filtering-Correlation-Id: 0f7e439c-113d-426d-e44f-08d4467f269b X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:KL1PR0601MB1928; X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1928; 3:Rv81eqdLM5cE+NEJ3/+Bj9vtKLEYflKlNZhMKKhx9LRuQTsU7fUNyayMbh3Kid2mu8zcX2YkcDpbUpq6NAE071ktwP7W0Sae3VEA3dduOHYQLU49YkJv1GGreFuIh6WmJ8D9G5cePT0ZTE6UUuzT2qNhtry5bly3fL7ZkS8n9BT3dPn9Lk9SZCxVkSDOK13PNh9IcBRHcXVXB6WMZlQCDFjDUVo1RKpNz37CnHGCV2B6308CGF63khpBpe69mwW5ldPQ3vFfM0bfZUbla+odsQ== X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1928; 25:C5JoXdfx5Pnj5PKoa5JYoNQ5C+6g7LkzGHp0HQ1iHz2NuKze2KNBgKwONpf57N3hRAb54pmf3sLve1x97bVwczuKOaVqyo3N2WpRytfYP0JpW6RXz1DkuTrT4QSp40N45MzEELYr5l6XtAfjuwBjoBfv6PVtIBzqlOwSHedpPBUKVgAvrtYTDQbgKDKhVOYyOkV49Hn2l5+e/UxLw6dH4kURfkP682boxR0R+e5fw8+WfiZd8JrWjAeEu2zJzUUbNLkHV093bj8DzNyWDpOIJeoUL9/USdi3e0Y4xRTH/C7yNkMLGsvHTABZwn9PL1lnpNRtunFx/GbyUJw0KZ6ou+6KG7XfcfFN3iSYuKBxRn8Vba0TZm/J5Z3BHzFy8BcQBjvHO0c5ffaYRuYBxhfRV6S+/eZHPO2SXyQKHYJDqMz1W+vJ5bkZ33GzzcY69cJOBE2AYVLqITfuiXlk1yGkQ7tL3HQRWJ2VE4L/FmJuGuRRuEZ871Ath99MNOMUNBS/yDhoUOR3EjUltxirQA0Bp8TRXIjSR0AVoKPeVGz15LTUb77UGbbofJuKvL7XCHvfwnoPw2DdiNNfV6f27mLCH9mjANLrt/XILchQcQ7cHPoT/ZUdjB7DTrnpEi0KHEVQB16vOXdwKhYFEIjKiP8b9PI85ZA38R/WdSLGYxFgj5rJLEz8OhhCmHd/uqIxK63t X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1928; 31:hTTL/5rfoKAj4Hb1qLFVz5wOtaom9c8uIBfejej4/NEX8kUj7JE/sxg9SK0buSR273sEWgKWUu7Oajd/KYKbZGzXNHZ6KEWYmL7UB9XBKkSstzRtDsq7wVYVqeYyTlaVsLYSMBwmABsX4seuuoZeV1OBBp4ogkUUXYPikY65kPAaTCGzRbvGAwiSUMD4JLG3pmQroAFkrCR1Sw9t4/AGpnwYPAvWj8Daxj89D+szoNz5JQSdHD9t6lN434I2xIASMxvmWzdpr4TLGImPJAgWL7C06fCZVxngZQSfNvvTuAI/V1uFew18535oFyopBfZ6; 20:eRZMEgddm21UccWWNp4trlmfhQ182O151PpQh9nxvVuPHcrIZmlc/34Z/Fs9B+CDS1NSCar+qL4VItCnAx6cXPEV5PilofqcvQlw0op7TFk61FXXAz35cLjRJx4z7YkneApOb3Vmr54yZTL18CCUKwnN3qo/fLuHh2gycr/G27udCvY2G6v8dfmJTr76fV5pwEguZzvtlk0mOQPdGMhuxLX4yV1jEP4fma5/xrcJb6qVemsc0tt/eyphm4EMBp+KfuoqcOb/4tVuIjb9rPLmcKt5GoUz9dBWkwE3ULVahQssBXJSmBWRfNiIpV9cYm/YUUJy5MQ1iYBj/UPDeRczhrz4pRPUIdPlAnMXkmZC+8DUaROcG/dOCF0K4spdX49NnVRvd8Rm1CKK0NqewESe/BBSralhtQx5/PoJXiijH2t3coIhkkqNxk5xsZsHYt7ByEomytetY1z78g7l5FtrYzx7yiCKgRJJKuBQiLO7/KbsBtIRmeyUsVO7M5Rk0csZ X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6041248)(20161123564025)(20161123562025)(20161123555025)(20161123560025)(6072148); SRVR:KL1PR0601MB1928; BCL:0; PCL:0; RULEID:; SRVR:KL1PR0601MB1928; X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1928; 4:70KAt1Ku0Fb7tChyojvNgKcq6a+vH6gYsKRrIVEyx2BneHp8ynkjHs72sMeBxpX5eu3OgUaXN9Gc49fM0f5MeLaQd1ZV1CsexgiIoGMVzzoYPFRl9W9qC4etw4VLjFmhnNs+KZiioI7s953XiXs2GHl5jG7sE5JCKpd/SSbDM+03eZtB8u8nLgdO7ig7Qcm3Gsw1BsVLZ20t04DYFkjznVGnc4sFofaRJW97ZRwrO/4134UbguGtF/VZkPmO1tQXJdEOfUxIvpemrYcowoc/KGl3xn0yl9YMHOTSpPFJ1BHqOYWD0cVKrJIHnQly1Sf9lmc63KxmR586vyd8WDMuP9HELzA5+vyoM3aH62pJTgCphG+Au4um3EOzxFdrNwu/bHexKF7iKE9ZsuFB9+HsD3uLPbA/XDZtHhVtniTc86x3/SIuHZ6yBHBkyjoKULZhIiou96CRRbL3tws4tXMHRoMBokKkEYjrrvOgs6kUfy05nuZjMgvm4GWr3k/crOQnaA/Wkhjr/L8R2Teobv4tm8WV0N5rXBFqo9pumL+FXSWwhedw8v73yPfOv9dVygOKYfa1wO7x6Js3pUw5licE5Q== X-Forefront-PRVS: 0200DDA8BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(7916002)(39850400002)(39410400002)(39840400002)(39860400002)(39450400003)(189002)(199003)(7736002)(2906002)(5660300001)(53416004)(36756003)(83506001)(25786008)(33646002)(2950100002)(54906002)(4001350100001)(5001770100001)(38730400001)(69596002)(189998001)(6486002)(305945005)(97736004)(106356001)(105586002)(46406003)(53936002)(81156014)(23726003)(3846002)(6116002)(92566002)(66066001)(81166006)(8676002)(575784001)(50466002)(76176999)(86362001)(68736007)(4326007)(101416001)(47776003)(54356999)(50986999)(42186005)(16060500001); DIR:OUT; SFP:1102; SCL:1; SRVR:KL1PR0601MB1928; H:morimoto-PC.renesas.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: renesas.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; KL1PR0601MB1928; 23:Ro7yLcJkYp6mw23VTNJFL1zpt9xO8GCqk4Vp1Ie?= =?us-ascii?Q?Tlh4FydsXV0dqP33dprtzMKycTcuFMXlpF6WfmhYLu/uwuXcGrP1GhYBX3OO?= =?us-ascii?Q?Y0+1C8HtN2zh7qWND3VsKAB/wXBtQZrrdWJOGXwB5DutDiC2FwKQdicVOaua?= =?us-ascii?Q?NpIBXskBLXKoW+UUTA+VFcEiTBVnTU8BRdW+5SbKcGK+V8pLBXKOtE7Hhkcu?= =?us-ascii?Q?Ln6MfAuCDnELQ4qFjEVQBUsmxsPSaSozRWeZWtMlWAFghICOmPhoJkejK8qS?= =?us-ascii?Q?XCYstkkXcUcx8dGCz2BM0PLoDYPeziskjlJy18OTnmQraHP2HrpksAcB8WOF?= =?us-ascii?Q?413NEnfta1oSqrMQeviUYLdbmcWq+O1AXAXxfXpcJu42yFKECVfeD4djb/KW?= =?us-ascii?Q?et6hNQRT2+U8YwvADBmvuOwRI8FruZmvheOKZeRJvXAf44T7BOVZa4+RiBNx?= =?us-ascii?Q?lE4STMNoEBLo2r03ZeKUqpCeiuekgAOa4TG1rin9GsiEY/su2B1txsBIBQIU?= =?us-ascii?Q?P8qziT+QxKJdu8uKaO8mXiWmSSUeJ2oKnc/HitvNb/nuSnUTVXo4EyQSOdX+?= =?us-ascii?Q?6EVMvBY/T0j4kA/zJhqBl7jNePfyOYIw4eWZ6m7pg54PIBJ37sTjRbBvYheX?= =?us-ascii?Q?DUI+c5KLYCNYNqhgY6Dlhz1YBShvNhy2+USTXus1lYHrP5/r7XU2m8SC/E1t?= =?us-ascii?Q?aE7oLr4msCygsvhwk+7GZusvh22S8GaedOtUkdj27ZC2JG+OFK7KaUAISAYJ?= =?us-ascii?Q?Y5zjl+3U0n3tarPGrFm1tOopBZvvEKau97yTPzxAYY8oieqiq21c1n7FCFXH?= =?us-ascii?Q?zTXbYnLvCEACJmhm4HKxmdwTvDlZEDau6OGriLcc5ZfzL1VcLDrh2gfN6tn2?= =?us-ascii?Q?w15PpUWkXDZ0NosFfpzv0zwgKye7tMceA14wmUGeOMovAgJq5RgvBebveBxS?= =?us-ascii?Q?3AHvNiA9AVuw86PRHAEQFC7hNqo5Oj5F4kLK4GyAiTAjhllh7vbd6GCkOmLj?= =?us-ascii?Q?sOuh2/w6fkv8dJMXCX4YInyj4153L3FoP6X+heXPW9I7lLCQPSlxhGgbeg7C?= =?us-ascii?Q?Q8TIBFVcDaR5z6OYBArT4cRkkowmUQkvyMH3cx2MPO5qM2zh2LWEMEOnhDWC?= =?us-ascii?Q?mBH/s96eHnYrNi3WTsCbnozVIA1uhT1gH90arlOlmnk2xVN6JMt7dwisrJ2j?= =?us-ascii?Q?H+8icKS/cayL9QUz9gpU0V8yW+U6Iz3iYJLe763w38PWDkxOA0fOia8JpD9V?= =?us-ascii?Q?wOm0uYC361kl+SBXhzSfIlPEj5GO7ImwOXmTrbxwnr7JXu+CAgpclmJtmL+Z?= =?us-ascii?Q?ovw=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1928; 6:wWM86P3F+8S9wM4xkKtdA8M5Zz9MwlkKazKD/9I8afvHPuVD5d3n4CmAAnbdn14b3hrHAUSd/HOszrzu+IYIPmleVPL5d1yN2Ilr1kwIjm1fPtlziTgTjzIS17JmffgJWfKwhuNSGfdFfuYZwa95TfiSrLxatbw42bIIcmfbwT3t0/QCyzcaJQPx9eqH0l0vvK7VYZaP6796wawG2b9uyX1neEXwNk6oqxMnkh/wVJw1SrOIQhfewBrvkMXo6neiVH4q4XVCsRQUcfuj4GlPIwzgeVVcTY2mcoq75NZx5gHCbCLEmZV5yW4UKRPWnvzP8GKNKJTErLZ63oAQW5P+UriqLZBp/Hyxr+4p3/a7CqAM3V48aqsQuJ8SsXbH797J/UCyV/Unrv16NCUMtV6UqSjxxfDyDBmtJ59+Axr2y4J3ReikoTMWNrqsvWo6B57RTYAsGVTUU7xPyhJIgPD6Lw==; 5:s2dbSrjDgVXE9z4MNB5Hf/W9yuk/YpqbPvBVXH645PPNyB/k7UNlJGtlKXELYNM7BnO9NR8M5vgPfSXXc4IELbbxNde9eCXKU4/2uQDATIwveTlpbBxc1/OovKVPZEGu6vG7sY4bMxJnBCzbV6lJ9g==; 24:qfho4FeSC3hP+7jzMzPPjx/fvPQNKgMXUMl96XbbwHOQlqvrMDXiY5Pt5FykFrYpXLY9UUnMcbSZqDvJ0j9ydLYmrNQHg5ky+qg1cozWc5M= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; KL1PR0601MB1928; 7:f5ADV7ufJDkWTkKRbf/iefB7YecmM9Cp7+6AVONFQGo0i2FtvGMdSh7Qhb2zpSzGnyd/n/GIcZyfZZCUzN3/V+Oru7Doi8IePPeqjc9ZQidDmiJNbBmaAjXMD73k84O8/+9UzLZ7N4DiLj1yOqJVq1bp/WeWSIEWvWEy7GJeHC0AZ6sTzGJ7n7tF/769RV76ZIFa8Dbb7jBS2jXRvI3eIUZo/GPuvztZg28Rb+pGWw+4K4mQPAWiusFRj7QisXU/DwIC+7jikxVCF9Pxjamsl2F2kTWg9Ri58NP7cBwBW5Hb+abE0VOB/MZHY4ERQUn1Bw1W2bovK5fgImEC7grxfUY2m0Y2jlXZOsLdvm4wECpk9O9ixU8kAPRPacl++dYEYJLTU4OlqwZpPyhT7JVZM249gXhXRpgRfyJZ2iGrFWXOoQWhq5a0sihO9v5g1GdKanp9AsLUpNG9n32FTCsXQw==; 20:F1N0fHDaYGqiQT/9tcYvbUyfyczsNRMd70v0oxaornbF5f6JAyb+Euv9oz90IIburPP4MpmYg6nHpkML+V9LJzAaCHsPwBoov4HUB4utfK/7tiUYhMGZzy+kcuZF3dChTrL7tgU795S9gNerort0xWeL6DFoVeRn3IESfXfQmTw= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jan 2017 06:38:48.2288 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR0601MB1928 Cc: Linux-DT , Linux-ALSA , Simon Subject: [alsa-devel] [PATCH 06/10] of_graph: add of_graph_get_endpoint_count() X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP From: Kuninori Morimoto OF graph want to count its endpoint number, same as of_get_child_count(). This patch adds of_graph_get_endpoint_count() Signed-off-by: Kuninori Morimoto --- drivers/of/base.c | 12 ++++++++++++ include/linux/of_graph.h | 7 +++++++ 2 files changed, 19 insertions(+) diff --git a/drivers/of/base.c b/drivers/of/base.c index b5bf79f..199d3be 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c @@ -2497,3 +2497,15 @@ struct device_node *of_graph_get_remote_port(const struct device_node *node) return of_get_next_parent(np); } EXPORT_SYMBOL(of_graph_get_remote_port); + +int of_graph_get_endpoint_count(const struct device_node *np) +{ + struct device_node *endpoint; + int num = 0; + + for_each_endpoint_of_node(np, endpoint) + num++; + + return num; +} +EXPORT_SYMBOL(of_graph_get_endpoint_count); diff --git a/include/linux/of_graph.h b/include/linux/of_graph.h index 80ced0c..40d6fd0 100644 --- a/include/linux/of_graph.h +++ b/include/linux/of_graph.h @@ -43,6 +43,7 @@ struct of_endpoint { #ifdef CONFIG_OF int of_graph_parse_endpoint(const struct device_node *node, struct of_endpoint *endpoint); +int of_graph_get_endpoint_count(const struct device_node *np); struct device_node *of_graph_get_port_by_id(struct device_node *node, u32 id); struct device_node *of_graph_get_next_endpoint(const struct device_node *parent, struct device_node *previous); @@ -62,6 +63,12 @@ static inline int of_graph_parse_endpoint(const struct device_node *node, return -ENOSYS; } +static inline int of_graph_get_endpoint_count(const struct device_node *np, + char *type) +{ + return 0; +} + static inline struct device_node *of_graph_get_port_by_id( struct device_node *node, u32 id) {