[PATCH v2 4/5] arm64: dts: mediatek: asurada: Enable audio support

Nícolas F. R. A. Prado posted 5 patches 1 year, 11 months ago
There is a newer version of this series
[PATCH v2 4/5] arm64: dts: mediatek: asurada: Enable audio support
Posted by Nícolas F. R. A. Prado 1 year, 11 months ago
Enable audio support for the Asurada platform. This consists of the
machine sound card, the rt1015p codec for the speakers, the rt5682 codec
for the headset, and the dmic codec for the internal microphone.

HDMI audio support is left out for now since the DisplayPort chip
required isn't enabled yet.

Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>

---

Changes in v2:
- Added this commit

 .../boot/dts/mediatek/mt8192-asurada.dtsi     | 282 ++++++++++++++++++
 1 file changed, 282 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
index ace44827de17..dac2d4f5e670 100644
--- a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
@@ -33,6 +33,12 @@ backlight_lcd0: backlight-lcd0 {
 		default-brightness-level = <576>;
 	};
 
+	dmic_codec: dmic-codec {
+		compatible = "dmic-codec";
+		num-channels = <2>;
+		wakeup-delay-ms = <50>;
+	};
+
 	pp1000_dpbrdg: regulator-1v0-dpbrdg {
 		compatible = "regulator-fixed";
 		regulator-name = "pp1000_dpbrdg";
@@ -196,6 +202,79 @@ wifi_restricted_dma_region: wifi@c0000000 {
 			reg = <0 0xc0000000 0 0x4000000>;
 		};
 	};
+
+	rt1015p: rt1015p {
+		compatible = "realtek,rt1015p";
+		pinctrl-names = "default";
+		pinctrl-0 = <&rt1015p_pins>;
+		sdb-gpios = <&pio 147 GPIO_ACTIVE_HIGH>;
+		#sound-dai-cells = <0>;
+	};
+
+	sound: mt8192-sound {
+		compatible = "mediatek,mt8192_mt6359_rt1015p_rt5682";
+		mediatek,platform = <&afe>;
+		pinctrl-names = "aud_clk_mosi_off",
+				"aud_clk_mosi_on",
+				"aud_dat_mosi_off",
+				"aud_dat_mosi_on",
+				"aud_dat_miso_off",
+				"aud_dat_miso_on",
+				"vow_dat_miso_off",
+				"vow_dat_miso_on",
+				"vow_clk_miso_off",
+				"vow_clk_miso_on",
+				"aud_nle_mosi_off",
+				"aud_nle_mosi_on",
+				"aud_dat_miso2_off",
+				"aud_dat_miso2_on",
+				"aud_gpio_i2s3_off",
+				"aud_gpio_i2s3_on",
+				"aud_gpio_i2s8_off",
+				"aud_gpio_i2s8_on",
+				"aud_gpio_i2s9_off",
+				"aud_gpio_i2s9_on",
+				"aud_dat_mosi_ch34_off",
+				"aud_dat_mosi_ch34_on",
+				"aud_dat_miso_ch34_off",
+				"aud_dat_miso_ch34_on",
+				"aud_gpio_tdm_off",
+				"aud_gpio_tdm_on";
+		pinctrl-0 = <&aud_clk_mosi_off_pins>;
+		pinctrl-1 = <&aud_clk_mosi_on_pins>;
+		pinctrl-2 = <&aud_dat_mosi_off_pins>;
+		pinctrl-3 = <&aud_dat_mosi_on_pins>;
+		pinctrl-4 = <&aud_dat_miso_off_pins>;
+		pinctrl-5 = <&aud_dat_miso_on_pins>;
+		pinctrl-6 = <&vow_dat_miso_off_pins>;
+		pinctrl-7 = <&vow_dat_miso_on_pins>;
+		pinctrl-8 = <&vow_clk_miso_off_pins>;
+		pinctrl-9 = <&vow_clk_miso_on_pins>;
+		pinctrl-10 = <&aud_nle_mosi_off_pins>;
+		pinctrl-11 = <&aud_nle_mosi_on_pins>;
+		pinctrl-12 = <&aud_dat_miso2_off_pins>;
+		pinctrl-13 = <&aud_dat_miso2_on_pins>;
+		pinctrl-14 = <&aud_gpio_i2s3_off_pins>;
+		pinctrl-15 = <&aud_gpio_i2s3_on_pins>;
+		pinctrl-16 = <&aud_gpio_i2s8_off_pins>;
+		pinctrl-17 = <&aud_gpio_i2s8_on_pins>;
+		pinctrl-18 = <&aud_gpio_i2s9_off_pins>;
+		pinctrl-19 = <&aud_gpio_i2s9_on_pins>;
+		pinctrl-20 = <&aud_dat_mosi_ch34_off_pins>;
+		pinctrl-21 = <&aud_dat_mosi_ch34_on_pins>;
+		pinctrl-22 = <&aud_dat_miso_ch34_off_pins>;
+		pinctrl-23 = <&aud_dat_miso_ch34_on_pins>;
+		pinctrl-24 = <&aud_gpio_tdm_off_pins>;
+		pinctrl-25 = <&aud_gpio_tdm_on_pins>;
+
+		headset-codec {
+		    sound-dai = <&rt5682>;
+		};
+
+		speaker-codecs {
+		    sound-dai = <&rt1015p>;
+		};
+	};
 };
 
 &dsi0 {
@@ -227,6 +306,19 @@ &i2c1 {
 	clock-frequency = <400000>;
 	pinctrl-names = "default";
 	pinctrl-0 = <&i2c1_pins>;
+
+	rt5682: rt5682@1a {
+		compatible = "realtek,rt5682i";
+		reg = <0x1a>;
+		interrupts-extended = <&pio 18 IRQ_TYPE_LEVEL_LOW>;
+		realtek,jd-src = <1>;
+		realtek,btndet-delay = <16>;
+		#sound-dai-cells = <0>;
+
+		AVDD-supply = <&mt6359_vio18_ldo_reg>;
+		MICVDD-supply = <&pp3300_g>;
+		VBAT-supply = <&pp3300_ldo_z>;
+	};
 };
 
 &i2c2 {
@@ -660,6 +752,165 @@ pins-in {
 		};
 	};
 
+	aud_clk_mosi_off_pins: aud-clk-mosi-off-pins {
+		pins-mosi-off {
+			pinmux = <PINMUX_GPIO214__FUNC_GPIO214>,
+				 <PINMUX_GPIO215__FUNC_GPIO215>;
+		};
+	};
+
+	aud_clk_mosi_on_pins: aud-clk-mosi-on-pins {
+		pins-mosi-on {
+			pinmux = <PINMUX_GPIO214__FUNC_AUD_CLK_MOSI>,
+				 <PINMUX_GPIO215__FUNC_AUD_SYNC_MOSI>;
+			drive-strength = <10>;
+		};
+	};
+
+	aud_dat_miso_ch34_off_pins: aud-dat-miso-ch34-off-pins {
+		pins-miso-off {
+			pinmux = <PINMUX_GPIO199__FUNC_GPIO199>;
+		};
+	};
+
+	aud_dat_miso_ch34_on_pins: aud-dat-miso-ch34-on-pins {
+		pins-miso-on {
+			pinmux = <PINMUX_GPIO199__FUNC_AUD_DAT_MISO2>;
+		};
+	};
+
+	aud_dat_miso_off_pins: aud-dat-miso-off-pins {
+		pins-miso-off {
+			pinmux = <PINMUX_GPIO218__FUNC_GPIO218>,
+				 <PINMUX_GPIO219__FUNC_GPIO219>;
+		};
+	};
+
+	aud_dat_miso_on_pins: aud-dat-miso-on-pins {
+		pins-miso-on {
+			pinmux = <PINMUX_GPIO218__FUNC_AUD_DAT_MISO0>,
+				 <PINMUX_GPIO219__FUNC_AUD_DAT_MISO1>;
+			drive-strength = <10>;
+		};
+	};
+
+	aud_dat_miso2_off_pins: aud-dat-miso2-off-pins {
+		pins-miso-off {
+			pinmux = <PINMUX_GPIO199__FUNC_GPIO199>;
+		};
+	};
+
+	aud_dat_miso2_on_pins: aud-dat-miso2-on-pins {
+		pins-miso-on {
+			pinmux = <PINMUX_GPIO199__FUNC_AUD_DAT_MISO2>;
+		};
+	};
+
+	aud_dat_mosi_ch34_off_pins: aud-dat-mosi-ch34-off-pins {
+		pins-mosi-off {
+			pinmux = <PINMUX_GPIO196__FUNC_GPIO196>;
+		};
+	};
+
+	aud_dat_mosi_ch34_on_pins: aud-dat-mosi-ch34-on-pins {
+		pins-mosi-on {
+			pinmux = <PINMUX_GPIO196__FUNC_AUD_DAT_MOSI2>;
+		};
+	};
+
+	aud_dat_mosi_off_pins: aud-dat-mosi-off-pins {
+		pins-mosi-off {
+			pinmux = <PINMUX_GPIO216__FUNC_GPIO216>,
+				 <PINMUX_GPIO217__FUNC_GPIO217>;
+		};
+	};
+
+	aud_dat_mosi_on_pins: aud-dat-mosi-on-pins {
+		pins-mosi-on {
+			pinmux = <PINMUX_GPIO216__FUNC_AUD_DAT_MOSI0>,
+				 <PINMUX_GPIO217__FUNC_AUD_DAT_MOSI1>;
+			drive-strength = <10>;
+		};
+	};
+
+	aud_gpio_i2s3_off_pins: aud-gpio-i2s3-off-pins {
+		pins-i2s3-off {
+			pinmux = <PINMUX_GPIO32__FUNC_GPIO32>,
+				 <PINMUX_GPIO33__FUNC_GPIO33>,
+				 <PINMUX_GPIO35__FUNC_GPIO35>;
+		};
+	};
+
+	aud_gpio_i2s3_on_pins: aud-gpio-i2s3-on-pins {
+		pins-i2s3-on {
+			pinmux = <PINMUX_GPIO32__FUNC_I2S3_BCK>,
+				 <PINMUX_GPIO33__FUNC_I2S3_LRCK>,
+				 <PINMUX_GPIO35__FUNC_I2S3_DO>;
+		};
+	};
+
+	aud_gpio_i2s8_off_pins: aud-gpio-i2s8-off-pins {
+		pins-i2s8-off {
+			pinmux = <PINMUX_GPIO10__FUNC_GPIO10>,
+				 <PINMUX_GPIO11__FUNC_GPIO11>,
+				 <PINMUX_GPIO12__FUNC_GPIO12>,
+				 <PINMUX_GPIO13__FUNC_GPIO13>;
+		};
+	};
+
+	aud_gpio_i2s8_on_pins: aud-gpio-i2s8-on-pins {
+		pins-i2s8-on {
+			pinmux = <PINMUX_GPIO10__FUNC_I2S8_MCK>,
+				 <PINMUX_GPIO11__FUNC_I2S8_BCK>,
+				 <PINMUX_GPIO12__FUNC_I2S8_LRCK>,
+				 <PINMUX_GPIO13__FUNC_I2S8_DI>;
+		};
+	};
+
+	aud_gpio_i2s9_off_pins: aud-gpio-i2s9-off-pins {
+		pins-i2s9-off {
+			pinmux = <PINMUX_GPIO29__FUNC_GPIO29>;
+		};
+	};
+
+	aud_gpio_i2s9_on_pins: aud-gpio-i2s9-on-pins {
+		pins-i2s9-on {
+			pinmux = <PINMUX_GPIO29__FUNC_I2S9_DO>;
+		};
+	};
+
+	aud_gpio_tdm_off_pins: aud-gpio-tdm-off-pins {
+		pins-tdm-off {
+			pinmux = <PINMUX_GPIO0__FUNC_GPIO0>,
+				 <PINMUX_GPIO1__FUNC_GPIO1>,
+				 <PINMUX_GPIO2__FUNC_GPIO2>,
+				 <PINMUX_GPIO3__FUNC_GPIO3>;
+		};
+	};
+
+	aud_gpio_tdm_on_pins: aud-gpio-tdm-on-pins {
+		pins-tdm-on {
+			pinmux = <PINMUX_GPIO0__FUNC_TDM_LRCK>,
+				 <PINMUX_GPIO1__FUNC_TDM_BCK>,
+				 <PINMUX_GPIO2__FUNC_TDM_MCK>,
+				 <PINMUX_GPIO3__FUNC_TDM_DATA0>;
+		};
+	};
+
+	aud_nle_mosi_off_pins: aud-nle-mosi-off-pins {
+		pins-nle-mosi-off {
+			pinmux = <PINMUX_GPIO197__FUNC_GPIO197>,
+				 <PINMUX_GPIO198__FUNC_GPIO198>;
+		};
+	};
+
+	aud_nle_mosi_on_pins: aud-nle-mosi-on-pins {
+		pins-nle-mosi-on {
+			pinmux = <PINMUX_GPIO197__FUNC_AUD_NLE_MOSI1>,
+				 <PINMUX_GPIO198__FUNC_AUD_NLE_MOSI0>;
+		};
+	};
+
 	cr50_int: cr50-irq-default-pins {
 		pins-gsc-ap-int-odl {
 			pinmux = <PINMUX_GPIO171__FUNC_GPIO171>;
@@ -932,6 +1183,13 @@ pins-inhibit {
 		};
 	};
 
+	rt1015p_pins: rt1015p-default-pins {
+		pins {
+			pinmux = <PINMUX_GPIO147__FUNC_GPIO147>;
+			output-low;
+		};
+	};
+
 	scp_pins: scp-pins {
 		pins-vreq-vao {
 			pinmux = <PINMUX_GPIO195__FUNC_SCP_VREQ_VAO>;
@@ -987,6 +1245,30 @@ pins-report-sw {
 			output-low;
 		};
 	};
+
+	vow_clk_miso_off_pins: vow-clk-miso-off-pins {
+		pins-miso-off {
+			pinmux = <PINMUX_GPIO219__FUNC_GPIO219>;
+		};
+	};
+
+	vow_clk_miso_on_pins: vow-clk-miso-on-pins {
+		pins-miso-on {
+			pinmux = <PINMUX_GPIO219__FUNC_VOW_CLK_MISO>;
+		};
+	};
+
+	vow_dat_miso_off_pins: vow-dat-miso-off-pins {
+		pins-miso-off {
+			pinmux = <PINMUX_GPIO218__FUNC_GPIO218>;
+		};
+	};
+
+	vow_dat_miso_on_pins: vow-dat-miso-on-pins {
+		pins-miso-on {
+			pinmux = <PINMUX_GPIO218__FUNC_VOW_DAT_MISO>;
+		};
+	};
 };
 
 &pmic {
-- 
2.37.3

Re: [PATCH v2 4/5] arm64: dts: mediatek: asurada: Enable audio support
Posted by Chen-Yu Tsai 1 year, 11 months ago
On Fri, Oct 7, 2022 at 5:25 AM Nícolas F. R. A. Prado
<nfraprado@collabora.com> wrote:
>
> Enable audio support for the Asurada platform. This consists of the
> machine sound card, the rt1015p codec for the speakers, the rt5682 codec
> for the headset, and the dmic codec for the internal microphone.
>
> HDMI audio support is left out for now since the DisplayPort chip
> required isn't enabled yet.
>
> Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>

Tested-by: Chen-Yu Tsai <wenst@chromium.org>

However the UCM you linked to in the cover letter didn't seem to work
correctly.
Re: [PATCH v2 4/5] arm64: dts: mediatek: asurada: Enable audio support
Posted by Nícolas F. R. A. Prado 1 year, 11 months ago
On Fri, Oct 07, 2022 at 02:53:24PM +0800, Chen-Yu Tsai wrote:
> On Fri, Oct 7, 2022 at 5:25 AM Nícolas F. R. A. Prado
> <nfraprado@collabora.com> wrote:
> >
> > Enable audio support for the Asurada platform. This consists of the
> > machine sound card, the rt1015p codec for the speakers, the rt5682 codec
> > for the headset, and the dmic codec for the internal microphone.
> >
> > HDMI audio support is left out for now since the DisplayPort chip
> > required isn't enabled yet.
> >
> > Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
> 
> Tested-by: Chen-Yu Tsai <wenst@chromium.org>
> 
> However the UCM you linked to in the cover letter didn't seem to work
> correctly.

Did you comment out the HDMI section in the UCM? This series doesn't add support
for HDMI but the UCM already configures it.

I sent the UCM with HDMI support since I have it working locally and was hoping
that the HDMI support would be merged shortly on the kernel side, but on second
thought it makes more sense to have a working though incomplete UCM merged for
now and add the HDMI support later when it's ready on the kernel side, so I'll
update the UCM to go this route.

Thanks,
Nícolas
Re: [PATCH v2 4/5] arm64: dts: mediatek: asurada: Enable audio support
Posted by Chen-Yu Tsai 1 year, 11 months ago
On Fri, Oct 7, 2022 at 5:25 AM Nícolas F. R. A. Prado
<nfraprado@collabora.com> wrote:
>
> Enable audio support for the Asurada platform. This consists of the
> machine sound card, the rt1015p codec for the speakers, the rt5682 codec
> for the headset, and the dmic codec for the internal microphone.

It should be noted that there's a new revision of Hayato and Spherion
that switch to using the RT5682S codec. These are mt8192-hayato-rev5-sku2.dts
and mt8192-spherion-rev4.dts in the downstream kernel.

ChenYu


> HDMI audio support is left out for now since the DisplayPort chip
> required isn't enabled yet.
>
> Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
>
> ---
>
> Changes in v2:
> - Added this commit
>
>  .../boot/dts/mediatek/mt8192-asurada.dtsi     | 282 ++++++++++++++++++
>  1 file changed, 282 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
> index ace44827de17..dac2d4f5e670 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
> +++ b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
> @@ -33,6 +33,12 @@ backlight_lcd0: backlight-lcd0 {
>                 default-brightness-level = <576>;
>         };
>
> +       dmic_codec: dmic-codec {
> +               compatible = "dmic-codec";
> +               num-channels = <2>;
> +               wakeup-delay-ms = <50>;
> +       };
> +
>         pp1000_dpbrdg: regulator-1v0-dpbrdg {
>                 compatible = "regulator-fixed";
>                 regulator-name = "pp1000_dpbrdg";
> @@ -196,6 +202,79 @@ wifi_restricted_dma_region: wifi@c0000000 {
>                         reg = <0 0xc0000000 0 0x4000000>;
>                 };
>         };
> +
> +       rt1015p: rt1015p {
> +               compatible = "realtek,rt1015p";
> +               pinctrl-names = "default";
> +               pinctrl-0 = <&rt1015p_pins>;
> +               sdb-gpios = <&pio 147 GPIO_ACTIVE_HIGH>;
> +               #sound-dai-cells = <0>;
> +       };
> +
> +       sound: mt8192-sound {
> +               compatible = "mediatek,mt8192_mt6359_rt1015p_rt5682";
> +               mediatek,platform = <&afe>;
> +               pinctrl-names = "aud_clk_mosi_off",
> +                               "aud_clk_mosi_on",
> +                               "aud_dat_mosi_off",
> +                               "aud_dat_mosi_on",
> +                               "aud_dat_miso_off",
> +                               "aud_dat_miso_on",
> +                               "vow_dat_miso_off",
> +                               "vow_dat_miso_on",
> +                               "vow_clk_miso_off",
> +                               "vow_clk_miso_on",
> +                               "aud_nle_mosi_off",
> +                               "aud_nle_mosi_on",
> +                               "aud_dat_miso2_off",
> +                               "aud_dat_miso2_on",
> +                               "aud_gpio_i2s3_off",
> +                               "aud_gpio_i2s3_on",
> +                               "aud_gpio_i2s8_off",
> +                               "aud_gpio_i2s8_on",
> +                               "aud_gpio_i2s9_off",
> +                               "aud_gpio_i2s9_on",
> +                               "aud_dat_mosi_ch34_off",
> +                               "aud_dat_mosi_ch34_on",
> +                               "aud_dat_miso_ch34_off",
> +                               "aud_dat_miso_ch34_on",
> +                               "aud_gpio_tdm_off",
> +                               "aud_gpio_tdm_on";
> +               pinctrl-0 = <&aud_clk_mosi_off_pins>;
> +               pinctrl-1 = <&aud_clk_mosi_on_pins>;
> +               pinctrl-2 = <&aud_dat_mosi_off_pins>;
> +               pinctrl-3 = <&aud_dat_mosi_on_pins>;
> +               pinctrl-4 = <&aud_dat_miso_off_pins>;
> +               pinctrl-5 = <&aud_dat_miso_on_pins>;
> +               pinctrl-6 = <&vow_dat_miso_off_pins>;
> +               pinctrl-7 = <&vow_dat_miso_on_pins>;
> +               pinctrl-8 = <&vow_clk_miso_off_pins>;
> +               pinctrl-9 = <&vow_clk_miso_on_pins>;
> +               pinctrl-10 = <&aud_nle_mosi_off_pins>;
> +               pinctrl-11 = <&aud_nle_mosi_on_pins>;
> +               pinctrl-12 = <&aud_dat_miso2_off_pins>;
> +               pinctrl-13 = <&aud_dat_miso2_on_pins>;
> +               pinctrl-14 = <&aud_gpio_i2s3_off_pins>;
> +               pinctrl-15 = <&aud_gpio_i2s3_on_pins>;
> +               pinctrl-16 = <&aud_gpio_i2s8_off_pins>;
> +               pinctrl-17 = <&aud_gpio_i2s8_on_pins>;
> +               pinctrl-18 = <&aud_gpio_i2s9_off_pins>;
> +               pinctrl-19 = <&aud_gpio_i2s9_on_pins>;
> +               pinctrl-20 = <&aud_dat_mosi_ch34_off_pins>;
> +               pinctrl-21 = <&aud_dat_mosi_ch34_on_pins>;
> +               pinctrl-22 = <&aud_dat_miso_ch34_off_pins>;
> +               pinctrl-23 = <&aud_dat_miso_ch34_on_pins>;
> +               pinctrl-24 = <&aud_gpio_tdm_off_pins>;
> +               pinctrl-25 = <&aud_gpio_tdm_on_pins>;
> +
> +               headset-codec {
> +                   sound-dai = <&rt5682>;
> +               };
> +
> +               speaker-codecs {
> +                   sound-dai = <&rt1015p>;
> +               };
> +       };
>  };
>
>  &dsi0 {
> @@ -227,6 +306,19 @@ &i2c1 {
>         clock-frequency = <400000>;
>         pinctrl-names = "default";
>         pinctrl-0 = <&i2c1_pins>;
> +
> +       rt5682: rt5682@1a {
> +               compatible = "realtek,rt5682i";
> +               reg = <0x1a>;
> +               interrupts-extended = <&pio 18 IRQ_TYPE_LEVEL_LOW>;
> +               realtek,jd-src = <1>;
> +               realtek,btndet-delay = <16>;
> +               #sound-dai-cells = <0>;
> +
> +               AVDD-supply = <&mt6359_vio18_ldo_reg>;
> +               MICVDD-supply = <&pp3300_g>;
> +               VBAT-supply = <&pp3300_ldo_z>;
> +       };
>  };
>
>  &i2c2 {
> @@ -660,6 +752,165 @@ pins-in {
>                 };
>         };
>
> +       aud_clk_mosi_off_pins: aud-clk-mosi-off-pins {
> +               pins-mosi-off {
> +                       pinmux = <PINMUX_GPIO214__FUNC_GPIO214>,
> +                                <PINMUX_GPIO215__FUNC_GPIO215>;
> +               };
> +       };
> +
> +       aud_clk_mosi_on_pins: aud-clk-mosi-on-pins {
> +               pins-mosi-on {
> +                       pinmux = <PINMUX_GPIO214__FUNC_AUD_CLK_MOSI>,
> +                                <PINMUX_GPIO215__FUNC_AUD_SYNC_MOSI>;
> +                       drive-strength = <10>;
> +               };
> +       };
> +
> +       aud_dat_miso_ch34_off_pins: aud-dat-miso-ch34-off-pins {
> +               pins-miso-off {
> +                       pinmux = <PINMUX_GPIO199__FUNC_GPIO199>;
> +               };
> +       };
> +
> +       aud_dat_miso_ch34_on_pins: aud-dat-miso-ch34-on-pins {
> +               pins-miso-on {
> +                       pinmux = <PINMUX_GPIO199__FUNC_AUD_DAT_MISO2>;
> +               };
> +       };
> +
> +       aud_dat_miso_off_pins: aud-dat-miso-off-pins {
> +               pins-miso-off {
> +                       pinmux = <PINMUX_GPIO218__FUNC_GPIO218>,
> +                                <PINMUX_GPIO219__FUNC_GPIO219>;
> +               };
> +       };
> +
> +       aud_dat_miso_on_pins: aud-dat-miso-on-pins {
> +               pins-miso-on {
> +                       pinmux = <PINMUX_GPIO218__FUNC_AUD_DAT_MISO0>,
> +                                <PINMUX_GPIO219__FUNC_AUD_DAT_MISO1>;
> +                       drive-strength = <10>;
> +               };
> +       };
> +
> +       aud_dat_miso2_off_pins: aud-dat-miso2-off-pins {
> +               pins-miso-off {
> +                       pinmux = <PINMUX_GPIO199__FUNC_GPIO199>;
> +               };
> +       };
> +
> +       aud_dat_miso2_on_pins: aud-dat-miso2-on-pins {
> +               pins-miso-on {
> +                       pinmux = <PINMUX_GPIO199__FUNC_AUD_DAT_MISO2>;
> +               };
> +       };
> +
> +       aud_dat_mosi_ch34_off_pins: aud-dat-mosi-ch34-off-pins {
> +               pins-mosi-off {
> +                       pinmux = <PINMUX_GPIO196__FUNC_GPIO196>;
> +               };
> +       };
> +
> +       aud_dat_mosi_ch34_on_pins: aud-dat-mosi-ch34-on-pins {
> +               pins-mosi-on {
> +                       pinmux = <PINMUX_GPIO196__FUNC_AUD_DAT_MOSI2>;
> +               };
> +       };
> +
> +       aud_dat_mosi_off_pins: aud-dat-mosi-off-pins {
> +               pins-mosi-off {
> +                       pinmux = <PINMUX_GPIO216__FUNC_GPIO216>,
> +                                <PINMUX_GPIO217__FUNC_GPIO217>;
> +               };
> +       };
> +
> +       aud_dat_mosi_on_pins: aud-dat-mosi-on-pins {
> +               pins-mosi-on {
> +                       pinmux = <PINMUX_GPIO216__FUNC_AUD_DAT_MOSI0>,
> +                                <PINMUX_GPIO217__FUNC_AUD_DAT_MOSI1>;
> +                       drive-strength = <10>;
> +               };
> +       };
> +
> +       aud_gpio_i2s3_off_pins: aud-gpio-i2s3-off-pins {
> +               pins-i2s3-off {
> +                       pinmux = <PINMUX_GPIO32__FUNC_GPIO32>,
> +                                <PINMUX_GPIO33__FUNC_GPIO33>,
> +                                <PINMUX_GPIO35__FUNC_GPIO35>;
> +               };
> +       };
> +
> +       aud_gpio_i2s3_on_pins: aud-gpio-i2s3-on-pins {
> +               pins-i2s3-on {
> +                       pinmux = <PINMUX_GPIO32__FUNC_I2S3_BCK>,
> +                                <PINMUX_GPIO33__FUNC_I2S3_LRCK>,
> +                                <PINMUX_GPIO35__FUNC_I2S3_DO>;
> +               };
> +       };
> +
> +       aud_gpio_i2s8_off_pins: aud-gpio-i2s8-off-pins {
> +               pins-i2s8-off {
> +                       pinmux = <PINMUX_GPIO10__FUNC_GPIO10>,
> +                                <PINMUX_GPIO11__FUNC_GPIO11>,
> +                                <PINMUX_GPIO12__FUNC_GPIO12>,
> +                                <PINMUX_GPIO13__FUNC_GPIO13>;
> +               };
> +       };
> +
> +       aud_gpio_i2s8_on_pins: aud-gpio-i2s8-on-pins {
> +               pins-i2s8-on {
> +                       pinmux = <PINMUX_GPIO10__FUNC_I2S8_MCK>,
> +                                <PINMUX_GPIO11__FUNC_I2S8_BCK>,
> +                                <PINMUX_GPIO12__FUNC_I2S8_LRCK>,
> +                                <PINMUX_GPIO13__FUNC_I2S8_DI>;
> +               };
> +       };
> +
> +       aud_gpio_i2s9_off_pins: aud-gpio-i2s9-off-pins {
> +               pins-i2s9-off {
> +                       pinmux = <PINMUX_GPIO29__FUNC_GPIO29>;
> +               };
> +       };
> +
> +       aud_gpio_i2s9_on_pins: aud-gpio-i2s9-on-pins {
> +               pins-i2s9-on {
> +                       pinmux = <PINMUX_GPIO29__FUNC_I2S9_DO>;
> +               };
> +       };
> +
> +       aud_gpio_tdm_off_pins: aud-gpio-tdm-off-pins {
> +               pins-tdm-off {
> +                       pinmux = <PINMUX_GPIO0__FUNC_GPIO0>,
> +                                <PINMUX_GPIO1__FUNC_GPIO1>,
> +                                <PINMUX_GPIO2__FUNC_GPIO2>,
> +                                <PINMUX_GPIO3__FUNC_GPIO3>;
> +               };
> +       };
> +
> +       aud_gpio_tdm_on_pins: aud-gpio-tdm-on-pins {
> +               pins-tdm-on {
> +                       pinmux = <PINMUX_GPIO0__FUNC_TDM_LRCK>,
> +                                <PINMUX_GPIO1__FUNC_TDM_BCK>,
> +                                <PINMUX_GPIO2__FUNC_TDM_MCK>,
> +                                <PINMUX_GPIO3__FUNC_TDM_DATA0>;
> +               };
> +       };
> +
> +       aud_nle_mosi_off_pins: aud-nle-mosi-off-pins {
> +               pins-nle-mosi-off {
> +                       pinmux = <PINMUX_GPIO197__FUNC_GPIO197>,
> +                                <PINMUX_GPIO198__FUNC_GPIO198>;
> +               };
> +       };
> +
> +       aud_nle_mosi_on_pins: aud-nle-mosi-on-pins {
> +               pins-nle-mosi-on {
> +                       pinmux = <PINMUX_GPIO197__FUNC_AUD_NLE_MOSI1>,
> +                                <PINMUX_GPIO198__FUNC_AUD_NLE_MOSI0>;
> +               };
> +       };
> +
>         cr50_int: cr50-irq-default-pins {
>                 pins-gsc-ap-int-odl {
>                         pinmux = <PINMUX_GPIO171__FUNC_GPIO171>;
> @@ -932,6 +1183,13 @@ pins-inhibit {
>                 };
>         };
>
> +       rt1015p_pins: rt1015p-default-pins {
> +               pins {
> +                       pinmux = <PINMUX_GPIO147__FUNC_GPIO147>;
> +                       output-low;
> +               };
> +       };
> +
>         scp_pins: scp-pins {
>                 pins-vreq-vao {
>                         pinmux = <PINMUX_GPIO195__FUNC_SCP_VREQ_VAO>;
> @@ -987,6 +1245,30 @@ pins-report-sw {
>                         output-low;
>                 };
>         };
> +
> +       vow_clk_miso_off_pins: vow-clk-miso-off-pins {
> +               pins-miso-off {
> +                       pinmux = <PINMUX_GPIO219__FUNC_GPIO219>;
> +               };
> +       };
> +
> +       vow_clk_miso_on_pins: vow-clk-miso-on-pins {
> +               pins-miso-on {
> +                       pinmux = <PINMUX_GPIO219__FUNC_VOW_CLK_MISO>;
> +               };
> +       };
> +
> +       vow_dat_miso_off_pins: vow-dat-miso-off-pins {
> +               pins-miso-off {
> +                       pinmux = <PINMUX_GPIO218__FUNC_GPIO218>;
> +               };
> +       };
> +
> +       vow_dat_miso_on_pins: vow-dat-miso-on-pins {
> +               pins-miso-on {
> +                       pinmux = <PINMUX_GPIO218__FUNC_VOW_DAT_MISO>;
> +               };
> +       };
>  };
>
>  &pmic {
> --
> 2.37.3
>
Re: [PATCH v2 4/5] arm64: dts: mediatek: asurada: Enable audio support
Posted by Nícolas F. R. A. Prado 1 year, 11 months ago
On Fri, Oct 07, 2022 at 01:31:43PM +0800, Chen-Yu Tsai wrote:
> On Fri, Oct 7, 2022 at 5:25 AM Nícolas F. R. A. Prado
> <nfraprado@collabora.com> wrote:
> >
> > Enable audio support for the Asurada platform. This consists of the
> > machine sound card, the rt1015p codec for the speakers, the rt5682 codec
> > for the headset, and the dmic codec for the internal microphone.
> 
> It should be noted that there's a new revision of Hayato and Spherion
> that switch to using the RT5682S codec. These are mt8192-hayato-rev5-sku2.dts
> and mt8192-spherion-rev4.dts in the downstream kernel.

Thanks for the heads up. I'll move the variable codecs out of the common asurada
dtsi for next version.

Thanks,
Nícolas