[01/25] ARM: dts: exynos4: add rotator nodes
diff mbox

Message ID 1447161821-1877-2-git-send-email-m.szyprowski@samsung.com
State New, archived
Headers show

Commit Message

Marek Szyprowski Nov. 10, 2015, 1:23 p.m. UTC
This patch adds device node for Rotator device to Exynos 4210 and 4x12
device tree files.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
---
 arch/arm/boot/dts/exynos4.dtsi    | 10 +++++++++-
 arch/arm/boot/dts/exynos4210.dtsi |  8 ++++++++
 arch/arm/boot/dts/exynos4x12.dtsi |  4 ++++
 3 files changed, 21 insertions(+), 1 deletion(-)

Comments

Krzysztof Kozlowski Nov. 13, 2015, 2:23 a.m. UTC | #1
On 10.11.2015 22:23, Marek Szyprowski wrote:
> This patch adds device node for Rotator device to Exynos 4210 and 4x12
> device tree files.
> 
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> ---
>  arch/arm/boot/dts/exynos4.dtsi    | 10 +++++++++-
>  arch/arm/boot/dts/exynos4210.dtsi |  8 ++++++++
>  arch/arm/boot/dts/exynos4x12.dtsi |  4 ++++
>  3 files changed, 21 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/boot/dts/exynos4.dtsi b/arch/arm/boot/dts/exynos4.dtsi
> index 2f31f773b096..3fa575ad7693 100644
> --- a/arch/arm/boot/dts/exynos4.dtsi
> +++ b/arch/arm/boot/dts/exynos4.dtsi
> @@ -718,6 +718,15 @@
>  		iommus = <&sysmmu_jpeg>;
>  	};
>  
> +	rotator: rotator@12810000 {
> +		compatible = "samsung,exynos4210-rotator";
> +		reg = <0x12810000 0x1000>;
> +		interrupts = <0 83 0>;
> +		clocks = <&clock CLK_ROTATOR>;
> +		clock-names = "rotator";
> +		iommus = <&sysmmu_rotator>;
> +	};
> +
>  	hdmi: hdmi@12D00000 {
>  		compatible = "samsung,exynos4210-hdmi";
>  		reg = <0x12D00000 0x70000>;
> @@ -945,7 +954,6 @@
>  		interrupts = <5 0>;
>  		clock-names = "sysmmu", "master";
>  		clocks = <&clock CLK_SMMU_ROTATOR>, <&clock CLK_ROTATOR>;
> -		power-domains = <&pd_lcd0>;

Hmm.... I wonder why you changed this. Sysmmu rotator and rotator are
not a part of LCD power domain on Exynos4x12 (or they should not be?)? Why?

Best regards,
Krzysztof


>  		#iommu-cells = <0>;
>  	};
>  
> diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi
> index 3e5ba665d200..b7474cf27e82 100644
> --- a/arch/arm/boot/dts/exynos4210.dtsi
> +++ b/arch/arm/boot/dts/exynos4210.dtsi
> @@ -279,3 +279,11 @@
>  		<&clock CLK_OUT_CPU>, <&clock CLK_XXTI>, <&clock CLK_XUSBXTI>;
>  	#clock-cells = <1>;
>  };
> +
> +&rotator {
> +	power-domains = <&pd_lcd0>;
> +};
> +
> +&sysmmu_rotator {
> +	power-domains = <&pd_lcd0>;
> +};
> diff --git a/arch/arm/boot/dts/exynos4x12.dtsi b/arch/arm/boot/dts/exynos4x12.dtsi
> index b77dac61ffb5..148b47ad3120 100644
> --- a/arch/arm/boot/dts/exynos4x12.dtsi
> +++ b/arch/arm/boot/dts/exynos4x12.dtsi
> @@ -339,6 +339,10 @@
>  	compatible = "samsung,exynos4212-jpeg";
>  };
>  
> +&rotator {
> +	compatible = "samsung,exynos4212-rotator";
> +};
> +
>  &mixer {
>  	compatible = "samsung,exynos4212-mixer";
>  	clock-names = "mixer", "hdmi", "sclk_hdmi", "vp";
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Krzysztof Kozlowski Nov. 13, 2015, 2:29 a.m. UTC | #2
On 10.11.2015 22:23, Marek Szyprowski wrote:
> This patch adds device node for Rotator device to Exynos 4210 and 4x12
> device tree files.
> 
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> ---
>  arch/arm/boot/dts/exynos4.dtsi    | 10 +++++++++-
>  arch/arm/boot/dts/exynos4210.dtsi |  8 ++++++++
>  arch/arm/boot/dts/exynos4x12.dtsi |  4 ++++
>  3 files changed, 21 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/boot/dts/exynos4.dtsi b/arch/arm/boot/dts/exynos4.dtsi
> index 2f31f773b096..3fa575ad7693 100644
> --- a/arch/arm/boot/dts/exynos4.dtsi
> +++ b/arch/arm/boot/dts/exynos4.dtsi
> @@ -718,6 +718,15 @@
>  		iommus = <&sysmmu_jpeg>;
>  	};
>  
> +	rotator: rotator@12810000 {
> +		compatible = "samsung,exynos4210-rotator";
> +		reg = <0x12810000 0x1000>;

One more question after looking at second patch. You are mapping size of
0x1000 instead of 0x64. Any particular reason? (it does not really
matter... just wondering)

Best regards,
Krzysztof

> +		interrupts = <0 83 0>;
> +		clocks = <&clock CLK_ROTATOR>;
> +		clock-names = "rotator";
> +		iommus = <&sysmmu_rotator>;
> +	};
> +
>  	hdmi: hdmi@12D00000 {
>  		compatible = "samsung,exynos4210-hdmi";
>  		reg = <0x12D00000 0x70000>;
> @@ -945,7 +954,6 @@
>  		interrupts = <5 0>;
>  		clock-names = "sysmmu", "master";
>  		clocks = <&clock CLK_SMMU_ROTATOR>, <&clock CLK_ROTATOR>;
> -		power-domains = <&pd_lcd0>;
>  		#iommu-cells = <0>;
>  	};
>  
> diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi
> index 3e5ba665d200..b7474cf27e82 100644
> --- a/arch/arm/boot/dts/exynos4210.dtsi
> +++ b/arch/arm/boot/dts/exynos4210.dtsi
> @@ -279,3 +279,11 @@
>  		<&clock CLK_OUT_CPU>, <&clock CLK_XXTI>, <&clock CLK_XUSBXTI>;
>  	#clock-cells = <1>;
>  };
> +
> +&rotator {
> +	power-domains = <&pd_lcd0>;
> +};
> +
> +&sysmmu_rotator {
> +	power-domains = <&pd_lcd0>;
> +};
> diff --git a/arch/arm/boot/dts/exynos4x12.dtsi b/arch/arm/boot/dts/exynos4x12.dtsi
> index b77dac61ffb5..148b47ad3120 100644
> --- a/arch/arm/boot/dts/exynos4x12.dtsi
> +++ b/arch/arm/boot/dts/exynos4x12.dtsi
> @@ -339,6 +339,10 @@
>  	compatible = "samsung,exynos4212-jpeg";
>  };
>  
> +&rotator {
> +	compatible = "samsung,exynos4212-rotator";
> +};
> +
>  &mixer {
>  	compatible = "samsung,exynos4212-mixer";
>  	clock-names = "mixer", "hdmi", "sclk_hdmi", "vp";
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Marek Szyprowski Nov. 13, 2015, 8:31 a.m. UTC | #3
Hello,

On 2015-11-13 03:23, Krzysztof Kozlowski wrote:
> On 10.11.2015 22:23, Marek Szyprowski wrote:
>> This patch adds device node for Rotator device to Exynos 4210 and 4x12
>> device tree files.
>>
>> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
>> ---
>>   arch/arm/boot/dts/exynos4.dtsi    | 10 +++++++++-
>>   arch/arm/boot/dts/exynos4210.dtsi |  8 ++++++++
>>   arch/arm/boot/dts/exynos4x12.dtsi |  4 ++++
>>   3 files changed, 21 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/exynos4.dtsi b/arch/arm/boot/dts/exynos4.dtsi
>> index 2f31f773b096..3fa575ad7693 100644
>> --- a/arch/arm/boot/dts/exynos4.dtsi
>> +++ b/arch/arm/boot/dts/exynos4.dtsi
>> @@ -718,6 +718,15 @@
>>   		iommus = <&sysmmu_jpeg>;
>>   	};
>>   
>> +	rotator: rotator@12810000 {
>> +		compatible = "samsung,exynos4210-rotator";
>> +		reg = <0x12810000 0x1000>;
>> +		interrupts = <0 83 0>;
>> +		clocks = <&clock CLK_ROTATOR>;
>> +		clock-names = "rotator";
>> +		iommus = <&sysmmu_rotator>;
>> +	};
>> +
>>   	hdmi: hdmi@12D00000 {
>>   		compatible = "samsung,exynos4210-hdmi";
>>   		reg = <0x12D00000 0x70000>;
>> @@ -945,7 +954,6 @@
>>   		interrupts = <5 0>;
>>   		clock-names = "sysmmu", "master";
>>   		clocks = <&clock CLK_SMMU_ROTATOR>, <&clock CLK_ROTATOR>;
>> -		power-domains = <&pd_lcd0>;
> Hmm.... I wonder why you changed this. Sysmmu rotator and rotator are
> not a part of LCD power domain on Exynos4x12 (or they should not be?)? Why?

On Exynos 4210 rotator (and its SYSMMU) belongs to LCD0 power domain. On
Exynos 4x12 it belong to TOP power domain (which is always on and not
described in DTS).

Best regards
Marek Szyprowski Nov. 13, 2015, 8:32 a.m. UTC | #4
Hello,

On 2015-11-13 03:29, Krzysztof Kozlowski wrote:
> On 10.11.2015 22:23, Marek Szyprowski wrote:
>> This patch adds device node for Rotator device to Exynos 4210 and 4x12
>> device tree files.
>>
>> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
>> ---
>>   arch/arm/boot/dts/exynos4.dtsi    | 10 +++++++++-
>>   arch/arm/boot/dts/exynos4210.dtsi |  8 ++++++++
>>   arch/arm/boot/dts/exynos4x12.dtsi |  4 ++++
>>   3 files changed, 21 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/exynos4.dtsi b/arch/arm/boot/dts/exynos4.dtsi
>> index 2f31f773b096..3fa575ad7693 100644
>> --- a/arch/arm/boot/dts/exynos4.dtsi
>> +++ b/arch/arm/boot/dts/exynos4.dtsi
>> @@ -718,6 +718,15 @@
>>   		iommus = <&sysmmu_jpeg>;
>>   	};
>>   
>> +	rotator: rotator@12810000 {
>> +		compatible = "samsung,exynos4210-rotator";
>> +		reg = <0x12810000 0x1000>;
> One more question after looking at second patch. You are mapping size of
> 0x1000 instead of 0x64. Any particular reason? (it does not really
> matter... just wondering)

Nope, it might be just a copy/paste issue I've missed. Do you want to 
unify it to
0x64 or 0x1000?

Best regards
Krzysztof Kozlowski Nov. 13, 2015, 8:35 a.m. UTC | #5
On 13.11.2015 17:31, Marek Szyprowski wrote:
> Hello,
> 
> On 2015-11-13 03:23, Krzysztof Kozlowski wrote:
>> On 10.11.2015 22:23, Marek Szyprowski wrote:
>>> This patch adds device node for Rotator device to Exynos 4210 and 4x12
>>> device tree files.
>>>
>>> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
>>> ---
>>>   arch/arm/boot/dts/exynos4.dtsi    | 10 +++++++++-
>>>   arch/arm/boot/dts/exynos4210.dtsi |  8 ++++++++
>>>   arch/arm/boot/dts/exynos4x12.dtsi |  4 ++++
>>>   3 files changed, 21 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/arch/arm/boot/dts/exynos4.dtsi
>>> b/arch/arm/boot/dts/exynos4.dtsi
>>> index 2f31f773b096..3fa575ad7693 100644
>>> --- a/arch/arm/boot/dts/exynos4.dtsi
>>> +++ b/arch/arm/boot/dts/exynos4.dtsi
>>> @@ -718,6 +718,15 @@
>>>           iommus = <&sysmmu_jpeg>;
>>>       };
>>>   +    rotator: rotator@12810000 {
>>> +        compatible = "samsung,exynos4210-rotator";
>>> +        reg = <0x12810000 0x1000>;
>>> +        interrupts = <0 83 0>;
>>> +        clocks = <&clock CLK_ROTATOR>;
>>> +        clock-names = "rotator";
>>> +        iommus = <&sysmmu_rotator>;
>>> +    };
>>> +
>>>       hdmi: hdmi@12D00000 {
>>>           compatible = "samsung,exynos4210-hdmi";
>>>           reg = <0x12D00000 0x70000>;
>>> @@ -945,7 +954,6 @@
>>>           interrupts = <5 0>;
>>>           clock-names = "sysmmu", "master";
>>>           clocks = <&clock CLK_SMMU_ROTATOR>, <&clock CLK_ROTATOR>;
>>> -        power-domains = <&pd_lcd0>;
>> Hmm.... I wonder why you changed this. Sysmmu rotator and rotator are
>> not a part of LCD power domain on Exynos4x12 (or they should not be?)?
>> Why?
> 
> On Exynos 4210 rotator (and its SYSMMU) belongs to LCD0 power domain. On
> Exynos 4x12 it belong to TOP power domain (which is always on and not
> described in DTS).

Indeed... The change makes sense but actually for sysmmu rotator should
be separated (especially that this was not mentioned in commit description).

Can you split the sysmmu part?

Best regards,
Krzysztof

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Krzysztof Kozlowski Nov. 13, 2015, 8:36 a.m. UTC | #6
On 13.11.2015 17:32, Marek Szyprowski wrote:
> Hello,
> 
> On 2015-11-13 03:29, Krzysztof Kozlowski wrote:
>> On 10.11.2015 22:23, Marek Szyprowski wrote:
>>> This patch adds device node for Rotator device to Exynos 4210 and 4x12
>>> device tree files.
>>>
>>> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
>>> ---
>>>   arch/arm/boot/dts/exynos4.dtsi    | 10 +++++++++-
>>>   arch/arm/boot/dts/exynos4210.dtsi |  8 ++++++++
>>>   arch/arm/boot/dts/exynos4x12.dtsi |  4 ++++
>>>   3 files changed, 21 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/arch/arm/boot/dts/exynos4.dtsi
>>> b/arch/arm/boot/dts/exynos4.dtsi
>>> index 2f31f773b096..3fa575ad7693 100644
>>> --- a/arch/arm/boot/dts/exynos4.dtsi
>>> +++ b/arch/arm/boot/dts/exynos4.dtsi
>>> @@ -718,6 +718,15 @@
>>>           iommus = <&sysmmu_jpeg>;
>>>       };
>>>   +    rotator: rotator@12810000 {
>>> +        compatible = "samsung,exynos4210-rotator";
>>> +        reg = <0x12810000 0x1000>;
>> One more question after looking at second patch. You are mapping size of
>> 0x1000 instead of 0x64. Any particular reason? (it does not really
>> matter... just wondering)
> 
> Nope, it might be just a copy/paste issue I've missed. Do you want to
> unify it to
> 0x64 or 0x1000?

To 0x64, please. That would make it synced with datasheet.

Best regards,
Krzysztof

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch
diff mbox

diff --git a/arch/arm/boot/dts/exynos4.dtsi b/arch/arm/boot/dts/exynos4.dtsi
index 2f31f773b096..3fa575ad7693 100644
--- a/arch/arm/boot/dts/exynos4.dtsi
+++ b/arch/arm/boot/dts/exynos4.dtsi
@@ -718,6 +718,15 @@ 
 		iommus = <&sysmmu_jpeg>;
 	};
 
+	rotator: rotator@12810000 {
+		compatible = "samsung,exynos4210-rotator";
+		reg = <0x12810000 0x1000>;
+		interrupts = <0 83 0>;
+		clocks = <&clock CLK_ROTATOR>;
+		clock-names = "rotator";
+		iommus = <&sysmmu_rotator>;
+	};
+
 	hdmi: hdmi@12D00000 {
 		compatible = "samsung,exynos4210-hdmi";
 		reg = <0x12D00000 0x70000>;
@@ -945,7 +954,6 @@ 
 		interrupts = <5 0>;
 		clock-names = "sysmmu", "master";
 		clocks = <&clock CLK_SMMU_ROTATOR>, <&clock CLK_ROTATOR>;
-		power-domains = <&pd_lcd0>;
 		#iommu-cells = <0>;
 	};
 
diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi
index 3e5ba665d200..b7474cf27e82 100644
--- a/arch/arm/boot/dts/exynos4210.dtsi
+++ b/arch/arm/boot/dts/exynos4210.dtsi
@@ -279,3 +279,11 @@ 
 		<&clock CLK_OUT_CPU>, <&clock CLK_XXTI>, <&clock CLK_XUSBXTI>;
 	#clock-cells = <1>;
 };
+
+&rotator {
+	power-domains = <&pd_lcd0>;
+};
+
+&sysmmu_rotator {
+	power-domains = <&pd_lcd0>;
+};
diff --git a/arch/arm/boot/dts/exynos4x12.dtsi b/arch/arm/boot/dts/exynos4x12.dtsi
index b77dac61ffb5..148b47ad3120 100644
--- a/arch/arm/boot/dts/exynos4x12.dtsi
+++ b/arch/arm/boot/dts/exynos4x12.dtsi
@@ -339,6 +339,10 @@ 
 	compatible = "samsung,exynos4212-jpeg";
 };
 
+&rotator {
+	compatible = "samsung,exynos4212-rotator";
+};
+
 &mixer {
 	compatible = "samsung,exynos4212-mixer";
 	clock-names = "mixer", "hdmi", "sclk_hdmi", "vp";