diff mbox

ARM: dts: exynos: Add MFC memory banks for Peach boards

Message ID 1461871311-18344-1-git-send-email-javier@osg.samsung.com (mailing list archive)
State New, archived
Headers show

Commit Message

Javier Martinez Canillas April 28, 2016, 7:21 p.m. UTC
The MFC nodes with the memory regions reserved for memory allocations
are missing in the Exynos5420 Peach Pit and Exynos5800 Peach Pi DTS.

This causes the s5p-mfc driver probe to fail with the following error:

[    4.140647] s5p_mfc_alloc_memdevs:1072: Failed to declare coherent memory for MFC device
[    4.216163] s5p-mfc: probe of 11000000.codec failed with error -12

Add the missing nodes so the driver probes and the {en,de}coder video
nodes are registered correctly:

[    4.096277] s5p-mfc 11000000.codec: decoder registered as /dev/video4
[    4.102282] s5p-mfc 11000000.codec: encoder registered as /dev/video5

Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>

---

 arch/arm/boot/dts/exynos5420-peach-pit.dts | 5 +++++
 arch/arm/boot/dts/exynos5800-peach-pi.dts  | 5 +++++
 2 files changed, 10 insertions(+)

Comments

Javier Martinez Canillas May 6, 2016, 1:44 p.m. UTC | #1
Hello Krzysztof,

On 04/28/2016 03:21 PM, Javier Martinez Canillas wrote:
> The MFC nodes with the memory regions reserved for memory allocations
> are missing in the Exynos5420 Peach Pit and Exynos5800 Peach Pi DTS.
> 
> This causes the s5p-mfc driver probe to fail with the following error:
> 
> [    4.140647] s5p_mfc_alloc_memdevs:1072: Failed to declare coherent memory for MFC device
> [    4.216163] s5p-mfc: probe of 11000000.codec failed with error -12
> 
> Add the missing nodes so the driver probes and the {en,de}coder video
> nodes are registered correctly:
> 
> [    4.096277] s5p-mfc 11000000.codec: decoder registered as /dev/video4
> [    4.102282] s5p-mfc 11000000.codec: encoder registered as /dev/video5
> 
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>
> ---
> 
>  arch/arm/boot/dts/exynos5420-peach-pit.dts | 5 +++++
>  arch/arm/boot/dts/exynos5800-peach-pi.dts  | 5 +++++
>  2 files changed, 10 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/exynos5420-peach-pit.dts b/arch/arm/boot/dts/exynos5420-peach-pit.dts
> index b644858231b6..f9d2e4f1a0e0 100644
> --- a/arch/arm/boot/dts/exynos5420-peach-pit.dts
> +++ b/arch/arm/boot/dts/exynos5420-peach-pit.dts
> @@ -694,6 +694,11 @@
>  	status = "okay";
>  };
>  
> +&mfc {
> +	samsung,mfc-r = <0x43000000 0x800000>;
> +	samsung,mfc-l = <0x51000000 0x800000>;
> +};
> +
>  &mmc_0 {
>  	status = "okay";
>  	num-slots = <1>;
> diff --git a/arch/arm/boot/dts/exynos5800-peach-pi.dts b/arch/arm/boot/dts/exynos5800-peach-pi.dts
> index 6ba9aec15485..62ceb89e073f 100644
> --- a/arch/arm/boot/dts/exynos5800-peach-pi.dts
> +++ b/arch/arm/boot/dts/exynos5800-peach-pi.dts
> @@ -669,6 +669,11 @@
>  	status = "okay";
>  };
>  
> +&mfc {
> +	samsung,mfc-r = <0x43000000 0x800000>;
> +	samsung,mfc-l = <0x51000000 0x800000>;
> +};
> +
>  &mmc_0 {
>  	status = "okay";
>  	num-slots = <1>;
> 

Any comments about this patch?

Best regards,
Krzysztof Kozlowski May 6, 2016, 1:58 p.m. UTC | #2
On 05/06/2016 03:44 PM, Javier Martinez Canillas wrote:
> Hello Krzysztof,
> 
> On 04/28/2016 03:21 PM, Javier Martinez Canillas wrote:
>> The MFC nodes with the memory regions reserved for memory allocations
>> are missing in the Exynos5420 Peach Pit and Exynos5800 Peach Pi DTS.
>>
>> This causes the s5p-mfc driver probe to fail with the following error:
>>
>> [    4.140647] s5p_mfc_alloc_memdevs:1072: Failed to declare coherent memory for MFC device
>> [    4.216163] s5p-mfc: probe of 11000000.codec failed with error -12
>>
>> Add the missing nodes so the driver probes and the {en,de}coder video
>> nodes are registered correctly:
>>
>> [    4.096277] s5p-mfc 11000000.codec: decoder registered as /dev/video4
>> [    4.102282] s5p-mfc 11000000.codec: encoder registered as /dev/video5
>>
>> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>>
>> ---
>>
>>  arch/arm/boot/dts/exynos5420-peach-pit.dts | 5 +++++
>>  arch/arm/boot/dts/exynos5800-peach-pi.dts  | 5 +++++
>>  2 files changed, 10 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/exynos5420-peach-pit.dts b/arch/arm/boot/dts/exynos5420-peach-pit.dts
>> index b644858231b6..f9d2e4f1a0e0 100644
>> --- a/arch/arm/boot/dts/exynos5420-peach-pit.dts
>> +++ b/arch/arm/boot/dts/exynos5420-peach-pit.dts
>> @@ -694,6 +694,11 @@
>>  	status = "okay";
>>  };
>>  
>> +&mfc {
>> +	samsung,mfc-r = <0x43000000 0x800000>;
>> +	samsung,mfc-l = <0x51000000 0x800000>;
>> +};
>> +
>>  &mmc_0 {
>>  	status = "okay";
>>  	num-slots = <1>;
>> diff --git a/arch/arm/boot/dts/exynos5800-peach-pi.dts b/arch/arm/boot/dts/exynos5800-peach-pi.dts
>> index 6ba9aec15485..62ceb89e073f 100644
>> --- a/arch/arm/boot/dts/exynos5800-peach-pi.dts
>> +++ b/arch/arm/boot/dts/exynos5800-peach-pi.dts
>> @@ -669,6 +669,11 @@
>>  	status = "okay";
>>  };
>>  
>> +&mfc {
>> +	samsung,mfc-r = <0x43000000 0x800000>;
>> +	samsung,mfc-l = <0x51000000 0x800000>;
>> +};
>> +
>>  &mmc_0 {
>>  	status = "okay";
>>  	num-slots = <1>;
>>
> 
> Any comments about this patch?

What is up with the rush now (a week for ping)? As I understand, this
was broken for very long time on these boards (since adding DT support
in 2012?).

Best regards,
Krzysztof
Javier Martinez Canillas May 6, 2016, 2:12 p.m. UTC | #3
Hello Krzysztof,

On 05/06/2016 09:58 AM, Krzysztof Kozlowski wrote:
> On 05/06/2016 03:44 PM, Javier Martinez Canillas wrote:
>> Hello Krzysztof,
>>
>> On 04/28/2016 03:21 PM, Javier Martinez Canillas wrote:
>>> The MFC nodes with the memory regions reserved for memory allocations
>>> are missing in the Exynos5420 Peach Pit and Exynos5800 Peach Pi DTS.
>>>
>>> This causes the s5p-mfc driver probe to fail with the following error:
>>>
>>> [    4.140647] s5p_mfc_alloc_memdevs:1072: Failed to declare coherent memory for MFC device
>>> [    4.216163] s5p-mfc: probe of 11000000.codec failed with error -12
>>>
>>> Add the missing nodes so the driver probes and the {en,de}coder video
>>> nodes are registered correctly:
>>>
>>> [    4.096277] s5p-mfc 11000000.codec: decoder registered as /dev/video4
>>> [    4.102282] s5p-mfc 11000000.codec: encoder registered as /dev/video5
>>>
>>> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>>>
>>> ---
>>>
>>>  arch/arm/boot/dts/exynos5420-peach-pit.dts | 5 +++++
>>>  arch/arm/boot/dts/exynos5800-peach-pi.dts  | 5 +++++
>>>  2 files changed, 10 insertions(+)
>>>
>>> diff --git a/arch/arm/boot/dts/exynos5420-peach-pit.dts b/arch/arm/boot/dts/exynos5420-peach-pit.dts
>>> index b644858231b6..f9d2e4f1a0e0 100644
>>> --- a/arch/arm/boot/dts/exynos5420-peach-pit.dts
>>> +++ b/arch/arm/boot/dts/exynos5420-peach-pit.dts
>>> @@ -694,6 +694,11 @@
>>>  	status = "okay";
>>>  };
>>>  
>>> +&mfc {
>>> +	samsung,mfc-r = <0x43000000 0x800000>;
>>> +	samsung,mfc-l = <0x51000000 0x800000>;
>>> +};
>>> +
>>>  &mmc_0 {
>>>  	status = "okay";
>>>  	num-slots = <1>;
>>> diff --git a/arch/arm/boot/dts/exynos5800-peach-pi.dts b/arch/arm/boot/dts/exynos5800-peach-pi.dts
>>> index 6ba9aec15485..62ceb89e073f 100644
>>> --- a/arch/arm/boot/dts/exynos5800-peach-pi.dts
>>> +++ b/arch/arm/boot/dts/exynos5800-peach-pi.dts
>>> @@ -669,6 +669,11 @@
>>>  	status = "okay";
>>>  };
>>>  
>>> +&mfc {
>>> +	samsung,mfc-r = <0x43000000 0x800000>;
>>> +	samsung,mfc-l = <0x51000000 0x800000>;
>>> +};
>>> +
>>>  &mmc_0 {
>>>  	status = "okay";
>>>  	num-slots = <1>;
>>>
>>
>> Any comments about this patch?
> 
> What is up with the rush now (a week for ping)? As I understand, this

Sorry about that... I should had waited for more time for the ping indeed.
I just thought the patch was trivial and you usually answer within days.

> was broken for very long time on these boards (since adding DT support
> in 2012?).
> 

Yes, that's correct. And in fact even the s5p-mfc driver is currently
not working in mainline. But I posted some fixes and will post more
patches from other people today to get it working. So I thought that
would be nice to have this in since one of my test machines is a Peach.

> Best regards,
> Krzysztof
>

Best regards,
Krzysztof Kozlowski May 6, 2016, 2:13 p.m. UTC | #4
On 05/06/2016 04:12 PM, Javier Martinez Canillas wrote:
> Hello Krzysztof,
> 
> On 05/06/2016 09:58 AM, Krzysztof Kozlowski wrote:
>> On 05/06/2016 03:44 PM, Javier Martinez Canillas wrote:
>>> Hello Krzysztof,
>>>
>>> On 04/28/2016 03:21 PM, Javier Martinez Canillas wrote:
>>>> The MFC nodes with the memory regions reserved for memory allocations
>>>> are missing in the Exynos5420 Peach Pit and Exynos5800 Peach Pi DTS.
>>>>
>>>> This causes the s5p-mfc driver probe to fail with the following error:
>>>>
>>>> [    4.140647] s5p_mfc_alloc_memdevs:1072: Failed to declare coherent memory for MFC device
>>>> [    4.216163] s5p-mfc: probe of 11000000.codec failed with error -12
>>>>
>>>> Add the missing nodes so the driver probes and the {en,de}coder video
>>>> nodes are registered correctly:
>>>>
>>>> [    4.096277] s5p-mfc 11000000.codec: decoder registered as /dev/video4
>>>> [    4.102282] s5p-mfc 11000000.codec: encoder registered as /dev/video5
>>>>
>>>> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>>>>
>>>> ---
>>>>
>>>>  arch/arm/boot/dts/exynos5420-peach-pit.dts | 5 +++++
>>>>  arch/arm/boot/dts/exynos5800-peach-pi.dts  | 5 +++++
>>>>  2 files changed, 10 insertions(+)
>>>>
>>>> diff --git a/arch/arm/boot/dts/exynos5420-peach-pit.dts b/arch/arm/boot/dts/exynos5420-peach-pit.dts
>>>> index b644858231b6..f9d2e4f1a0e0 100644
>>>> --- a/arch/arm/boot/dts/exynos5420-peach-pit.dts
>>>> +++ b/arch/arm/boot/dts/exynos5420-peach-pit.dts
>>>> @@ -694,6 +694,11 @@
>>>>  	status = "okay";
>>>>  };
>>>>  
>>>> +&mfc {
>>>> +	samsung,mfc-r = <0x43000000 0x800000>;
>>>> +	samsung,mfc-l = <0x51000000 0x800000>;
>>>> +};
>>>> +
>>>>  &mmc_0 {
>>>>  	status = "okay";
>>>>  	num-slots = <1>;
>>>> diff --git a/arch/arm/boot/dts/exynos5800-peach-pi.dts b/arch/arm/boot/dts/exynos5800-peach-pi.dts
>>>> index 6ba9aec15485..62ceb89e073f 100644
>>>> --- a/arch/arm/boot/dts/exynos5800-peach-pi.dts
>>>> +++ b/arch/arm/boot/dts/exynos5800-peach-pi.dts
>>>> @@ -669,6 +669,11 @@
>>>>  	status = "okay";
>>>>  };
>>>>  
>>>> +&mfc {
>>>> +	samsung,mfc-r = <0x43000000 0x800000>;
>>>> +	samsung,mfc-l = <0x51000000 0x800000>;
>>>> +};
>>>> +
>>>>  &mmc_0 {
>>>>  	status = "okay";
>>>>  	num-slots = <1>;
>>>>
>>>
>>> Any comments about this patch?
>>
>> What is up with the rush now (a week for ping)? As I understand, this
> 
> Sorry about that... I should had waited for more time for the ping indeed.
> I just thought the patch was trivial and you usually answer within days.
> 
>> was broken for very long time on these boards (since adding DT support
>> in 2012?).
>>
> 
> Yes, that's correct. And in fact even the s5p-mfc driver is currently
> not working in mainline. But I posted some fixes and will post more
> patches from other people today to get it working. So I thought that
> would be nice to have this in since one of my test machines is a Peach.

Okay, no problem. I have few more not-so-critical fixes. Queued for
earliest possible release.

Best regards,
Krzysztof
Pankaj Dubey May 25, 2016, 8:33 a.m. UTC | #5
Hi Javier,

On Friday 29 April 2016 12:51 AM, Javier Martinez Canillas wrote:
> The MFC nodes with the memory regions reserved for memory allocations
> are missing in the Exynos5420 Peach Pit and Exynos5800 Peach Pi DTS.
> 
> This causes the s5p-mfc driver probe to fail with the following error:
> 
> [    4.140647] s5p_mfc_alloc_memdevs:1072: Failed to declare coherent memory for MFC device
> [    4.216163] s5p-mfc: probe of 11000000.codec failed with error -12
> 
> Add the missing nodes so the driver probes and the {en,de}coder video
> nodes are registered correctly:
> 
> [    4.096277] s5p-mfc 11000000.codec: decoder registered as /dev/video4
> [    4.102282] s5p-mfc 11000000.codec: encoder registered as /dev/video5
> 
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>

Just noticed that, current krzk/for-next failed to boot on Exynos5880
based Chromebook device. Git bisect is showing culprit as this patch.
When I reverted this patch, its able to boot normally.
Is there any missing patches that we need to take on krzk/for-next to
boot on Chromebook.

Thanks,
Pankaj Dubey
Javier Martinez Canillas May 25, 2016, 3:02 p.m. UTC | #6
Hello Pankaj,

On 05/25/2016 04:33 AM, pankaj.dubey wrote:
> Hi Javier,
> 
> On Friday 29 April 2016 12:51 AM, Javier Martinez Canillas wrote:
>> The MFC nodes with the memory regions reserved for memory allocations
>> are missing in the Exynos5420 Peach Pit and Exynos5800 Peach Pi DTS.
>>
>> This causes the s5p-mfc driver probe to fail with the following error:
>>
>> [    4.140647] s5p_mfc_alloc_memdevs:1072: Failed to declare coherent memory for MFC device
>> [    4.216163] s5p-mfc: probe of 11000000.codec failed with error -12
>>
>> Add the missing nodes so the driver probes and the {en,de}coder video
>> nodes are registered correctly:
>>
>> [    4.096277] s5p-mfc 11000000.codec: decoder registered as /dev/video4
>> [    4.102282] s5p-mfc 11000000.codec: encoder registered as /dev/video5
>>
>> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
> 
> Just noticed that, current krzk/for-next failed to boot on Exynos5880
> based Chromebook device. Git bisect is showing culprit as this patch.

Strange, krzk/for-next boots correctly on my Exynos5800 Peach Pi:

$ git log --pretty=oneline --abbrev-commit HEAD
35e691cf5165 Merge branch 'fixes-v4.7' into for-next

$ uname -r
4.6.0-00073-g35e691cf5165

> When I reverted this patch, its able to boot normally.
> Is there any missing patches that we need to take on krzk/for-next to
> boot on Chromebook.
>

No that I'm aware of. I wonder why it boots for me but fails for
you. Can you please share your complete boot log to see if there
are any hints there?
 
> Thanks,
> Pankaj Dubey
> 

Best regards,
diff mbox

Patch

diff --git a/arch/arm/boot/dts/exynos5420-peach-pit.dts b/arch/arm/boot/dts/exynos5420-peach-pit.dts
index b644858231b6..f9d2e4f1a0e0 100644
--- a/arch/arm/boot/dts/exynos5420-peach-pit.dts
+++ b/arch/arm/boot/dts/exynos5420-peach-pit.dts
@@ -694,6 +694,11 @@ 
 	status = "okay";
 };
 
+&mfc {
+	samsung,mfc-r = <0x43000000 0x800000>;
+	samsung,mfc-l = <0x51000000 0x800000>;
+};
+
 &mmc_0 {
 	status = "okay";
 	num-slots = <1>;
diff --git a/arch/arm/boot/dts/exynos5800-peach-pi.dts b/arch/arm/boot/dts/exynos5800-peach-pi.dts
index 6ba9aec15485..62ceb89e073f 100644
--- a/arch/arm/boot/dts/exynos5800-peach-pi.dts
+++ b/arch/arm/boot/dts/exynos5800-peach-pi.dts
@@ -669,6 +669,11 @@ 
 	status = "okay";
 };
 
+&mfc {
+	samsung,mfc-r = <0x43000000 0x800000>;
+	samsung,mfc-l = <0x51000000 0x800000>;
+};
+
 &mmc_0 {
 	status = "okay";
 	num-slots = <1>;