linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] Add sound card support for imx8mn-evk board
@ 2020-12-07  9:12 Shengjiu Wang
  2020-12-07  9:12 ` [PATCH 1/3] arm64: dts: imx8mn: Configure clock rate for audio plls Shengjiu Wang
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Shengjiu Wang @ 2020-12-07  9:12 UTC (permalink / raw)
  To: robh+dt, shawnguo, s.hauer, kernel, festevam, linux-imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Support wm8524 and spdif sound card.

Shengjiu Wang (3):
  arm64: dts: imx8mn: Configure clock rate for audio plls
  arm64: dts: imx8mn-evk: Add sound-wm8524 card nodes
  arm64: dts: imx8mn-evk: Add sound-spdif card nodes

 arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi | 75 +++++++++++++++++++
 arch/arm64/boot/dts/freescale/imx8mn.dtsi     |  8 +-
 2 files changed, 81 insertions(+), 2 deletions(-)

-- 
2.27.0


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

* [PATCH 1/3] arm64: dts: imx8mn: Configure clock rate for audio plls
  2020-12-07  9:12 [PATCH 0/3] Add sound card support for imx8mn-evk board Shengjiu Wang
@ 2020-12-07  9:12 ` Shengjiu Wang
  2020-12-07  9:12 ` [PATCH 2/3] arm64: dts: imx8mn-evk: Add sound-wm8524 card nodes Shengjiu Wang
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Shengjiu Wang @ 2020-12-07  9:12 UTC (permalink / raw)
  To: robh+dt, shawnguo, s.hauer, kernel, festevam, linux-imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Configure clock rate for audio plls. audio pll1 is used
as parent clock for clocks that is multiple of 8kHz.
audio pll2 is used as parent clock for clocks that is
multiple of 11kHz.

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

diff --git a/arch/arm64/boot/dts/freescale/imx8mn.dtsi b/arch/arm64/boot/dts/freescale/imx8mn.dtsi
index e35182ff6f59..439cf6ca3114 100644
--- a/arch/arm64/boot/dts/freescale/imx8mn.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mn.dtsi
@@ -581,7 +581,9 @@ clk: clock-controller@30380000 {
 						<&clk IMX8MN_CLK_NOC>,
 						<&clk IMX8MN_CLK_AUDIO_AHB>,
 						<&clk IMX8MN_CLK_IPG_AUDIO_ROOT>,
-						<&clk IMX8MN_SYS_PLL3>;
+						<&clk IMX8MN_SYS_PLL3>,
+						<&clk IMX8MN_AUDIO_PLL1>,
+						<&clk IMX8MN_AUDIO_PLL2>;
 				assigned-clock-parents = <&clk IMX8MN_SYS_PLL1_800M>,
 							 <&clk IMX8MN_ARM_PLL_OUT>,
 							 <&clk IMX8MN_SYS_PLL3_OUT>,
@@ -589,7 +591,9 @@ clk: clock-controller@30380000 {
 				assigned-clock-rates = <0>, <0>, <0>,
 							<400000000>,
 							<400000000>,
-							<600000000>;
+							<600000000>,
+							<393216000>,
+							<361267200>;
 			};
 
 			src: reset-controller@30390000 {
-- 
2.27.0


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

* [PATCH 2/3] arm64: dts: imx8mn-evk: Add sound-wm8524 card nodes
  2020-12-07  9:12 [PATCH 0/3] Add sound card support for imx8mn-evk board Shengjiu Wang
  2020-12-07  9:12 ` [PATCH 1/3] arm64: dts: imx8mn: Configure clock rate for audio plls Shengjiu Wang
@ 2020-12-07  9:12 ` Shengjiu Wang
  2020-12-07  9:12 ` [PATCH 3/3] arm64: dts: imx8mn-evk: Add sound-spdif " Shengjiu Wang
  2021-01-07  3:02 ` [PATCH 0/3] Add sound card support for imx8mn-evk board Shawn Guo
  3 siblings, 0 replies; 5+ messages in thread
From: Shengjiu Wang @ 2020-12-07  9:12 UTC (permalink / raw)
  To: robh+dt, shawnguo, s.hauer, kernel, festevam, linux-imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Add sound-wm8524 card nodes which are supported on imx8mn-evk board.

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

diff --git a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
index 76d042a4cf09..1d2c399eabea 100644
--- a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
@@ -46,6 +46,32 @@ ir-receiver {
 		pinctrl-0 = <&pinctrl_ir>;
 		linux,autosuspend-period = <125>;
 	};
+
+	wm8524: audio-codec {
+		#sound-dai-cells = <0>;
+		compatible = "wlf,wm8524";
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_gpio_wlf>;
+		wlf,mute-gpios = <&gpio5 21 GPIO_ACTIVE_LOW>;
+		clocks = <&clk IMX8MN_CLK_SAI3_ROOT>;
+		clock-names = "mclk";
+	};
+
+	sound-wm8524 {
+		compatible = "fsl,imx-audio-wm8524";
+		model = "wm8524-audio";
+		audio-cpu = <&sai3>;
+		audio-codec = <&wm8524>;
+		audio-asrc = <&easrc>;
+		audio-routing =
+			"Line Out Jack", "LINEVOUTL",
+			"Line Out Jack", "LINEVOUTR";
+	};
+};
+
+&easrc {
+	fsl,asrc-rate  = <48000>;
+	status = "okay";
 };
 
 &fec1 {
@@ -124,6 +150,16 @@ pca6416: gpio@20 {
 	};
 };
 
+&sai3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_sai3>;
+	assigned-clocks = <&clk IMX8MN_CLK_SAI3>;
+	assigned-clock-parents = <&clk IMX8MN_AUDIO_PLL1_OUT>;
+	assigned-clock-rates = <24576000>;
+	fsl,sai-mclk-direction-output;
+	status = "okay";
+};
+
 &snvs_pwrkey {
 	status = "okay";
 };
@@ -210,6 +246,12 @@ MX8MN_IOMUXC_NAND_READY_B_GPIO3_IO16	0x19
 		>;
 	};
 
+	pinctrl_gpio_wlf: gpiowlfgrp {
+		fsl,pins = <
+			MX8MN_IOMUXC_I2C4_SDA_GPIO5_IO21	0xd6
+		>;
+	};
+
 	pinctrl_ir: irgrp {
 		fsl,pins = <
 			MX8MN_IOMUXC_GPIO1_IO13_GPIO1_IO13              0x4f
@@ -249,6 +291,15 @@ MX8MN_IOMUXC_SD2_RESET_B_GPIO2_IO19	0x41
 		>;
 	};
 
+	pinctrl_sai3: sai3grp {
+		fsl,pins = <
+			MX8MN_IOMUXC_SAI3_TXFS_SAI3_TX_SYNC     0xd6
+			MX8MN_IOMUXC_SAI3_TXC_SAI3_TX_BCLK      0xd6
+			MX8MN_IOMUXC_SAI3_MCLK_SAI3_MCLK        0xd6
+			MX8MN_IOMUXC_SAI3_TXD_SAI3_TX_DATA0     0xd6
+		>;
+	};
+
 	pinctrl_typec1: typec1grp {
 		fsl,pins = <
 			MX8MN_IOMUXC_SD1_STROBE_GPIO2_IO11	0x159
-- 
2.27.0


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

* [PATCH 3/3] arm64: dts: imx8mn-evk: Add sound-spdif card nodes
  2020-12-07  9:12 [PATCH 0/3] Add sound card support for imx8mn-evk board Shengjiu Wang
  2020-12-07  9:12 ` [PATCH 1/3] arm64: dts: imx8mn: Configure clock rate for audio plls Shengjiu Wang
  2020-12-07  9:12 ` [PATCH 2/3] arm64: dts: imx8mn-evk: Add sound-wm8524 card nodes Shengjiu Wang
@ 2020-12-07  9:12 ` Shengjiu Wang
  2021-01-07  3:02 ` [PATCH 0/3] Add sound card support for imx8mn-evk board Shawn Guo
  3 siblings, 0 replies; 5+ messages in thread
From: Shengjiu Wang @ 2020-12-07  9:12 UTC (permalink / raw)
  To: robh+dt, shawnguo, s.hauer, kernel, festevam, linux-imx,
	devicetree, linux-arm-kernel, linux-kernel
  Cc: shengjiu.wang

Add sound-spdif card nodes which are supported on imx8mn-evk board.

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

diff --git a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
index 1d2c399eabea..a0dddba2e561 100644
--- a/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
@@ -67,6 +67,14 @@ sound-wm8524 {
 			"Line Out Jack", "LINEVOUTL",
 			"Line Out Jack", "LINEVOUTR";
 	};
+
+	sound-spdif {
+		compatible = "fsl,imx-audio-spdif";
+		model = "imx-spdif";
+		spdif-controller = <&spdif1>;
+		spdif-out;
+		spdif-in;
+	};
 };
 
 &easrc {
@@ -164,6 +172,15 @@ &snvs_pwrkey {
 	status = "okay";
 };
 
+&spdif1 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_spdif1>;
+	assigned-clocks = <&clk IMX8MN_CLK_SPDIF1>;
+	assigned-clock-parents = <&clk IMX8MN_AUDIO_PLL1_OUT>;
+	assigned-clock-rates = <24576000>;
+	status = "okay";
+};
+
 &uart2 { /* console */
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_uart2>;
@@ -300,6 +317,13 @@ MX8MN_IOMUXC_SAI3_TXD_SAI3_TX_DATA0     0xd6
 		>;
 	};
 
+	pinctrl_spdif1: spdif1grp {
+		fsl,pins = <
+			MX8MN_IOMUXC_SPDIF_TX_SPDIF1_OUT	0xd6
+			MX8MN_IOMUXC_SPDIF_RX_SPDIF1_IN		0xd6
+		>;
+	};
+
 	pinctrl_typec1: typec1grp {
 		fsl,pins = <
 			MX8MN_IOMUXC_SD1_STROBE_GPIO2_IO11	0x159
-- 
2.27.0


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

* Re: [PATCH 0/3] Add sound card support for imx8mn-evk board
  2020-12-07  9:12 [PATCH 0/3] Add sound card support for imx8mn-evk board Shengjiu Wang
                   ` (2 preceding siblings ...)
  2020-12-07  9:12 ` [PATCH 3/3] arm64: dts: imx8mn-evk: Add sound-spdif " Shengjiu Wang
@ 2021-01-07  3:02 ` Shawn Guo
  3 siblings, 0 replies; 5+ messages in thread
From: Shawn Guo @ 2021-01-07  3:02 UTC (permalink / raw)
  To: Shengjiu Wang
  Cc: robh+dt, s.hauer, kernel, festevam, linux-imx, devicetree,
	linux-arm-kernel, linux-kernel, shengjiu.wang

On Mon, Dec 07, 2020 at 05:12:33PM +0800, Shengjiu Wang wrote:
> Support wm8524 and spdif sound card.
> 
> Shengjiu Wang (3):
>   arm64: dts: imx8mn: Configure clock rate for audio plls
>   arm64: dts: imx8mn-evk: Add sound-wm8524 card nodes
>   arm64: dts: imx8mn-evk: Add sound-spdif card nodes

Applied all, thanks.

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

end of thread, other threads:[~2021-01-07  3:03 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-07  9:12 [PATCH 0/3] Add sound card support for imx8mn-evk board Shengjiu Wang
2020-12-07  9:12 ` [PATCH 1/3] arm64: dts: imx8mn: Configure clock rate for audio plls Shengjiu Wang
2020-12-07  9:12 ` [PATCH 2/3] arm64: dts: imx8mn-evk: Add sound-wm8524 card nodes Shengjiu Wang
2020-12-07  9:12 ` [PATCH 3/3] arm64: dts: imx8mn-evk: Add sound-spdif " Shengjiu Wang
2021-01-07  3:02 ` [PATCH 0/3] Add sound card support for imx8mn-evk board Shawn Guo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).