]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
ARM: dts: exynos: Switch to dedicated Odroid XU3 sound card binding
authorSylwester Nawrocki <s.nawrocki@samsung.com>
Fri, 3 Nov 2017 16:54:45 +0000 (17:54 +0100)
committerKrzysztof Kozlowski <krzk@kernel.org>
Mon, 27 Nov 2017 17:58:05 +0000 (18:58 +0100)
The new sound card DT binding is used for Odroid XU3 in order
to properly support the HDMI audio path.  Clocks configuration is
changed so the I2S controller is now the bit clock and the frame clock
master.  The EPLL output clock is now the audio root clock adjusted to
each audio sample rate.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
arch/arm/boot/dts/exynos4.dtsi
arch/arm/boot/dts/exynos5420.dtsi
arch/arm/boot/dts/exynos5422-odroidxu3-audio.dtsi

index 4768b086ed677caae2fae52e960774894e016811..2db6cfe5d9082a8657ac5b4790aca1627d126a93 100644 (file)
                phy = <&hdmi_i2c_phy>;
                power-domains = <&pd_tv>;
                samsung,syscon-phandle = <&pmu_system_controller>;
+               #sound-dai-cells = <0>;
                status = "disabled";
        };
 
index 8aa2cc7aa125f5513a8333d84f8caae7a67fd3e6..19d48798a80f70bb42c09984c4c9f9ddf2e585e1 100644 (file)
                        samsung,syscon-phandle = <&pmu_system_controller>;
                        status = "disabled";
                        power-domains = <&disp_pd>;
+                       #sound-dai-cells = <0>;
                };
 
                hdmiphy: hdmiphy@145D0000 {
index da3141a307d5ea1dd3ab576b726d1ef5227bb48b..fe4d8ef094d02210456e4f652ddd3f57b3942cdd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Hardkernel Odroid XU3 Audio Codec device tree source
+ * Hardkernel Odroid XU3 audio subsystem device tree source
  *
  * Copyright (c) 2015 Krzysztof Kozlowski
  * Copyright (c) 2014 Collabora Ltd.
 
 / {
        sound: sound {
-               compatible = "simple-audio-card";
+               compatible = "samsung,odroid-xu3-audio";
+               model = "Odroid-XU3";
 
-               simple-audio-card,name = "Odroid-XU3";
-               simple-audio-card,widgets =
+               samsung,audio-widgets =
                        "Headphone", "Headphone Jack",
                        "Speakers", "Speakers";
-               simple-audio-card,routing =
+               samsung,audio-routing =
                        "Headphone Jack", "HPL",
                        "Headphone Jack", "HPR",
                        "Headphone Jack", "MICBIAS",
                        "Speakers", "SPKL",
                        "Speakers", "SPKR";
 
-               simple-audio-card,format = "i2s";
-               simple-audio-card,bitclock-master = <&link0_codec>;
-               simple-audio-card,frame-master = <&link0_codec>;
+               assigned-clocks = <&i2s0 CLK_I2S_RCLK_SRC>,
+                               <&clock CLK_MOUT_EPLL>,
+                               <&clock CLK_MOUT_MAU_EPLL>,
+                               <&clock CLK_MOUT_USER_MAU_EPLL>,
+                               <&clock_audss EXYNOS_MOUT_AUDSS>,
+                               <&clock_audss EXYNOS_MOUT_I2S>,
+                               <&clock_audss EXYNOS_DOUT_SRP>,
+                               <&clock_audss EXYNOS_DOUT_AUD_BUS>,
+                               <&clock_audss EXYNOS_DOUT_I2S>;
 
-               simple-audio-card,cpu {
+               assigned-clock-parents = <&clock_audss EXYNOS_SCLK_I2S>,
+                               <&clock CLK_FOUT_EPLL>,
+                               <&clock CLK_MOUT_EPLL>,
+                               <&clock CLK_MOUT_MAU_EPLL>,
+                               <&clock CLK_MAU_EPLL>,
+                               <&clock_audss EXYNOS_MOUT_AUDSS>;
+
+               assigned-clock-rates = <0>,
+                               <0>,
+                               <0>,
+                               <0>,
+                               <0>,
+                               <0>,
+                               <196608001>,
+                               <(196608002 / 2)>,
+                               <196608000>;
+
+               cpu {
                        sound-dai = <&i2s0 0>;
-                       system-clock-frequency = <19200000>;
                };
-
-               link0_codec: simple-audio-card,codec {
-                       sound-dai = <&max98090>;
-                       clocks = <&i2s0 CLK_I2S_CDCLK>;
+               codec {
+                       sound-dai = <&hdmi>, <&max98090>;
                };
        };
 };
 
 &clock_audss {
-       assigned-clocks = <&clock_audss EXYNOS_MOUT_AUDSS>,
-                       <&clock_audss EXYNOS_MOUT_I2S>,
-                       <&clock_audss EXYNOS_DOUT_AUD_BUS>;
-       assigned-clock-parents = <&clock CLK_FIN_PLL>,
-                       <&clock_audss EXYNOS_MOUT_AUDSS>;
-       assigned-clock-rates = <0>,
-                       <0>,
-                       <19200000>;
+       assigned-clocks = <&clock_audss EXYNOS_DOUT_SRP>,
+                         <&clock CLK_FOUT_EPLL>;
+       assigned-clock-rates = <(196608000 / 256)>,
+                              <196608000>;
 };
 
 &hsi2c_5 {