* [PATCH V3 1/7] ARM: dts: Change i2s compatible string on exynos5250
2013-08-07 9:10 [PATCH V3 0/7] Add i2s nodes on Exynos5420 and enable sound support on sdmk5420 Padmavathi Venna
@ 2013-08-07 9:10 ` Padmavathi Venna
2013-08-07 10:10 ` Mark Brown
2013-08-07 9:10 ` [PATCH V3 2/7] ARM: dts: exynos5420: add i2s controllers Padmavathi Venna
` (5 subsequent siblings)
6 siblings, 1 reply; 18+ messages in thread
From: Padmavathi Venna @ 2013-08-07 9:10 UTC (permalink / raw)
To: linux-arm-kernel
This patch removes quirks from i2s node and change the i2s
compatible names.
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
---
arch/arm/boot/dts/exynos5250.dtsi | 9 +++------
1 files changed, 3 insertions(+), 6 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 48c0a88..5b36121 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -393,7 +393,7 @@
};
i2s0: i2s at 03830000 {
- compatible = "samsung,i2s-v5";
+ compatible = "samsung,s5pv210-i2s";
reg = <0x03830000 0x100>;
dmas = <&pdma0 10
&pdma0 9
@@ -403,16 +403,13 @@
<&clock_audss EXYNOS_I2S_BUS>,
<&clock_audss EXYNOS_SCLK_I2S>;
clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
- samsung,supports-6ch;
- samsung,supports-rstclr;
- samsung,supports-secdai;
samsung,idma-addr = <0x03000000>;
pinctrl-names = "default";
pinctrl-0 = <&i2s0_bus>;
};
i2s1: i2s at 12D60000 {
- compatible = "samsung,i2s-v5";
+ compatible = "samsung,s3c6410-i2s";
reg = <0x12D60000 0x100>;
dmas = <&pdma1 12
&pdma1 11>;
@@ -424,7 +421,7 @@
};
i2s2: i2s at 12D70000 {
- compatible = "samsung,i2s-v5";
+ compatible = "samsung,s3c6410-i2s";
reg = <0x12D70000 0x100>;
dmas = <&pdma0 12
&pdma0 11>;
--
1.7.4.4
^ permalink raw reply related [flat|nested] 18+ messages in thread* [PATCH V3 1/7] ARM: dts: Change i2s compatible string on exynos5250
2013-08-07 9:10 ` [PATCH V3 1/7] ARM: dts: Change i2s compatible string on exynos5250 Padmavathi Venna
@ 2013-08-07 10:10 ` Mark Brown
2013-08-07 10:32 ` Padma Venkat
0 siblings, 1 reply; 18+ messages in thread
From: Mark Brown @ 2013-08-07 10:10 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Aug 07, 2013 at 02:40:10PM +0530, Padmavathi Venna wrote:
> This patch removes quirks from i2s node and change the i2s
> compatible names.
This needs to go along with the driver change otherwise we break
bisection.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20130807/7ded5473/attachment-0001.sig>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH V3 1/7] ARM: dts: Change i2s compatible string on exynos5250
2013-08-07 10:10 ` Mark Brown
@ 2013-08-07 10:32 ` Padma Venkat
2013-08-07 11:17 ` Tomasz Figa
0 siblings, 1 reply; 18+ messages in thread
From: Padma Venkat @ 2013-08-07 10:32 UTC (permalink / raw)
To: linux-arm-kernel
Hi Mark,
On Wed, Aug 7, 2013 at 3:40 PM, Mark Brown <broonie@kernel.org> wrote:
> On Wed, Aug 07, 2013 at 02:40:10PM +0530, Padmavathi Venna wrote:
>> This patch removes quirks from i2s node and change the i2s
>> compatible names.
>
> This needs to go along with the driver change otherwise we break
> bisection.
some of the patches at dts side are dependent on this patch. So I
separated it into another set. Should I re-post this patch along with
other driver side patches?
Thanks
Padma
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH V3 1/7] ARM: dts: Change i2s compatible string on exynos5250
2013-08-07 10:32 ` Padma Venkat
@ 2013-08-07 11:17 ` Tomasz Figa
0 siblings, 0 replies; 18+ messages in thread
From: Tomasz Figa @ 2013-08-07 11:17 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 07 of August 2013 16:02:16 Padma Venkat wrote:
> Hi Mark,
>
> On Wed, Aug 7, 2013 at 3:40 PM, Mark Brown <broonie@kernel.org> wrote:
> > On Wed, Aug 07, 2013 at 02:40:10PM +0530, Padmavathi Venna wrote:
> >> This patch removes quirks from i2s node and change the i2s
> >> compatible names.
> >
> > This needs to go along with the driver change otherwise we break
> > bisection.
>
> some of the patches at dts side are dependent on this patch. So I
> separated it into another set. Should I re-post this patch along with
> other driver side patches?
I fully agree with Mark. There are 2 ways of solving this:
a) Do things in steps that don't break anything, i.e.:
1) add new bindings to the driver,
2) update DTS files,
3) remove old bindings from the driver.
b) Do all the things above atomically, in one patch.
Personally, I'm a fan of method a), but if it requires much effort then
method b) can be used as a fallback.
Best regards,
Tomasz
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH V3 2/7] ARM: dts: exynos5420: add i2s controllers
2013-08-07 9:10 [PATCH V3 0/7] Add i2s nodes on Exynos5420 and enable sound support on sdmk5420 Padmavathi Venna
2013-08-07 9:10 ` [PATCH V3 1/7] ARM: dts: Change i2s compatible string on exynos5250 Padmavathi Venna
@ 2013-08-07 9:10 ` Padmavathi Venna
2013-08-07 9:10 ` [PATCH V3 3/7] ARM: dts: Add i2c bus 1 and it's audio codec child node on smdk5420 Padmavathi Venna
` (4 subsequent siblings)
6 siblings, 0 replies; 18+ messages in thread
From: Padmavathi Venna @ 2013-08-07 9:10 UTC (permalink / raw)
To: linux-arm-kernel
From: Andrew Bresticker <abrestic@chromium.org>
This adds device-tree bindings for the i2s controllers on Exynos 5420.
Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/57713
---
arch/arm/boot/dts/exynos5420.dtsi | 32 ++++++++++++++++++++++++++++++++
1 files changed, 32 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi
index c2a2bd6..286354e 100644
--- a/arch/arm/boot/dts/exynos5420.dtsi
+++ b/arch/arm/boot/dts/exynos5420.dtsi
@@ -242,4 +242,36 @@
pinctrl-names = "default";
pinctrl-0 = <&i2c3_bus>;
};
+
+ i2s_0: i2s at 03830000 {
+ compatible = "samsung,exynos5420-i2s";
+ dmas = <&adma 0
+ &adma 2
+ &adma 1>;
+ dma-names = "tx", "rx", "tx-sec";
+ clocks = <&clock_audss EXYNOS_I2S_BUS>,
+ <&clock_audss EXYNOS_I2S_BUS>,
+ <&clock_audss EXYNOS_SCLK_I2S>;
+ clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2s0_bus>;
+ status = "disabled";
+ };
+
+ i2s_1: i2s at 12D60000 {
+ clocks = <&clock 275>, <&clock 138>;
+ clock-names = "iis", "i2s_opclk0";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2s1_bus>;
+ status = "disabled";
+ };
+
+ i2s_2: i2s at 12D70000 {
+ clocks = <&clock 276>, <&clock 139>;
+ clock-names = "iis", "i2s_opclk0";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2s2_bus>;
+ status = "disabled";
+ };
+
};
--
1.7.4.4
^ permalink raw reply related [flat|nested] 18+ messages in thread* [PATCH V3 3/7] ARM: dts: Add i2c bus 1 and it's audio codec child node on smdk5420
2013-08-07 9:10 [PATCH V3 0/7] Add i2s nodes on Exynos5420 and enable sound support on sdmk5420 Padmavathi Venna
2013-08-07 9:10 ` [PATCH V3 1/7] ARM: dts: Change i2s compatible string on exynos5250 Padmavathi Venna
2013-08-07 9:10 ` [PATCH V3 2/7] ARM: dts: exynos5420: add i2s controllers Padmavathi Venna
@ 2013-08-07 9:10 ` Padmavathi Venna
2013-08-07 15:11 ` Tomasz Figa
2013-08-07 9:10 ` [PATCH V3 4/7] ARM: dts: exynos5250: move common i2s properties to exynos5 dtsi Padmavathi Venna
` (3 subsequent siblings)
6 siblings, 1 reply; 18+ messages in thread
From: Padmavathi Venna @ 2013-08-07 9:10 UTC (permalink / raw)
To: linux-arm-kernel
This patch adds i2c bus 1 and wm8994 codec node on i2c bus1 and the
required regulator supplies and properties on smdk5420 board.
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
---
arch/arm/boot/dts/exynos5420-smdk5420.dts | 58 +++++++++++++++++++++++++++++
1 files changed, 58 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts b/arch/arm/boot/dts/exynos5420-smdk5420.dts
index d05de7a..e86c1ae 100644
--- a/arch/arm/boot/dts/exynos5420-smdk5420.dts
+++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts
@@ -68,4 +68,62 @@
bus-width = <4>;
};
};
+
+ avdd2: fixed-regulator at 0 {
+ compatible = "regulator-fixed";
+ regulator-name = "avdd2-supply";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ cpvdd: fixed-regulator at 1 {
+ compatible = "regulator-fixed";
+ regulator-name = "cpvdd-supply";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ dbvdd: fixed-regulator at 2 {
+ compatible = "regulator-fixed";
+ regulator-name = "dbvdd-supply";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ spkvdd: fixed-regulator at 3 {
+ compatible = "regulator-fixed";
+ regulator-name = "spkvdd-supply";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
+
+ i2c at 12C70000 {
+ status = "okay";
+ samsung,i2c-sda-delay = <100>;
+ samsung,i2c-max-bus-freq = <20000>;
+
+ eeprom at 51 {
+ compatible = "samsung,s524ad0xd1";
+ reg = <0x51>;
+ };
+
+ wm8994: wm8994 at 1a {
+ compatible = "wlf,wm8994";
+ reg = <0x1a>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ AVDD2-supply = <&avdd2>;
+ CPVDD-supply = <&cpvdd>;
+ DBVDD-supply = <&dbvdd>;
+ SPKVDD1-supply = <&spkvdd>;
+ SPKVDD2-supply = <&spkvdd>;
+ };
+ };
+
};
--
1.7.4.4
^ permalink raw reply related [flat|nested] 18+ messages in thread* [PATCH V3 3/7] ARM: dts: Add i2c bus 1 and it's audio codec child node on smdk5420
2013-08-07 9:10 ` [PATCH V3 3/7] ARM: dts: Add i2c bus 1 and it's audio codec child node on smdk5420 Padmavathi Venna
@ 2013-08-07 15:11 ` Tomasz Figa
0 siblings, 0 replies; 18+ messages in thread
From: Tomasz Figa @ 2013-08-07 15:11 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 07 of August 2013 14:40:12 Padmavathi Venna wrote:
> This patch adds i2c bus 1 and wm8994 codec node on i2c bus1 and the
> required regulator supplies and properties on smdk5420 board.
>
> Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
> ---
> arch/arm/boot/dts/exynos5420-smdk5420.dts | 58
> +++++++++++++++++++++++++++++ 1 files changed, 58 insertions(+), 0
> deletions(-)
>
> diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts
> b/arch/arm/boot/dts/exynos5420-smdk5420.dts index d05de7a..e86c1ae
> 100644
> --- a/arch/arm/boot/dts/exynos5420-smdk5420.dts
> +++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts
> @@ -68,4 +68,62 @@
> bus-width = <4>;
> };
> };
> +
> + avdd2: fixed-regulator at 0 {
@ suffix should be present only if reg property is present as well.
Otherwise a suffix separated with "-" should be used, like fixed-
regulator-0.
> + compatible = "regulator-fixed";
> + regulator-name = "avdd2-supply";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + };
> +
> + cpvdd: fixed-regulator at 1 {
> + compatible = "regulator-fixed";
> + regulator-name = "cpvdd-supply";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + };
> +
> + dbvdd: fixed-regulator at 2 {
> + compatible = "regulator-fixed";
> + regulator-name = "dbvdd-supply";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> +
> + spkvdd: fixed-regulator at 3 {
> + compatible = "regulator-fixed";
> + regulator-name = "spkvdd-supply";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + regulator-always-on;
> + };
All these regulators should be made subnodes of a fixed-regulators node
aggregating all fixed regulators on the board, like on following example:
fixed-regulators {
avdd2: fixed-regulator-0 {
compatible = "regulator-fixed";
regulator-name = "avdd2-supply";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
cpvdd: fixed-regulator-1 {
compatible = "regulator-fixed";
regulator-name = "cpvdd-supply";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
/* ... */
};
Best regards,
Tomasz
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH V3 4/7] ARM: dts: exynos5250: move common i2s properties to exynos5 dtsi
2013-08-07 9:10 [PATCH V3 0/7] Add i2s nodes on Exynos5420 and enable sound support on sdmk5420 Padmavathi Venna
` (2 preceding siblings ...)
2013-08-07 9:10 ` [PATCH V3 3/7] ARM: dts: Add i2c bus 1 and it's audio codec child node on smdk5420 Padmavathi Venna
@ 2013-08-07 9:10 ` Padmavathi Venna
2013-08-07 15:14 ` Tomasz Figa
2013-08-07 9:10 ` [PATCH V3 5/7] ARM: dts: Add osc clock node on smdk5420 Padmavathi Venna
` (2 subsequent siblings)
6 siblings, 1 reply; 18+ messages in thread
From: Padmavathi Venna @ 2013-08-07 9:10 UTC (permalink / raw)
To: linux-arm-kernel
I2S nodes shares some properties across exynos5 SoCs (exynos5250
and exyno5420). Common code is moved to exynos5.dtsi which is
included in exyno5250 and exynos5420 SoC files.
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
---
arch/arm/boot/dts/exynos5.dtsi | 21 +++++++++++++++++++++
arch/arm/boot/dts/exynos5250.dtsi | 12 ------------
2 files changed, 21 insertions(+), 12 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5.dtsi b/arch/arm/boot/dts/exynos5.dtsi
index ec384c9..c37b57d 100644
--- a/arch/arm/boot/dts/exynos5.dtsi
+++ b/arch/arm/boot/dts/exynos5.dtsi
@@ -191,4 +191,25 @@
#size-cells = <0>;
status = "disabled";
};
+
+ i2s0: i2s at 03830000 {
+ reg = <0x03830000 0x100>;
+ samsung,idma-addr = <0x03000000>;
+ };
+
+ i2s1: i2s at 12D60000 {
+ compatible = "samsung,s3c6410-i2s";
+ reg = <0x12D60000 0x100>;
+ dmas = <&pdma1 12
+ &pdma1 11>;
+ dma-names = "tx", "rx";
+ };
+
+ i2s2: i2s at 12D70000 {
+ compatible = "samsung,s3c6410-i2s";
+ reg = <0x12D70000 0x100>;
+ dmas = <&pdma0 12
+ &pdma0 11>;
+ dma-names = "tx", "rx";
+ };
};
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 5b36121..3873ff7 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -394,7 +394,6 @@
i2s0: i2s at 03830000 {
compatible = "samsung,s5pv210-i2s";
- reg = <0x03830000 0x100>;
dmas = <&pdma0 10
&pdma0 9
&pdma0 8>;
@@ -403,17 +402,11 @@
<&clock_audss EXYNOS_I2S_BUS>,
<&clock_audss EXYNOS_SCLK_I2S>;
clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
- samsung,idma-addr = <0x03000000>;
pinctrl-names = "default";
pinctrl-0 = <&i2s0_bus>;
};
i2s1: i2s at 12D60000 {
- compatible = "samsung,s3c6410-i2s";
- reg = <0x12D60000 0x100>;
- dmas = <&pdma1 12
- &pdma1 11>;
- dma-names = "tx", "rx";
clocks = <&clock 307>, <&clock 157>;
clock-names = "iis", "i2s_opclk0";
pinctrl-names = "default";
@@ -421,11 +414,6 @@
};
i2s2: i2s at 12D70000 {
- compatible = "samsung,s3c6410-i2s";
- reg = <0x12D70000 0x100>;
- dmas = <&pdma0 12
- &pdma0 11>;
- dma-names = "tx", "rx";
clocks = <&clock 308>, <&clock 158>;
clock-names = "iis", "i2s_opclk0";
pinctrl-names = "default";
--
1.7.4.4
^ permalink raw reply related [flat|nested] 18+ messages in thread* [PATCH V3 4/7] ARM: dts: exynos5250: move common i2s properties to exynos5 dtsi
2013-08-07 9:10 ` [PATCH V3 4/7] ARM: dts: exynos5250: move common i2s properties to exynos5 dtsi Padmavathi Venna
@ 2013-08-07 15:14 ` Tomasz Figa
0 siblings, 0 replies; 18+ messages in thread
From: Tomasz Figa @ 2013-08-07 15:14 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 07 of August 2013 14:40:13 Padmavathi Venna wrote:
> I2S nodes shares some properties across exynos5 SoCs (exynos5250
> and exyno5420). Common code is moved to exynos5.dtsi which is
> included in exyno5250 and exynos5420 SoC files.
Shouldn't this patch be ordered before patch 1/7, which already uses the
i2s1 and i2s2 nodes inherited from exynos5.dtsi, even though they get moved
to it later in this series.
Best regards,
Tomasz
> Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
> ---
> arch/arm/boot/dts/exynos5.dtsi | 21 +++++++++++++++++++++
> arch/arm/boot/dts/exynos5250.dtsi | 12 ------------
> 2 files changed, 21 insertions(+), 12 deletions(-)
>
> diff --git a/arch/arm/boot/dts/exynos5.dtsi
> b/arch/arm/boot/dts/exynos5.dtsi index ec384c9..c37b57d 100644
> --- a/arch/arm/boot/dts/exynos5.dtsi
> +++ b/arch/arm/boot/dts/exynos5.dtsi
> @@ -191,4 +191,25 @@
> #size-cells = <0>;
> status = "disabled";
> };
> +
> + i2s0: i2s at 03830000 {
> + reg = <0x03830000 0x100>;
> + samsung,idma-addr = <0x03000000>;
> + };
> +
> + i2s1: i2s at 12D60000 {
> + compatible = "samsung,s3c6410-i2s";
> + reg = <0x12D60000 0x100>;
> + dmas = <&pdma1 12
> + &pdma1 11>;
> + dma-names = "tx", "rx";
> + };
> +
> + i2s2: i2s at 12D70000 {
> + compatible = "samsung,s3c6410-i2s";
> + reg = <0x12D70000 0x100>;
> + dmas = <&pdma0 12
> + &pdma0 11>;
> + dma-names = "tx", "rx";
> + };
> };
> diff --git a/arch/arm/boot/dts/exynos5250.dtsi
> b/arch/arm/boot/dts/exynos5250.dtsi index 5b36121..3873ff7 100644
> --- a/arch/arm/boot/dts/exynos5250.dtsi
> +++ b/arch/arm/boot/dts/exynos5250.dtsi
> @@ -394,7 +394,6 @@
>
> i2s0: i2s at 03830000 {
> compatible = "samsung,s5pv210-i2s";
> - reg = <0x03830000 0x100>;
> dmas = <&pdma0 10
> &pdma0 9
> &pdma0 8>;
> @@ -403,17 +402,11 @@
> <&clock_audss EXYNOS_I2S_BUS>,
> <&clock_audss EXYNOS_SCLK_I2S>;
> clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
> - samsung,idma-addr = <0x03000000>;
> pinctrl-names = "default";
> pinctrl-0 = <&i2s0_bus>;
> };
>
> i2s1: i2s at 12D60000 {
> - compatible = "samsung,s3c6410-i2s";
> - reg = <0x12D60000 0x100>;
> - dmas = <&pdma1 12
> - &pdma1 11>;
> - dma-names = "tx", "rx";
> clocks = <&clock 307>, <&clock 157>;
> clock-names = "iis", "i2s_opclk0";
> pinctrl-names = "default";
> @@ -421,11 +414,6 @@
> };
>
> i2s2: i2s at 12D70000 {
> - compatible = "samsung,s3c6410-i2s";
> - reg = <0x12D70000 0x100>;
> - dmas = <&pdma0 12
> - &pdma0 11>;
> - dma-names = "tx", "rx";
> clocks = <&clock 308>, <&clock 158>;
> clock-names = "iis", "i2s_opclk0";
> pinctrl-names = "default";
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH V3 5/7] ARM: dts: Add osc clock node on smdk5420.
2013-08-07 9:10 [PATCH V3 0/7] Add i2s nodes on Exynos5420 and enable sound support on sdmk5420 Padmavathi Venna
` (3 preceding siblings ...)
2013-08-07 9:10 ` [PATCH V3 4/7] ARM: dts: exynos5250: move common i2s properties to exynos5 dtsi Padmavathi Venna
@ 2013-08-07 9:10 ` Padmavathi Venna
2013-08-07 15:16 ` Tomasz Figa
2013-08-07 9:10 ` [PATCH V3 6/7] ASoC: Samsung: wm8994: Register the osc clock Padmavathi Venna
2013-08-07 9:10 ` [PATCH V3 7/7] ARM: dts: Enable sound support on smdk5420 Padmavathi Venna
6 siblings, 1 reply; 18+ messages in thread
From: Padmavathi Venna @ 2013-08-07 9:10 UTC (permalink / raw)
To: linux-arm-kernel
This patch adds 16MHz oscillator clock node required for audio
on smdk5420 and adds the phandle of the same in wm8994 clock info.
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
---
arch/arm/boot/dts/exynos5420-smdk5420.dts | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts b/arch/arm/boot/dts/exynos5420-smdk5420.dts
index e86c1ae..3c56a91 100644
--- a/arch/arm/boot/dts/exynos5420-smdk5420.dts
+++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts
@@ -31,6 +31,13 @@
};
};
+ osc3_clk16mhz: clk16mhz {
+ compatible = "osc3_clk16mhz";
+ #clock-cells = <0>;
+ clock-frequency = <16934400>;
+ clock-output-names = "osc3_clk16mhz";
+ };
+
dwmmc0 at 12200000 {
status = "okay";
num-slots = <1>;
@@ -123,6 +130,9 @@
DBVDD-supply = <&dbvdd>;
SPKVDD1-supply = <&spkvdd>;
SPKVDD2-supply = <&spkvdd>;
+
+ clocks = <&osc3_clk16mhz>;
+ clock-names = "mclk1";
};
};
--
1.7.4.4
^ permalink raw reply related [flat|nested] 18+ messages in thread* [PATCH V3 5/7] ARM: dts: Add osc clock node on smdk5420.
2013-08-07 9:10 ` [PATCH V3 5/7] ARM: dts: Add osc clock node on smdk5420 Padmavathi Venna
@ 2013-08-07 15:16 ` Tomasz Figa
0 siblings, 0 replies; 18+ messages in thread
From: Tomasz Figa @ 2013-08-07 15:16 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 07 of August 2013 14:40:14 Padmavathi Venna wrote:
> This patch adds 16MHz oscillator clock node required for audio
> on smdk5420 and adds the phandle of the same in wm8994 clock info.
>
> Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
> ---
> arch/arm/boot/dts/exynos5420-smdk5420.dts | 10 ++++++++++
> 1 files changed, 10 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts
> b/arch/arm/boot/dts/exynos5420-smdk5420.dts index e86c1ae..3c56a91
> 100644
> --- a/arch/arm/boot/dts/exynos5420-smdk5420.dts
> +++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts
> @@ -31,6 +31,13 @@
> };
> };
>
> + osc3_clk16mhz: clk16mhz {
> + compatible = "osc3_clk16mhz";
Hmm?
What about the generic fixed rate clock binding[1]?
Also please name nodes being added with generic names, not platform-
specific ones. For example, fixed-rate-clock-0 or oscillator-0, just like
it is done with fixed regulators.
Best regards,
Tomasz
[1] - Documentation/devicetree/bindings/clock/fixed-clock.txt
> + #clock-cells = <0>;
> + clock-frequency = <16934400>;
> + clock-output-names = "osc3_clk16mhz";
> + };
> +
> dwmmc0 at 12200000 {
> status = "okay";
> num-slots = <1>;
> @@ -123,6 +130,9 @@
> DBVDD-supply = <&dbvdd>;
> SPKVDD1-supply = <&spkvdd>;
> SPKVDD2-supply = <&spkvdd>;
> +
> + clocks = <&osc3_clk16mhz>;
> + clock-names = "mclk1";
> };
> };
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH V3 6/7] ASoC: Samsung: wm8994: Register the osc clock.
2013-08-07 9:10 [PATCH V3 0/7] Add i2s nodes on Exynos5420 and enable sound support on sdmk5420 Padmavathi Venna
` (4 preceding siblings ...)
2013-08-07 9:10 ` [PATCH V3 5/7] ARM: dts: Add osc clock node on smdk5420 Padmavathi Venna
@ 2013-08-07 9:10 ` Padmavathi Venna
2013-08-07 10:10 ` Mark Brown
2013-08-07 15:18 ` Tomasz Figa
2013-08-07 9:10 ` [PATCH V3 7/7] ARM: dts: Enable sound support on smdk5420 Padmavathi Venna
6 siblings, 2 replies; 18+ messages in thread
From: Padmavathi Venna @ 2013-08-07 9:10 UTC (permalink / raw)
To: linux-arm-kernel
This patch registers the 16MHz oscillator clock as fixed clk.
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
---
sound/soc/samsung/smdk_wm8994.c | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/sound/soc/samsung/smdk_wm8994.c b/sound/soc/samsung/smdk_wm8994.c
index 581ea4a..a6edded 100644
--- a/sound/soc/samsung/smdk_wm8994.c
+++ b/sound/soc/samsung/smdk_wm8994.c
@@ -9,6 +9,7 @@
#include "../codecs/wm8994.h"
#include <sound/pcm_params.h>
+#include <linux/clk-provider.h>
#include <linux/module.h>
#include <linux/of.h>
@@ -37,6 +38,15 @@
/* SMDK has a 16.934MHZ crystal attached to WM8994 */
#define SMDK_WM8994_FREQ 16934000
+/* 16.9MHz fixed oscillator clock */
+static void init_osc_clock(void)
+{
+ struct device_node *np;
+
+ np = of_find_compatible_node(NULL, NULL, "osc3_clk16mhz");
+ of_fixed_clk_setup(np);
+}
+
static int smdk_hw_params(struct snd_pcm_substream *substream,
struct snd_pcm_hw_params *params)
{
@@ -173,6 +183,8 @@ static int smdk_audio_probe(struct platform_device *pdev)
smdk_dai[0].platform_of_node = smdk_dai[0].cpu_of_node;
}
+ init_osc_clock();
+
ret = snd_soc_register_card(card);
if (ret)
--
1.7.4.4
^ permalink raw reply related [flat|nested] 18+ messages in thread* [PATCH V3 6/7] ASoC: Samsung: wm8994: Register the osc clock.
2013-08-07 9:10 ` [PATCH V3 6/7] ASoC: Samsung: wm8994: Register the osc clock Padmavathi Venna
@ 2013-08-07 10:10 ` Mark Brown
2013-08-07 11:05 ` Padma Venkat
2013-08-07 15:18 ` Tomasz Figa
1 sibling, 1 reply; 18+ messages in thread
From: Mark Brown @ 2013-08-07 10:10 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Aug 07, 2013 at 02:40:15PM +0530, Padmavathi Venna wrote:
> This patch registers the 16MHz oscillator clock as fixed clk.
> +/* 16.9MHz fixed oscillator clock */
> +static void init_osc_clock(void)
> +{
> + struct device_node *np;
> +
> + np = of_find_compatible_node(NULL, NULL, "osc3_clk16mhz");
> + of_fixed_clk_setup(np);
> +}
> +
> static int smdk_hw_params(struct snd_pcm_substream *substream,
> struct snd_pcm_hw_params *params)
> {
> @@ -173,6 +183,8 @@ static int smdk_audio_probe(struct platform_device *pdev)
> smdk_dai[0].platform_of_node = smdk_dai[0].cpu_of_node;
> }
>
> + init_osc_clock();
> +
This doesn't seem great - it means that this machine driver needs to
know about a specifically named fixed clock which makes it hard to reuse
on other similar boards. For example I'm intending to reuse this on
Arndale. Mike?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20130807/7eb0e38f/attachment.sig>
^ permalink raw reply [flat|nested] 18+ messages in thread* [PATCH V3 6/7] ASoC: Samsung: wm8994: Register the osc clock.
2013-08-07 10:10 ` Mark Brown
@ 2013-08-07 11:05 ` Padma Venkat
0 siblings, 0 replies; 18+ messages in thread
From: Padma Venkat @ 2013-08-07 11:05 UTC (permalink / raw)
To: linux-arm-kernel
Hi Mark,
On Wed, Aug 7, 2013 at 3:40 PM, Mark Brown <broonie@kernel.org> wrote:
> On Wed, Aug 07, 2013 at 02:40:15PM +0530, Padmavathi Venna wrote:
>> This patch registers the 16MHz oscillator clock as fixed clk.
>
>> +/* 16.9MHz fixed oscillator clock */
>> +static void init_osc_clock(void)
>> +{
>> + struct device_node *np;
>> +
>> + np = of_find_compatible_node(NULL, NULL, "osc3_clk16mhz");
>> + of_fixed_clk_setup(np);
>> +}
>> +
>> static int smdk_hw_params(struct snd_pcm_substream *substream,
>> struct snd_pcm_hw_params *params)
>> {
>> @@ -173,6 +183,8 @@ static int smdk_audio_probe(struct platform_device *pdev)
>> smdk_dai[0].platform_of_node = smdk_dai[0].cpu_of_node;
>> }
>>
>> + init_osc_clock();
>> +
>
> This doesn't seem great - it means that this machine driver needs to
Yes. True. But I am not sure of the correct place to keep this code.
Any suggestions?
Thanks
Padma
> know about a specifically named fixed clock which makes it hard to reuse
> on other similar boards. For example I'm intending to reuse this on
> Arndale. Mike?
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH V3 6/7] ASoC: Samsung: wm8994: Register the osc clock.
2013-08-07 9:10 ` [PATCH V3 6/7] ASoC: Samsung: wm8994: Register the osc clock Padmavathi Venna
2013-08-07 10:10 ` Mark Brown
@ 2013-08-07 15:18 ` Tomasz Figa
2013-08-07 15:28 ` Mark Brown
1 sibling, 1 reply; 18+ messages in thread
From: Tomasz Figa @ 2013-08-07 15:18 UTC (permalink / raw)
To: linux-arm-kernel
On Wednesday 07 of August 2013 14:40:15 Padmavathi Venna wrote:
> This patch registers the 16MHz oscillator clock as fixed clk.
>
> Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
> ---
> sound/soc/samsung/smdk_wm8994.c | 12 ++++++++++++
> 1 files changed, 12 insertions(+), 0 deletions(-)
>
> diff --git a/sound/soc/samsung/smdk_wm8994.c
> b/sound/soc/samsung/smdk_wm8994.c index 581ea4a..a6edded 100644
> --- a/sound/soc/samsung/smdk_wm8994.c
> +++ b/sound/soc/samsung/smdk_wm8994.c
> @@ -9,6 +9,7 @@
>
> #include "../codecs/wm8994.h"
> #include <sound/pcm_params.h>
> +#include <linux/clk-provider.h>
> #include <linux/module.h>
> #include <linux/of.h>
>
> @@ -37,6 +38,15 @@
> /* SMDK has a 16.934MHZ crystal attached to WM8994 */
> #define SMDK_WM8994_FREQ 16934000
>
> +/* 16.9MHz fixed oscillator clock */
> +static void init_osc_clock(void)
> +{
> + struct device_node *np;
> +
> + np = of_find_compatible_node(NULL, NULL, "osc3_clk16mhz");
> + of_fixed_clk_setup(np);
> +}
> +
> static int smdk_hw_params(struct snd_pcm_substream *substream,
> struct snd_pcm_hw_params *params)
> {
> @@ -173,6 +183,8 @@ static int smdk_audio_probe(struct platform_device
> *pdev) smdk_dai[0].platform_of_node = smdk_dai[0].cpu_of_node;
> }
>
> + init_osc_clock();
> +
> ret = snd_soc_register_card(card);
>
> if (ret)
I don't think this patch is needed at all. You can use generic fixed rate
clock bindings[1] to define a fixed rate clock using device tree.
Best regards,
Tomasz
[1] - Documentation/devicetree/bindings/clock/fixed-clock.txt
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH V3 7/7] ARM: dts: Enable sound support on smdk5420
2013-08-07 9:10 [PATCH V3 0/7] Add i2s nodes on Exynos5420 and enable sound support on sdmk5420 Padmavathi Venna
` (5 preceding siblings ...)
2013-08-07 9:10 ` [PATCH V3 6/7] ASoC: Samsung: wm8994: Register the osc clock Padmavathi Venna
@ 2013-08-07 9:10 ` Padmavathi Venna
6 siblings, 0 replies; 18+ messages in thread
From: Padmavathi Venna @ 2013-08-07 9:10 UTC (permalink / raw)
To: linux-arm-kernel
This patch enables i2s0 and sound support on smdk5420.
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
---
arch/arm/boot/dts/exynos5420-smdk5420.dts | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts b/arch/arm/boot/dts/exynos5420-smdk5420.dts
index 3c56a91..a9eab45 100644
--- a/arch/arm/boot/dts/exynos5420-smdk5420.dts
+++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts
@@ -136,4 +136,14 @@
};
};
+ i2s0: i2s at 03830000 {
+ status = "okay";
+ };
+
+ sound {
+ compatible = "samsung,smdk-wm8994";
+
+ samsung,i2s-controller = <&i2s0>;
+ samsung,audio-codec = <&wm8994>;
+ };
};
--
1.7.4.4
^ permalink raw reply related [flat|nested] 18+ messages in thread