Skip to contentSkip to conversation

ARM: dts: imx6qdl-wandboard: Let the codec control MCLK pinctrl

PATCH New Fabio Estevam 2 participants 2 messages Mar 14, 2018 – Apr 16, 2018

Subsystems (2)
lore
Share & tools
lore

Fabio Estevam

author reviewer
#0 lore raw

PATCH 1/1 ARM: dts: imx6qdl-wandboard: Let the codec control MCLK pinctrl

From: Fabio Estevam <[email protected]>

sgtl5000 codec needs MCLK clock to be present so that it can successfully read/write via I2C.

In the case of wandboard, MCLK is provided via
MX6QDL_PAD_GPIO_0__CCM_CLKO1 pad.

Move the MCLK pinctrl from hog group to the codec group, so that the codec clock can be present prior to reading the codec ID.

This avoids the following error that happens from time to time:

[    2.484443] sgtl5000 1-000a: Error reading chip id -6
---
 arch/arm/boot/dts/imx6qdl-wandboard-revb1.dtsi | 1 -
 arch/arm/boot/dts/imx6qdl-wandboard-revc1.dtsi | 1 -
 arch/arm/boot/dts/imx6qdl-wandboard-revd1.dtsi | 1 -
 arch/arm/boot/dts/imx6qdl-wandboard.dtsi       | 8 ++++++++
 4 files changed, 8 insertions(+), 3 deletions(-)
arch/arm/boot/dts/imx6qdl-wandboard-revb1.dtsi +0 -1
index a320891..855dc6f 100644
@@ -17,7 +17,6 @@
 	imx6qdl-wandboard {
 		pinctrl_hog: hoggrp {
 			fsl,pins = <
-				MX6QDL_PAD_GPIO_0__CCM_CLKO1		0x130b0		/* GPIO_0_CLKO */
 				MX6QDL_PAD_GPIO_2__GPIO1_IO02		0x80000000	/* uSDHC1 CD */
 				MX6QDL_PAD_EIM_DA9__GPIO3_IO09		0x80000000	/* uSDHC3 CD */
 				MX6QDL_PAD_EIM_EB1__GPIO2_IO29		0x0f0b0		/* WL_REF_ON */
arch/arm/boot/dts/imx6qdl-wandboard-revc1.dtsi +0 -1
index 8d893a7..49a0a55 100644
@@ -17,7 +17,6 @@
 	imx6qdl-wandboard {
 		pinctrl_hog: hoggrp {
 			fsl,pins = <
-				MX6QDL_PAD_GPIO_0__CCM_CLKO1		0x130b0		/* GPIO_0_CLKO */
 				MX6QDL_PAD_GPIO_2__GPIO1_IO02		0x80000000	/* uSDHC1 CD */
 				MX6QDL_PAD_EIM_DA9__GPIO3_IO09		0x80000000	/* uSDHC3 CD */
 				MX6QDL_PAD_CSI0_DAT14__GPIO6_IO00	0x0f0b0		/* WIFI_ON (reset, active low) */
arch/arm/boot/dts/imx6qdl-wandboard-revd1.dtsi +0 -1
index 3a8a495..69d9c86 100644
@@ -147,7 +147,6 @@
 	imx6qdl-wandboard {
 		pinctrl_hog: hoggrp {
 			fsl,pins = <
-				MX6QDL_PAD_GPIO_0__CCM_CLKO1     	0x130b0
 				MX6QDL_PAD_EIM_D22__USB_OTG_PWR		0x80000000	/* USB Power Enable */
 				MX6QDL_PAD_GPIO_2__GPIO1_IO02		0x80000000	/* USDHC1 CD */
 				MX6QDL_PAD_EIM_DA9__GPIO3_IO09		0x80000000	/* uSDHC3 CD */
arch/arm/boot/dts/imx6qdl-wandboard.dtsi +8 -0
index ed96d7b..6b0a86f 100644
@@ -83,6 +83,8 @@
 	status = "okay";
 
 	codec: sgtl5000@a {
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_mclk>;
 		compatible = "fsl,sgtl5000";
 		reg = <0x0a>;
 		clocks = <&clks IMX6QDL_CLK_CKO>;
@@ -142,6 +144,12 @@
 			>;
 		};
 
+		pinctrl_mclk: mclkgrp {
+			fsl,pins = <
+				MX6QDL_PAD_GPIO_0__CCM_CLKO1		0x130b0
+			>;
+		};
+
 		pinctrl_spdif: spdifgrp {
 			fsl,pins = <
 				MX6QDL_PAD_ENET_RXD0__SPDIF_OUT		0x1b0b0
Signature · 1 line
2.7.4
Applied
#1 lore raw

PATCH 1/1 ARM: dts: imx6qdl-wandboard: Let the codec control MCLK pinctrl

Quoted 8 lines · Fabio Estevam

From: Fabio Estevam <[email protected]>

sgtl5000 codec needs MCLK clock to be present so that it can successfully read/write via I2C.

In the case of wandboard, MCLK is provided via
MX6QDL_PAD_GPIO_0__CCM_CLKO1 pad.

Quoted 8 lines

Move the MCLK pinctrl from hog group to the codec group, so that the codec clock can be present prior to reading the codec ID.

This avoids the following error that happens from time to time:

[    2.484443] sgtl5000 1-000a: Error reading chip id -6

Applied, thanks.