From patchwork Fri Aug 26 03:05:16 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 9300773 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 5729B601C0 for ; Fri, 26 Aug 2016 03:17:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4823529354 for ; Fri, 26 Aug 2016 03:17:39 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 3D3BE2943C; Fri, 26 Aug 2016 03:17:39 +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 51D3029354 for ; Fri, 26 Aug 2016 03:17:38 +0000 (UTC) Received: by alsa0.perex.cz (Postfix, from userid 1000) id 444282672BA; Fri, 26 Aug 2016 05:17:37 +0200 (CEST) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id 7CA2D266FEA; Fri, 26 Aug 2016 05:15:36 +0200 (CEST) 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 37ABF266FE0; Fri, 26 Aug 2016 05:15:33 +0200 (CEST) Received: from relmlie4.idc.renesas.com (relmlor1.renesas.com [210.160.252.171]) by alsa0.perex.cz (Postfix) with ESMTP id F1D69266F6F for ; Fri, 26 Aug 2016 05:05:29 +0200 (CEST) Received: from unknown (HELO relmlir3.idc.renesas.com) ([10.200.68.153]) by relmlie4.idc.renesas.com with ESMTP; 26 Aug 2016 12:05:28 +0900 Received: from relmlac2.idc.renesas.com (relmlac2.idc.renesas.com [10.200.69.22]) by relmlir3.idc.renesas.com (Postfix) with ESMTP id 1DC9A4B87D; Fri, 26 Aug 2016 12:05:28 +0900 (JST) Received: by relmlac2.idc.renesas.com (Postfix, from userid 0) id EFE8E2806F; Fri, 26 Aug 2016 12:05:27 +0900 (JST) Received: from relmlac2.idc.renesas.com (localhost [127.0.0.1]) by relmlac2.idc.renesas.com (Postfix) with ESMTP id 858752808F; Fri, 26 Aug 2016 12:05:27 +0900 (JST) Received: from relmlii1.idc.renesas.com [10.200.68.65] by relmlac2.idc.renesas.com with ESMTP id NAD20509; Fri, 26 Aug 2016 12:05:27 +0900 X-IronPort-AV: E=Sophos;i="5.22,559,1449500400"; d="scan'208";a="218162208" Received: from mail-hk2apc01lp0207.outbound.protection.outlook.com (HELO APC01-HK2-obe.outbound.protection.outlook.com) ([65.55.88.207]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-SHA; 26 Aug 2016 12:05:19 +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=gTFgXVTmyNxw6R2gz+SiewR7IB9JMpO8rJhPw+uQHYM=; b=HKXt9A0AtDJNYxdaqQbvA7ikVQ17wuLkIlfOuBOvpc1UM4EZ48b1UvfNxD8ZhCZl2zNR1P570c3A7kiYci1Jjn9AZpZDAmDJ987/WUj/Wuhd2WVD3Y66vKG572OgKauJC+CqpI7pObB6ciVDWjYtyZ714brWyaf1wFyKSEkN6do= 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 PS1PR0601MB1449.apcprd06.prod.outlook.com (10.165.210.153) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.599.9; Fri, 26 Aug 2016 03:05:16 +0000 Message-ID: <878tvks0ec.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 To: Mark Brown In-Reply-To: <87a8g0s0fq.wl%kuninori.morimoto.gx@renesas.com> References: <87a8g0s0fq.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Fri, 26 Aug 2016 03:05:16 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: OS2PR01CA0013.jpnprd01.prod.outlook.com (10.161.74.151) To PS1PR0601MB1449.apcprd06.prod.outlook.com (10.165.210.153) X-MS-Office365-Filtering-Correlation-Id: 115c11b9-3beb-4461-1956-08d3cd5dcebe X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1449; 2:dOBF2quL9snpFm0TTYwobxDdcv7KhIDX/7IpqVvFzVXY79Tb34Io6WPDyd6Xj6IZ1tUgZdVEInyLpFy8TCWZ+OvyQSyXI/9ClcTldSMSnWpJG3b3Fs9xlyTE1C3EaiucmeXjYUkheBhzJa2Rk+vhxsEUuUR2aFudJPOqjm/REOQZ0qBNCUCi0sCVyteO1eBF; 3:DEEB0Xp3N4+3rWhW+DhAdN3U2r9PDQO3N1oD9BJyPh9K40oc3MXBEvTqi80Bo4kAm4WhY2YpOVa+P4tuUJ9zJ2dLGf8R8XFBuXBnXQ5qeUA1Op7Fdgh0A8YO56MculB7; 25:U3WiXPm/PAHq8UbPzdvx34BH9X12LLZVy9S2V0YjsVkrrb33vnFG1L3EtVSftChStRMncMiUCP2QRm6WL4O7ZmkI9TsaNP3uvEd3859pJnu9y50lUqpSprnndo+VBi0iyOmnzhnMIMsHRqMFow5RbxkrZhpdY6nIK3zU3kf5Fk3FAW1rsHXRFzRmvadn5WNUrC+5se91xwmjxxZb0FsyDwSDyDJdM5abaxOV6YFTYX5/XsUaNGAgzUhyK8nBxz0tTsssOlzBoAnGmkDQT40NiKQMAo0MfEmwiZ3oWopDV+onSZ1jGoitQ5wvKfeFGn1RPKLVG4PELAbmFz/HsXbNlcfy6AOdxn5xMPEKFf21ZcWv17rt6L84ANKxxEZyKmZnoBJAhKBBDhFz0MugLUkyutjqRqTP+EZkfCGiDzkNsb4= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:PS1PR0601MB1449; X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1449; 31:NBb7RhecFyyumFC3jE+1SlJXITCNho1vUkkeatFJbRWws39CzLP5hI77HU2uf7YA3m6Z0JKPOrzSykmG7lnMp6hrHsVgfSg2I/KLsJZE5yoCSwIa9KtkT2LgpHzpuPp+N8bH3XC8VpwIq5se0I+xGyO03MAy08SA6U9tPLi/UGr4AJwnj5p25VUfbj03drB0ExcFaM9s0K+oRbVj8ke2z5RJJbhVyotSszP86tIApXc=; 20:/Nom2eMaTReOJRvrvkkb+DKDXVcC80KFUTKYiX9wJlChpYpc4IHVi47JlUA5Lw1o2wWdzLKCWwy5vb15Elr05MG9gr6mXUJYrapid/IhcKMFqzXOfTTSr6NfG5je07BX0Ok/GGnq7pYk/fBDJ1fGegqiH0NxZ30MYd9sFj95ICMofSu7madaIiLv9f3CWmCF8CKGSHdmByYsAQKJdhgTW3VVeqsFAacY4lBJ1WeiVlWgOBQRNKrQMiSSIqDMxc5b/deebaGpPjC6KDYUTXKPK/ab3+wR+ByIbhqOQ+VjL5SVfDBiMCKWSzFjuGssv11HhWd5ZyUzJ1h1zRXFtenk00B7LotlPv4qw8q4815KncbXNIqeWTuiy+ZjG2dBhiaD63s5Gl53IHM+cHT455dnxo6NryYJ3HItLmi2CSQl8ipKsqqtfGaVbyvauTethukdON0yw61r6RKk1xGLQzfevdisFdjzbXXdZYRmRatUBhQxU4VnQXDahyVCgfhyfhJd X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040176)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6055026); SRVR:PS1PR0601MB1449; BCL:0; PCL:0; RULEID:; SRVR:PS1PR0601MB1449; X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1449; 4:aVLt6o2Ox1j1i39nsJAZAWGTUkk288THiCpyBh4JyFt5y4iGmIyvtHpIt2/+Jpqh778n0Dg95YmFfW4ek9gAavc5fAia3QwZVvat5ouOqpxMe/EdMrlwXiiy87Q+FYuLjlcrV+Fwr6yB5RDVpvDnOepXLiAQr9else6GJROibOGKyHYlFjdqxW8Qbi4xgIBq4CdvC2ryqBmbsESbXx1fiANaTq2a0RB2P2b0/kVK+6lVivhh2ES1dASRJTWTkyrjKztCaCM9pf6xm+xBZjfF0F9IG4z0K2QAZdrHbHjWbnC8bm4DHoKdRu/bCvwnUSUb/pLK6scHanI0B4eECTzAu0/wWzouQp3sgiAg5sFhj9qKfZ9sXSaPxDLlfDiB0ecA55FyRxT3LYv6eJI90CsXZw== X-Forefront-PRVS: 00462943DE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(7916002)(199003)(189002)(97736004)(110136002)(76176999)(54356999)(83506001)(50986999)(92566002)(229853001)(189998001)(69596002)(68736007)(3846002)(5660300001)(4001350100001)(101416001)(33646002)(586003)(106356001)(6116002)(77096005)(23726003)(46406003)(4326007)(19580405001)(2906002)(86362001)(19580395003)(2950100001)(7736002)(42186005)(305945005)(7846002)(66066001)(47776003)(36756003)(81156014)(8676002)(81166006)(50466002)(53416004)(105586002)(16060500001); DIR:OUT; SFP:1102; SCL:1; SRVR:PS1PR0601MB1449; H:morimoto-PC.renesas.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; PS1PR0601MB1449; 23:InHL3IqEbS97QL4XUvKskMZIePbs+PRJVbV+W7q?= =?us-ascii?Q?VOpjV8md2wcFuD7HXsBYp+z0+DOaEvvNroChK1yhpAspOpgkWdSqouDL6I1P?= =?us-ascii?Q?Gh2zOKkmW2B7rFdtuekSazh3o+lcidN/kj0b8qs2gE2cfESqlEH1fYMos9b+?= =?us-ascii?Q?Llm4MJpPEZHdMvpOYCZ4kpJd163P4RZp/nc4HG6eVZpHZy0oQ4WJaVBKAiYu?= =?us-ascii?Q?itWXexwWQvETtat1bFvOCJQJGTTdXYbttNYhxfl40+NbKrEagOPPtcO+WcgT?= =?us-ascii?Q?mo8mZZPXO4fUPiEH0qRpdkEIDHUgaKIbZDFLrhXmqem3z4GB+/xCp7Y6QURT?= =?us-ascii?Q?hkRslZw/lGWKi35yeEO/V9a0xWv77924TjXQuFy78VkG/xm1CQm0s1wnb/Y0?= =?us-ascii?Q?gqFBvbyp0L8QJd1i1vLDhamz0XuWwszQhXXDKJIXa5Z2Ys317+VxBP3YPk/E?= =?us-ascii?Q?4T1Ady7QSc8Mh/d02xpkYHU7npawvJJVkyMx0EOidEnu2WfSeEbfPWQQJ8qc?= =?us-ascii?Q?vKynfoRHKk22ruKviAMyzJn9mhgF1TuI7Cc0yfVKvWNxD2A1zrd/EhHvIM5S?= =?us-ascii?Q?F1qfGNmhgeJ2vnzqZZqMbFQozrYgBwllRzkw/bSpGk1Lu6ZEUrk4Tg8iXD1V?= =?us-ascii?Q?J0hIz/LKWHoGS0Amrk0WAmvxG9vH1Nsrq9gUm7yG4IsMSNgfDYc/srbh9pak?= =?us-ascii?Q?k/EXLTg5FKxSFobTAOAlW8kOPnWy24HGQGMalXmVtFqkjSNMJbHcFn0Ufpfm?= =?us-ascii?Q?uMMAYpk5TguSebMLIV1jpFzwk5Cqv0eeoQL0aJprG9+felQJyDQFznpU3uue?= =?us-ascii?Q?cf9bnfTJnTG56VFWnppxNKhTEnTFWtQ0PH1kRhAhsmoauI1UXm2dVP4cGKTB?= =?us-ascii?Q?1THv805Ko60uG6auNPTbenABPm31cLRuAUgc+vGgkV564/lAyYkymYCNNmGh?= =?us-ascii?Q?8tIUlxHnU4gQCp2aEJGyfMbEFWbC5Dr9JZImrwQsAr0FioPrQB+UgA6TKV4X?= =?us-ascii?Q?rYyKNOCbW8X+4VG8Ncy1JsL8QY5MN0RdQYby9H8FADeDdca7MGu77gHgEmS8?= =?us-ascii?Q?34lHl1EWEvuBAVaZK7nFICugVDo2hXUjGRLHPyMGeHJ+kXqk5T1aJE/mGk2I?= =?us-ascii?Q?uXmwi7sdRn0mC9Q7xXs7sK/QbwEFQPwib1UlrWhm6peFGJ6k+F0muNjVDgZW?= =?us-ascii?Q?AUMI447XCjj8q3dU=3D?= X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1449; 6:45MqVzxl7DhekAy2MDYs/XgBOBeRO8qRAOXEUYxOf4AWKgB2Ovc59IUjD/jKhbWbos0Prqikbde+T0vQS42fsoyoCq/hxG7L92Qaq9qFVNd7ks7gS5ovFaQn8ZEicYyrdMggsnXGaaHoqn9JxXmRTUJUOD2dwvPd43V82bTTCmkVFpvxMyotoEyJoiOz9Clb8pYhTK7BtVd0Cop/Eydz379K50KlLbFCc7383AC0JQF7VmS118/SUniXFohhyt0qCscFaUcb1XJWlqbDtv/gUIw+pe+pEvQRt4b91QMan0oxQm7F42HOtwDBv6JMZ0mI+fNOnU7btAvwCRmCUGNFcQ==; 5:jH10kYf4RsyU/sWL7D0drbgbzxKUa7jFPXhRW3rEwnBSaiCFhXmJAzgQR0U/oMievLz/gYOV2fvW5wX2PD6uJ+lpoCs2xNnE6YUnebIHje/irCJcB5//7ZiNbPnYwHp1aJlAitJeXwdrntfkOXvJ7w==; 24:+zSr1/SdIbyOb5W1BT0+EJXNpb5P4PWAP32EcclxoxX9JRL391sVCwJEJ7s2rxM+G7/Zqu2QZA+u4uzZaRUZvNZGwgiw9orQWKCtk3R/hqc=; 7:yc4GE5w/T4qTosuaGzKe/Ao2dkgIsA7mWWdFYEt79W7rrujEeBnodTwaj9wwM2arMnOaM6gXVdo65QbrVq5dHiJd+gVaf2gyIGhq2z1UeOcTURhNryXov9z4RoKB2gLUTYtO8GeuuAxdFR59OhbMnSIU+G0m1QYCY5oTXbsCCTDcbk7qdE9P83a1jW0f4s5JGutYtYJIptuJUuNdhGDN3H5D7x99kH2DZ0L2MNf5zjEZX1OHqFuPm/hsEtJCfLPE SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1449; 20:uU1Y7y94m50s5IHGJbXpLaKVxj++Etdg5/6uFoJ+0841ve5N0MT7tnPswacUOMO7SEqlHBlNJWcQCrxKPwbX4XY+nuuJ4Aeu6YC3HL+SMwJ4940YSOCK5zZh9xcSJIjqAjvEzJ7D2BEyVCVCtd3f6DyY9P2C598LzPaH8kkfJ9I= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2016 03:05:16.9715 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: PS1PR0601MB1449 Cc: Linux-ALSA , Simon , Liam Girdwood Subject: [alsa-devel] [PATCH v2 1/9] ASoC: simple-card: call of_node_put() for dai_link 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 We need to call of_node_put() if we used of_get_child_by_name(), but missing it for "dai-link" loop. Signed-off-by: Kuninori Morimoto --- v1 -> v2 - no change sound/soc/generic/simple-card.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c index 55638a8..3ce8bb6 100644 --- a/sound/soc/generic/simple-card.c +++ b/sound/soc/generic/simple-card.c @@ -322,18 +322,21 @@ static int asoc_simple_card_parse_of(struct device_node *node, struct simple_card_data *priv) { struct device *dev = simple_priv_to_dev(priv); + struct device_node *dai_link; u32 val; int ret; if (!node) return -EINVAL; + dai_link = of_get_child_by_name(node, PREFIX "dai-link"); + /* The off-codec widgets */ if (of_property_read_bool(node, PREFIX "widgets")) { ret = snd_soc_of_parse_audio_simple_widgets(&priv->snd_card, PREFIX "widgets"); if (ret) - return ret; + goto card_parse_end; } /* DAPM routes */ @@ -341,7 +344,7 @@ static int asoc_simple_card_parse_of(struct device_node *node, ret = snd_soc_of_parse_audio_routing(&priv->snd_card, PREFIX "routing"); if (ret) - return ret; + goto card_parse_end; } /* Factor to mclk, used in hw_params() */ @@ -350,7 +353,7 @@ static int asoc_simple_card_parse_of(struct device_node *node, priv->mclk_fs = val; /* Single/Muti DAI link(s) & New style of DT node */ - if (of_get_child_by_name(node, PREFIX "dai-link")) { + if (dai_link) { struct device_node *np = NULL; int i = 0; @@ -360,7 +363,7 @@ static int asoc_simple_card_parse_of(struct device_node *node, i, false); if (ret < 0) { of_node_put(np); - return ret; + goto card_parse_end; } i++; } @@ -368,14 +371,15 @@ static int asoc_simple_card_parse_of(struct device_node *node, /* For single DAI link & old style of DT node */ ret = asoc_simple_card_dai_link_of(node, priv, 0, true); if (ret < 0) - return ret; + goto card_parse_end; } ret = asoc_simple_card_parse_card_name(&priv->snd_card, PREFIX); - if (ret) - return ret; - return 0; +card_parse_end: + of_node_put(dai_link); + + return ret; } static int asoc_simple_card_probe(struct platform_device *pdev)