From: Mark Brown broonie@linaro.org
Rather than requiring each board to explicitly disable the I2S controllers it is not using instead require boards to enable those that they are using.
This is required for audio operation on Arndale, one of the unused I2S controllers is pinmuxed with the LDO enable GPIOs for the WM1811A.
Signed-off-by: Mark Brown broonie@linaro.org ---
This seems like a more robust approach to handling the externally visible IPs - if this is OK I can go through and do further updates for other devices.
arch/arm/boot/dts/exynos5250-arndale.dts | 4 ++++ arch/arm/boot/dts/exynos5250-smdk5250.dts | 8 -------- arch/arm/boot/dts/exynos5250.dtsi | 3 +++ 3 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts b/arch/arm/boot/dts/exynos5250-arndale.dts index cee55fa..4687fa0 100644 --- a/arch/arm/boot/dts/exynos5250-arndale.dts +++ b/arch/arm/boot/dts/exynos5250-arndale.dts @@ -412,6 +412,10 @@ status = "disabled"; };
+ i2s0: i2s@03830000 { + status = "okay"; + }; + spi_0: spi@12d20000 { status = "disabled"; }; diff --git a/arch/arm/boot/dts/exynos5250-smdk5250.dts b/arch/arm/boot/dts/exynos5250-smdk5250.dts index 2538b32..f86d567 100644 --- a/arch/arm/boot/dts/exynos5250-smdk5250.dts +++ b/arch/arm/boot/dts/exynos5250-smdk5250.dts @@ -231,14 +231,6 @@ status = "okay"; };
- i2s1: i2s@12D60000 { - status = "disabled"; - }; - - i2s2: i2s@12D70000 { - status = "disabled"; - }; - sound { compatible = "samsung,smdk-wm8994";
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 7d7cc77..c863113 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -417,6 +417,7 @@
i2s0: i2s@03830000 { compatible = "samsung,s5pv210-i2s"; + status = "disabled"; reg = <0x03830000 0x100>; dmas = <&pdma0 10 &pdma0 9 @@ -433,6 +434,7 @@
i2s1: i2s@12D60000 { compatible = "samsung,s3c6410-i2s"; + status = "disabled"; reg = <0x12D60000 0x100>; dmas = <&pdma1 12 &pdma1 11>; @@ -445,6 +447,7 @@
i2s2: i2s@12D70000 { compatible = "samsung,s3c6410-i2s"; + status = "disabled"; reg = <0x12D70000 0x100>; dmas = <&pdma0 12 &pdma0 11>;
On Fri, Sep 06, 2013 at 07:17:15PM +0100, Mark Brown wrote:
From: Mark Brown broonie@linaro.org
Rather than requiring each board to explicitly disable the I2S controllers it is not using instead require boards to enable those that they are using.
This is required for audio operation on Arndale, one of the unused I2S controllers is pinmuxed with the LDO enable GPIOs for the WM1811A.
Signed-off-by: Mark Brown broonie@linaro.org
This seems like a more robust approach to handling the externally visible IPs - if this is OK I can go through and do further updates for other devices.
Acked-by: Mark Rutland mark.rutland@arm.com
It seems far more sensible to me to mark devices disabled by default in shared dtsi files and then okay them as needed in particular dts files. I'd be happy with more of this.
arch/arm/boot/dts/exynos5250-arndale.dts | 4 ++++ arch/arm/boot/dts/exynos5250-smdk5250.dts | 8 -------- arch/arm/boot/dts/exynos5250.dtsi | 3 +++ 3 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts b/arch/arm/boot/dts/exynos5250-arndale.dts index cee55fa..4687fa0 100644 --- a/arch/arm/boot/dts/exynos5250-arndale.dts +++ b/arch/arm/boot/dts/exynos5250-arndale.dts @@ -412,6 +412,10 @@ status = "disabled"; };
- i2s0: i2s@03830000 {
status = "okay";
- };
- spi_0: spi@12d20000 { status = "disabled"; };
diff --git a/arch/arm/boot/dts/exynos5250-smdk5250.dts b/arch/arm/boot/dts/exynos5250-smdk5250.dts index 2538b32..f86d567 100644 --- a/arch/arm/boot/dts/exynos5250-smdk5250.dts +++ b/arch/arm/boot/dts/exynos5250-smdk5250.dts @@ -231,14 +231,6 @@ status = "okay"; };
- i2s1: i2s@12D60000 {
status = "disabled";
- };
- i2s2: i2s@12D70000 {
status = "disabled";
- };
- sound { compatible = "samsung,smdk-wm8994";
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 7d7cc77..c863113 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -417,6 +417,7 @@ i2s0: i2s@03830000 { compatible = "samsung,s5pv210-i2s";
reg = <0x03830000 0x100>; dmas = <&pdma0 10 &pdma0 9status = "disabled";
@@ -433,6 +434,7 @@ i2s1: i2s@12D60000 { compatible = "samsung,s3c6410-i2s";
reg = <0x12D60000 0x100>; dmas = <&pdma1 12 &pdma1 11>;status = "disabled";
@@ -445,6 +447,7 @@ i2s2: i2s@12D70000 { compatible = "samsung,s3c6410-i2s";
reg = <0x12D70000 0x100>; dmas = <&pdma0 12 &pdma0 11>;status = "disabled";
-- 1.8.4.rc3
On Tue, Sep 10, 2013 at 06:35:48PM +0100, Mark Rutland wrote:
It seems far more sensible to me to mark devices disabled by default in shared dtsi files and then okay them as needed in particular dts files. I'd be happy with more of this.
Yeah, me too - though only for devices that have an external impact, for things that are internal only (eg, a crypto engine) it makes sense to enable them by default since they should normally be usable regardless of the system configuration.
Mark Brown wrote:
On Tue, Sep 10, 2013 at 06:35:48PM +0100, Mark Rutland wrote:
It seems far more sensible to me to mark devices disabled by default in shared dtsi files and then okay them as needed in particular dts files. I'd be happy with more of this.
Yeah, me too - though only for devices that have an external impact, for things that are internal only (eg, a crypto engine) it makes sense to enable them by default since they should normally be usable regardless of the system configuration.
(+ DT ML)
Makes sense but I need to get the opinions from DT guys...
- Kukjin
Hi Kukjin,
On Thursday 12 of September 2013 19:42:57 Kukjin Kim wrote:
Mark Brown wrote:
On Tue, Sep 10, 2013 at 06:35:48PM +0100, Mark Rutland wrote:
It seems far more sensible to me to mark devices disabled by default in shared dtsi files and then okay them as needed in particular dts files. I'd be happy with more of this.
Yeah, me too - though only for devices that have an external impact, for things that are internal only (eg, a crypto engine) it makes sense to enable them by default since they should normally be usable regardless of the system configuration.
(+ DT ML)
Makes sense but I need to get the opinions from DT guys...
Yes, this patch should have been posted to the DT ML indeed, but it has been already acked by Mark Rutland, one of DT binding maintainers.
Best regards, Tomasz
linaro-kernel@lists.linaro.org