blob: 498281b2c88b7f77a13f5c993000f423c6e4c30c [file] [log] [blame]
/*
* Copyright (C) 2016 Freescale Semiconductor, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#include "imx6ull-14x14-ddr3-arm2.dts"
/ {
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
reg_codec_5v: codec_5v {
compatible = "regulator-fixed";
regulator-name = "CODEC_5V";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
};
reg_aud_3v3: aud_3v3 {
compatible = "regulator-fixed";
regulator-name = "AUD_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
enable-active-high;
};
reg_aud_1v8: aud_1v8 {
compatible = "regulator-fixed";
regulator-name = "AUD_1V8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
enable-active-high;
};
};
sound-mqs {
compatible = "fsl,imx6ul-ddr3-arm2-mqs",
"fsl,imx-audio-mqs";
model = "mqs-audio";
cpu-dai = <&sai1>;
asrc-controller = <&asrc>;
audio-codec = <&mqs>;
};
sound-wm8958 {
compatible = "fsl,imx6ul-ddr3-arm2-wm8958",
"fsl,imx-audio-wm8958";
model = "wm8958-audio";
cpu-dai = <&sai2>;
audio-codec = <&codec_b>;
codec-master;
gpr = <&gpr 4 0x100000 0x100000>;
hp-det-gpios = <&gpio5 0 1>;
};
sound-spdif {
compatible = "fsl,imx-audio-spdif";
model = "imx-spdif";
spdif-controller = <&spdif>;
spdif-in;
spdif-out;
};
};
&clks {
assigned-clocks = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
assigned-clock-rates = <786432000>;
};
&i2c4 {
clock-frequency = <100000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c4>;
status = "okay";
codec_b: wm8958@1a {
compatible = "wlf,wm8958";
reg = <0x1a>;
clocks = <&clks IMX6UL_CLK_SAI2>,
<&clks IMX6UL_CLK_DUMMY>;
clock-names = "mclk1", "mclk2";
DBVDD1-supply = <&reg_aud_1v8>;
DBVDD2-supply = <&reg_aud_1v8>;
DBVDD3-supply = <&reg_aud_3v3>;
AVDD2-supply = <&reg_aud_1v8>;
CPVDD-supply = <&reg_aud_1v8>;
SPKVDD1-supply = <&reg_codec_5v>;
SPKVDD2-supply = <&reg_codec_5v>;
wlf,ldo1ena;
wlf,ldo2ena;
};
};
&sai2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai2 &pinctrl_sai2_hp_det_b>;
assigned-clocks = <&clks IMX6UL_CLK_SAI2_SEL>,
<&clks IMX6UL_CLK_SAI2>;
assigned-clock-parents = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
assigned-clock-rates = <0>, <24576000>;
status = "okay";
};
&sai1 {
assigned-clocks = <&clks IMX6UL_CLK_SAI1_SEL>,
<&clks IMX6UL_CLK_SAI1>;
assigned-clock-parents = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
assigned-clock-rates = <0>, <24576000>;
status = "okay";
};
&mqs {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_mqs>;
clocks = <&clks IMX6UL_CLK_SAI1>;
clock-names = "mclk";
status = "okay";
};
&spdif {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_spdif>;
assigned-clocks = <&clks IMX6UL_CLK_SPDIF_SEL>,
<&clks IMX6UL_CLK_SPDIF_PODF>;
assigned-clock-parents = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
assigned-clock-rates = <0>, <49152000>;
status = "okay";
};
&uart2 {
status = "disabled";
};
&usdhc1 {
no-1-8-v;
vmmc-supply = <>;
status = "disabled";
};
&usdhc2 {
no-1-8-v;
};
&wdog1 {
status = "disabled";
};