summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/freescale/fsl-imx8qxp-lpddr4-arm2-wm8962.dts
diff options
context:
space:
mode:
authorMihai Serban <mihai.serban@nxp.com>2017-07-05 19:43:42 +0300
committerJason Liu <jason.hui.liu@nxp.com>2019-02-12 10:27:18 +0800
commit260e0bc5a424bf1927a348c1141fb8bebdd6220a (patch)
tree07a9705a21cfd78b0aeffa62fb7dba2679a5add0 /arch/arm64/boot/dts/freescale/fsl-imx8qxp-lpddr4-arm2-wm8962.dts
parent772e338c30ae34426d065ffd98321c7c94697d71 (diff)
MLK-15316: ARM64: dts: fsl-imx8qxp-lpddr4-arm2-wm8962: enable WM8962 codec
Add DTS configuration for enabling WM8962 codec with iMX8QXP validation board and the iMX8 debug board V2. The connection in debug base board v2 is: CODEC_PWR_EN: SEAF_B_A18 CODEC_I2C_CLK: SEAF_B_J32 CODEC_I2C_DAT: SEAF_B_J31 AUD_MCLK: SEAF_B_H24 AUD_TXC: SEAF_B_B35 AUD_TXFS: SEAF_B_B36 AUD_TXD: SEAF_B_B37 AUD_RXD: SEAF_B_A36 HEADPHONE_DET: SEAF_B_A19 MICROPHONE_DET: SEAF_B_A20 Signed-off-by: Mihai Serban <mihai.serban@nxp.com> Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Diffstat (limited to 'arch/arm64/boot/dts/freescale/fsl-imx8qxp-lpddr4-arm2-wm8962.dts')
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-imx8qxp-lpddr4-arm2-wm8962.dts108
1 files changed, 108 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/freescale/fsl-imx8qxp-lpddr4-arm2-wm8962.dts b/arch/arm64/boot/dts/freescale/fsl-imx8qxp-lpddr4-arm2-wm8962.dts
new file mode 100644
index 000000000000..bcf8bf36a7b2
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/fsl-imx8qxp-lpddr4-arm2-wm8962.dts
@@ -0,0 +1,108 @@
+/*
+ * Copyright 2017 NXP
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
+
+#include "fsl-imx8qxp-lpddr4-arm2.dts"
+
+/ {
+ regulators {
+ reg_wm8962: regulator-wm8962 {
+ compatible = "regulator-fixed";
+ regulator-name = "wm8962-supply";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ gpio = <&gpio1 1 GPIO_ACTIVE_HIGH>;
+ regulator-always-on;
+ enable-active-high;
+ };
+ };
+
+ sound-cs42888 {
+ status = "disabled";
+ };
+
+ sound-wm8962 {
+ compatible = "fsl,imx6q-sabresd-wm8962",
+ "fsl,imx-audio-wm8962";
+ model = "wm8962-audio";
+ cpu-dai = <&sai0>;
+ audio-codec = <&wm8962>;
+ audio-routing =
+ "Headphone Jack", "HPOUTL",
+ "Headphone Jack", "HPOUTR",
+ "Ext Spk", "SPKOUTL",
+ "Ext Spk", "SPKOUTR",
+ "AMIC", "MICBIAS",
+ "IN3R", "AMIC",
+ "DMIC", "MICBIAS",
+ "DMICDAT", "DMIC",
+ "Playback", "CPU-Playback",
+ "CPU-Capture", "Capture";
+ codec-master;
+ hp-det-gpios = <&gpio1 2 1>;
+ mic-det-gpios = <&gpio1 3 1>;
+ };
+};
+
+&esai0 {
+ status = "disabled";
+};
+
+&iomuxc {
+ imx8qxp-lpddr4-arm2 {
+ pinctrl_sai0: sai0grp {
+ fsl,pins = <
+ SC_P_SAI0_TXFS_ADMA_SAI0_TXFS 0xc600004c
+ SC_P_SAI0_TXC_ADMA_SAI0_TXC 0xc600004c
+ SC_P_SAI0_TXD_ADMA_SAI0_TXD 0xc600004c
+ SC_P_SAI0_RXD_ADMA_SAI0_RXD 0xc600004c
+ SC_P_SPI2_SDO_LSIO_GPIO1_IO01 0xc600004c
+ SC_P_SPI2_SDI_LSIO_GPIO1_IO02 0xc600004c
+ SC_P_SPI2_SCK_LSIO_GPIO1_IO03 0xc600004c
+ SC_P_MCLK_OUT0_ADMA_ACM_MCLK_OUT0 0xc600004c
+ >;
+ };
+ };
+};
+
+&i2c0_csi0 {
+
+ wm8962: wm8962@1a {
+ compatible = "wlf,wm8962";
+ reg = <0x1a>;
+ clocks = <&clk IMX8QXP_AUD_MCLKOUT0>;
+ DCVDD-supply = <&reg_wm8962>;
+ DBVDD-supply = <&reg_wm8962>;
+ AVDD-supply = <&reg_wm8962>;
+ CPVDD-supply = <&reg_wm8962>;
+ MICVDD-supply = <&reg_wm8962>;
+ PLLVDD-supply = <&reg_wm8962>;
+ SPKVDD1-supply = <&reg_wm8962>;
+ SPKVDD2-supply = <&reg_wm8962>;
+ gpio-cfg = <
+ 0x0000 /* 0:Default */
+ 0x0000 /* 1:Default */
+ 0x0013 /* 2:FN_DMICCLK */
+ 0x0000 /* 3:Default */
+ 0x8014 /* 4:FN_DMICCDAT */
+ 0x0000 /* 5:Default */
+ >;
+ amic-mono;
+ };
+};
+
+&sai0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_sai0>;
+ status = "okay";
+};