Commit a553f90b authored by Simon Shields's avatar Simon Shields Committed by Krzysztof Kozlowski

ARM: dts: exynos: Add sound support to Midas

Update the never-mainlined "samsung,trats2-audio" binding and instead
use the new "samsung,midas-audio" binding.
Signed-off-by: default avatarSimon Shields <simon@lineageos.org>
[s.nawrocki: fixed DAPM routing entries for MICBIAS1/2, adjusted to
 new cpu/codec binding, corrected the regulator nodes indexing]
Signed-off-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
parent 9123e3a7
...@@ -33,7 +33,7 @@ flash-led { ...@@ -33,7 +33,7 @@ flash-led {
}; };
}; };
lcd_vdd3_reg: voltage-regulator-7 { lcd_vdd3_reg: voltage-regulator-10 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "LCD_VDD_2.2V"; regulator-name = "LCD_VDD_2.2V";
regulator-min-microvolt = <2200000>; regulator-min-microvolt = <2200000>;
...@@ -42,7 +42,7 @@ lcd_vdd3_reg: voltage-regulator-7 { ...@@ -42,7 +42,7 @@ lcd_vdd3_reg: voltage-regulator-7 {
enable-active-high; enable-active-high;
}; };
ps_als_reg: voltage-regulator-8 { ps_als_reg: voltage-regulator-11 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "LED_A_3.0V"; regulator-name = "LED_A_3.0V";
regulator-min-microvolt = <3000000>; regulator-min-microvolt = <3000000>;
...@@ -171,6 +171,44 @@ &s5c73m3 { ...@@ -171,6 +171,44 @@ &s5c73m3 {
status = "okay"; status = "okay";
}; };
&sound {
samsung,audio-routing =
"HP", "HPOUT1L",
"HP", "HPOUT1R",
"SPK", "SPKOUTLN",
"SPK", "SPKOUTLP",
"SPK", "SPKOUTRN",
"SPK", "SPKOUTRP",
"RCV", "HPOUT2N",
"RCV", "HPOUT2P",
"HDMI", "LINEOUT1N",
"HDMI", "LINEOUT1P",
"LINE", "LINEOUT2N",
"LINE", "LINEOUT2P",
"IN1LP", "MICBIAS1",
"IN1LN", "MICBIAS1",
"Main Mic", "MICBIAS1",
"IN1RP", "Sub Mic",
"IN1RN", "Sub Mic",
"IN2LP:VXRN", "MICBIAS2",
"Headset Mic", "MICBIAS2",
"IN2RN", "FM In",
"IN2RP:VXRP", "FM In";
};
&submic_bias_reg {
gpio = <&gpf2 0 GPIO_ACTIVE_HIGH>;
enable-active-high;
};
&touchkey_reg { &touchkey_reg {
gpio = <&gpm0 0 GPIO_ACTIVE_HIGH>; gpio = <&gpm0 0 GPIO_ACTIVE_HIGH>;
status = "okay"; status = "okay";
......
...@@ -20,3 +20,7 @@ memory@40000000 { ...@@ -20,3 +20,7 @@ memory@40000000 {
reg = <0x40000000 0x40000000>; reg = <0x40000000 0x40000000>;
}; };
}; };
&sound {
fm-sel-gpios = <&gpl0 3 GPIO_ACTIVE_HIGH>;
};
...@@ -102,6 +102,30 @@ touchkey_reg: voltage-regulator-6 { ...@@ -102,6 +102,30 @@ touchkey_reg: voltage-regulator-6 {
status = "disabled"; status = "disabled";
}; };
vbatt_reg: voltage-regulator-7 {
compatible = "regulator-fixed";
regulator-name = "VBATT";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
};
mic_bias_reg: voltage-regulator-8 {
compatible = "regulator-fixed";
regulator-name = "MICBIAS_LDO_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
gpio = <&gpf1 7 GPIO_ACTIVE_HIGH>;
enable-active-high;
};
submic_bias_reg: voltage-regulator-9 {
compatible = "regulator-fixed";
regulator-name = "SUB_MICBIAS_LDO_2.8V";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
gpio-keys { gpio-keys {
compatible = "gpio-keys"; compatible = "gpio-keys";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -266,16 +290,18 @@ wlan_pwrseq: sdhci3-pwrseq { ...@@ -266,16 +290,18 @@ wlan_pwrseq: sdhci3-pwrseq {
clock-names = "ext_clock"; clock-names = "ext_clock";
}; };
sound { sound: sound {
compatible = "samsung,trats2-audio"; compatible = "samsung,midas-audio";
samsung,i2s-controller = <&i2s0>; model = "Midas";
samsung,model = "Trats2"; mic-bias-supply = <&mic_bias_reg>;
samsung,audio-codec = <&wm1811>; submic-bias-supply = <&submic_bias_reg>;
samsung,audio-routing =
"SPK", "SPKOUTLN", cpu {
"SPK", "SPKOUTLP", sound-dai = <&i2s0 0>;
"SPK", "SPKOUTRN", };
"SPK", "SPKOUTRP"; codec {
sound-dai = <&wm1811>;
};
}; };
thermistor-ap { thermistor-ap {
...@@ -597,11 +623,37 @@ &i2c_4 { ...@@ -597,11 +623,37 @@ &i2c_4 {
wm1811: wm1811@1a { wm1811: wm1811@1a {
compatible = "wlf,wm1811"; compatible = "wlf,wm1811";
reg = <0x1a>; reg = <0x1a>;
clocks = <&pmu_system_controller 0>; clocks = <&pmu_system_controller 0>,
clock-names = "MCLK1"; <&max77686 MAX77686_CLK_PMIC>;
DCVDD-supply = <&ldo3_reg>; clock-names = "MCLK1", "MCLK2";
interrupt-controller;
#interrupt-cells = <2>;
interrupt-parent = <&gpx3>;
interrupts = <6 IRQ_TYPE_LEVEL_HIGH>;
gpio-controller;
#gpio-cells = <2>;
#sound-dai-cells = <0>;
wlf,gpio-cfg = <0x3 0x0 0x0 0x0 0x0 0x0
0x0 0x8000 0x0 0x0 0x0>;
wlf,micbias-cfg = <0x2f 0x2b>;
wlf,lineout1-feedback;
wlf,lineout1-se;
wlf,lineout2-se;
wlf,ldoena-always-driven;
AVDD2-supply = <&vbatt_reg>;
DBVDD1-supply = <&ldo3_reg>; DBVDD1-supply = <&ldo3_reg>;
DBVDD2-supply = <&vbatt_reg>;
DBVDD3-supply = <&vbatt_reg>;
DCVDD-supply = <&ldo3_reg>;
CPVDD-supply = <&vbatt_reg>;
SPKVDD1-supply = <&vbatt_reg>;
SPKVDD2-supply = <&vbatt_reg>;
wlf,ldo1ena = <&gpj0 4 0>; wlf,ldo1ena = <&gpj0 4 0>;
wlf,ldo2ena = <&gpj0 4 0>;
}; };
}; };
......
...@@ -13,7 +13,7 @@ memory@40000000 { ...@@ -13,7 +13,7 @@ memory@40000000 {
/* bootargs are passed in by bootloader */ /* bootargs are passed in by bootloader */
cam_vdda_reg: voltage-regulator-7 { cam_vdda_reg: voltage-regulator-10 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "CAM_SENSOR_CORE_1.2V"; regulator-name = "CAM_SENSOR_CORE_1.2V";
regulator-min-microvolt = <1200000>; regulator-min-microvolt = <1200000>;
...@@ -74,6 +74,41 @@ &s5c73m3 { ...@@ -74,6 +74,41 @@ &s5c73m3 {
status = "okay"; status = "okay";
}; };
&sound {
samsung,audio-routing =
"HP", "HPOUT1L",
"HP", "HPOUT1R",
"SPK", "SPKOUTLN",
"SPK", "SPKOUTLP",
"RCV", "HPOUT2N",
"RCV", "HPOUT2P",
"HDMI", "LINEOUT1N",
"HDMI", "LINEOUT1P",
"LINE", "LINEOUT2N",
"LINE", "LINEOUT2P",
"IN1LP", "MICBIAS2",
"IN1LN", "MICBIAS2",
"Headset Mic", "MICBIAS2",
"IN1RP", "Sub Mic",
"IN1RN", "Sub Mic",
"IN2LP:VXRN", "Main Mic",
"IN2LN", "Main Mic",
"IN2RN", "FM In",
"IN2RP:VXRP", "FM In";
};
&submic_bias_reg {
regulator-always-on;
};
&touchkey_reg { &touchkey_reg {
gpio = <&gpm0 5 GPIO_ACTIVE_HIGH>; gpio = <&gpm0 5 GPIO_ACTIVE_HIGH>;
status = "okay"; status = "okay";
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment