All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards
@ 2024-07-29  1:39 Shengjiu Wang
  2024-07-29  1:39 ` [PATCH v2 1/4] arm64: dts: imx93: Add #sound-dai-cells property Shengjiu Wang
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Shengjiu Wang @ 2024-07-29  1:39 UTC (permalink / raw)
  To: robh, krzk+dt, conor+dt, shawnguo, s.hauer, kernel, festevam, imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Add bt-sco, PDM microphone, XCVR sound card support.

changes in v2:
- move #sound-dai-cells to i.mx93.dtsi
- fix some coding style issue
- fix CHECK_DTBS issue

Shengjiu Wang (4):
  arm64: dts: imx93: Add #sound-dai-cells property
  arm64: dts: imx93-11x11-evk: add bt-sco sound card support
  arm64: dts: imx93-11x11-evk: Add PDM microphone sound card support
  arm64: dts: imx93-11x11-evk: Add audio XCVR sound card

 .../boot/dts/freescale/imx93-11x11-evk.dts    | 132 ++++++++++++++++++
 arch/arm64/boot/dts/freescale/imx93.dtsi      |   5 +
 2 files changed, 137 insertions(+)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v2 1/4] arm64: dts: imx93: Add #sound-dai-cells property
  2024-07-29  1:39 [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shengjiu Wang
@ 2024-07-29  1:39 ` Shengjiu Wang
  2024-07-29  1:39 ` [PATCH v2 2/4] arm64: dts: imx93-11x11-evk: add bt-sco sound card support Shengjiu Wang
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Shengjiu Wang @ 2024-07-29  1:39 UTC (permalink / raw)
  To: robh, krzk+dt, conor+dt, shawnguo, s.hauer, kernel, festevam, imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Add #sound-dai-cells property for audio cpu dai modules
'#sound-dai-cells' is required to properly interpret
the list of DAI specified in the 'sound-dai' property,

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx93.dtsi | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx93.dtsi b/arch/arm64/boot/dts/freescale/imx93.dtsi
index 4a3f42355cb8..e8fd008d6333 100644
--- a/arch/arm64/boot/dts/freescale/imx93.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93.dtsi
@@ -425,6 +425,7 @@ sai1: sai@443b0000 {
 				clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3";
 				dmas = <&edma1 22 0 FSL_EDMA_RX>, <&edma1 21 0 0>;
 				dma-names = "rx", "tx";
+				#sound-dai-cells = <0>;
 				status = "disabled";
 			};
 
@@ -524,6 +525,7 @@ micfil: micfil@44520000 {
 				clock-names = "ipg_clk", "ipg_clk_app", "pll8k";
 				dmas = <&edma1 29 0 5>;
 				dma-names = "rx";
+				#sound-dai-cells = <0>;
 				status = "disabled";
 			};
 
@@ -846,6 +848,7 @@ sai2: sai@42650000 {
 				clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3";
 				dmas = <&edma2 59 0 FSL_EDMA_RX>, <&edma2 58 0 0>;
 				dma-names = "rx", "tx";
+				#sound-dai-cells = <0>;
 				status = "disabled";
 			};
 
@@ -859,6 +862,7 @@ sai3: sai@42660000 {
 				clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3";
 				dmas = <&edma2 61 0 FSL_EDMA_RX>, <&edma2 60 0 0>;
 				dma-names = "rx", "tx";
+				#sound-dai-cells = <0>;
 				status = "disabled";
 			};
 
@@ -878,6 +882,7 @@ xcvr: xcvr@42680000 {
 				clock-names = "ipg", "phy", "spba", "pll_ipg";
 				dmas = <&edma2 65 0 FSL_EDMA_RX>, <&edma2 66 0 0>;
 				dma-names = "rx", "tx";
+				#sound-dai-cells = <0>;
 				status = "disabled";
 			};
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v2 2/4] arm64: dts: imx93-11x11-evk: add bt-sco sound card support
  2024-07-29  1:39 [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shengjiu Wang
  2024-07-29  1:39 ` [PATCH v2 1/4] arm64: dts: imx93: Add #sound-dai-cells property Shengjiu Wang
@ 2024-07-29  1:39 ` Shengjiu Wang
  2024-07-29  1:39 ` [PATCH v2 3/4] arm64: dts: imx93-11x11-evk: Add PDM microphone " Shengjiu Wang
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Shengjiu Wang @ 2024-07-29  1:39 UTC (permalink / raw)
  To: robh, krzk+dt, conor+dt, shawnguo, s.hauer, kernel, festevam, imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Add bt-sco sound card, which is used by BT HFP case.
It supports wb profile as default

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
 .../boot/dts/freescale/imx93-11x11-evk.dts    | 53 +++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts b/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
index a15987f49e8d..5ebf25726c33 100644
--- a/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
@@ -80,6 +80,30 @@ reg_usdhc2_vmmc: regulator-usdhc2 {
 		off-on-delay-us = <12000>;
 		enable-active-high;
 	};
+
+	bt_sco_codec: bt-sco-codec {
+		compatible = "linux,bt-sco";
+		#sound-dai-cells = <1>;
+	};
+
+	sound-bt-sco {
+		compatible = "simple-audio-card";
+		simple-audio-card,name = "bt-sco-audio";
+		simple-audio-card,format = "dsp_a";
+		simple-audio-card,bitclock-inversion;
+		simple-audio-card,frame-master = <&btcpu>;
+		simple-audio-card,bitclock-master = <&btcpu>;
+
+		btcpu: simple-audio-card,cpu {
+			sound-dai = <&sai1>;
+			dai-tdm-slot-num = <2>;
+			dai-tdm-slot-width = <16>;
+		};
+
+		simple-audio-card,codec {
+			sound-dai = <&bt_sco_codec 1>;
+		};
+	};
 };
 
 &adc1 {
@@ -345,6 +369,17 @@ &mu2 {
 	status = "okay";
 };
 
+&sai1 {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&pinctrl_sai1>;
+	pinctrl-1 = <&pinctrl_sai1_sleep>;
+	assigned-clocks = <&clk IMX93_CLK_SAI1>;
+	assigned-clock-parents = <&clk IMX93_CLK_AUDIO_PLL>;
+	assigned-clock-rates = <12288000>;
+	fsl,sai-mclk-direction-output;
+	status = "okay";
+};
+
 &usbotg1 {
 	dr_mode = "otg";
 	hnp-disable;
@@ -528,6 +563,24 @@ MX93_PAD_CCM_CLKO2__GPIO3_IO27			0x31e
 		>;
 	};
 
+	pinctrl_sai1: sai1grp {
+		fsl,pins = <
+			MX93_PAD_SAI1_TXC__SAI1_TX_BCLK			0x31e
+			MX93_PAD_SAI1_TXFS__SAI1_TX_SYNC		0x31e
+			MX93_PAD_SAI1_TXD0__SAI1_TX_DATA00		0x31e
+			MX93_PAD_SAI1_RXD0__SAI1_RX_DATA00		0x31e
+		>;
+	};
+
+	pinctrl_sai1_sleep: sai1sleepgrp {
+		fsl,pins = <
+			MX93_PAD_SAI1_TXC__GPIO1_IO12                   0x51e
+			MX93_PAD_SAI1_TXFS__GPIO1_IO11			0x51e
+			MX93_PAD_SAI1_TXD0__GPIO1_IO13			0x51e
+			MX93_PAD_SAI1_RXD0__GPIO1_IO14			0x51e
+		>;
+	};
+
 	/* need to config the SION for data and cmd pad, refer to ERR052021 */
 	pinctrl_usdhc1: usdhc1grp {
 		fsl,pins = <
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v2 3/4] arm64: dts: imx93-11x11-evk: Add PDM microphone sound card support
  2024-07-29  1:39 [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shengjiu Wang
  2024-07-29  1:39 ` [PATCH v2 1/4] arm64: dts: imx93: Add #sound-dai-cells property Shengjiu Wang
  2024-07-29  1:39 ` [PATCH v2 2/4] arm64: dts: imx93-11x11-evk: add bt-sco sound card support Shengjiu Wang
@ 2024-07-29  1:39 ` Shengjiu Wang
  2024-07-29  1:39 ` [PATCH v2 4/4] arm64: dts: imx93-11x11-evk: Add audio XCVR sound card Shengjiu Wang
  2024-08-13  2:48 ` [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shawn Guo
  4 siblings, 0 replies; 6+ messages in thread
From: Shengjiu Wang @ 2024-07-29  1:39 UTC (permalink / raw)
  To: robh, krzk+dt, conor+dt, shawnguo, s.hauer, kernel, festevam, imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Add PDM micphone sound card support, configure the pinmux.

This sound card supports recording sound from PDM microphone
and convert the PDM format data to PCM data.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
 .../boot/dts/freescale/imx93-11x11-evk.dts    | 40 +++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts b/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
index 5ebf25726c33..5e4c162e0355 100644
--- a/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
@@ -104,6 +104,20 @@ simple-audio-card,codec {
 			sound-dai = <&bt_sco_codec 1>;
 		};
 	};
+
+	sound-micfil {
+		compatible = "fsl,imx-audio-card";
+		model = "micfil-audio";
+
+		pri-dai-link {
+			link-name = "micfil hifi";
+			format = "i2s";
+
+			cpu {
+				sound-dai = <&micfil>;
+			};
+		};
+	};
 };
 
 &adc1 {
@@ -361,6 +375,16 @@ &lpuart5 {
 	status = "okay";
 };
 
+&micfil {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&pinctrl_pdm>;
+	pinctrl-1 = <&pinctrl_pdm_sleep>;
+	assigned-clocks = <&clk IMX93_CLK_PDM>;
+	assigned-clock-parents = <&clk IMX93_CLK_AUDIO_PLL>;
+	assigned-clock-rates = <49152000>;
+	status = "okay";
+};
+
 &mu1 {
 	status = "okay";
 };
@@ -563,6 +587,22 @@ MX93_PAD_CCM_CLKO2__GPIO3_IO27			0x31e
 		>;
 	};
 
+	pinctrl_pdm: pdmgrp {
+		fsl,pins = <
+			MX93_PAD_PDM_CLK__PDM_CLK			0x31e
+			MX93_PAD_PDM_BIT_STREAM0__PDM_BIT_STREAM00	0x31e
+			MX93_PAD_PDM_BIT_STREAM1__PDM_BIT_STREAM01	0x31e
+		>;
+	};
+
+	pinctrl_pdm_sleep: pdmsleepgrp {
+		fsl,pins = <
+			MX93_PAD_PDM_CLK__GPIO1_IO08			0x31e
+			MX93_PAD_PDM_BIT_STREAM0__GPIO1_IO09		0x31e
+			MX93_PAD_PDM_BIT_STREAM1__GPIO1_IO10		0x31e
+		>;
+	};
+
 	pinctrl_sai1: sai1grp {
 		fsl,pins = <
 			MX93_PAD_SAI1_TXC__SAI1_TX_BCLK			0x31e
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v2 4/4] arm64: dts: imx93-11x11-evk: Add audio XCVR sound card
  2024-07-29  1:39 [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shengjiu Wang
                   ` (2 preceding siblings ...)
  2024-07-29  1:39 ` [PATCH v2 3/4] arm64: dts: imx93-11x11-evk: Add PDM microphone " Shengjiu Wang
@ 2024-07-29  1:39 ` Shengjiu Wang
  2024-08-13  2:48 ` [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shawn Guo
  4 siblings, 0 replies; 6+ messages in thread
From: Shengjiu Wang @ 2024-07-29  1:39 UTC (permalink / raw)
  To: robh, krzk+dt, conor+dt, shawnguo, s.hauer, kernel, festevam, imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Add audio XCVR sound card, which supports SPDIF TX & RX only,
eARC RX, ARC RX are not supported.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
 .../boot/dts/freescale/imx93-11x11-evk.dts    | 39 +++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts b/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
index 5e4c162e0355..0bb39eda39c1 100644
--- a/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
@@ -118,6 +118,19 @@ cpu {
 			};
 		};
 	};
+
+	sound-xcvr {
+		compatible = "fsl,imx-audio-card";
+		model = "imx-audio-xcvr";
+
+		pri-dai-link {
+			link-name = "XCVR PCM";
+
+			cpu {
+				sound-dai = <&xcvr>;
+			};
+		};
+	};
 };
 
 &adc1 {
@@ -467,6 +480,18 @@ &wdog3 {
 	status = "okay";
 };
 
+&xcvr {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&pinctrl_spdif>;
+	pinctrl-1 = <&pinctrl_spdif_sleep>;
+	assigned-clocks = <&clk IMX93_CLK_SPDIF>,
+			 <&clk IMX93_CLK_AUDIO_XCVR>;
+	assigned-clock-parents = <&clk IMX93_CLK_AUDIO_PLL>,
+			 <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>;
+	assigned-clock-rates = <12288000>, <200000000>;
+	status = "okay";
+};
+
 &iomuxc {
 	pinctrl_eqos: eqosgrp {
 		fsl,pins = <
@@ -678,6 +703,20 @@ MX93_PAD_SD2_RESET_B__GPIO3_IO07	0x31e
 		>;
 	};
 
+	pinctrl_spdif: spdifgrp {
+		fsl,pins = <
+			MX93_PAD_GPIO_IO22__SPDIF_IN		0x31e
+			MX93_PAD_GPIO_IO23__SPDIF_OUT		0x31e
+		>;
+	};
+
+	pinctrl_spdif_sleep: spdifsleepgrp {
+		fsl,pins = <
+			MX93_PAD_GPIO_IO22__GPIO2_IO22		0x31e
+			MX93_PAD_GPIO_IO23__GPIO2_IO23		0x31e
+		>;
+	};
+
 	pinctrl_usdhc2_gpio: usdhc2gpiogrp {
 		fsl,pins = <
 			MX93_PAD_SD2_CD_B__GPIO3_IO00		0x31e
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards
  2024-07-29  1:39 [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shengjiu Wang
                   ` (3 preceding siblings ...)
  2024-07-29  1:39 ` [PATCH v2 4/4] arm64: dts: imx93-11x11-evk: Add audio XCVR sound card Shengjiu Wang
@ 2024-08-13  2:48 ` Shawn Guo
  4 siblings, 0 replies; 6+ messages in thread
From: Shawn Guo @ 2024-08-13  2:48 UTC (permalink / raw)
  To: Shengjiu Wang
  Cc: robh, krzk+dt, conor+dt, shawnguo, s.hauer, kernel, festevam, imx,
	devicetree, linux-arm-kernel, linux-kernel, shengjiu.wang

On Mon, Jul 29, 2024 at 09:39:55AM +0800, Shengjiu Wang wrote:
> Add bt-sco, PDM microphone, XCVR sound card support.
> 
> changes in v2:
> - move #sound-dai-cells to i.mx93.dtsi
> - fix some coding style issue
> - fix CHECK_DTBS issue
> 
> Shengjiu Wang (4):
>   arm64: dts: imx93: Add #sound-dai-cells property
>   arm64: dts: imx93-11x11-evk: add bt-sco sound card support
>   arm64: dts: imx93-11x11-evk: Add PDM microphone sound card support
>   arm64: dts: imx93-11x11-evk: Add audio XCVR sound card

Applied all, thanks!


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-08-13  2:49 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-29  1:39 [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shengjiu Wang
2024-07-29  1:39 ` [PATCH v2 1/4] arm64: dts: imx93: Add #sound-dai-cells property Shengjiu Wang
2024-07-29  1:39 ` [PATCH v2 2/4] arm64: dts: imx93-11x11-evk: add bt-sco sound card support Shengjiu Wang
2024-07-29  1:39 ` [PATCH v2 3/4] arm64: dts: imx93-11x11-evk: Add PDM microphone " Shengjiu Wang
2024-07-29  1:39 ` [PATCH v2 4/4] arm64: dts: imx93-11x11-evk: Add audio XCVR sound card Shengjiu Wang
2024-08-13  2:48 ` [PATCH v2 0/4] arm64: dts: imx93-11x11-evk: Add several sound cards Shawn Guo

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.