From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jean-Francois Moine Subject: Re: [PATCH v9 1/4] drm/i2c: tda998x: Add DT support for audio Date: Mon, 12 Jan 2015 18:13:41 +0100 Message-ID: <20150112181341.4a53ea24@armhf> References: <20150109114529.GH12302@n2100.arm.linux.org.uk> <20150109135401.5b270d46@armhf> <20150109130725.GN12302@n2100.arm.linux.org.uk> <54AFDE8D.3000504@arm.com> <20150109145741.GP12302@n2100.arm.linux.org.uk> <20150109183857.53d701a4@armhf> <20150109200127.GD12302@n2100.arm.linux.org.uk> <1421054728.3081.28.camel@pengutronix.de> <20150112122527.GF12302@n2100.arm.linux.org.uk> <1421071197.3081.44.camel@pengutronix.de> <20150112140456.GI12302@n2100.arm.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20150112140456.GI12302@n2100.arm.linux.org.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Russell King - ARM Linux Cc: "devicetree@vger.kernel.org" , "alsa-devel@alsa-project.org" , Andrew Jackson , "linux-kernel@vger.kernel.org" , Jyri Sarha , Mark Brown , "dri-devel@lists.freedesktop.org" List-Id: alsa-devel@alsa-project.org T24gTW9uLCAxMiBKYW4gMjAxNSAxNDowNDo1NiArMDAwMApSdXNzZWxsIEtpbmcgLSBBUk0gTGlu dXggPGxpbnV4QGFybS5saW51eC5vcmcudWs+IHdyb3RlOgoKPiBPbiBNb24sIEphbiAxMiwgMjAx NSBhdCAwMjo1OTo1N1BNICswMTAwLCBQaGlsaXBwIFphYmVsIHdyb3RlOgo+ID4gQW0gTW9udGFn LCBkZW4gMTIuMDEuMjAxNSwgMTI6MjUgKzAwMDAgc2NocmllYiBSdXNzZWxsIEtpbmcgLSBBUk0g TGludXg6Cj4gPiA+IEl0J3Mgbm90IHF1aXRlIHRoYXQgc2ltcGxlLCBiZWNhdXNlIHRoZSBTUERJ RiBBUCBwaW5zIGFyZSBtdWx0aXBsZXhlZAo+ID4gPiB3aXRoIHRoZSBJMlMgcGlucyAtIGFuZCB0 aGVyZSBpcyB2YXJpYXRpb24gYmV0d2VlbiBjaGlwIG1vZGVscyBhbmQKPiA+ID4gcGFja2FnZXMu Cj4gPiA+Cj4gPiA+IFNvLCBpdCdzIHByb2JhYmx5IGJlc3QgaWYgcG9ydEAwIGlzIHRoZSB2aWRl byBwb3J0LCBhbmQgdGhlbiBwb3J0QDEuLm4KPiA+ID4gY2FuIGRlc2NyaWJlIHRoZSBhdWRpbyBp bnB1dHMsIGluY2x1ZGluZyBhIHByb3BlcnR5IHdoaWNoIHNwZWNpZmllcwo+ID4gPiB3aGV0aGVy IHRoZXkgYXJlIEkyUyBvciBTUERJRiwgYW5kIHRoZSB2YWx1ZSB0byBiZSBwcm9ncmFtbWVkIGlu dG8KPiA+ID4gdGhlIEFQIGVuYWJsZSByZWdpc3RlciAod2hpY2ggaXMgYSBiaXQgZmllbGQgb2Yg dGhlIEFQIHBpbnMgd2hpY2gKPiA+ID4gc2hvdWxkIGJlIHVubWFza2VkLikgIEkgZ3Vlc3Mgd2Ug Y2FuIHJlLXVzZSB0aGUgcmVnPSBwcm9wZXJ0eSBmb3IgdGhhdAo+ID4gPiB2YWx1ZSwgc2luY2Ug dmlkZW8gd2lsbCBhbHdheXMgYmUgemVyby4KPiA+IAo+ID4gTm90ZSB0aGF0IG9mX2dyYXBoX3Bh cnNlX2VuZHBvaW50IGludGVycHJldHMgdGhlIHBvcnQgbm9kZSdzIHJlZwo+ID4gcHJvcGVydHkg YXMgcG9ydCBpZC4gQW5kIHRoZSB1bml0IGFkZHJlc3MgcGFydCBvZiB0aGUgbm9kZSBuYW1lIHNo b3VsZAo+ID4gbWF0Y2ggdGhlIGZpcnN0IGFkZHJlc3MgaW4gdGhlIHJlZyBwcm9wZXJ0eS4KClRo aXMgaXMgbm90IHRoZSBjYXNlIGluIHZleHByZXNzLXYycC1jYTE1X2E3LmR0cy4KCj4gU28gdGhh dCdzIG5vdCBnb2luZyB0byB3b3JrIHZlcnkgd2VsbC4uLiBiZWNhdXNlIHRoZSBBUCByZWdpc3Rl ciBpcyBhCj4gYml0bWFzay4KPiAKPiBJIGd1ZXNzIHdlIGNvdWxkIHNwZWNpZnkgYSBub2RlIHVu aXQgYW5kIHJlZywgd2hpY2ggdGhlIGNvZGUgb3RoZXJ3aXNlCj4gaWdub3JlcywgYW5kIHNwZWNp ZnkgYSBwaGlsaXBwcyxhcC1tYXNrID0gcHJvcGVydHkgZm9yIHRoZSBhdWRpbyBwb3J0cwo+IGlu c3RlYWQuCgpBbHNvLCB0aGUgdmlkZW8gYW5kIGF1ZGlvIHBvcnRzIG11c3QgYmUgZGlzdGluZ3Vp c2hlZC4gVGhleSBjb3VsZCBiZQpkZWZpbmVkIGluIGRpZmZlcmVudCBwb3J0IGdyb3Vwcy4KCkV4 YW1wbGUgZnJvbSB0aGUgQ3Vib3g6CgoJdmlkZW8tcG9ydHM6IHBvcnRzQDAgewoJCXBvcnQgewoJ CQl0ZGE5OTh4X3ZpZGVvOiBlbmRwb2ludCB7CgkJCQlyZW1vdGUtZW5kcG9pbnQgPSA8JmxjZDBf MD47CgkJCQlueHAsdmlkZW8tcG9ydCA9IDwweDIzMDE0NT47CgkJCX07CgkJfTsKCX07CglhdWRp by1wb3J0czogcG9ydHNAMSB7CgkJcG9ydEAwIHsJCQkvKiBBUDEgPSBJMlMgKi8KCQkJdGRhOTk4 eF9pMnM6IGVuZHBvaW50QDAgewoJCQkJcmVtb3RlLWVuZHBvaW50ID0gPCZhdWRpbzFfaTJzPjsK CQkJCW54cCxhdWRpby1wb3J0ID0gPDB4MDM+OwoJCQl9OwoJCX07CgkJcG9ydEAxIHsJCQkgLyog QVAyID0gUy9QRElGICovCgkJCXRkYTk5OHhfc3BkaWY6IGVuZHBvaW50QDEgewoJCQkJcmVtb3Rl LWVuZHBvaW50ID0gPCZhdWRpbzFfc3BkaWYxPjsKCQkJCW54cCxhdWRpby1wb3J0ID0gPDB4MDQ+ OwoJCQl9OwoJCX07Cgl9OwoKVGhlIHBvcnQgdHlwZSBpcyBpZGVudGlmaWVkIGJ5IHRoZSBiaXQg QVAwLgoKLS0gCktlbiBhciBjJ2hlbnRhw7EJfAkgICAgICAqKiBCcmVpemggaGEgTGludXggYXRh diEgKioKSmVmCQl8CQlodHRwOi8vbW9pbmVqZi5mcmVlLmZyLwpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751965AbbALRLn (ORCPT ); Mon, 12 Jan 2015 12:11:43 -0500 Received: from smtp6-g21.free.fr ([212.27.42.6]:59128 "EHLO smtp6-g21.free.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751938AbbALRLk convert rfc822-to-8bit (ORCPT ); Mon, 12 Jan 2015 12:11:40 -0500 Date: Mon, 12 Jan 2015 18:13:41 +0100 From: Jean-Francois Moine To: Russell King - ARM Linux Cc: Philipp Zabel , Andrew Jackson , Jyri Sarha , Mark Brown , Dave Airlie , "alsa-devel@alsa-project.org" , "devicetree@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH v9 1/4] drm/i2c: tda998x: Add DT support for audio Message-ID: <20150112181341.4a53ea24@armhf> In-Reply-To: <20150112140456.GI12302@n2100.arm.linux.org.uk> References: <20150109114529.GH12302@n2100.arm.linux.org.uk> <20150109135401.5b270d46@armhf> <20150109130725.GN12302@n2100.arm.linux.org.uk> <54AFDE8D.3000504@arm.com> <20150109145741.GP12302@n2100.arm.linux.org.uk> <20150109183857.53d701a4@armhf> <20150109200127.GD12302@n2100.arm.linux.org.uk> <1421054728.3081.28.camel@pengutronix.de> <20150112122527.GF12302@n2100.arm.linux.org.uk> <1421071197.3081.44.camel@pengutronix.de> <20150112140456.GI12302@n2100.arm.linux.org.uk> X-Mailer: Claws Mail 3.11.1 (GTK+ 2.24.25; arm-unknown-linux-gnueabihf) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 12 Jan 2015 14:04:56 +0000 Russell King - ARM Linux wrote: > On Mon, Jan 12, 2015 at 02:59:57PM +0100, Philipp Zabel wrote: > > Am Montag, den 12.01.2015, 12:25 +0000 schrieb Russell King - ARM Linux: > > > It's not quite that simple, because the SPDIF AP pins are multiplexed > > > with the I2S pins - and there is variation between chip models and > > > packages. > > > > > > So, it's probably best if port@0 is the video port, and then port@1..n > > > can describe the audio inputs, including a property which specifies > > > whether they are I2S or SPDIF, and the value to be programmed into > > > the AP enable register (which is a bit field of the AP pins which > > > should be unmasked.) I guess we can re-use the reg= property for that > > > value, since video will always be zero. > > > > Note that of_graph_parse_endpoint interprets the port node's reg > > property as port id. And the unit address part of the node name should > > match the first address in the reg property. This is not the case in vexpress-v2p-ca15_a7.dts. > So that's not going to work very well... because the AP register is a > bitmask. > > I guess we could specify a node unit and reg, which the code otherwise > ignores, and specify a philipps,ap-mask = property for the audio ports > instead. Also, the video and audio ports must be distinguished. They could be defined in different port groups. Example from the Cubox: video-ports: ports@0 { port { tda998x_video: endpoint { remote-endpoint = <&lcd0_0>; nxp,video-port = <0x230145>; }; }; }; audio-ports: ports@1 { port@0 { /* AP1 = I2S */ tda998x_i2s: endpoint@0 { remote-endpoint = <&audio1_i2s>; nxp,audio-port = <0x03>; }; }; port@1 { /* AP2 = S/PDIF */ tda998x_spdif: endpoint@1 { remote-endpoint = <&audio1_spdif1>; nxp,audio-port = <0x04>; }; }; }; The port type is identified by the bit AP0. -- Ken ar c'hentaƱ | ** Breizh ha Linux atav! ** Jef | http://moinejf.free.fr/