From: Alex Riesen <alexander.riesen@cetitec.com> To: Kieran Bingham <kieran.bingham@ideasonboard.com> Cc: Mauro Carvalho Chehab <mchehab@kernel.org>, Hans Verkuil <hverkuil-cisco@xs4all.nl>, Laurent Pinchart <laurent.pinchart@ideasonboard.com>, Rob Herring <robh+dt@kernel.org>, "Mark Rutland" <mark.rutland@arm.com>, <devel@driverdev.osuosl.org>, <linux-media@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <devicetree@vger.kernel.org>, <linux-renesas-soc@vger.kernel.org> Subject: [PATCH 8/8] arm64: dts: renesas: salvator: add a connection from adv748x codec (HDMI input) to the R-Car SoC Date: Mon, 13 Jan 2020 15:15:56 +0100 [thread overview] Message-ID: <20200113141556.GI3606@pflmari> (raw) In-Reply-To: <cover.1578924232.git.alexander.riesen@cetitec.com> Not sure if all variants of the Salvator board have the HDMI decoder chip (the ADV7482) connected to the SSI4 on R-Car SoC, as it is on Salvator-X ES1, so the the ADV7482 endpoint and connection definitions are placed in the board file. I do assume though that all Salvator variants have the CLK_C clock line hard-wired to the ADV7482 HDMI decoder, and remove it from the list of clocks provided by the R-Car sound system. The I2C wiring is also likely to persist across the variants (similar to ak4613, connected to the same interface), so that is in the common file. Signed-off-by: Alexander Riesen <alexander.riesen@cetitec.com> --- .../dts/renesas/r8a7795-es1-salvator-x.dts | 24 ++++++++++++- .../boot/dts/renesas/salvator-common.dtsi | 35 ++++++++++++++++--- 2 files changed, 53 insertions(+), 6 deletions(-) diff --git a/arch/arm64/boot/dts/renesas/r8a7795-es1-salvator-x.dts b/arch/arm64/boot/dts/renesas/r8a7795-es1-salvator-x.dts index c72968623e94..10f74f7a0efe 100644 --- a/arch/arm64/boot/dts/renesas/r8a7795-es1-salvator-x.dts +++ b/arch/arm64/boot/dts/renesas/r8a7795-es1-salvator-x.dts @@ -136,9 +136,29 @@ playback = <&ssi3>; }; }; + rsnd_port3: port@3 { + reg = <3>; + rsnd_endpoint3: endpoint { + remote-endpoint = <&adv7482_i2s>; + + dai-tdm-slot-num = <8>; + dai-tdm-slot-width = <32>; + dai-format = "left_j"; + mclk-fs = <256>; + bitclock-master = <&adv7482_i2s>; + frame-master = <&adv7482_i2s>; + system-clock-direction-out; + + capture = <&ssi4>; + }; + }; }; }; +&adv7482_i2s { + remote-endpoint = <&rsnd_endpoint3>; +}; + &sata { status = "okay"; }; @@ -146,9 +166,11 @@ &sound_card { dais = <&rsnd_port0 /* ak4613 */ &rsnd_port1 /* HDMI0 */ - &rsnd_port2>; /* HDMI1 */ + &rsnd_port2 /* HDMI1 */ + &rsnd_port3>; /* adv7482 hdmi-in */ }; + &usb2_phy2 { pinctrl-0 = <&usb2_pins>; pinctrl-names = "default"; diff --git a/arch/arm64/boot/dts/renesas/salvator-common.dtsi b/arch/arm64/boot/dts/renesas/salvator-common.dtsi index 21e01056e759..e887805b16fc 100644 --- a/arch/arm64/boot/dts/renesas/salvator-common.dtsi +++ b/arch/arm64/boot/dts/renesas/salvator-common.dtsi @@ -322,6 +322,10 @@ clock-frequency = <22579200>; }; +&audio_clk_c { + clock-frequency = <12288000>; +}; + &avb { pinctrl-0 = <&avb_pins>; pinctrl-names = "default"; @@ -471,12 +475,14 @@ #address-cells = <1>; #size-cells = <0>; + #sound-dai-cells = <0>; interrupt-parent = <&gpio6>; interrupt-names = "intrq1", "intrq2"; interrupts = <30 IRQ_TYPE_LEVEL_LOW>, <31 IRQ_TYPE_LEVEL_LOW>; - + clocks = <&rcar_sound 3>, <&audio_clk_c>; + clock-names = "clk-hdmi-video", "clk-hdmi-i2s-mclk"; port@7 { reg = <7>; @@ -512,6 +518,14 @@ remote-endpoint = <&csi20_in>; }; }; + + port@c { + reg = <12>; + + adv7482_i2s: endpoint { + /* remote-endpoint defined in the board file */ + }; + }; }; csa_vdd: adc@7c { @@ -686,7 +700,8 @@ }; sound_pins: sound { - groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a"; + groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a", + "ssi4_data"; function = "ssi"; }; @@ -735,8 +750,8 @@ pinctrl-0 = <&sound_pins &sound_clk_pins>; pinctrl-names = "default"; - /* Single DAI */ - #sound-dai-cells = <0>; + /* multi DAI */ + #sound-dai-cells = <1>; /* audio_clkout0/1/2/3 */ #clock-cells = <1>; @@ -760,8 +775,18 @@ <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>, <&audio_clk_a>, <&cs2000>, - <&audio_clk_c>, <&cpg CPG_CORE CPG_AUDIO_CLK_I>; + clock-names = "ssi-all", + "ssi.9", "ssi.8", "ssi.7", "ssi.6", + "ssi.5", "ssi.4", "ssi.3", "ssi.2", + "ssi.1", "ssi.0", + "src.9", "src.8", "src.7", "src.6", + "src.5", "src.4", "src.3", "src.2", + "src.1", "src.0", + "mix.1", "mix.0", + "ctu.1", "ctu.0", + "dvc.0", "dvc.1", + "clk_a", "clk_b", "clk_i"; ports { #address-cells = <1>; -- 2.24.1.508.g91d2dafee0
WARNING: multiple messages have this Message-ID (diff)
From: Alex Riesen <alexander.riesen@cetitec.com> To: Kieran Bingham <kieran.bingham@ideasonboard.com> Cc: Mark Rutland <mark.rutland@arm.com>, devel@driverdev.osuosl.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Rob Herring <robh+dt@kernel.org>, Laurent Pinchart <laurent.pinchart@ideasonboard.com>, Hans Verkuil <hverkuil-cisco@xs4all.nl>, Mauro Carvalho Chehab <mchehab@kernel.org>, linux-media@vger.kernel.org Subject: [PATCH 8/8] arm64: dts: renesas: salvator: add a connection from adv748x codec (HDMI input) to the R-Car SoC Date: Mon, 13 Jan 2020 15:15:56 +0100 [thread overview] Message-ID: <20200113141556.GI3606@pflmari> (raw) In-Reply-To: <cover.1578924232.git.alexander.riesen@cetitec.com> Not sure if all variants of the Salvator board have the HDMI decoder chip (the ADV7482) connected to the SSI4 on R-Car SoC, as it is on Salvator-X ES1, so the the ADV7482 endpoint and connection definitions are placed in the board file. I do assume though that all Salvator variants have the CLK_C clock line hard-wired to the ADV7482 HDMI decoder, and remove it from the list of clocks provided by the R-Car sound system. The I2C wiring is also likely to persist across the variants (similar to ak4613, connected to the same interface), so that is in the common file. Signed-off-by: Alexander Riesen <alexander.riesen@cetitec.com> --- .../dts/renesas/r8a7795-es1-salvator-x.dts | 24 ++++++++++++- .../boot/dts/renesas/salvator-common.dtsi | 35 ++++++++++++++++--- 2 files changed, 53 insertions(+), 6 deletions(-) diff --git a/arch/arm64/boot/dts/renesas/r8a7795-es1-salvator-x.dts b/arch/arm64/boot/dts/renesas/r8a7795-es1-salvator-x.dts index c72968623e94..10f74f7a0efe 100644 --- a/arch/arm64/boot/dts/renesas/r8a7795-es1-salvator-x.dts +++ b/arch/arm64/boot/dts/renesas/r8a7795-es1-salvator-x.dts @@ -136,9 +136,29 @@ playback = <&ssi3>; }; }; + rsnd_port3: port@3 { + reg = <3>; + rsnd_endpoint3: endpoint { + remote-endpoint = <&adv7482_i2s>; + + dai-tdm-slot-num = <8>; + dai-tdm-slot-width = <32>; + dai-format = "left_j"; + mclk-fs = <256>; + bitclock-master = <&adv7482_i2s>; + frame-master = <&adv7482_i2s>; + system-clock-direction-out; + + capture = <&ssi4>; + }; + }; }; }; +&adv7482_i2s { + remote-endpoint = <&rsnd_endpoint3>; +}; + &sata { status = "okay"; }; @@ -146,9 +166,11 @@ &sound_card { dais = <&rsnd_port0 /* ak4613 */ &rsnd_port1 /* HDMI0 */ - &rsnd_port2>; /* HDMI1 */ + &rsnd_port2 /* HDMI1 */ + &rsnd_port3>; /* adv7482 hdmi-in */ }; + &usb2_phy2 { pinctrl-0 = <&usb2_pins>; pinctrl-names = "default"; diff --git a/arch/arm64/boot/dts/renesas/salvator-common.dtsi b/arch/arm64/boot/dts/renesas/salvator-common.dtsi index 21e01056e759..e887805b16fc 100644 --- a/arch/arm64/boot/dts/renesas/salvator-common.dtsi +++ b/arch/arm64/boot/dts/renesas/salvator-common.dtsi @@ -322,6 +322,10 @@ clock-frequency = <22579200>; }; +&audio_clk_c { + clock-frequency = <12288000>; +}; + &avb { pinctrl-0 = <&avb_pins>; pinctrl-names = "default"; @@ -471,12 +475,14 @@ #address-cells = <1>; #size-cells = <0>; + #sound-dai-cells = <0>; interrupt-parent = <&gpio6>; interrupt-names = "intrq1", "intrq2"; interrupts = <30 IRQ_TYPE_LEVEL_LOW>, <31 IRQ_TYPE_LEVEL_LOW>; - + clocks = <&rcar_sound 3>, <&audio_clk_c>; + clock-names = "clk-hdmi-video", "clk-hdmi-i2s-mclk"; port@7 { reg = <7>; @@ -512,6 +518,14 @@ remote-endpoint = <&csi20_in>; }; }; + + port@c { + reg = <12>; + + adv7482_i2s: endpoint { + /* remote-endpoint defined in the board file */ + }; + }; }; csa_vdd: adc@7c { @@ -686,7 +700,8 @@ }; sound_pins: sound { - groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a"; + groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a", + "ssi4_data"; function = "ssi"; }; @@ -735,8 +750,8 @@ pinctrl-0 = <&sound_pins &sound_clk_pins>; pinctrl-names = "default"; - /* Single DAI */ - #sound-dai-cells = <0>; + /* multi DAI */ + #sound-dai-cells = <1>; /* audio_clkout0/1/2/3 */ #clock-cells = <1>; @@ -760,8 +775,18 @@ <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>, <&audio_clk_a>, <&cs2000>, - <&audio_clk_c>, <&cpg CPG_CORE CPG_AUDIO_CLK_I>; + clock-names = "ssi-all", + "ssi.9", "ssi.8", "ssi.7", "ssi.6", + "ssi.5", "ssi.4", "ssi.3", "ssi.2", + "ssi.1", "ssi.0", + "src.9", "src.8", "src.7", "src.6", + "src.5", "src.4", "src.3", "src.2", + "src.1", "src.0", + "mix.1", "mix.0", + "ctu.1", "ctu.0", + "dvc.0", "dvc.1", + "clk_a", "clk_b", "clk_i"; ports { #address-cells = <1>; -- 2.24.1.508.g91d2dafee0 _______________________________________________ devel mailing list devel@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
next prev parent reply other threads:[~2020-01-13 14:24 UTC|newest] Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-01-13 14:19 [PATCH 0/8] media: i2c: adv748x: add support for HDMI audio Alex Riesen 2020-01-13 14:19 ` Alex Riesen 2020-01-13 14:15 ` [PATCH 1/8] media: adv748x: add a device-specific wrapper for register block read Alex Riesen 2020-01-13 14:15 ` Alex Riesen 2020-01-13 14:15 ` [PATCH 2/8] media: adv748x: add audio mute control and output selection ioctls Alex Riesen 2020-01-13 14:15 ` Alex Riesen 2020-03-13 8:16 ` Hans Verkuil 2020-03-13 8:16 ` Hans Verkuil 2020-03-13 10:26 ` Alex Riesen 2020-03-13 10:26 ` Alex Riesen 2020-03-13 10:52 ` Hans Verkuil 2020-03-13 10:52 ` Hans Verkuil 2020-03-13 11:00 ` Alex Riesen 2020-03-13 11:00 ` Alex Riesen 2020-01-13 14:15 ` [PATCH 3/8] media: adv748x: add log_status ioctl Alex Riesen 2020-01-13 14:15 ` Alex Riesen 2020-01-13 14:15 ` [PATCH 4/8] media: adv748x: reserve space for the audio (I2S) port in the driver structures Alex Riesen 2020-01-13 14:15 ` Alex Riesen 2020-01-13 14:15 ` [PATCH 5/8] media: adv748x: add an ASoC DAI definition to the driver Alex Riesen 2020-01-13 14:15 ` Alex Riesen 2020-01-13 14:15 ` [PATCH 6/8] media: adv748x: reduce amount of code for bitwise modification of device registers Alex Riesen 2020-01-13 14:15 ` Alex Riesen 2020-01-13 14:15 ` [PATCH 7/8] dt-bindings: adv748x: add information about serial audio interface (I2S/TDM) Alex Riesen 2020-01-13 14:15 ` Alex Riesen 2020-01-13 22:32 ` Rob Herring 2020-01-13 22:32 ` Rob Herring 2020-01-13 14:15 ` Alex Riesen [this message] 2020-01-13 14:15 ` [PATCH 8/8] arm64: dts: renesas: salvator: add a connection from adv748x codec (HDMI input) to the R-Car SoC Alex Riesen 2020-03-02 12:28 ` Geert Uytterhoeven 2020-03-02 12:28 ` Geert Uytterhoeven 2020-03-02 13:40 ` Alex Riesen 2020-03-02 13:40 ` Alex Riesen 2020-03-02 13:47 ` Geert Uytterhoeven 2020-03-02 13:47 ` Geert Uytterhoeven 2020-03-02 15:07 ` Alex Riesen 2020-03-02 15:07 ` Alex Riesen 2020-03-02 15:32 ` Geert Uytterhoeven 2020-03-02 15:32 ` Geert Uytterhoeven 2020-03-02 16:09 ` Alex Riesen 2020-03-02 16:09 ` Alex Riesen 2020-03-02 16:13 ` Geert Uytterhoeven 2020-03-02 16:13 ` Geert Uytterhoeven 2020-03-05 14:36 ` Alex Riesen 2020-03-05 14:36 ` Alex Riesen 2020-03-06 12:21 ` Geert Uytterhoeven 2020-03-06 12:21 ` Geert Uytterhoeven 2020-03-06 13:16 ` Laurent Pinchart 2020-03-06 13:16 ` Laurent Pinchart 2020-03-06 13:41 ` Alex Riesen 2020-03-06 13:41 ` Alex Riesen 2020-03-06 13:45 ` Laurent Pinchart 2020-03-06 13:45 ` Laurent Pinchart 2020-03-09 1:31 ` Kuninori Morimoto 2020-03-09 1:31 ` Kuninori Morimoto 2020-03-09 11:09 ` Alex Riesen 2020-03-09 11:09 ` Alex Riesen 2020-03-10 1:07 ` Kuninori Morimoto 2020-03-10 1:07 ` Kuninori Morimoto 2020-03-10 8:17 ` Alex Riesen 2020-03-10 8:17 ` Alex Riesen 2020-03-10 10:39 ` Laurent Pinchart 2020-03-10 10:39 ` Laurent Pinchart
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200113141556.GI3606@pflmari \ --to=alexander.riesen@cetitec.com \ --cc=devel@driverdev.osuosl.org \ --cc=devicetree@vger.kernel.org \ --cc=hverkuil-cisco@xs4all.nl \ --cc=kieran.bingham@ideasonboard.com \ --cc=laurent.pinchart@ideasonboard.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-media@vger.kernel.org \ --cc=linux-renesas-soc@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=mchehab@kernel.org \ --cc=robh+dt@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.