[PATCH 3/3] ARM: dts: exynos: Add sound support to Midas

Krzysztof Kozlowski krzk at kernel.org
Mon Jul 20 16:34:58 CEST 2020


On Fri, Jul 10, 2020 at 07:35:00PM +0200, Sylwester Nawrocki wrote:
> From: Simon Shields <simon at lineageos.org>
> 
> Update the never-mainlined "samsung,trats2-audio" binding and instead
> use the new "samsung,midas-audio" binding.
> 
> Signed-off-by: Simon Shields <simon at lineageos.org>
> [s.nawrocki: fixed DAPM routing entries for MICBIAS1/2, adjusted to
>  changes in the DT binding]
> Signed-off-by: Sylwester Nawrocki <s.nawrocki at samsung.com>
> ---
>  arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi | 38 ++++++++++++++
>  arch/arm/boot/dts/exynos4412-i9300.dts      |  4 ++
>  arch/arm/boot/dts/exynos4412-midas.dtsi     | 78 ++++++++++++++++++++++++-----
>  arch/arm/boot/dts/exynos4412-n710x.dts      | 35 +++++++++++++
>  4 files changed, 142 insertions(+), 13 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi b/arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi
> index 53b3ca3..cff0980 100644
> --- a/arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi
> +++ b/arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi
> @@ -175,3 +175,41 @@
>  	gpio = <&gpm0 0 GPIO_ACTIVE_HIGH>;
>  	status = "okay";
>  };
> +
> +&submic_bias_reg {

Put them in alphabetical order against oder phandle overrides. Same for
n710x.dts.

> +	gpio = <&gpf2 0 GPIO_ACTIVE_HIGH>;
> +	enable-active-high;
> +};
> +
> +&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";
> +};
> diff --git a/arch/arm/boot/dts/exynos4412-i9300.dts b/arch/arm/boot/dts/exynos4412-i9300.dts
> index f8125a9..3691802 100644
> --- a/arch/arm/boot/dts/exynos4412-i9300.dts
> +++ b/arch/arm/boot/dts/exynos4412-i9300.dts
> @@ -20,3 +20,7 @@
>  		reg =  <0x40000000 0x40000000>;
>  	};
>  };
> +
> +&sound {
> +	fm-sel-gpios = <&gpl0 3 GPIO_ACTIVE_HIGH>;
> +};
> diff --git a/arch/arm/boot/dts/exynos4412-midas.dtsi b/arch/arm/boot/dts/exynos4412-midas.dtsi
> index 2c8111c..2752363 100644
> --- a/arch/arm/boot/dts/exynos4412-midas.dtsi
> +++ b/arch/arm/boot/dts/exynos4412-midas.dtsi
> @@ -102,6 +102,30 @@
>  		status = "disabled";
>  	};
>  
> +	vbatt_reg: voltage-regulator-9 {

Since this is the basic DTSI for multiple boards, the numbering here
should be consistent. You will have to rename the ones in Galaxy S3 and
N710 DTSI.

> +		compatible = "regulator-fixed";
> +		regulator-name = "VBATT";
> +		regulator-min-microvolt = <5000000>;
> +		regulator-max-microvolt = <5000000>;
> +		regulator-always-on;
> +	};
> +
> +	mic_bias_reg: voltage-regulator-10 {
> +		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-11 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "SUB_MICBIAS_LDO_2.8V";
> +		regulator-min-microvolt = <2800000>;
> +		regulator-max-microvolt = <2800000>;
> +	};
> +
>  	gpio-keys {
>  		compatible = "gpio-keys";
>  		pinctrl-names = "default";
> @@ -266,16 +290,18 @@
>  		clock-names = "ext_clock";
>  	};
>  
> -	sound {
> -		compatible = "samsung,trats2-audio";
> -		samsung,i2s-controller = <&i2s0>;
> -		samsung,model = "Trats2";
> -		samsung,audio-codec = <&wm1811>;
> -		samsung,audio-routing =
> -			"SPK", "SPKOUTLN",
> -			"SPK", "SPKOUTLP",
> -			"SPK", "SPKOUTRN",
> -			"SPK", "SPKOUTRP";
> +	sound: sound {
> +		compatible = "samsung,midas-audio";
> +		model = "Midas";
> +		mic-bias-supply = <&mic_bias_reg>;
> +		submic-bias-supply = <&submic_bias_reg>;
> +
> +		cpu {
> +			sound-dai =  <&i2s0 0>;

Double space after '='.

Best regards,
Krzysztof


More information about the Alsa-devel mailing list