Commit 4359fce7 authored by Sylwester Nawrocki's avatar Sylwester Nawrocki Committed by Krzysztof Kozlowski

ARM: dts: exynos: Add audio support (WM1811 CODEC boards) to Arndale board

Add sound node and the clock configurations for the I2S controller
for audio support on the Exynos5250 SoC Arndale boards with
WM1811 based audio daughter board.

We need to increase drive strength of the I2S bus, otherwise
the audio CODEC doesn't work. Likely the CODEC's master clock
is the main issue here.
Signed-off-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
parent 64cc3ea9
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/input/input.h> #include <dt-bindings/input/input.h>
#include <dt-bindings/clock/samsung,s2mps11.h> #include <dt-bindings/clock/samsung,s2mps11.h>
#include <dt-bindings/sound/samsung-i2s.h>
#include "exynos5250.dtsi" #include "exynos5250.dtsi"
/ { / {
...@@ -135,6 +136,12 @@ vcc_3v3_reg: regulator@5 { ...@@ -135,6 +136,12 @@ vcc_3v3_reg: regulator@5 {
}; };
}; };
sound {
compatible = "samsung,arndale-wm1811";
samsung,audio-cpu = <&i2s0>;
samsung,audio-codec = <&wm1811>;
};
fixed-rate-clocks { fixed-rate-clocks {
xxti { xxti {
compatible = "samsung,clock-xxti"; compatible = "samsung,clock-xxti";
...@@ -151,6 +158,16 @@ usb_hub: usb-hub { ...@@ -151,6 +158,16 @@ usb_hub: usb-hub {
}; };
}; };
&clock {
assigned-clocks = <&clock CLK_FOUT_EPLL>;
assigned-clock-rates = <49152000>;
};
&clock_audss {
assigned-clocks = <&clock_audss EXYNOS_MOUT_AUDSS>;
assigned-clock-parents = <&clock CLK_FOUT_EPLL>;
};
&cpu0 { &cpu0 {
cpu0-supply = <&buck2_reg>; cpu0-supply = <&buck2_reg>;
}; };
...@@ -502,9 +519,11 @@ buck9_reg: BUCK9 { ...@@ -502,9 +519,11 @@ buck9_reg: BUCK9 {
&i2c_3 { &i2c_3 {
status = "okay"; status = "okay";
wm1811a@1a { wm1811: codec@1a {
compatible = "wlf,wm1811"; compatible = "wlf,wm1811";
reg = <0x1a>; reg = <0x1a>;
clocks = <&i2s0 CLK_I2S_CDCLK>;
clock-names = "MCLK1";
AVDD2-supply = <&main_dc_reg>; AVDD2-supply = <&main_dc_reg>;
CPVDD-supply = <&main_dc_reg>; CPVDD-supply = <&main_dc_reg>;
...@@ -540,9 +559,15 @@ sata_phy_i2c:sata-phy@38 { ...@@ -540,9 +559,15 @@ sata_phy_i2c:sata-phy@38 {
}; };
&i2s0 { &i2s0 {
assigned-clocks = <&i2s0 CLK_I2S_RCLK_SRC>;
assigned-clock-parents = <&clock_audss EXYNOS_I2S_BUS>;
status = "okay"; status = "okay";
}; };
&i2s0_bus {
samsung,pin-drv = <EXYNOS4_PIN_DRV_LV2>;
};
&mali { &mali {
mali-supply = <&buck4_reg>; mali-supply = <&buck4_reg>;
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