Message ID | 20180511080947.3057-1-s.nawrocki@samsung.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, May 11, 2018 at 10:09:47AM +0200, Sylwester Nawrocki wrote: > Use dedicated Odroid audio subsystem DT bindings instead of the simple-card. > This adds support for audio on the HDMI interface. How about changing the subject to "Add suppor for audio over HDMI for Odroid X/X2/U3"? > > Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> > --- > arch/arm/boot/dts/exynos4412-odroid-common.dtsi | 33 ++++++++++++++----------- > arch/arm/boot/dts/exynos4412-odroidu3.dts | 7 +++--- > arch/arm/boot/dts/exynos4412-odroidx.dts | 7 +++--- > 3 files changed, 27 insertions(+), 20 deletions(-) > > diff --git a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi > index d7ad07fd48f9..bad08e70358a 100644 > --- a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi > +++ b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi > @@ -37,20 +37,12 @@ > }; > > sound: sound { > - compatible = "simple-audio-card"; > - > - simple-audio-card,format = "i2s"; > - simple-audio-card,bitclock-master = <&link0_codec>; > - simple-audio-card,frame-master = <&link0_codec>; > - > - simple-audio-card,cpu { > + 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>; > }; > }; > > @@ -142,14 +134,25 @@ > pinctrl-0 = <>; > }; > > +&clock { > + assigned-clocks = <&clock CLK_FOUT_EPLL>; > + assigned-clock-rates = <45158401>; > +}; > + > &clock_audss { > assigned-clocks = <&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_AUD_BUS>, > + <&clock_audss EXYNOS_DOUT_I2S>; > + > assigned-clock-parents = <&clock CLK_FOUT_EPLL>, > - <&clock_audss EXYNOS_MOUT_AUDSS>; > - assigned-clock-rates = <0>, <0>, <192000000>, <19200000>; > + <&clock_audss EXYNOS_MOUT_AUDSS>; > + > + assigned-clock-rates = <0>, <0>, > + <196608001>, > + <(196608001 / 2)>, > + <(196608001 / 8)>; > }; > > &cpu0 { > @@ -498,6 +501,8 @@ > pinctrl-0 = <&i2s0_bus>; > pinctrl-names = "default"; > status = "okay"; > + assigned-clocks = <&i2s0 CLK_I2S_RCLK_SRC>; > + assigned-clock-parents = <&clock_audss EXYNOS_SCLK_I2S>; > }; > > &mixer { > diff --git a/arch/arm/boot/dts/exynos4412-odroidu3.dts b/arch/arm/boot/dts/exynos4412-odroidu3.dts > index bdcd4523cc1c..7a94a423097d 100644 > --- a/arch/arm/boot/dts/exynos4412-odroidu3.dts > +++ b/arch/arm/boot/dts/exynos4412-odroidu3.dts > @@ -113,11 +113,12 @@ > }; > > &sound { > - simple-audio-card,name = "Odroid-U3"; > - simple-audio-card,widgets = > + compatible = "hardkernel,odroid-xu4-audio"; The compatible is the same for all users using DTSI so it could be moved to the exynos4412-odroid-common.dtsi itself. Best regards, Krzysztof > + model = "Odroid-U3"; > + samsung,audio-widgets = > "Headphone", "Headphone Jack", > "Speakers", "Speakers"; > - simple-audio-card,routing = > + samsung,audio-routing = > "Headphone Jack", "HPL", > "Headphone Jack", "HPR", > "Headphone Jack", "MICBIAS", > diff --git a/arch/arm/boot/dts/exynos4412-odroidx.dts b/arch/arm/boot/dts/exynos4412-odroidx.dts > index 2dff129bc2ad..f0d5037f3a5d 100644 > --- a/arch/arm/boot/dts/exynos4412-odroidx.dts > +++ b/arch/arm/boot/dts/exynos4412-odroidx.dts > @@ -97,12 +97,13 @@ > }; > > &sound { > - simple-audio-card,name = "Odroid-X"; > - simple-audio-card,widgets = > + compatible = "hardkernel,odroid-xu4-audio"; > + model = "Odroid-X"; > + samsung,audio-widgets = > "Headphone", "Headphone Jack", > "Microphone", "Mic Jack", > "Microphone", "DMIC"; > - simple-audio-card,routing = > + samsung,audio-routing = > "Headphone Jack", "HPL", > "Headphone Jack", "HPR", > "IN1", "Mic Jack", > -- > 2.14.2 >
On 05/13/2018 02:24 PM, Krzysztof Kozlowski wrote: > On Fri, May 11, 2018 at 10:09:47AM +0200, Sylwester Nawrocki wrote: >> Use dedicated Odroid audio subsystem DT bindings instead of the simple-card. >> This adds support for audio on the HDMI interface. > How about changing the subject to "Add suppor for audio over HDMI for > Odroid X/X2/U3"? Sure, I don't mind. >> diff --git a/arch/arm/boot/dts/exynos4412-odroidu3.dts b/arch/arm/boot/dts/exynos4412-odroidu3.dts >> index bdcd4523cc1c..7a94a423097d 100644 >> --- a/arch/arm/boot/dts/exynos4412-odroidu3.dts >> +++ b/arch/arm/boot/dts/exynos4412-odroidu3.dts >> @@ -113,11 +113,12 @@ >> }; >> >> &sound { >> - simple-audio-card,name = "Odroid-U3"; >> - simple-audio-card,widgets = >> + compatible = "hardkernel,odroid-xu4-audio"; > The compatible is the same for all users using DTSI so it could be moved > to the exynos4412-odroid-common.dtsi itself. Corrected.
diff --git a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi index d7ad07fd48f9..bad08e70358a 100644 --- a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi +++ b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi @@ -37,20 +37,12 @@ }; sound: sound { - compatible = "simple-audio-card"; - - simple-audio-card,format = "i2s"; - simple-audio-card,bitclock-master = <&link0_codec>; - simple-audio-card,frame-master = <&link0_codec>; - - simple-audio-card,cpu { + 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>; }; }; @@ -142,14 +134,25 @@ pinctrl-0 = <>; }; +&clock { + assigned-clocks = <&clock CLK_FOUT_EPLL>; + assigned-clock-rates = <45158401>; +}; + &clock_audss { assigned-clocks = <&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_AUD_BUS>, + <&clock_audss EXYNOS_DOUT_I2S>; + assigned-clock-parents = <&clock CLK_FOUT_EPLL>, - <&clock_audss EXYNOS_MOUT_AUDSS>; - assigned-clock-rates = <0>, <0>, <192000000>, <19200000>; + <&clock_audss EXYNOS_MOUT_AUDSS>; + + assigned-clock-rates = <0>, <0>, + <196608001>, + <(196608001 / 2)>, + <(196608001 / 8)>; }; &cpu0 { @@ -498,6 +501,8 @@ pinctrl-0 = <&i2s0_bus>; pinctrl-names = "default"; status = "okay"; + assigned-clocks = <&i2s0 CLK_I2S_RCLK_SRC>; + assigned-clock-parents = <&clock_audss EXYNOS_SCLK_I2S>; }; &mixer { diff --git a/arch/arm/boot/dts/exynos4412-odroidu3.dts b/arch/arm/boot/dts/exynos4412-odroidu3.dts index bdcd4523cc1c..7a94a423097d 100644 --- a/arch/arm/boot/dts/exynos4412-odroidu3.dts +++ b/arch/arm/boot/dts/exynos4412-odroidu3.dts @@ -113,11 +113,12 @@ }; &sound { - simple-audio-card,name = "Odroid-U3"; - simple-audio-card,widgets = + compatible = "hardkernel,odroid-xu4-audio"; + model = "Odroid-U3"; + samsung,audio-widgets = "Headphone", "Headphone Jack", "Speakers", "Speakers"; - simple-audio-card,routing = + samsung,audio-routing = "Headphone Jack", "HPL", "Headphone Jack", "HPR", "Headphone Jack", "MICBIAS", diff --git a/arch/arm/boot/dts/exynos4412-odroidx.dts b/arch/arm/boot/dts/exynos4412-odroidx.dts index 2dff129bc2ad..f0d5037f3a5d 100644 --- a/arch/arm/boot/dts/exynos4412-odroidx.dts +++ b/arch/arm/boot/dts/exynos4412-odroidx.dts @@ -97,12 +97,13 @@ }; &sound { - simple-audio-card,name = "Odroid-X"; - simple-audio-card,widgets = + compatible = "hardkernel,odroid-xu4-audio"; + model = "Odroid-X"; + samsung,audio-widgets = "Headphone", "Headphone Jack", "Microphone", "Mic Jack", "Microphone", "DMIC"; - simple-audio-card,routing = + samsung,audio-routing = "Headphone Jack", "HPL", "Headphone Jack", "HPR", "IN1", "Mic Jack",
Use dedicated Odroid audio subsystem DT bindings instead of the simple-card. This adds support for audio on the HDMI interface. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> --- arch/arm/boot/dts/exynos4412-odroid-common.dtsi | 33 ++++++++++++++----------- arch/arm/boot/dts/exynos4412-odroidu3.dts | 7 +++--- arch/arm/boot/dts/exynos4412-odroidx.dts | 7 +++--- 3 files changed, 27 insertions(+), 20 deletions(-)