From patchwork Thu Jun 15 00:24:09 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kuninori Morimoto X-Patchwork-Id: 9787661 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 DF7C2602CB for ; Thu, 15 Jun 2017 00:24:36 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D245E205FC for ; Thu, 15 Jun 2017 00:24:36 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C713028589; Thu, 15 Jun 2017 00:24:36 +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 C4D5C285A0 for ; Thu, 15 Jun 2017 00:24:35 +0000 (UTC) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id A9F6E267345; Thu, 15 Jun 2017 02:24:32 +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 8A81B267338; Thu, 15 Jun 2017 02:24:31 +0200 (CEST) Received: from relmlie2.idc.renesas.com (relmlor3.renesas.com [210.160.252.173]) by alsa0.perex.cz (Postfix) with ESMTP id CBAC126735C for ; Thu, 15 Jun 2017 02:24:15 +0200 (CEST) Received: from unknown (HELO relmlir4.idc.renesas.com) ([10.200.68.154]) by relmlie2.idc.renesas.com with ESMTP; 15 Jun 2017 09:24:14 +0900 Received: from relmlii1.idc.renesas.com (relmlii1.idc.renesas.com [10.200.68.65]) by relmlir4.idc.renesas.com (Postfix) with ESMTP id 38F6D5AFCB; Thu, 15 Jun 2017 09:24:14 +0900 (JST) X-IronPort-AV: E=Sophos;i="5.39,341,1493650800"; d="scan'208";a="246634121" Received: from mail-sg2apc01lp0244.outbound.protection.outlook.com (HELO APC01-SG2-obe.outbound.protection.outlook.com) ([65.55.88.244]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-SHA256; 15 Jun 2017 09:24:13 +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=UVv3WU4U7ulSEfKBbpldlNg4mGey4P/qck2Ct0w88KQ=; b=I5ddGXwnEPm8uFySmMCDT5G1antd/BqWavT2WwgJjwI+J6aTjn8hPKjbynAUCjT6wQlosPnHcGqci5sBp0YRBzwPY2ydKemUAnaZBZ7LMKKmCCfhPlOM78aZrdIF00tacJg262YkDOECPkPSneFTpyub0g7V6jD8f3U4EvpollI= Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none; kernel.org; dmarc=none action=none header.from=renesas.com; Received: from morimoto-PC.renesas.com (211.11.155.144) by PS1PR0601MB1881.apcprd06.prod.outlook.com (2603:1096:803:8::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1178.14; Thu, 15 Jun 2017 00:24:09 +0000 Message-ID: <871sqmnlwa.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: <8737b2nlxk.wl%kuninori.morimoto.gx@renesas.com> References: <8737b2nlxk.wl%kuninori.morimoto.gx@renesas.com> MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Date: Thu, 15 Jun 2017 00:24:09 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: HK2PR04CA0088.apcprd04.prod.outlook.com (2603:1096:202:15::32) To PS1PR0601MB1881.apcprd06.prod.outlook.com (2603:1096:803:8::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e63306d4-f9bd-4fde-6fb3-08d4b384d77d X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(48565401081)(201703131423075)(201703031133081); SRVR:PS1PR0601MB1881; X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1881; 3:CxJVK15Uanvs2dnAlrAhRTMWSLNLDdtOntENry93mX3busLPWweUHe3F5wiFMCLDYaHV7E3Ab0+wr9GG/3xyarQvUwo0bhb7ltyYUvLW0vS2oyI8QCyFaJ5fTrR0pNetkzQ2vq+OED8Hej65oxJbwqK4wdNkoV7DQ+2z0B1hyDVmphAfTLGHMRhSZrsWp3/X1lBj6cd/JUYtMUEZkftoZEJiw9n7DjPyNdbF7hDUqSnEOziod4fwxdfQuUWT1ImWWD9am7FbLNp4xPwDjNw/xs/HCq5AMGs3zjduvHoOo1PfhX8lZIgoRZrNP66TobaXfjnXQa7m5ktUh1z/oMhLvD5+OtzZEHfnhknPWHlFqKk=; 25:s0CQOUzrVoBRt+GKaMQCOyZBpvUFFo+nwj3F9G9CK8K/8RzhDRDq8UHZMlrH2eFQ0Uyd66SL4pQ0ZSnLulrpIaNsNlqDU9BRvlQh9sVvct4gqw679YNQqhoDLQW6mkU5ybHp8h3F/1f3a4giPgWqNHEOQaEbvdG8jpynXHkaNVdCO6QC06az5Orp/oNXpldH07+LdYQZgVJ9E85aTD58UzTqBAKqE8bFWWUrZsQiXHO3g1V43lSEYHhb8uDAcLIEAcR46OYGOjOAjVh6H1Pw4KziagUG3A2PhfKuOlUUhyHa72HJtb6/WjcQ4VLdRqPhyTLDYPblGpWNiFzW5UguwjYGrDDf6KruaHLqSSWE7bh1kIjBghECPuwpI7H95g19yCVKK+XTH/I+fkHml1cw4F2EIGNBUGz5gQ9DNADhUs58jDPtz9ym4kGJYjAk9ENuAr5XPmCDuc4k5X/WKYK3lj+5aNaCQFkc4KE/XcW3jys= X-MS-TrafficTypeDiagnostic: PS1PR0601MB1881: X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1881; 31:lwIpZDGOWri9u8X7uFf1nseljLFAi+tK035ULoAhI05PLCBeiuf96QCwvibtW7x7rRfuj9BEVpRQc/r8H/6Y+MiPjY8igmek/kIshtNQcS5kC5SESX4K/7UWm5y37SAEVsZOnzxRD9ivbp0TegxrW39ccj7z+ZbrNS29+6PvDIpD+r7T7zfTdSjw8vjOGLMd2asrFAbarlQMbc3I5Q29u3mnBwHeUEMw7nsc7TiJHs5hCzGj1fteUFsKziEr7Fyp9cOk+J5TdJZfHBeuBoeGzg==; 20:pZNpWsjpuraM1uiKn2jj5tEIzKs1uNYWz1Z9vd64r4i0j8Jqq+Wzb4KJQVUeg8rJkJj+8HXzg7h6e72J1jpqG0rRWYyDIp47/fZTHdPO/E6ZhdyaV+PxA/oG3g0bVXQP0SqtccC03tQtAwBBkPJCdPZ6KRvX3ktY7rPrJ/OB82PxsFYTiZtQRHqJk++vRmIvjxIzgl9kh9qOAqW5P2cO+N1x+JoO7fjpfR2nL0qFRr1ZKzK1VTon1foisjng4D/ZOohXs67tT2V1E5FrZwngK9/jdHMAMyzIwu6AgtIBWOrZzpk/Km6+2IkJ5uri930ZlhcWGGjCdfi0e3QWsE2WMQ8Spx9m2o3b02gUtn7BrCqbj9FOZgelSSMo+yr7vrVo/J0cpm9N1MLk2ZB39QZtLR7UKcRDruwOjLW0BH/TdmFRcMcL6OM8iUwz012hJXUgJe4zneXipVz8vYMsKRe5prHaD8qaop+ibWSDjRruPWbh9neYQ1UO2Zf+RZBWp3td X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(93001095)(100000703101)(100105400095)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123562025)(20161123564025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:PS1PR0601MB1881; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:PS1PR0601MB1881; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; PS1PR0601MB1881; 4:o5UcV4JCk2291UkN7CvOCbznkDBvcKLaxPJKyfwQ?= =?us-ascii?Q?MB5bHBXqBKKTyvgF2goP43KYPZLe8rJvZiABC9JAIBpIbvXXUO6gAB4VU4ob?= =?us-ascii?Q?xO5/lg39LdrkMEIriudsV9IEXkso/eTLnFq3AlcMJ7z1EJAecGn6Ck+zUSxM?= =?us-ascii?Q?vbXkj+d5L79L9BjYCFAzBX6ZD3IWcbah6DtUtuq7wBM+7wYSW9IKN8BiswNq?= =?us-ascii?Q?Qx+Ek/Uz4WuF0AbuccbJtfjFfA8JE+XYbm5M1Qbxgu2B84pIpvUEbO5tA/Cq?= =?us-ascii?Q?7gY354Vd1oXsEJvwGucvfFR2NLpzFXA6ZrpK5bw+wAUN1ahCq+8weZ8WXXtH?= =?us-ascii?Q?GvS1CqINA1j2QLCobqXEg7OE1IHyHMC5qonbta4bB87DhROpU+cojnVjjtQm?= =?us-ascii?Q?mCh4R1DHzThrVdhnIiFUsYtyTuBSYkD0XJm+UvCdWtrgd6GDh+nDyZxawu5h?= =?us-ascii?Q?KmMc8y0xm1b2tE6lzV0R8vaVPfKGLUkmzZ2qQvQWw43prHBrzbpLqTmRqUty?= =?us-ascii?Q?8fBBnKltgYr8pRx2qTKYU/OVre/+IuqDkQQ2JQZlT82FEWiCeLq4iQLRbvSV?= =?us-ascii?Q?aIsLYmXvEhMyOlxhtNlSci5cUwCB72s2YdNSebYiijC+kIxxmWZJ7Awwet2h?= =?us-ascii?Q?BnGM0PAKJtizUcBSGcHaxmcpb7G/86evnEOrhvrrzWueHu0R8n74uaj4qg17?= =?us-ascii?Q?K6qXx32arcYTMEHOYrnePH/N3/hgS/X8hFvmyFjwip1/sQhRGuqQ+ottQvZa?= =?us-ascii?Q?x5Vw2B2Nqn/XatUVBiqsyKSWZoPESF8hQHH8tDcQf+UTEmqXyR08Klh4PTCB?= =?us-ascii?Q?KLre6gEAWaJv2u6o6RIMkwVWRX8JnIVoxfWF/eABRlzfwqIu1gU5fETeKf/R?= =?us-ascii?Q?fBLp8MyDn3TphNPrfNJvFC5x36ligy/Ns6i/EkUvMOjJ0kBRUuaHalY9qsk/?= =?us-ascii?Q?HlrNstaVuI7NK3zXywlqDSnV23VIsM67Q1PktqTtfMf6wzaO/2B+iIK4huQW?= =?us-ascii?Q?UlowVfrr+dRRmz4kbISqPtqk3Lx80mXq3XjRp7sCmCUJUjnrvu6I4Igkf5Tj?= =?us-ascii?Q?57vSnIQHjek5PdNLRD4C4yLeR4OTJDV1j2++jveTQMKOJyquKdcW3jdAMjcq?= =?us-ascii?Q?4z8WDF3gsBC78ic3WwFmcJL7UF09qoFJJ/9s+axMJC5/RYSTOrfUMA=3D=3D?= X-Forefront-PRVS: 0339F89554 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(39850400002)(39410400002)(39450400003)(39400400002)(39860400002)(39840400002)(66066001)(46406003)(76176999)(50986999)(4326008)(54356999)(2906002)(36756003)(86362001)(478600001)(4001350100001)(47776003)(189998001)(25786009)(110136004)(33646002)(7736002)(38730400002)(54906002)(6486002)(53936002)(42186005)(3846002)(83506001)(53416004)(50466002)(6116002)(8676002)(5660300001)(305945005)(81166006)(6916009)(2950100002)(23726003)(230783001)(16060500001); DIR:OUT; SFP:1102; SCL:1; SRVR:PS1PR0601MB1881; H:morimoto-PC.renesas.com; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; PS1PR0601MB1881; 23:8ZS5WASQa7DfgdFOCMtNRWWlabAbaoTamugabUa?= =?us-ascii?Q?zlh9sJAmlyvwfB23LiO2icJbIkvAhqHor/D6+sES7x1G26Y02sL6UmFi/GU8?= =?us-ascii?Q?fbyYHnqSA6spiuCkV7ThSwUyAMtHUW/IPgtgnqm549ZKySoRFpEHJMdCFXYm?= =?us-ascii?Q?KpKU0GDftwo2adBPt1sUraYDNSLzmAFutqyHX31YEhGFYmM8wabRGRtFXW4T?= =?us-ascii?Q?TEOjo/h0xVq+6GEy/D7cDK3NRpQFfpVU1ULG/9gXUkKlp+6sQygLuqA+dEz1?= =?us-ascii?Q?LKC+XUz0FHDrzmfLBttRKnEB6odhpeQjts6SP01PyzisLM6UGQm5QwHduZ4/?= =?us-ascii?Q?bdiCCwS5CI9WjQ7d9E5lK7hGis3MsLR40WpTSMAnH59JLESP5S9aoMz7VQ0W?= =?us-ascii?Q?7O9PhNHyRI0dkExhHUY/PBuN3Q5eP1f+hq7al/uvqtc3rKokWDiOKViWBZnu?= =?us-ascii?Q?olFzrXtNkDadOmBLclQ+m19qlvL479L0vMVwb3Y/MN6gtIhZM6D+cb35uM6x?= =?us-ascii?Q?v+eNr0x6HyQ6qlf7Z9vc+xMO2RoJCzJMSke71vTedR1O8o9MXDitucKoFQ7s?= =?us-ascii?Q?q8BbJzEW96H/BRlRTc+A6zi3kZoZyGWlRpopVHe3nE5wt5og0tfJ0AYfCsZI?= =?us-ascii?Q?q4lSiXjnqSVXt4ciVxB7gil3K0Ygs88U+ZphSgDH3INCW9uYl5h6YGlJfRK0?= =?us-ascii?Q?r1g+Sir3Qr9tEVTVAvAIHvHXbLaDnKeqSCHyx+7sLdA9BoGBAzryRG3FVwS1?= =?us-ascii?Q?3JrUXibg6aacDRCwdPDNDFPY4418jHxox7BkP5qFRBVbOQ8z7CXsU1zz4/zK?= =?us-ascii?Q?yNadUuBHyAvFigVspDjjV5md0wBDX/9I437XQyLY1BE8NJnJJ4KPA2MYYKmD?= =?us-ascii?Q?+odwnkZgy7U+ShTmi7N7c6nMSxLlCIXyh+BHqF3h8jjDmIBCsHwDhdUWDrcP?= =?us-ascii?Q?V8vDaYpeLSogG3px1Y2VLqWLmgEABzoWGTtMIqoZHKpXyclDA8Bf+OK/Ap1l?= =?us-ascii?Q?0GkzLILgZbL5j7x/DQBdTMz24VAVse6vY3FhNH3JL81uOTF8s7V6elprtpld?= =?us-ascii?Q?jM7vwiyaBoJhfgxrCFHx/7SKnCFdjnDDA5U/HB1D2fGqQ8vK7kd9mVcmjWt/?= =?us-ascii?Q?TjCDXY/YQfUXUeJVs+B7BM9vGpn6r//4d?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; PS1PR0601MB1881; 6:yhYibxNgmWb/BufLs32mK73ChdF1gx8EJ7kAtW7/?= =?us-ascii?Q?Fpy/feVCrDhu0q/nKZ3VTgefRyNL2PPGi4Hb23IpWNEyRofsZZnaJlJi0JkG?= =?us-ascii?Q?hOkVo6tsNqoJovhFNVCC2bi3BXbUHmjN0PV72hOcDSpa6AkqmNP2GWy+KdUM?= =?us-ascii?Q?2bd/6cHQM7jF6iFifp7sM8AIgXdDj6n5TFFkxgKYwe9upmWax1I5k/kBKB0H?= =?us-ascii?Q?t4aa3mbY75Kxb5iv7M3GU/BK3/QzOzHvo1JoJfY9qrEj5mks4SzYhcDpnteD?= =?us-ascii?Q?HrffMlGqbM4JCqd1tuZ/PeDAekI1g5AuoguRjilwwK0BN/GVzrwYct/xSCih?= =?us-ascii?Q?LiB8Sa5JWlm1gxkrW63COqL5Jpr/V5FG5pl64FQmiYZuPK3Fu6eVwFXrzuH8?= =?us-ascii?Q?j3RW9Mnve/Z4Un3VrCQLgQHfpuJxecg6fDiO/5fTGABcfWeqR+VXE0pr+gOG?= =?us-ascii?Q?AUqPZvCOkDm4HTWFiH9umbs4HnM7+A8rwM3k3+0KUvd0w5+yFc/40W6pB9yh?= =?us-ascii?Q?s4dytkTWlmWV4iRNaIhnqmaNCKzyZ7FNMDupO2vYebqSzkEQNQ/Wi6K67RB/?= =?us-ascii?Q?r55RiYXRrUdRHQqnoIK1HqyRXBHVtcr+pqHrrN7lnZ5g9NXWBxizskX7GwX9?= =?us-ascii?Q?QLROCTxvVcqa5FJ594dU/kQTUcp4+U8pwPCJ8LtH9tEVLAXB6ST/A29ip06N?= =?us-ascii?Q?FlgRA00D3hdYVL5QUb+JR0mbUJtDnt7wKRQ/nk5BIV640dsGZQ0pPblv9Isf?= =?us-ascii?Q?IlISyzoVqW64DX/O2jiWlRwoN6/AwCD1qPZzkGdxNVVPcfHl4u868p/nTzgT?= =?us-ascii?Q?GpxhlV39LC2zKOCpzmKJdIYEkqGw6zZamDJUAGXpwKL5KhZh735TymPDkiUA?= =?us-ascii?Q?jMJHTAJ4P6jdfiBAsEYrqT0oK7SwHO0nxFbN0V31uyoHI8jr65kwtXr2fLXM?= =?us-ascii?Q?CwxghdjutNq52x1LiPzbvV6JBhWVIa9FZmoy+hq+CUCJRuBiEWOi/06HIvTr?= =?us-ascii?Q?xl1gwnP7emJ9ZBqUPK4vhRex?= X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1881; 5:GYCbVJm1W23lghTLdPnesS75rSB9puo8V34HTre6u8jMGoJ/s19WsWZdo0Oip66gLP3PGnD5j3PBlQsIdAxnxK9662kNo7ddE5/oJLurSDuRsyJModksINSw5dnAFQzcq4tT618ZJeqJluiCszYYmvI+6Phqh5LPbXyXMPzVd++8b5c57Mt7hVdud7JtpHWPRbJuU8oBhBeRT+YmK0oOasZ4sj+xHUTn8kGpbrziBGWjSc0wUKApV5Z7l7TpV2cnT4U21XH6+4Xvatyxd8yN/zXwudRHkr9ZvpPC7mtUzkKBlkXObl2XBhbRB+raNCFOmUNs3GJmUOzK/GC41N/VBzEspIKNvZoZvXq0NibaQ4rW244iorheRA9W7tO13SXW5w7nlvB+thxFpUWR/BWN66zMo7VbUqlPqBDiMFykpG0ezpS/ngxRmWlozskpFJPJtGT41SGVFNAzkHFJCLZKl/rHfhKiFXSbzdmUmjKTzbxgvfgkH4HSpRT63dEHBE20; 24:1RXPfQJyL0fsHDNUA14AMS4GMMjSCn7NhGHUbHfrp5YI1EOm50xK1A0Uod/Yr7xkP3dyjBKTd4whPCHS7fM3FY9ow1BdIaRHXgkt+tf2pu8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1881; 7:fUSJ+zOgrF75ZLkZcduiicObhlZ1swcJUtlqhOJmnnaT/mmnrlTNXXW/NtcLDtIM9PZPve4zQxVfxYq9U3dxzm/Hk6S8ogcGlC/aKRfee01fyrxfzAyLriWWutFX9NwKvU448GsGhgfioyH77fkT/BE9UTkyVOdvfgqhwnNf8YtXfOfv+H7eUQM47AbIr33nCRCGc65lb2SYm9c7fszTRm01cafzJFfTe7g/MZd0wYo5pCTPH7UVTY6wlXo0laBnz83g12YgUhLKXWHG4PcuZ9KO1Cwpqei7xvNwKMbNr2dWqVeKckcazOWw6aJMKRqNFQAbnOmvkuOwn7sm62DSMJHxJgy/5hWxPG9mCFJwL9qbPgTajBTjRlsMwqKSYkzxgztCG92ljOkhRyIUV7gb0Rn0ENZ048Q3PEhv/GEiVmj1u/fLI6eyp/kNC4SLbQsGqe9ovwVL7XSKGAlYBUQXQfVvLcdQI4dviWYEMKjy3uRSPu6J/NzeNUpf9r9RUTEC0+CdZTch/zftpUAbk8c5ZLMluiramtejOYC0F6qF3OWIChn4Ae6AneqJ5O/Trugy1R8J/MTAbofJWrHGtSZcVhigWnjXVfTD+B4f1iArYCk3TI8tMITQFLouQxKCOA8YyTkEbcZRstkTotbkdtWK3hOi9ji23/ITYoTHO7Tyb1ei3xmW1RRr73FmFpf9MmQlDs1TFMJf5DVb4Vt0kApfguFb4uXocwRU3l0keo63/oNWmUEWC8BDtDNafKt5d7qz6dc6geiz4kprLjS2TsDaO0e+c8cTx3ZzBR0jzFvj6H4= X-Microsoft-Exchange-Diagnostics: 1; PS1PR0601MB1881; 20:F/dPXNm54/cwBAra00PbM4c0M2Hl+un4FfatEOJSyE+4Cn0qJiTAys2uAriYyHPgsK8gtJNRam9dKq+4EfIy8RsMTc4G/kYVO0nwiHxp591xqYYaHCg19xCRD5b2VDjaWbis9AvjDZGny4qGejt4dW2LF9MNb/j/Zga+FPMDWRE= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2017 00:24:09.1243 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: PS1PR0601MB1881 Cc: linux-renesas-soc@vger.kernel.org, Linux-ALSA , Simon Subject: [alsa-devel] [PATCH 1/7] ASoC: simple-card-utils: add asoc_simple_card_convert_fixup() 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 Current simple/audio scu card drivers are supporting same convert-rate/convert-channels on DT, but doesn't use same function for it. Encapsulation is one of simple card util's purpose. Let's add asoc_simple_card_parse_convert/asoc_simple_card_convert_fixup Signed-off-by: Kuninori Morimoto --- include/sound/simple_card_utils.h | 10 +++++++++ sound/soc/generic/simple-card-utils.c | 40 +++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) diff --git a/include/sound/simple_card_utils.h b/include/sound/simple_card_utils.h index 2679312..cc318cc 100644 --- a/include/sound/simple_card_utils.h +++ b/include/sound/simple_card_utils.h @@ -22,6 +22,11 @@ struct asoc_simple_dai { struct clk *clk; }; +struct asoc_simple_card_data { + u32 convert_rate; + u32 convert_channels; +}; + int asoc_simple_card_parse_daifmt(struct device *dev, struct device_node *node, struct device_node *codec, @@ -90,4 +95,9 @@ void asoc_simple_card_canonicalize_cpu(struct snd_soc_dai_link *dai_link, int asoc_simple_card_clean_reference(struct snd_soc_card *card); +void asoc_simple_card_convert_fixup(struct asoc_simple_card_data *data, + struct snd_pcm_hw_params *params); +void asoc_simple_card_parse_convert(struct device *dev, char *prefix, + struct asoc_simple_card_data *data); + #endif /* __SIMPLE_CARD_UTILS_H */ diff --git a/sound/soc/generic/simple-card-utils.c b/sound/soc/generic/simple-card-utils.c index 2ad7633..948a188 100644 --- a/sound/soc/generic/simple-card-utils.c +++ b/sound/soc/generic/simple-card-utils.c @@ -13,6 +13,46 @@ #include #include +void asoc_simple_card_convert_fixup(struct asoc_simple_card_data *data, + struct snd_pcm_hw_params *params) +{ + struct snd_interval *rate = hw_param_interval(params, + SNDRV_PCM_HW_PARAM_RATE); + struct snd_interval *channels = hw_param_interval(params, + SNDRV_PCM_HW_PARAM_CHANNELS); + + if (data->convert_rate) + rate->min = + rate->max = data->convert_rate; + + if (data->convert_channels) + channels->min = + channels->max = data->convert_channels; +} +EXPORT_SYMBOL_GPL(asoc_simple_card_convert_fixup); + +void asoc_simple_card_parse_convert(struct device *dev, char *prefix, + struct asoc_simple_card_data *data) +{ + struct device_node *np = dev->of_node; + char prop[128]; + + if (!prefix) + prefix = ""; + + /* sampling rate convert */ + snprintf(prop, sizeof(prop), "%s%s", prefix, "convert-rate"); + of_property_read_u32(np, prop, &data->convert_rate); + + /* channels transfer */ + snprintf(prop, sizeof(prop), "%s%s", prefix, "convert-channels"); + of_property_read_u32(np, prop, &data->convert_channels); + + dev_dbg(dev, "convert_rate %d\n", data->convert_rate); + dev_dbg(dev, "convert_channels %d\n", data->convert_channels); +} +EXPORT_SYMBOL_GPL(asoc_simple_card_parse_convert); + int asoc_simple_card_parse_daifmt(struct device *dev, struct device_node *node, struct device_node *codec,