From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753330AbdFSAjj (ORCPT ); Sun, 18 Jun 2017 20:39:39 -0400 Received: from relmlor4.renesas.com ([210.160.252.174]:42708 "EHLO relmlie3.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752891AbdFSAjf (ORCPT ); Sun, 18 Jun 2017 20:39:35 -0400 X-IronPort-AV: E=Sophos;i="5.39,358,1493650800"; d="scan'208";a="247995516" Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=none action=none header.from=renesas.com; Message-ID: <87efug24ue.wl%kuninori.morimoto.gx@renesas.com> From: Kuninori Morimoto To: Mark Brown , Archit Taneja CC: Linux-ALSA , Simon , , David Airlie , Laurent Pinchart , Russell King , Jose Abreu , , Subject: [PATCH][RESEND] drm: dw-hdmi-i2s: add .get_dai_id callback for ALSA SoC In-Reply-To: <87efvnosnb.wl%kuninori.morimoto.gx@renesas.com> References: <87efvnosnb.wl%kuninori.morimoto.gx@renesas.com> User-Agent: Wanderlust/2.15.9 Emacs/24.3 Mule/6.0 MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset="US-ASCII" Date: Mon, 19 Jun 2017 00:39:29 +0000 X-Originating-IP: [211.11.155.144] X-ClientProxiedBy: SIXPR04CA0052.apcprd04.prod.outlook.com (2a01:111:e400:51e5::42) To SG2PR0601MB1885.apcprd06.prod.outlook.com (2603:1096:3:9::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c9ca8521-439d-49b6-6805-08d4b6aba638 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081)(201703131423075)(201703031133081);SRVR:SG2PR0601MB1885; X-Microsoft-Exchange-Diagnostics: 1;SG2PR0601MB1885;3:Ita4h8wFxsH68j+hE84raanct5ll14fSDhWyc/324K5GAlqxvLnuHzcOwxcZ3ZJnxnlbolA2Ril9YyiqhTB0YiTEk9vM2KLarfEwsx57LznEqqbI1CBqx9PB8HnDZM3xdT9ioyuS+/vRcQyu8L5rOp0ArChogdiLSbEh69SogkVsAuY7CudOI1ZCGibfILSbbKMyqZrvWf0/xjXWnExh0MDaEyZZ5oEd25Typ6qOmbJ5eLWdyOChS4o/Ilu9k0OxcCTBzoRvV95mbOy8rXTK9kO/G+wXafcyHK6WGpQ/6ty8GstIMD9vzEk19vXTYegZkL7IFde/3Q8xWbqnJhsFhDI7wp9C3UIIsg1tfn2iisQ= X-MS-TrafficTypeDiagnostic: SG2PR0601MB1885: X-Microsoft-Exchange-Diagnostics: 1;SG2PR0601MB1885;25:muH52+Akf7tqw7T8JMkmgaid8H3kQHFl1gYAsr42dbgLCRTOqqBXlVR3QiGW4sVPSNnIvea8z+tTPVkkPi84Rwe9hPXpUO6b+jqx7fRCWRWEqqYqEPb5owDpISY8ldb6TM2TiyIBeebevT6OvlM1aOI61HfzLBkno3MvF7Td0qTLetFcvlYmVM1MEehbugA8rMPgHtJ5NIC6orFItb3lsTNG2nvoIr02HaKpACf2QM38IvZ8ume2cNXh5EUM3WBG5AOnKHm9bDpU74PUvnPNyXcqygguXb3lV6liEGFru4ykDc79uQLSChI++kfczZzxtT0k/aT1TyHat3monQIPjyfX0pHf5Xiaxvz0VThWexfTac26D5BRsBTo+tSznpY6LlQC78/n3KZUMjuQkhJfhA0UhBiIvxqQ9dnlHMV6cR2GZ8wMTLOYPF0Ak7dSGR896XORhq9XMkRTio+zNZkDKwQOU6yRYm3Bp8kCTnbfwxXfZlcyM/yKxBfAAChEw+D99eeeTZtvD9831u4gkvD5jTNhjqUBw2UKjL9F+a4daFvyLgL6Su8I75ec7uvLAFYot+TnPWcAHyE86Lc07PpJ0dYSP8EVu95UKItjsoxHsIzsGwbiU9Ai/x0jYNLZmImUwuNdd5kd/IdaeZpyif1UnWVRuvSO2AOfTqaSdsjm1Pc6W8hx13M1KITxt+dJkKLOIRwyQMxS27rP6rNy3drltBQKOzaViV6+UixOyRT0cQLJUsIfd+91QeGIKADsexZ8gZQZXJdgfkZaikfXUI9Pqh0OI8tnz4+NmBp/WWRjY9iXwhGGaYEMO2Jg+xA3oLYGojUmrlJaBoRIZHTPg1JRgYRwfdeKlfj/8gLMxmNqd3Q6Tq6LwSKLzJov7UYAB9zoNykBRShEefKSsgYcISN83PhQA8R91MM/AZpmtpn3UWc= X-Microsoft-Exchange-Diagnostics: 1;SG2PR0601MB1885;31:ZnvEG9OBakAlHLPWEX1uS0PjZUYGfiyyag2RbbsTIehfgx6gJVaxeMQ1O6xf0u0A1HfKBzu7RaIpGc/qvYiKHttJHotsiVuYnEwWnRh/SqUVE/YK24imEQVjdEzlIefzBw616+z4Jrxd+/xEKK+9a8w5kR8k+mFx31sKtIFiUhO7mT3E7epPmWCuEmge+aNktTRFDLPVc3H8qq946PGIHdNKIoib95F5GO7qwhaZvH36RgevKJKzmH0jjCegTZooQqj1tgIs2kDrJxJfEkUBW8JMlImRIAIxYZjonq+4rnWqbAL4mCgMhlGhTd6SFSTEwImOEe8YcAuS/cM0FHqvaDrtoNTy2YcWoT6/Xa0M6JB3N7dMuVB3g127IuYZfBsXhwvID3/R/ohc8yaWRRv942YHf0d/JpP4lXoscIWPKLJBUuo+73HF31Wskk5hwgLyIoChMcKJeb4LBoFGJAAp7zr7h/iEXLm4aAK9pf4ySfKEEbab62wlEC/lxgyWX54OXOA1iXoQfpCge4wJXfU0Cx7/qdIr1EGLmVbVtNjpchvFMYcKz4DkNpSOtJov0nFrKSOSlWlW3BUUu1xuuxqcSvzMsWsGGab0nXCZGHhN0gihLrpFXpLTpnCnNXytmtinOx/vn7URh6DUaqIWkpPi9w== X-Microsoft-Exchange-Diagnostics: 1;SG2PR0601MB1885;20:ZMALNjlL3zeC9pfACLAmXqQLmR2jbm2p3EeZmzsHUeFT2vRHOaAbZtYW4fMeoASq3MmhaqPaOZCO4DeSNQ5nfc3SO2+XlO903/GU1LCb5fCsDcaDYNzs0+1vDOq4xGi+8vwURr9ixmCzhQ7kQ7aVd783Pk6puEdze6ssp2KD0hPq/S+6qilAu0VjT46u30qoUZGbT8i5UY/QIeOwbXLMV1mc90RLLBXfAQhl8zze5OM0escVYf56mlC1lcRAhq8Cc3n11r95yuHtP1I2/PaUpEDB+msLYCpcPrhLGEKQJpNyOJIoriuCPxdSWWcYcTMP3i2vL0ixKNFpIlE5yVa9Gdb8t3C2P8vmPmxLwD71FIOiaS3/ol9WY0EJ5EaLftvj7wgnZL9aRPpWhHD3atQ04qxtc3+is+2l14KoQCss3Vozgfe5Lo7K856+ixi1+CAmPB/2jI/zNW842aBWSMEOwtw7Os3rDJ+rTkSX53VOdWsFhxtX9zMZG64aYJXctSXr 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)(8121501046)(5005006)(10201501046)(100000703101)(100105400095)(3002001)(93006095)(93001095)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123564025)(20161123558100)(20161123562025)(20161123555025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:SG2PR0601MB1885;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:SG2PR0601MB1885; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;SG2PR0601MB1885;4:7KL4OcgHjrXGitXo3nevrnpnYtKGqxdclB1tot4e?= =?us-ascii?Q?Q1dct2Q/XNBiCOyglPU+fkQl2aAlGYq5zq7SNLk7J3HycRh6rSIGVtIZCCCM?= =?us-ascii?Q?0pLxd7V5fukN/a2mjyvMh+0qnliX/E+FkA3UBb0wrFmYoRAbhyYQPC3ed75P?= =?us-ascii?Q?yJ2VHjVpANA5V7mWhwgq6mxaQTQayho1qH6VrRXCLy5lAu05gDnEE2eZIffE?= =?us-ascii?Q?LnP+wrvZ87feMAuO1J4pCRlkReC75RxKm1WyCXVLOMgt0V7tmghQmeqr2gLX?= =?us-ascii?Q?SH8qis0Em/urhOuJQaeQ3nP3YV2NvrY8NKf4qWENQ3GvBWZcTiTeTTHF5JGV?= =?us-ascii?Q?7UyhJD2bSTqEtL5iMiBd6/ejIqu+ccbdeOC/zv4h1P+zk/LW1DwccP0Xfnj7?= =?us-ascii?Q?WmH6VVrv8x3gBXihgmxiaxyBNKKSrJRRg+WoYBqR2I2hVas4T+yZp7CtrPeU?= =?us-ascii?Q?zkcVrdnXGMPgmUWj3zOP1aYBcakszsxfURBstca9WWXd0GrqIulLst9GpI/w?= =?us-ascii?Q?ZLteoKdLvZZ1S18IOhbPkpTd9+KAJl1SLo7DJabzz6q8G5XVisIo8MeYqG/Z?= =?us-ascii?Q?yY/34TZpyBq55sJyOF4Zbfo4QeBbZMJZOUBPQTQYmr+KrVsd1AcfPfLuOcNe?= =?us-ascii?Q?onDVdgGxq4uLDUsRxL8sjx8B20wOLOKN3VqQz458XgAA7yhi8+NJnSK15tJI?= =?us-ascii?Q?TY2vXfRZ4uoKf2geZVJ9Ail5unSevn6opMzNdF4lHxB5qXoKqgv59ivLj4TN?= =?us-ascii?Q?cOnGhTGvHLzMvN8z26jULGs0Lr2xAgepmnkMyEXs1bYBY0LCvMhN9t28Q4y6?= =?us-ascii?Q?1UL8IO4MguLSNmamUSdIi6Oo/dMoLocX6PpsOzVu4UIF9batgjavU6q07awo?= =?us-ascii?Q?CFes26JvjcMnTtcgg9KU4HfsrwcJ16B62caMfg1fS4pVeujDrc+1d1AHA/ux?= =?us-ascii?Q?eGqdpLb5GTd8r/Ny5/l62JtitJO32jlFQr8uttTVOn9Y3yGS4JzBm3jWGVI5?= =?us-ascii?Q?VDkpgsGB4tNKHJrmyuGk1nLHmVfo0GzMmnuMVFmvULchT1xb6hUMrVptZ+bZ?= =?us-ascii?Q?XBTZlr50zp0k4jFHodCsh2Tno80A4ARBwJywxKP9Qo1Aty+FvwvDqZE1eYAW?= =?us-ascii?Q?y5LRleoSKF2JNIN3417m6MbgPOs/4cMHUjB782NS2bxNIgUlrqBM0w=3D=3D?= X-Forefront-PRVS: 0343AC1D30 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(39860400002)(39840400002)(39450400003)(39410400002)(39400400002)(39850400002)(7736002)(54356999)(6486002)(53936002)(86362001)(8676002)(50986999)(33646002)(46406003)(76176999)(83506001)(42186005)(50466002)(2950100002)(38730400002)(230783001)(5660300001)(66066001)(7416002)(47776003)(189998001)(36756003)(81166006)(4326008)(6116002)(305945005)(53416004)(3846002)(23726003)(2906002)(478600001)(4001350100001)(25786009)(142923001)(16060500001);DIR:OUT;SFP:1102;SCL:1;SRVR:SG2PR0601MB1885;H:morimoto-PC.renesas.com;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;SG2PR0601MB1885;23:8Q9hb0r6dmleLUsQoXedfjHcuee66UAq08hNRll?= =?us-ascii?Q?poXFXa/EvhSaVrYtC668+WMYo5yyZNRpAL4MlT0MOJwXyXU5RjRcWtB0L/ls?= =?us-ascii?Q?5wb5cEdMpD9meCjngInLxxhzEKKq4QZfx28pTToOukt8KXk+Ek+p8bLx/aIt?= =?us-ascii?Q?XwzUfvBquUjiQx7mPP6PZwPNE3RGO3FEItqnT1khNgoMW7IANAdAMwyCBbVb?= =?us-ascii?Q?cupRvtGkefrz6QpRA4XLJFjpZ7z739u7XKBzYCfGIYxnHnmoNpNuQO4nZI9B?= =?us-ascii?Q?geyusT7RirsiP5ZGFx89hXUYYbprh1HgRx2ZRAa9V2GEwd9wR3B5ItQT6Zde?= =?us-ascii?Q?Xc5aqApFUZMBUOoPAfLWc/qnBIPgIJSqeE0y/LsNapKb8AeVJFZowDJKyOZK?= =?us-ascii?Q?DgOr2N+h0efsBBw51ppIses7Lcul0KtsijjXXhGZy8IJTQ1YcgcRloyM6u7X?= =?us-ascii?Q?bpcPnxpL6/4r+aU1pXFsxrSYP3BpyTmLDyFNm90KD68c4oTX0+pd003wl24Q?= =?us-ascii?Q?CCFujoNBf7GvFZH0jY0mVGBtKpjt7Sb1AFK8ynEPf4bA2aAtJ3UTYmi+nvK2?= =?us-ascii?Q?bQwYgUXMMouhlvlpv9QqPETklRPSg5Ko9bZQIsUC0EPFfoxLmbrvM6DAjzav?= =?us-ascii?Q?B2BfGI3P39L37zV5kLQ43fXRq0/CuhPwfehAhTwF2q+UOz6anuIzYFfgze5c?= =?us-ascii?Q?FMTty80rQQWjEgowE5OFn97d6aeWEm8ZGxw2g59vFKucaV1OMR4YXyiVuz9v?= =?us-ascii?Q?6qXGZLTP3t2G09kUvSe+UBVIbn/z6YB6vusG6NnuJuM1DOCoA2gW3LdqyZ0v?= =?us-ascii?Q?kPdLnFiJm7Hgs51yNIX3vUNc+70Bv/8Otf7f5QH+DPuchjtrW6G6J/ljxOGr?= =?us-ascii?Q?e3K0BC4J8yat2wkgSugZOwuimffhmXqBLTdC5CPnq+9FBk8p16ZehrA83hyT?= =?us-ascii?Q?D0HhXWpWW8RoTZXC3SJDG+GYIRiMlH2+Blp/Jhn+2hiNp/ZwmycKsbqri2mS?= =?us-ascii?Q?2ykVhLN6OrKMWxYSYbl4hQhDV31R0lS5Py/lj4qdcG0bbdNiYsN0AJM3fm1B?= =?us-ascii?Q?U1s0h5ofs/pXNZb3foM/nrJuQq0YzkXpXsM0SBsq7b8FsJ5NddqMH1YDXwNQ?= =?us-ascii?Q?oNvIALxshEwg=3D?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;SG2PR0601MB1885;6:g0WV5N5OCv6iaoTIFAqP9uVwHYbOTEgY6MtIgX3w?= =?us-ascii?Q?MpyN9dTBzkrFFVs4S+2nsFuolDY+PhOySMkilW8vaYVjngpLLP/I0zuaxxlg?= =?us-ascii?Q?0lrWxLC8lVTMFAYj+vD2CzbqNhjQwc/+v80EsyWDyAG8e+9DwlVidWpsmXMY?= =?us-ascii?Q?/Bak5RD3MRaaAEt1rShRUFkWm8e9I/H5rp/RKBBWASYn6D3klMCoSF5BxBRT?= =?us-ascii?Q?U+mnTsykpQzX0xK8M6YMMNYp1VUmrPliLzkP2NaW+7Ru6+pMVcVj5Qc5gsJm?= =?us-ascii?Q?KLjshakYEImY0JAkA8i+i0xW5a7ztAKGYu4lOD55sAYlmJP3KMfGkY1zcXYe?= =?us-ascii?Q?/OGEasZu27pRLran489nPQGkPKHPCrh4h+QDub/e4uogvFFEwSCegRfDdvcq?= =?us-ascii?Q?hHTj6PsaaHV6/15Sld+2cRC43RzBxTvU1Y5/ZM1QWvgmWDqPQsEMNqNYMRaQ?= =?us-ascii?Q?z9Lb7hox4CgyWKIzgO6O4FaBylf3qQSsY+BAZne5lhWDzubBPNftcraMRoCW?= =?us-ascii?Q?PYv3DT2Vt0DlIC1nfjkDrPgMZSLONnMJrqWvUR7gjjesNnMVOLH3dzdi8ZGr?= =?us-ascii?Q?ZgoIXkPKgoomfbd0gEMU+wb97K3nk0ZZ6G9tKxvnWo3r+bOJ5hAMLJ26v1Ms?= =?us-ascii?Q?EntFoV1MD6Cck4s9TN7yRblTGcNi78JrvpeJCsEfOEcSnhcL78UYyvgrlMWT?= =?us-ascii?Q?IgHBPvnRTz3Pmid683xVvAmiz8TGUP7i7AOn9tJQ+3iXWkGaW50XTEvWDBXd?= =?us-ascii?Q?Htapzeg8pYAmASURbO5ryho9TFeyJWU61zoRwxEQbrhXsHjSAp1h0o3lzfJ4?= =?us-ascii?Q?rrNB7yWUYM6udVxO1Vq0QgpR1tfWbeOdwZDpQxqQFBYFRNcPZmrou/bzs+nd?= =?us-ascii?Q?T9SzlQ58sP1GRIMrPF7emShvGHGiF8Q2O45AAZUeFPYHIR0BxXIbRQdICqGS?= =?us-ascii?Q?BMMGEmCu+6L/CzhCyYjeGmnssaBKyxLYcMQ/+Sccduydu5NP9akhCgje7OVe?= =?us-ascii?Q?FOM9u+KWbnVErueoUQ0j73P2?= X-Microsoft-Exchange-Diagnostics: 1;SG2PR0601MB1885;5:jWIPIYOdktKBCCgD8+26HgPf4y/rKQvKSeyDjeuhR80qW76Cs+ehGF6AD42Qkodsg502caB3rQ3GHmIQ9V1uH+c9DkUregMQTGMAfZEDrQsce8pZtWJQbMzz6YM6GsyBR0n839R+vMAAHFGyJ5dB9zTKoLgNd7ugNTFUTcfIQpUXGwzx+dwhE/7t91+nsjZBZv0ck1icS3CjWCx0VsBck/J6zvzAqvbLewCSh95y3Veb+ILTko1VAbac7V+N9nhe5hSCu1/Nyj1AH1+7nXIv85yrIk6fDvn08PZfy2clQwH41kykpdJPwqhpkdzYnmd/m1MAsqiIoNXWewjKZdLpc4TadbFknB0OfEn7Ez9RHgKZurLRgWBwAEUT/2i0Y7dbak7mSaP9MWv1AnPdJt0Ht0ydvXWMAqn4AaxELpy9O38Mq1wTSCiwuHmLv1mklDSrYAGtN03XzLEJKGbT5tu59m5W5MbVO/lmfVlLKuQAvDl62ozPY0DSdkyNHX368lBI;24:AVyuxB1XaQ+FcvLxaCJL3UxvfLJk65fE+esT7MBfqEpY5JOLCMtu8iCQcwM1VG3PPyGJWgmCl1H6wdyE3bUwZmkwN46ykgOoZKGE7zNcsvI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;SG2PR0601MB1885;7:YgQGLBA9wpAfwzKEKF7N++BaXH+JBkY/oVusaWmzGS4Doo9trn9vwCtPEYOap9eJoa6nPOMGinnZXAuWmkoestpvGBznw+Nk2oFIpVTCxB/JrEH/tI4pl2m720K1YF8Qu8SmSJbIJA7xO4z02xvPd+tZOfjJvFbKeYYWHoMFhR6L/zbAYjLH5aJV57jNPdUnBNn49xceXYngqU6OJrNftamXzm8I6OA1mncmkgadxT/ZGADbBxEffvX03uSEBzGEm+CMjRHE3jSswjSlZ5CHg4/K7kkPVtkDIMaWLY1NkHXwf6Zsh/3MrJBu9g+GD4epcaNFqtpEnZD1BkTFQ445YNRDZCj7zY7HHmzU/U64nKkBbqQrgF2e8dTtzzeJijo9IDyZhBlhZ1qp8JX1VNx70bMi3HHG6+70ZfFvHH+Q0QaEy3pYUYZZi2u4HlviL0WxZNhoevrtpOY8aKHsZsjU3odqSpuZOtG0VDA0IOjaZ6Fgs8kHxwlZz/wQKacOUateghmfh0GyDfp/VJm9kjdj++1TAxu1e0iDIyavsvCeFubvtiPOIN3ZqUqbpQSIn049aCa1KFhULB0F6pJy0JTv5ZcLY3rvDuBS+l5BuJE++GLeEds8HUMGxKPqoNJsiyy+9F7ivHeuSALZVwpPmPB5ba0R0GAnVtrA25uL6BSIV4C3yu8HTJVAxrdWgPBDLQmuzLbm8SMoKdxQSaXrcrNc8Whxq1xebtrymPN9MM/C/k2hspuMKCIbRa+3ntaq1g95JqmgeUzMITI8NJBFMYxpfbCvpZxUnM5bMXVk+NokABQ= X-Microsoft-Exchange-Diagnostics: 1;SG2PR0601MB1885;20:VcOHTtKNjEHW8acB2pHmtk0CnuJSG8GGrVHYaTGTuzh/Z93x5cP6F8Sc8nb9EecLeI8acqd53xZhYxgDczJ90ia9wyaPqet+ySUfy6eZmUSbocEGpkJFHG+HpjTI/EOX9/Zr7KhTi6MTsSqZY/tsabAaE2XDjDYei/yGzRrS4E0= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jun 2017 00:39:29.7178 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SG2PR0601MB1885 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Kuninori Morimoto ALSA SoC needs to know connected DAI ID for probing. It is not a big problem if device/driver was only for sound, but getting DAI ID will be difficult if device includes both Video/Sound, like HDMI. To solve this issue, this patch adds new .get_dai_id callback on hdmi_codec_ops. dw-hdmi-i2s will assume that HDMI sound will be connected to reg = <2>. Then, ALSA SoC side will recognized it as DAI 0 ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; /* HDMI Video IN */ }; port@1 { reg = <1>; /* HDMI OUT */ }; port@2 { reg = <2>; /* HDMI Sound IN */ }; }; Signed-off-by: Kuninori Morimoto Acked-by: Archit Taneja --- v1 -> v1 resend - add Archit's Acked-by (= DRM maintainer) .../bindings/display/bridge/renesas,dw-hdmi.txt | 9 ++++++++- drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c | 21 +++++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/display/bridge/renesas,dw-hdmi.txt b/Documentation/devicetree/bindings/display/bridge/renesas,dw-hdmi.txt index f6b3f36..81b6858 100644 --- a/Documentation/devicetree/bindings/display/bridge/renesas,dw-hdmi.txt +++ b/Documentation/devicetree/bindings/display/bridge/renesas,dw-hdmi.txt @@ -25,7 +25,8 @@ Required properties: - clock-names: Shall contain "iahb" and "isfr" as defined in dw_hdmi.txt. - ports: See dw_hdmi.txt. The DWC HDMI shall have one port numbered 0 corresponding to the video input of the controller and one port numbered 1 - corresponding to its HDMI output. Each port shall have a single endpoint. + corresponding to its HDMI output, and one port numbered 2 corresponding to + sound input of the controller. Each port shall have a single endpoint. Optional properties: @@ -59,6 +60,12 @@ Example: remote-endpoint = <&hdmi0_con>; }; }; + port@2 { + reg = <2>; + rcar_dw_hdmi0_sound_in: endpoint { + remote-endpoint = <&hdmi_sound_out>; + }; + }; }; }; diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c index aaf287d..b2cf59f 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c @@ -82,9 +82,30 @@ static void dw_hdmi_i2s_audio_shutdown(struct device *dev, void *data) hdmi_write(audio, HDMI_AUD_CONF0_SW_RESET, HDMI_AUD_CONF0); } +static int dw_hdmi_i2s_get_dai_id(struct snd_soc_component *component, + struct device_node *endpoint) +{ + struct of_endpoint of_ep; + int ret; + + ret = of_graph_parse_endpoint(endpoint, &of_ep); + if (ret < 0) + return ret; + + /* + * HDMI sound should be located as reg = <2> + * Then, it is sound port 0 + */ + if (of_ep.port == 2) + return 0; + + return -EINVAL; +} + static struct hdmi_codec_ops dw_hdmi_i2s_ops = { .hw_params = dw_hdmi_i2s_hw_params, .audio_shutdown = dw_hdmi_i2s_audio_shutdown, + .get_dai_id = dw_hdmi_i2s_get_dai_id, }; static int snd_dw_hdmi_probe(struct platform_device *pdev) -- 1.9.1