* [PATCH] ARM: dts: exynos: Add MFC memory banks for Peach boards
@ 2016-04-28 19:21 Javier Martinez Canillas
2016-05-06 13:44 ` Javier Martinez Canillas
2016-05-25 8:33 ` pankaj.dubey
0 siblings, 2 replies; 11+ messages in thread
From: Javier Martinez Canillas @ 2016-04-28 19:21 UTC (permalink / raw)
To: linux-kernel
Cc: Javier Martinez Canillas, Russell King, Kukjin Kim,
Krzysztof Kozlowski, devicetree, Kumar Gala, Ian Campbell,
linux-samsung-soc, Rob Herring, Pawel Moll, Mark Rutland,
linux-arm-kernel
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>;
--
2.5.5
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH] ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-04-28 19:21 [PATCH] ARM: dts: exynos: Add MFC memory banks for Peach boards Javier Martinez Canillas
@ 2016-05-06 13:44 ` Javier Martinez Canillas
2016-05-06 13:58 ` Krzysztof Kozlowski
2016-05-25 8:33 ` pankaj.dubey
1 sibling, 1 reply; 11+ messages in thread
From: Javier Martinez Canillas @ 2016-05-06 13:44 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: linux-kernel, Russell King, Kukjin Kim, devicetree, Kumar Gala,
Ian Campbell, linux-samsung-soc, Rob Herring, Pawel Moll,
Mark Rutland, linux-arm-kernel
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,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-05-06 13:44 ` Javier Martinez Canillas
@ 2016-05-06 13:58 ` Krzysztof Kozlowski
2016-05-06 14:12 ` Javier Martinez Canillas
0 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2016-05-06 13:58 UTC (permalink / raw)
To: Javier Martinez Canillas
Cc: linux-kernel, Russell King, Kukjin Kim, devicetree, Kumar Gala,
Ian Campbell, linux-samsung-soc, Rob Herring, Pawel Moll,
Mark Rutland, linux-arm-kernel
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-05-06 13:58 ` Krzysztof Kozlowski
@ 2016-05-06 14:12 ` Javier Martinez Canillas
2016-05-06 14:13 ` Krzysztof Kozlowski
0 siblings, 1 reply; 11+ messages in thread
From: Javier Martinez Canillas @ 2016-05-06 14:12 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: linux-kernel, Russell King, Kukjin Kim, devicetree, Kumar Gala,
Ian Campbell, linux-samsung-soc, Rob Herring, Pawel Moll,
Mark Rutland, linux-arm-kernel
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,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-05-06 14:12 ` Javier Martinez Canillas
@ 2016-05-06 14:13 ` Krzysztof Kozlowski
0 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2016-05-06 14:13 UTC (permalink / raw)
To: Javier Martinez Canillas
Cc: linux-kernel, Russell King, Kukjin Kim, devicetree, Kumar Gala,
Ian Campbell, linux-samsung-soc, Rob Herring, Pawel Moll,
Mark Rutland, linux-arm-kernel
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-04-28 19:21 [PATCH] ARM: dts: exynos: Add MFC memory banks for Peach boards Javier Martinez Canillas
2016-05-06 13:44 ` Javier Martinez Canillas
@ 2016-05-25 8:33 ` pankaj.dubey
2016-05-25 15:02 ` Javier Martinez Canillas
1 sibling, 1 reply; 11+ messages in thread
From: pankaj.dubey @ 2016-05-25 8:33 UTC (permalink / raw)
To: Javier Martinez Canillas, linux-kernel
Cc: Mark Rutland, devicetree, Krzysztof Kozlowski, linux-samsung-soc,
Russell King, Pawel Moll, Ian Campbell, Rob Herring, Kukjin Kim,
Kumar Gala, linux-arm-kernel
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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-05-25 8:33 ` pankaj.dubey
@ 2016-05-25 15:02 ` Javier Martinez Canillas
2016-05-26 3:43 ` pankaj.dubey
0 siblings, 1 reply; 11+ messages in thread
From: Javier Martinez Canillas @ 2016-05-25 15:02 UTC (permalink / raw)
To: pankaj.dubey, linux-kernel
Cc: Mark Rutland, devicetree, Krzysztof Kozlowski, linux-samsung-soc,
Russell King, Pawel Moll, Ian Campbell, Rob Herring, Kukjin Kim,
Kumar Gala, linux-arm-kernel
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,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-05-25 15:02 ` Javier Martinez Canillas
@ 2016-05-26 3:43 ` pankaj.dubey
2016-05-26 7:45 ` Javier Martinez Canillas
0 siblings, 1 reply; 11+ messages in thread
From: pankaj.dubey @ 2016-05-26 3:43 UTC (permalink / raw)
To: Javier Martinez Canillas, linux-kernel
Cc: Mark Rutland, devicetree, Krzysztof Kozlowski, linux-samsung-soc,
Russell King, Pawel Moll, Ian Campbell, Rob Herring, Kukjin Kim,
Kumar Gala, linux-arm-kernel
Hi Javier,
On Wednesday 25 May 2016 08:32 PM, Javier Martinez Canillas wrote:
> Hello Pankaj,
>
> On 05/25/2016 04:33 AM, pankaj.dubey wrote:
>> Hi Javier,
>>
>>> 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
>
This is same as mine.
My other build parameters are:
defconfig: exynos_defconfig
CROSS_COMPILE: gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux
rootfs: small cramfs
> $ 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.
>>
>
Further I checked that, either I revert this patch OR do not reserve
memory for MFC in exynos_reserve using following changes, both cases I
am able to boot kernel on Chromebook (Exynos5800).
diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
index f977eea..e615e24 100644
--- a/arch/arm/mach-exynos/exynos.c
+++ b/arch/arm/mach-exynos/exynos.c
@@ -268,7 +268,7 @@ static char const *const exynos_dt_compat[]
__initconst = {
static void __init exynos_reserve(void)
{
-#ifdef CONFIG_S5P_DEV_MFC
+#ifndef CONFIG_S5P_DEV_MFC
int i;
char *mfc_mem[] = {
"samsung,mfc-v5",
@@ -280,6 +280,8 @@ static void __init exynos_reserve(void)
for (i = 0; i < ARRAY_SIZE(mfc_mem); i++)
if (of_scan_flat_dt(s5p_fdt_alloc_mfc_mem, mfc_mem[i]))
break;
+#else
+ pr_err("*****exynos_reserve Bypassing Memory Reservation for MFC
********\n");
#endif
}
> 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?
>
Following is failed boot log:
U-Boot 2013.04-g8e3e5ef (May 26 2015 - 16:11:36) for Peach
CPU: Exynos5422@900MHz
Board: Google Peach Pi, rev 11.6
I2C: ready
DRAM: 3.5 GiB
Relocation Offset dbd54000, base at ffb54000
SPL stack at 2072c00, used 3f0, free 10
PMIC max77802-pmic initialized
CPU: Exynos5422@1800MHz
TPS65090 PMIC EC init
MMC: EXYNOS DWMMC: 0, EXYNOS DWMMC: 1
SF: Detected W25Q32DW with page size 4 KiB, total 32 MiB
In: cros-ec-keyb
Out: lcd
Err: lcd
SF: Detected W25Q32DW with page size 4 KiB, total 32 MiB
ELOG: Event(17) added with size 13
Net: No ethernet found.
Hit any key to stop autoboot: 0
mmc1 is current device
4586144 bytes read in 242 ms (18.1 MiB/s)
26583040 bytes read in 1166 ms (21.7 MiB/s)
## Loading kernel from FIT Image at 20008000 ...
Using 'conf@2' configuration
Trying 'kernel@1' kernel subimage
Description: unavailable
Type: Kernel Image (no loading done)
Compression: uncompressed
Data Start: 0x200080c8
Data Size: 4459024 Bytes = 4.3 MiB
Verifying Hash Integrity ... OK
## Loading fdt from FIT Image at 20008000 ...
Using 'conf@2' configuration
Trying 'fdt@2' fdt subimage
Description: exynos5800-peach-pi.dtb
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x20458148
Data Size: 63002 Bytes = 61.5 KiB
Architecture: ARM
Hash algo: sha1
Hash value: cd1c1703f744b44b1833ca61ec36b625665548de
Verifying Hash Integrity ... sha1+ OK
Booting using the fdt blob at 0x20458148
XIP Kernel Image (no loading done) ... OK
Loading Device Tree to 3ffe1000, end 3ffffb49 ... OK
boot_kernel.c: ft_board_setup: warning: Must pass exactly one of vboot
or cdata
Starting kernel ...
Timer summary in microseconds:
Mark Elapsed Stage
0 0 reset
122,793 122,793 board_init_f
143,214 20,421 board_init_r
238,069 94,855 id=64
240,278 2,209 main_loop
4,841,682 4,601,404 bootm_start
4,841,683 1 id=1
4,846,604 4,921 id=100
4,846,607 3 id=101
4,846,607 0 id=102
4,850,208 3,601 id=110
4,877,729 27,521 id=105
4,877,731 2 id=106
4,877,734 3 id=107
4,877,735 1 id=108
4,877,736 1 id=109
4,882,406 4,670 id=90
4,882,408 2 id=92
4,882,408 0 id=91
4,927,272 44,864 id=95
4,927,274 2 id=96
4,927,276 2 id=97
4,927,277 1 id=98
4,927,279 2 id=99
4,937,617 10,338 id=7
4,951,899 14,282 id=15
4,955,112 3,213 start_kernel
Accumulated time:
6,948 SPI read
Uncompressing Linux... done, booting the kernel.
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.6.0-00073-g35e691c
(pankaj@chromebld-server) (gcc version 4.9.2 20140904 (prerelease)
(crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC
4.9-2014.09) ) #59 SMP PREEMPT Thu May 26 08:21:07 IST 2016
[ 0.000000] CPU: ARMv7 Processor [412fc0f3] revision 3 (ARMv7),
cr=10c5387d
[ 0.000000] CPU: div instructions available: patching division code
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction
cache
[ 0.000000] Machine model: Google Peach Pi Rev 10+
[ 0.000000] bootconsole [earlycon0] enabled
[ 0.000000] cma: Reserved 64 MiB at 0xfbc00000
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] Samsung CPU ID: 0xe5422001
[ 0.000000] On node 0 totalpages: 913407
[ 0.000000] free_area_init_node: node 0, pgdat c0b42cc0, node_mem_map
ee3f7000
[ 0.000000] Normal zone: 1536 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 194560 pages, LIFO batch:31
[ 0.000000] HighMem zone: 718847 pages, LIFO batch:31
[ 0.000000] percpu: Embedded 12 pages/cpu @ee341000 s19392 r8192
d21568 u49152
[ 0.000000] pcpu-alloc: s19392 r8192 d21568 u49152 alloc=12*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [0] 4 [0] 5 [0] 6 [0] 7
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on.
Total pages: 911871
[ 0.000000] Kernel command line: cros_legacy console=ttySAC3,115200
debug earlyprintk cros_debug no_console_suspend root=/dev/ram0 rw
ramdisk=32768 initrd=0x42000000,3
2M
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288
bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144
bytes)
[ 0.000000] Memory: 3522460K/3653628K available (6317K kernel code,
271K rwdata, 2204K rodata, 1024K init, 313K bss, 65632K reserved, 65536K
cma-reserved, 2809852K hig
hmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xf0800000 - 0xff800000 ( 240 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xf0000000 ( 768 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc09524b8 (9514 kB)
[ 0.000000] .init : 0xc0a00000 - 0xc0b00000 (1024 kB)
[ 0.000000] .data : 0xc0b00000 - 0xc0b43ca0 ( 272 kB)
[ 0.000000] .bss : 0xc0b45000 - 0xc0b937e8 ( 314 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=8, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] Build-time adjustment of leaf fanout to 32.
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] GIC physical location is 0x10481000
[ 0.000000] Switching to timer-based delay loop, resolution 41ns
[ 0.000000] clocksource: mct-frc: mask: 0xffffffff max_cycles:
0xffffffff, max_idle_ns: 79635851949 ns
[ 0.000003] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps
every 89478484971ns
[ 0.008334] Console: colour dummy device 80x30
[ 0.012699] Calibrating delay loop (skipped), value calculated using
timer frequency.. 48.00 BogoMIPS (lpj=120000)
[ 0.023090] pid_max: default: 32768 minimum: 301
[ 0.027864] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.034465] Mountpoint-cache hash table entries: 2048 (order: 1, 8192
bytes)
[ 0.041947] CPU: Testing write buffer coherency: ok
[ 0.047033] CPU0: update cpu_capacity 1535
[ 0.051046] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.056840] Setting up static identity map for 0x20100000 - 0x20100058
[ 0.063593] ARM CCI driver probed
[ 0.067193] Exynos MCPM support installed
[ 0.124848] CPU1: update cpu_capacity 1535
[ 0.124852] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.144835] CPU2: update cpu_capacity 1535
[ 0.144839] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[ 0.164835] CPU3: update cpu_capacity 1535
[ 0.164838] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[ 0.184910] CPU4: update cpu_capacity 448
[ 0.184923] CPU4: thread -1, cpu 0, socket 1, mpidr 80000100
[ 0.204875] CPU5: update cpu_capacity 448
[ 0.204885] CPU5: thread -1, cpu 1, socket 1, mpidr 80000101
[ 0.224875] CPU6: update cpu_capacity 448
[ 0.224885] CPU6: thread -1, cpu 2, socket 1, mpidr 80000102
[ 0.244876] CPU7: update cpu_capacity 448
[ 0.244886] CPU7: thread -1, cpu 3, socket 1, mpidr 80000103
[ 0.245053] Brought up 8 CPUs
[ 0.316818] SMP: Total of 8 processors activated (384.00 BogoMIPS).
[ 0.323151] CPU: All CPU(s) started in SVC mode.
[ 0.328619] devtmpfs: initialized
[ 0.354746] VFP support v0.3: implementor 41 architecture 4 part 30
variant f rev 0
[ 0.362960] clocksource: jiffies: mask: 0xffffffff max_cycles:
0xffffffff, max_idle_ns: 9556302231375000 ns
[ 0.374103] pinctrl core: initialized pinctrl subsystem
[ 0.379947] NET: Registered protocol family 16
[ 0.385336] DMA: preallocated 256 KiB pool for atomic coherent
allocations
[ 0.404756] cpuidle: using governor menu
[ 0.412891] exynos-audss-clk 3810000.audss-clock-controller: setup
completed
[ 0.422092] gpio gpiochip0: (gpy7): added GPIO chardev (254:0)
[ 0.427978] gpiochip_setup_dev: registered GPIOs 0 to 7 on device:
gpiochip0 (gpy7)
[ 0.435577] gpio gpiochip1: (gpx0): added GPIO chardev (254:1)
[ 0.441581] gpiochip_setup_dev: registered GPIOs 8 to 15 on device:
gpiochip1 (gpx0)
[ 0.449281] gpio gpiochip2: (gpx1): added GPIO chardev (254:2)
[ 0.455286] gpiochip_setup_dev: registered GPIOs 16 to 23 on device:
gpiochip2 (gpx1)
[ 0.463074] gpio gpiochip3: (gpx2): added GPIO chardev (254:3)
[ 0.469081] gpiochip_setup_dev: registered GPIOs 24 to 31 on device:
gpiochip3 (gpx2)
[ 0.476867] gpio gpiochip4: (gpx3): added GPIO chardev (254:4)
[ 0.482872] gpiochip_setup_dev: registered GPIOs 32 to 39 on device:
gpiochip4 (gpx3)
[ 0.491481] gpio gpiochip5: (gpc0): added GPIO chardev (254:5)
[ 0.497348] gpiochip_setup_dev: registered GPIOs 40 to 47 on device:
gpiochip5 (gpc0)
[ 0.505131] gpio gpiochip6: (gpc1): added GPIO chardev (254:6)
[ 0.511139] gpiochip_setup_dev: registered GPIOs 48 to 55 on device:
gpiochip6 (gpc1)
[ 0.518924] gpio gpiochip7: (gpc2): added GPIO chardev (254:7)
[ 0.524931] gpiochip_setup_dev: registered GPIOs 56 to 62 on device:
gpiochip7 (gpc2)
[ 0.532716] gpio gpiochip8: (gpc3): added GPIO chardev (254:8)
[ 0.538722] gpiochip_setup_dev: registered GPIOs 63 to 66 on device:
gpiochip8 (gpc3)
[ 0.546510] gpio gpiochip9: (gpc4): added GPIO chardev (254:9)
[ 0.552515] gpiochip_setup_dev: registered GPIOs 67 to 68 on device:
gpiochip9 (gpc4)
[ 0.560303] gpio gpiochip10: (gpd1): added GPIO chardev (254:10)
[ 0.566485] gpiochip_setup_dev: registered GPIOs 69 to 76 on device:
gpiochip10 (gpd1)
[ 0.574357] gpio gpiochip11: (gpy0): added GPIO chardev (254:11)
[ 0.580535] gpiochip_setup_dev: registered GPIOs 77 to 82 on device:
gpiochip11 (gpy0)
[ 0.588410] gpio gpiochip12: (gpy1): added GPIO chardev (254:12)
[ 0.594589] gpiochip_setup_dev: registered GPIOs 83 to 86 on device:
gpiochip12 (gpy1)
[ 0.602463] gpio gpiochip13: (gpy2): added GPIO chardev (254:13)
[ 0.608642] gpiochip_setup_dev: registered GPIOs 87 to 92 on device:
gpiochip13 (gpy2)
[ 0.616518] gpio gpiochip14: (gpy3): added GPIO chardev (254:14)
[ 0.622701] gpiochip_setup_dev: registered GPIOs 93 to 100 on device:
gpiochip14 (gpy3)
[ 0.630657] gpio gpiochip15: (gpy4): added GPIO chardev (254:15)
[ 0.636835] gpiochip_setup_dev: registered GPIOs 101 to 108 on
device: gpiochip15 (gpy4)
[ 0.644888] gpio gpiochip16: (gpy5): added GPIO chardev (254:16)
[ 0.651063] gpiochip_setup_dev: registered GPIOs 109 to 116 on
device: gpiochip16 (gpy5)
[ 0.659111] gpio gpiochip17: (gpy6): added GPIO chardev (254:17)
[ 0.665289] gpiochip_setup_dev: registered GPIOs 117 to 124 on
device: gpiochip17 (gpy6)
[ 0.673856] gpio gpiochip18: (gpe0): added GPIO chardev (254:18)
[ 0.679908] gpiochip_setup_dev: registered GPIOs 125 to 132 on
device: gpiochip18 (gpe0)
[ 0.687948] gpio gpiochip19: (gpe1): added GPIO chardev (254:19)
[ 0.694126] gpiochip_setup_dev: registered GPIOs 133 to 134 on
device: gpiochip19 (gpe1)
[ 0.702174] gpio gpiochip20: (gpf0): added GPIO chardev (254:20)
[ 0.708356] gpiochip_setup_dev: registered GPIOs 135 to 140 on
device: gpiochip20 (gpf0)
[ 0.716401] gpio gpiochip21: (gpf1): added GPIO chardev (254:21)
[ 0.722579] gpiochip_setup_dev: registered GPIOs 141 to 148 on
device: gpiochip21 (gpf1)
[ 0.730628] gpio gpiochip22: (gpg0): added GPIO chardev (254:22)
[ 0.736806] gpiochip_setup_dev: registered GPIOs 149 to 156 on
device: gpiochip22 (gpg0)
[ 0.744857] gpio gpiochip23: (gpg1): added GPIO chardev (254:23)
[ 0.751033] gpiochip_setup_dev: registered GPIOs 157 to 164 on
device: gpiochip23 (gpg1)
[ 0.759081] gpio gpiochip24: (gpg2): added GPIO chardev (254:24)
[ 0.765264] gpiochip_setup_dev: registered GPIOs 165 to 166 on
device: gpiochip24 (gpg2)
[ 0.773309] gpio gpiochip25: (gpj4): added GPIO chardev (254:25)
[ 0.779493] gpiochip_setup_dev: registered GPIOs 167 to 170 on
device: gpiochip25 (gpj4)
[ 0.788029] gpio gpiochip26: (gpa0): added GPIO chardev (254:26)
[ 0.794075] gpiochip_setup_dev: registered GPIOs 171 to 178 on
device: gpiochip26 (gpa0)
[ 0.802119] gpio gpiochip27: (gpa1): added GPIO chardev (254:27)
[ 0.808301] gpiochip_setup_dev: registered GPIOs 179 to 184 on
device: gpiochip27 (gpa1)
[ 0.816346] gpio gpiochip28: (gpa2): added GPIO chardev (254:28)
[ 0.822525] gpiochip_setup_dev: registered GPIOs 185 to 192 on
device: gpiochip28 (gpa2)
[ 0.830573] gpio gpiochip29: (gpb0): added GPIO chardev (254:29)
[ 0.836751] gpiochip_setup_dev: registered GPIOs 193 to 197 on
device: gpiochip29 (gpb0)
[ 0.844800] gpio gpiochip30: (gpb1): added GPIO chardev (254:30)
[ 0.850979] gpiochip_setup_dev: registered GPIOs 198 to 202 on
device: gpiochip30 (gpb1)
[ 0.859026] gpio gpiochip31: (gpb2): added GPIO chardev (254:31)
[ 0.865208] gpiochip_setup_dev: registered GPIOs 203 to 206 on
device: gpiochip31 (gpb2)
[ 0.873254] gpio gpiochip32: (gpb3): added GPIO chardev (254:32)
[ 0.879433] gpiochip_setup_dev: registered GPIOs 207 to 214 on
device: gpiochip32 (gpb3)
[ 0.887480] gpio gpiochip33: (gpb4): added GPIO chardev (254:33)
[ 0.893662] gpiochip_setup_dev: registered GPIOs 215 to 216 on
device: gpiochip33 (gpb4)
[ 0.901708] gpio gpiochip34: (gph0): added GPIO chardev (254:34)
[ 0.907897] gpiochip_setup_dev: registered GPIOs 217 to 224 on
device: gpiochip34 (gph0)
[ 0.916503] gpio gpiochip35: (gpz): added GPIO chardev (254:35)
[ 0.922456] gpiochip_setup_dev: registered GPIOs 225 to 231 on
device: gpiochip35 (gpz)
[ 0.934388] EXYNOS5420 PMU initialized
[ 0.966020] of_get_named_gpiod_flags: parsed 'gpio' property of node
'/regulator-usb300[0]' - status (0)
[ 0.975689] of_get_named_gpiod_flags: parsed 'gpio' property of node
'/regulator-usb301[0]' - status (0)
[ 0.985303] of_get_named_gpiod_flags: can't parse 'gpio' property of
node '/fixed-regulator[0]'
[ 0.995569] SCSI subsystem initialized
[ 0.999446] usbcore: registered new interface driver usbfs
[ 1.004908] usbcore: registered new interface driver hub
[ 1.010346] usbcore: registered new device driver usb
[ 1.015851] s3c-i2c 12c80000.i2c: slave address 0x50
[ 1.020732] s3c-i2c 12c80000.i2c: bus frequency set to 65 KHz
[ 1.026817] s3c-i2c 12c80000.i2c: i2c-2: S3C I2C adapter
[ 1.032853] Advanced Linux Sound Architecture Driver Initialized.
[ 1.039949] clocksource: Switched to clocksource mct-frc
[ 1.057595] NET: Registered protocol family 2
[ 1.062235] TCP established hash table entries: 8192 (order: 3, 32768
bytes)
[ 1.069247] TCP bind hash table entries: 8192 (order: 5, 163840 bytes)
[ 1.075883] TCP: Hash tables configured (established 8192 bind 8192)
[ 1.082251] UDP hash table entries: 512 (order: 2, 24576 bytes)
[ 1.088220] UDP-Lite hash table entries: 512 (order: 2, 24576 bytes)
[ 1.094763] NET: Registered protocol family 1
[ 1.099356] RPC: Registered named UNIX socket transport module.
[ 1.105209] RPC: Registered udp transport module.
[ 1.109974] RPC: Registered tcp transport module.
[ 1.114725] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 1.121421] Trying to unpack rootfs image as initramfs...
[ 1.126940] rootfs image is not initramfs (junk in compressed
archive); looks like an initrd
[ 1.160139] Unable to handle kernel paging request at virtual address
e3000000
[ 1.167270] pgd = c0004000
[ 1.170046] [e3000000] *pgd=00000000
[ 1.173693] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
[ 1.179068] Modules linked in:
[ 1.182194] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
4.6.0-00073-g35e691c #59
[ 1.189477] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 1.195638] task: edc88000 ti: edc76000 task.ti: edc76000
[ 1.201111] PC is at memcpy+0x48/0x330
[ 1.204923] LR is at iov_iter_copy_from_user_atomic+0x184/0x24c
[ 1.210906] pc : [<c0320388>] lr : [<c0331688>] psr: 20000013
[ 1.210906] sp : edc77cd4 ip : 00000000 fp : c070b640
[ 1.222530] r10: 00000000 r9 : 00000000 r8 : ffefe000
[ 1.227822] r7 : 00000000 r6 : ffeff000 r5 : 00001000 r4 : edc77dec
[ 1.234415] r3 : 01000000 r2 : 00000f80 r1 : e3000000 r0 : ffefe000
[ 1.241009] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM
Segment none
[ 1.248208] Control: 10c5387d Table: 2000406a DAC: 00000051
[ 1.254020] Process swapper/0 (pid: 1, stack limit = 0xedc76210)
[ 1.260093] Stack: (0xedc77cd4 to 0xedc78000)
[ 1.264518] 7cc0:
00001000 ffeff000 00000000
[ 1.272760] 7ce0: ffefe000 ffefe000 edc77dec c0331688 00001000
00001000 edc77df4 ed85508c
[ 1.281001] 7d00: 00001000 01000000 00000000 00000000 c070b640
c01966d8 00001000 00000001
[ 1.289242] 7d20: edc77d40 edc77d44 00000000 edf0e600 01000000
00000000 edc76000 00000001
[ 1.297483] 7d40: eff519e0 c01f6100 00000000 00000000 edc77e08
00000000 edc77df4 edc77df4
[ 1.305725] 7d60: edf0e600 ed85508c c0b45050 c0197f88 c0b45050
c06c9d3c c0b67b58 c0b67b58
[ 1.313966] 7d80: 000000a8 00000003 ed855018 edc77e08 ed855018
edf0e600 edc77df4 02000000
[ 1.322207] 7da0: 00000000 c0b4504c c0b45050 c0198118 eded6860
c0b4504c c0b45050 c01ec01c
[ 1.330448] 7dc0: edf0e600 02000000 00000000 00000000 edc77e60
eded6860 c0b4504c c01dd0b8
[ 1.338690] 7de0: 02000000 00000301 00000002 e2000000 02000000
00000003 01000000 01000000
[ 1.346931] 7e00: edc77dec 00000001 edf0e600 00000000 00000000
00000000 00000000 00000000
[ 1.355172] 7e20: 00000000 00000000 edf0e600 02000000 e2000000
edc77e60 00000000 c01dddac
[ 1.363414] 7e40: ed854fa0 edf0e608 edf0e600 edf0e600 e2000000
02000000 00000000 c01dead8
[ 1.371655] 7e60: 00000000 00000000 c08781c0 02000000 e2000000
00000000 00000000 c0a027a8
[ 1.379896] 7e80: 00000000 00000000 eded6800 c0b43a4c 00000000
c0a02eb4 c0871494 eded685b
[ 1.388137] 7ea0: 00000001 00000068 000241ed 00000000 00000000
00000000 00001000 00000000
[ 1.396378] 7ec0: 57465fab 00000000 57465fab 00000000 00000000
376eac80 00000000 00000000
[ 1.404619] 7ee0: 00000000 c0b05a50 c0b05a50 c0a02d70 00000000
edf24ac0 000000d4 c0a34848
[ 1.412861] 7f00: 00000000 c0101814 c0b0a98c edc77f18 c0b47668
c06c98b0 60000000 c0b0933c
[ 1.421102] 7f20: 00000000 c0b0933c c0926578 c0716b3c 000000d4
c0135ef0 0000cccd 00000000
[ 1.429343] 7f40: c08dd0e0 00000000 00000005 00000005 c0b09318
efffc8c0 c0a5ba5c 00000005
[ 1.437585] 7f60: c0a3483c c0b45000 c0b45000 000000d4 c0a34848
c0a00db8 00000005 00000005
[ 1.445826] 7f80: 00000000 c0a005a0 00000000 c06c6254 00000000
00000000 00000000 00000000
[ 1.454067] 7fa0: 00000000 c06c625c 00000000 c0107a38 00000000
00000000 00000000 00000000
[ 1.462308] 7fc0: 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000
[ 1.470549] 7fe0: 00000000 00000000 00000000 00000000 00000013
00000000 f7ffffff a7ffefff
[ 1.478797] [<c0320388>] (memcpy) from [<c0331688>]
(iov_iter_copy_from_user_atomic+0x184/0x24c)
[ 1.487646] [<c0331688>] (iov_iter_copy_from_user_atomic) from
[<c01966d8>] (generic_perform_write+0xf8/0x1c8)
[ 1.497706] [<c01966d8>] (generic_perform_write) from [<c0197f88>]
(__generic_file_write_iter+0x198/0x1f4)
[ 1.507420] [<c0197f88>] (__generic_file_write_iter) from
[<c0198118>] (generic_file_write_iter+0x134/0x260)
[ 1.517311] [<c0198118>] (generic_file_write_iter) from [<c01dd0b8>]
(__vfs_write+0xa8/0xd8)
[ 1.525811] [<c01dd0b8>] (__vfs_write) from [<c01dddac>]
(vfs_write+0x90/0x164)
[ 1.533184] [<c01dddac>] (vfs_write) from [<c01dead8>]
(SyS_write+0x44/0x9c)
[ 1.540301] [<c01dead8>] (SyS_write) from [<c0a027a8>] (xwrite+0x2c/0x68)
[ 1.547152] [<c0a027a8>] (xwrite) from [<c0a02eb4>]
(populate_rootfs+0x144/0x268)
[ 1.554700] [<c0a02eb4>] (populate_rootfs) from [<c0101814>]
(do_one_initcall+0x90/0x1d8)
[ 1.562939] [<c0101814>] (do_one_initcall) from [<c0a00db8>]
(kernel_init_freeable+0x15c/0x1fc)
[ 1.571706] [<c0a00db8>] (kernel_init_freeable) from [<c06c625c>]
(kernel_init+0x8/0x114)
[ 1.579945] [<c06c625c>] (kernel_init) from [<c0107a38>]
(ret_from_fork+0x14/0x3c)
[ 1.587576] Code: ba000002 f5d1f03c f5d1f05c f5d1f07c (e8b151f8)
[ 1.593751] ---[ end trace 065c5ae2b4577941 ]---
[ 1.598420] note: swapper/0[1] exited with preempt_count 1
[ 1.604062] Kernel panic - not syncing: Attempted to kill init!
exitcode=0x0000000b
[ 1.604062]
[ 1.613263] CPU5: stopping
[ 1.616048] CPU: 5 PID: 0 Comm: swapper/5 Tainted: G D
4.6.0-00073-g35e691c #59
[ 1.624540] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 1.630729] [<c010e26c>] (unwind_backtrace) from [<c010afdc>]
(show_stack+0x10/0x14)
[ 1.638525] [<c010afdc>] (show_stack) from [<c03217f4>]
(dump_stack+0x88/0x9c)
[ 1.645808] [<c03217f4>] (dump_stack) from [<c010d508>]
(handle_IPI+0x190/0x1a4)
[ 1.653264] [<c010d508>] (handle_IPI) from [<c01014d8>]
(gic_handle_irq+0x90/0x94)
[ 1.660899] [<c01014d8>] (gic_handle_irq) from [<c010ba94>]
(__irq_svc+0x54/0x90)
[ 1.668438] Exception stack(0xedcc7f88 to 0xedcc7fd0)
[ 1.673562] 7f80: 00000001 00000000 00000000
c0114120 edcc6000 c0b02454
[ 1.681803] 7fa0: 00000000 c0a5f3f8 c0b024bc edcc7fe0 c0b024b4
00000000 f0806000 edcc7fd8
[ 1.690040] 7fc0: c0108478 c010847c 60000013 ffffffff
[ 1.695166] [<c010ba94>] (__irq_svc) from [<c010847c>]
(arch_cpu_idle+0x38/0x3c)
[ 1.702630] [<c010847c>] (arch_cpu_idle) from [<c0152788>]
(cpu_startup_entry+0x1bc/0x240)
[ 1.710955] [<c0152788>] (cpu_startup_entry) from [<2010156c>]
(0x2010156c)
[ 1.717972] CPU1: stopping
[ 1.720764] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G D
4.6.0-00073-g35e691c #59
[ 1.729261] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 1.735434] [<c010e26c>] (unwind_backtrace) from [<c010afdc>]
(show_stack+0x10/0x14)
[ 1.743233] [<c010afdc>] (show_stack) from [<c03217f4>]
(dump_stack+0x88/0x9c)
[ 1.750516] [<c03217f4>] (dump_stack) from [<c010d508>]
(handle_IPI+0x190/0x1a4)
[ 1.757977] [<c010d508>] (handle_IPI) from [<c01014d8>]
(gic_handle_irq+0x90/0x94)
[ 1.765609] [<c01014d8>] (gic_handle_irq) from [<c010ba94>]
(__irq_svc+0x54/0x90)
[ 1.773156] Exception stack(0xedcbff88 to 0xedcbffd0)
[ 1.778275] ff80: 00000001 00000000 00000000
c0114120 edcbe000 c0b02454
[ 1.786517] ffa0: 00000000 c0a5f3f8 c0b024bc edcbffe0 c0b024b4
00000000 00000000 edcbffd8
[ 1.794755] ffc0: c0108478 c010847c 60000013 ffffffff
[ 1.799879] [<c010ba94>] (__irq_svc) from [<c010847c>]
(arch_cpu_idle+0x38/0x3c)
[ 1.807353] [<c010847c>] (arch_cpu_idle) from [<c0152788>]
(cpu_startup_entry+0x1bc/0x240)
[ 1.815664] [<c0152788>] (cpu_startup_entry) from [<2010156c>]
(0x2010156c)
[ 1.822697] CPU7: stopping
[ 1.825456] CPU: 7 PID: 0 Comm: swapper/7 Tainted: G D
4.6.0-00073-g35e691c #59
[ 1.833952] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 1.840127] [<c010e26c>] (unwind_backtrace) from [<c010afdc>]
(show_stack+0x10/0x14)
[ 1.847931] [<c010afdc>] (show_stack) from [<c03217f4>]
(dump_stack+0x88/0x9c)
[ 1.855218] [<c03217f4>] (dump_stack) from [<c010d508>]
(handle_IPI+0x190/0x1a4)
[ 1.862675] [<c010d508>] (handle_IPI) from [<c01014d8>]
(gic_handle_irq+0x90/0x94)
[ 1.870309] [<c01014d8>] (gic_handle_irq) from [<c010ba94>]
(__irq_svc+0x54/0x90)
[ 1.877847] Exception stack(0xedccbf88 to 0xedccbfd0)
[ 1.882972] bf80: 00000001 00000000 00000000
c0114120 edcca000 c0b02454
[ 1.891215] bfa0: 00000000 c0a5f3f8 c0b024bc edccbfe0 c0b024b4
00000000 f0806000 edccbfd8
[ 1.899452] bfc0: c0108478 c010847c 60000013 ffffffff
[ 1.904577] [<c010ba94>] (__irq_svc) from [<c010847c>]
(arch_cpu_idle+0x38/0x3c)
[ 1.912040] [<c010847c>] (arch_cpu_idle) from [<c0152788>]
(cpu_startup_entry+0x1bc/0x240)
[ 1.920364] [<c0152788>] (cpu_startup_entry) from [<2010156c>]
(0x2010156c)
[ 1.927381] CPU2: stopping
[ 1.930164] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G D
4.6.0-00073-g35e691c #59
[ 1.938663] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 1.944826] [<c010e26c>] (unwind_backtrace) from [<c010afdc>]
(show_stack+0x10/0x14)
[ 1.952634] [<c010afdc>] (show_stack) from [<c03217f4>]
(dump_stack+0x88/0x9c)
[ 1.959918] [<c03217f4>] (dump_stack) from [<c010d508>]
(handle_IPI+0x190/0x1a4)
[ 1.967379] [<c010d508>] (handle_IPI) from [<c01014d8>]
(gic_handle_irq+0x90/0x94)
[ 1.975012] [<c01014d8>] (gic_handle_irq) from [<c010ba94>]
(__irq_svc+0x54/0x90)
[ 1.982558] Exception stack(0xedcc1f88 to 0xedcc1fd0)
[ 1.987675] 1f80: 00000001 00000000 00000000
c0114120 edcc0000 c0b02454
[ 1.995919] 1fa0: 00000000 c0a5f3f8 c0b024bc edcc1fe0 c0b024b4
00000000 f0806000 edcc1fd8
[ 2.004162] 1fc0: c0108478 c010847c 60000013 ffffffff
[ 2.009280] [<c010ba94>] (__irq_svc) from [<c010847c>]
(arch_cpu_idle+0x38/0x3c)
[ 2.016742] [<c010847c>] (arch_cpu_idle) from [<c0152788>]
(cpu_startup_entry+0x1bc/0x240)
[ 2.025067] [<c0152788>] (cpu_startup_entry) from [<2010156c>]
(0x2010156c)
[ 2.032097] CPU4: stopping
[ 2.034866] CPU: 4 PID: 0 Comm: swapper/4 Tainted: G D
4.6.0-00073-g35e691c #59
[ 2.043361] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 2.049538] [<c010e26c>] (unwind_backtrace) from [<c010afdc>]
(show_stack+0x10/0x14)
[ 2.057343] [<c010afdc>] (show_stack) from [<c03217f4>]
(dump_stack+0x88/0x9c)
[ 2.064628] [<c03217f4>] (dump_stack) from [<c010d508>]
(handle_IPI+0x190/0x1a4)
[ 2.072086] [<c010d508>] (handle_IPI) from [<c01014d8>]
(gic_handle_irq+0x90/0x94)
[ 2.079719] [<c01014d8>] (gic_handle_irq) from [<c010ba94>]
(__irq_svc+0x54/0x90)
[ 2.087259] Exception stack(0xedcc5f88 to 0xedcc5fd0)
[ 2.092382] 5f80: 00000001 00000000 00000000
c0114120 edcc4000 c0b02454
[ 2.100626] 5fa0: 00000000 c0a5f3f8 c0b024bc edcc5fe0 c0b024b4
00000000 f0806000 edcc5fd8
[ 2.108862] 5fc0: c0108478 c010847c 60000013 ffffffff
[ 2.113988] [<c010ba94>] (__irq_svc) from [<c010847c>]
(arch_cpu_idle+0x38/0x3c)
[ 2.121451] [<c010847c>] (arch_cpu_idle) from [<c0152788>]
(cpu_startup_entry+0x1bc/0x240)
[ 2.129775] [<c0152788>] (cpu_startup_entry) from [<2010156c>]
(0x2010156c)
[ 2.136795] CPU6: stopping
[ 2.139573] CPU: 6 PID: 0 Comm: swapper/6 Tainted: G D
4.6.0-00073-g35e691c #59
[ 2.148068] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 2.154244] [<c010e26c>] (unwind_backtrace) from [<c010afdc>]
(show_stack+0x10/0x14)
[ 2.162050] [<c010afdc>] (show_stack) from [<c03217f4>]
(dump_stack+0x88/0x9c)
[ 2.169335] [<c03217f4>] (dump_stack) from [<c010d508>]
(handle_IPI+0x190/0x1a4)
[ 2.176793] [<c010d508>] (handle_IPI) from [<c01014d8>]
(gic_handle_irq+0x90/0x94)
[ 2.184426] [<c01014d8>] (gic_handle_irq) from [<c010ba94>]
(__irq_svc+0x54/0x90)
[ 2.191966] Exception stack(0xedcc9f88 to 0xedcc9fd0)
[ 2.197090] 9f80: 00000001 00000000 00000000
c0114120 edcc8000 c0b02454
[ 2.205333] 9fa0: 00000000 c0a5f3f8 c0b024bc edcc9fe0 c0b024b4
00000000 f0806000 edcc9fd8
[ 2.213569] 9fc0: c0108478 c010847c 60000013 ffffffff
[ 2.218695] [<c010ba94>] (__irq_svc) from [<c010847c>]
(arch_cpu_idle+0x38/0x3c)
[ 2.226157] [<c010847c>] (arch_cpu_idle) from [<c0152788>]
(cpu_startup_entry+0x1bc/0x240)
[ 2.234482] [<c0152788>] (cpu_startup_entry) from [<2010156c>]
(0x2010156c)
[ 2.241498] CPU3: stopping
[ 2.244279] CPU: 3 PID: 0 Comm: swapper/3 Tainted: G D
4.6.0-00073-g35e691c #59
[ 2.252779] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 2.258944] [<c010e26c>] (unwind_backtrace) from [<c010afdc>]
(show_stack+0x10/0x14)
[ 2.266750] [<c010afdc>] (show_stack) from [<c03217f4>]
(dump_stack+0x88/0x9c)
[ 2.274036] [<c03217f4>] (dump_stack) from [<c010d508>]
(handle_IPI+0x190/0x1a4)
[ 2.281495] [<c010d508>] (handle_IPI) from [<c01014d8>]
(gic_handle_irq+0x90/0x94)
[ 2.289129] [<c01014d8>] (gic_handle_irq) from [<c010ba94>]
(__irq_svc+0x54/0x90)
[ 2.296675] Exception stack(0xedcc3f88 to 0xedcc3fd0)
[ 2.301795] 3f80: 00000001 00000000 00000000
c0114120 edcc2000 c0b02454
[ 2.310036] 3fa0: 00000000 c0a5f3f8 c0b024bc edcc3fe0 c0b024b4
00000000 f0806000 edcc3fd8
[ 2.318276] 3fc0: c0108478 c010847c 60000013 ffffffff
[ 2.323396] [<c010ba94>] (__irq_svc) from [<c010847c>]
(arch_cpu_idle+0x38/0x3c)
[ 2.330858] [<c010847c>] (arch_cpu_idle) from [<c0152788>]
(cpu_startup_entry+0x1bc/0x240)
[ 2.339184] [<c0152788>] (cpu_startup_entry) from [<2010156c>]
(0x2010156c)
[ 2.346219] ---[ end Kernel panic - not syncing: Attempted to kill
init! exitcode=0x0000000b
[ 2.346219]
[ 38.194984] random: nonblocking pool is initialized
Thanks,
Pankaj Dubey
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-05-26 3:43 ` pankaj.dubey
@ 2016-05-26 7:45 ` Javier Martinez Canillas
2016-05-26 9:10 ` pankaj.dubey
0 siblings, 1 reply; 11+ messages in thread
From: Javier Martinez Canillas @ 2016-05-26 7:45 UTC (permalink / raw)
To: pankaj.dubey, linux-kernel
Cc: Mark Rutland, devicetree, Krzysztof Kozlowski, linux-samsung-soc,
Russell King, Pawel Moll, Ian Campbell, Rob Herring, Kukjin Kim,
Kumar Gala, linux-arm-kernel, Sjoerd Simons, Kevin Hilman
[adding Kevin and Sjoerd who also noticed issues with this patch]
Hi Pankaj,
On 05/25/2016 11:43 PM, pankaj.dubey wrote:
> Hi Javier,
>
> On Wednesday 25 May 2016 08:32 PM, Javier Martinez Canillas wrote:
>> Hello Pankaj,
>>
>> On 05/25/2016 04:33 AM, pankaj.dubey wrote:
>>> Hi Javier,
>>>
>>>> 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
>>
>
> This is same as mine.
>
> My other build parameters are:
> defconfig: exynos_defconfig
> CROSS_COMPILE: gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux
I'm also using exynos_defconfig and a similar compiler
(gcc-linaro-arm-linux-gnueabihf-4.9-2015.01-3).
> rootfs: small cramfs
>
>> $ 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.
>>>
>>
>
> Further I checked that, either I revert this patch OR do not reserve
> memory for MFC in exynos_reserve using following changes, both cases I
> am able to boot kernel on Chromebook (Exynos5800).
>
> diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
> index f977eea..e615e24 100644
> --- a/arch/arm/mach-exynos/exynos.c
> +++ b/arch/arm/mach-exynos/exynos.c
> @@ -268,7 +268,7 @@ static char const *const exynos_dt_compat[]
> __initconst = {
>
> static void __init exynos_reserve(void)
> {
> -#ifdef CONFIG_S5P_DEV_MFC
> +#ifndef CONFIG_S5P_DEV_MFC
> int i;
> char *mfc_mem[] = {
> "samsung,mfc-v5",
> @@ -280,6 +280,8 @@ static void __init exynos_reserve(void)
> for (i = 0; i < ARRAY_SIZE(mfc_mem); i++)
> if (of_scan_flat_dt(s5p_fdt_alloc_mfc_mem, mfc_mem[i]))
> break;
> +#else
> + pr_err("*****exynos_reserve Bypassing Memory Reservation for MFC
> ********\n");
> #endif
> }
>
>
>> 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?
>>
>
> Following is failed boot log:
> U-Boot 2013.04-g8e3e5ef (May 26 2015 - 16:11:36) for Peach
>
> CPU: Exynos5422@900MHz
>
> Board: Google Peach Pi, rev 11.6
> I2C: ready
> DRAM: 3.5 GiB
> Relocation Offset dbd54000, base at ffb54000
> SPL stack at 2072c00, used 3f0, free 10
> PMIC max77802-pmic initialized
> CPU: Exynos5422@1800MHz
> TPS65090 PMIC EC init
> MMC: EXYNOS DWMMC: 0, EXYNOS DWMMC: 1
> SF: Detected W25Q32DW with page size 4 KiB, total 32 MiB
> In: cros-ec-keyb
> Out: lcd
> Err: lcd
> SF: Detected W25Q32DW with page size 4 KiB, total 32 MiB
> ELOG: Event(17) added with size 13
> Net: No ethernet found.
> Hit any key to stop autoboot: 0
> mmc1 is current device
> 4586144 bytes read in 242 ms (18.1 MiB/s)
> 26583040 bytes read in 1166 ms (21.7 MiB/s)
> ## Loading kernel from FIT Image at 20008000 ...
> Using 'conf@2' configuration
> Trying 'kernel@1' kernel subimage
> Description: unavailable
> Type: Kernel Image (no loading done)
> Compression: uncompressed
> Data Start: 0x200080c8
> Data Size: 4459024 Bytes = 4.3 MiB
> Verifying Hash Integrity ... OK
> ## Loading fdt from FIT Image at 20008000 ...
A difference I see is that I'm chain loading a non-verified u-boot and you
are loading a signed FIT image directly. But Sjoerd also chain loads a nv
u-boot and his Peach doesn't boot either so I don't think that's a cause.
> Using 'conf@2' configuration
> Trying 'fdt@2' fdt subimage
> Description: exynos5800-peach-pi.dtb
> Type: Flat Device Tree
> Compression: uncompressed
> Data Start: 0x20458148
> Data Size: 63002 Bytes = 61.5 KiB
> Architecture: ARM
> Hash algo: sha1
> Hash value: cd1c1703f744b44b1833ca61ec36b625665548de
> Verifying Hash Integrity ... sha1+ OK
> Booting using the fdt blob at 0x20458148
> XIP Kernel Image (no loading done) ... OK
> Loading Device Tree to 3ffe1000, end 3ffffb49 ... OK
> boot_kernel.c: ft_board_setup: warning: Must pass exactly one of vboot
> or cdata
>
> Starting kernel ...
>
> Timer summary in microseconds:
> Mark Elapsed Stage
> 0 0 reset
> 122,793 122,793 board_init_f
> 143,214 20,421 board_init_r
> 238,069 94,855 id=64
> 240,278 2,209 main_loop
> 4,841,682 4,601,404 bootm_start
> 4,841,683 1 id=1
> 4,846,604 4,921 id=100
> 4,846,607 3 id=101
> 4,846,607 0 id=102
> 4,850,208 3,601 id=110
> 4,877,729 27,521 id=105
> 4,877,731 2 id=106
> 4,877,734 3 id=107
> 4,877,735 1 id=108
> 4,877,736 1 id=109
> 4,882,406 4,670 id=90
> 4,882,408 2 id=92
> 4,882,408 0 id=91
> 4,927,272 44,864 id=95
> 4,927,274 2 id=96
> 4,927,276 2 id=97
> 4,927,277 1 id=98
> 4,927,279 2 id=99
> 4,937,617 10,338 id=7
> 4,951,899 14,282 id=15
> 4,955,112 3,213 start_kernel
>
> Accumulated time:
> 6,948 SPI read
> Uncompressing Linux... done, booting the kernel.
> [ 0.000000] Booting Linux on physical CPU 0x0
> [ 0.000000] Linux version 4.6.0-00073-g35e691c
> (pankaj@chromebld-server) (gcc version 4.9.2 20140904 (prerelease)
> (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC
> 4.9-2014.09) ) #59 SMP PREEMPT Thu May 26 08:21:07 IST 2016
> [ 0.000000] CPU: ARMv7 Processor [412fc0f3] revision 3 (ARMv7),
> cr=10c5387d
> [ 0.000000] CPU: div instructions available: patching division code
> [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction
> cache
> [ 0.000000] Machine model: Google Peach Pi Rev 10+
> [ 0.000000] bootconsole [earlycon0] enabled
> [ 0.000000] cma: Reserved 64 MiB at 0xfbc00000
> [ 0.000000] Memory policy: Data cache writealloc
> [ 0.000000] Samsung CPU ID: 0xe5422001
> [ 0.000000] On node 0 totalpages: 913407
> [ 0.000000] free_area_init_node: node 0, pgdat c0b42cc0, node_mem_map
> ee3f7000
> [ 0.000000] Normal zone: 1536 pages used for memmap
> [ 0.000000] Normal zone: 0 pages reserved
> [ 0.000000] Normal zone: 194560 pages, LIFO batch:31
> [ 0.000000] HighMem zone: 718847 pages, LIFO batch:31
> [ 0.000000] percpu: Embedded 12 pages/cpu @ee341000 s19392 r8192
> d21568 u49152
> [ 0.000000] pcpu-alloc: s19392 r8192 d21568 u49152 alloc=12*4096
> [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [0] 4 [0] 5 [0] 6 [0] 7
> [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on.
> Total pages: 911871
> [ 0.000000] Kernel command line: cros_legacy console=ttySAC3,115200
> debug earlyprintk cros_debug no_console_suspend root=/dev/ram0 rw
> ramdisk=32768 initrd=0x42000000,3
> 2M
I see that you are loading an initrd at 0x42000000 with size of 32 MiB.
[...]
> [ 1.121421] Trying to unpack rootfs image as initramfs...
> [ 1.126940] rootfs image is not initramfs (junk in compressed
> archive); looks like an initrd
> [ 1.160139] Unable to handle kernel paging request at virtual address
> e3000000
So I wonder if the problem is that the memblock_remove() is called very
early and so the kernel is not able to copy the initrd from 0x42000000
to 0x44000000 since overlaps with the mfc-r mem (0x43000000-0x43800000).
Specially since the NULL pointer dereference below happens in the
populate_rootfs() function when calling xwrite() to do the copy.
Could you please try to change the load address for your initrd, or
change the mfc-r start address to see if that prevents the issue?
> [ 1.167270] pgd = c0004000
> [ 1.170046] [e3000000] *pgd=00000000
> [ 1.173693] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
> [ 1.179068] Modules linked in:
> [ 1.182194] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
> 4.6.0-00073-g35e691c #59
> [ 1.189477] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
> [ 1.195638] task: edc88000 ti: edc76000 task.ti: edc76000
> [ 1.201111] PC is at memcpy+0x48/0x330
> [ 1.204923] LR is at iov_iter_copy_from_user_atomic+0x184/0x24c
> [ 1.210906] pc : [<c0320388>] lr : [<c0331688>] psr: 20000013
> [ 1.210906] sp : edc77cd4 ip : 00000000 fp : c070b640
> [ 1.222530] r10: 00000000 r9 : 00000000 r8 : ffefe000
> [ 1.227822] r7 : 00000000 r6 : ffeff000 r5 : 00001000 r4 : edc77dec
> [ 1.234415] r3 : 01000000 r2 : 00000f80 r1 : e3000000 r0 : ffefe000
> [ 1.241009] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM
> Segment none
> [ 1.248208] Control: 10c5387d Table: 2000406a DAC: 00000051
> [ 1.254020] Process swapper/0 (pid: 1, stack limit = 0xedc76210)
> [ 1.260093] Stack: (0xedc77cd4 to 0xedc78000)
> [ 1.264518] 7cc0:
> 00001000 ffeff000 00000000
> [ 1.272760] 7ce0: ffefe000 ffefe000 edc77dec c0331688 00001000
> 00001000 edc77df4 ed85508c
> [ 1.281001] 7d00: 00001000 01000000 00000000 00000000 c070b640
> c01966d8 00001000 00000001
> [ 1.289242] 7d20: edc77d40 edc77d44 00000000 edf0e600 01000000
> 00000000 edc76000 00000001
> [ 1.297483] 7d40: eff519e0 c01f6100 00000000 00000000 edc77e08
> 00000000 edc77df4 edc77df4
> [ 1.305725] 7d60: edf0e600 ed85508c c0b45050 c0197f88 c0b45050
> c06c9d3c c0b67b58 c0b67b58
> [ 1.313966] 7d80: 000000a8 00000003 ed855018 edc77e08 ed855018
> edf0e600 edc77df4 02000000
> [ 1.322207] 7da0: 00000000 c0b4504c c0b45050 c0198118 eded6860
> c0b4504c c0b45050 c01ec01c
> [ 1.330448] 7dc0: edf0e600 02000000 00000000 00000000 edc77e60
> eded6860 c0b4504c c01dd0b8
> [ 1.338690] 7de0: 02000000 00000301 00000002 e2000000 02000000
> 00000003 01000000 01000000
> [ 1.346931] 7e00: edc77dec 00000001 edf0e600 00000000 00000000
> 00000000 00000000 00000000
> [ 1.355172] 7e20: 00000000 00000000 edf0e600 02000000 e2000000
> edc77e60 00000000 c01dddac
> [ 1.363414] 7e40: ed854fa0 edf0e608 edf0e600 edf0e600 e2000000
> 02000000 00000000 c01dead8
> [ 1.371655] 7e60: 00000000 00000000 c08781c0 02000000 e2000000
> 00000000 00000000 c0a027a8
> [ 1.379896] 7e80: 00000000 00000000 eded6800 c0b43a4c 00000000
> c0a02eb4 c0871494 eded685b
> [ 1.388137] 7ea0: 00000001 00000068 000241ed 00000000 00000000
> 00000000 00001000 00000000
> [ 1.396378] 7ec0: 57465fab 00000000 57465fab 00000000 00000000
> 376eac80 00000000 00000000
> [ 1.404619] 7ee0: 00000000 c0b05a50 c0b05a50 c0a02d70 00000000
> edf24ac0 000000d4 c0a34848
> [ 1.412861] 7f00: 00000000 c0101814 c0b0a98c edc77f18 c0b47668
> c06c98b0 60000000 c0b0933c
> [ 1.421102] 7f20: 00000000 c0b0933c c0926578 c0716b3c 000000d4
> c0135ef0 0000cccd 00000000
> [ 1.429343] 7f40: c08dd0e0 00000000 00000005 00000005 c0b09318
> efffc8c0 c0a5ba5c 00000005
> [ 1.437585] 7f60: c0a3483c c0b45000 c0b45000 000000d4 c0a34848
> c0a00db8 00000005 00000005
> [ 1.445826] 7f80: 00000000 c0a005a0 00000000 c06c6254 00000000
> 00000000 00000000 00000000
> [ 1.454067] 7fa0: 00000000 c06c625c 00000000 c0107a38 00000000
> 00000000 00000000 00000000
> [ 1.462308] 7fc0: 00000000 00000000 00000000 00000000 00000000
> 00000000 00000000 00000000
> [ 1.470549] 7fe0: 00000000 00000000 00000000 00000000 00000013
> 00000000 f7ffffff a7ffefff
> [ 1.478797] [<c0320388>] (memcpy) from [<c0331688>]
> (iov_iter_copy_from_user_atomic+0x184/0x24c)
> [ 1.487646] [<c0331688>] (iov_iter_copy_from_user_atomic) from
> [<c01966d8>] (generic_perform_write+0xf8/0x1c8)
> [ 1.497706] [<c01966d8>] (generic_perform_write) from [<c0197f88>]
> (__generic_file_write_iter+0x198/0x1f4)
> [ 1.507420] [<c0197f88>] (__generic_file_write_iter) from
> [<c0198118>] (generic_file_write_iter+0x134/0x260)
> [ 1.517311] [<c0198118>] (generic_file_write_iter) from [<c01dd0b8>]
> (__vfs_write+0xa8/0xd8)
> [ 1.525811] [<c01dd0b8>] (__vfs_write) from [<c01dddac>]
> (vfs_write+0x90/0x164)
> [ 1.533184] [<c01dddac>] (vfs_write) from [<c01dead8>]
> (SyS_write+0x44/0x9c)
> [ 1.540301] [<c01dead8>] (SyS_write) from [<c0a027a8>] (xwrite+0x2c/0x68)
> [ 1.547152] [<c0a027a8>] (xwrite) from [<c0a02eb4>]
> (populate_rootfs+0x144/0x268)
> [ 1.554700] [<c0a02eb4>] (populate_rootfs) from [<c0101814>]
> (do_one_initcall+0x90/0x1d8)
> [ 1.562939] [<c0101814>] (do_one_initcall) from [<c0a00db8>]
> (kernel_init_freeable+0x15c/0x1fc)
> [ 1.571706] [<c0a00db8>] (kernel_init_freeable) from [<c06c625c>]
> (kernel_init+0x8/0x114)
> [ 1.579945] [<c06c625c>] (kernel_init) from [<c0107a38>]
> (ret_from_fork+0x14/0x3c)
> [ 1.587576] Code: ba000002 f5d1f03c f5d1f05c f5d1f07c (e8b151f8)
> [ 1.593751] ---[ end trace 065c5ae2b4577941 ]---
Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-05-26 7:45 ` Javier Martinez Canillas
@ 2016-05-26 9:10 ` pankaj.dubey
2016-05-26 12:14 ` Javier Martinez Canillas
0 siblings, 1 reply; 11+ messages in thread
From: pankaj.dubey @ 2016-05-26 9:10 UTC (permalink / raw)
To: Javier Martinez Canillas, linux-kernel
Cc: Mark Rutland, devicetree, Krzysztof Kozlowski, linux-samsung-soc,
Russell King, Pawel Moll, Ian Campbell, Rob Herring, Kukjin Kim,
Kumar Gala, linux-arm-kernel, Sjoerd Simons, Kevin Hilman
Hi Javier,
On Thursday 26 May 2016 01:15 PM, Javier Martinez Canillas wrote:
> [adding Kevin and Sjoerd who also noticed issues with this patch]
>
> Hi Pankaj,
>
> On 05/25/2016 11:43 PM, pankaj.dubey wrote:
>> Hi Javier,
>>
>> On Wednesday 25 May 2016 08:32 PM, Javier Martinez Canillas wrote:
>>> Hello Pankaj,
>>>
>>> On 05/25/2016 04:33 AM, pankaj.dubey wrote:
>>>> Hi Javier,
>>>>
>>>>> 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
>>>
>>
>> This is same as mine.
>>
>> My other build parameters are:
>> defconfig: exynos_defconfig
>> CROSS_COMPILE: gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux
>
> I'm also using exynos_defconfig and a similar compiler
> (gcc-linaro-arm-linux-gnueabihf-4.9-2015.01-3).
>
>> rootfs: small cramfs
>>
>>> $ 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.
>>>>
>>>
>>
>> Further I checked that, either I revert this patch OR do not reserve
>> memory for MFC in exynos_reserve using following changes, both cases I
>> am able to boot kernel on Chromebook (Exynos5800).
>>
>> diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
>> index f977eea..e615e24 100644
>> --- a/arch/arm/mach-exynos/exynos.c
>> +++ b/arch/arm/mach-exynos/exynos.c
>> @@ -268,7 +268,7 @@ static char const *const exynos_dt_compat[]
>> __initconst = {
>>
>> static void __init exynos_reserve(void)
>> {
>> -#ifdef CONFIG_S5P_DEV_MFC
>> +#ifndef CONFIG_S5P_DEV_MFC
>> int i;
>> char *mfc_mem[] = {
>> "samsung,mfc-v5",
>> @@ -280,6 +280,8 @@ static void __init exynos_reserve(void)
>> for (i = 0; i < ARRAY_SIZE(mfc_mem); i++)
>> if (of_scan_flat_dt(s5p_fdt_alloc_mfc_mem, mfc_mem[i]))
>> break;
>> +#else
>> + pr_err("*****exynos_reserve Bypassing Memory Reservation for MFC
>> ********\n");
>> #endif
>> }
>>
>>
>>> 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?
>>>
>>
>> Following is failed boot log:
>> U-Boot 2013.04-g8e3e5ef (May 26 2015 - 16:11:36) for Peach
>>
>> CPU: Exynos5422@900MHz
>>
>> Board: Google Peach Pi, rev 11.6
>> I2C: ready
>> DRAM: 3.5 GiB
>> Relocation Offset dbd54000, base at ffb54000
>> SPL stack at 2072c00, used 3f0, free 10
>> PMIC max77802-pmic initialized
>> CPU: Exynos5422@1800MHz
>> TPS65090 PMIC EC init
>> MMC: EXYNOS DWMMC: 0, EXYNOS DWMMC: 1
>> SF: Detected W25Q32DW with page size 4 KiB, total 32 MiB
>> In: cros-ec-keyb
>> Out: lcd
>> Err: lcd
>> SF: Detected W25Q32DW with page size 4 KiB, total 32 MiB
>> ELOG: Event(17) added with size 13
>> Net: No ethernet found.
>> Hit any key to stop autoboot: 0
>> mmc1 is current device
>> 4586144 bytes read in 242 ms (18.1 MiB/s)
>> 26583040 bytes read in 1166 ms (21.7 MiB/s)
>> ## Loading kernel from FIT Image at 20008000 ...
>> Using 'conf@2' configuration
>> Trying 'kernel@1' kernel subimage
>> Description: unavailable
>> Type: Kernel Image (no loading done)
>> Compression: uncompressed
>> Data Start: 0x200080c8
>> Data Size: 4459024 Bytes = 4.3 MiB
>> Verifying Hash Integrity ... OK
>> ## Loading fdt from FIT Image at 20008000 ...
>
> A difference I see is that I'm chain loading a non-verified u-boot and you
> are loading a signed FIT image directly. But Sjoerd also chain loads a nv
> u-boot and his Peach doesn't boot either so I don't think that's a cause.
>
>> Using 'conf@2' configuration
>> Trying 'fdt@2' fdt subimage
>> Description: exynos5800-peach-pi.dtb
>> Type: Flat Device Tree
>> Compression: uncompressed
>> Data Start: 0x20458148
>> Data Size: 63002 Bytes = 61.5 KiB
>> Architecture: ARM
>> Hash algo: sha1
>> Hash value: cd1c1703f744b44b1833ca61ec36b625665548de
>> Verifying Hash Integrity ... sha1+ OK
>> Booting using the fdt blob at 0x20458148
>> XIP Kernel Image (no loading done) ... OK
>> Loading Device Tree to 3ffe1000, end 3ffffb49 ... OK
>> boot_kernel.c: ft_board_setup: warning: Must pass exactly one of vboot
>> or cdata
>>
>> Starting kernel ...
>>
>> Timer summary in microseconds:
>> Mark Elapsed Stage
>> 0 0 reset
>> 122,793 122,793 board_init_f
>> 143,214 20,421 board_init_r
>> 238,069 94,855 id=64
>> 240,278 2,209 main_loop
>> 4,841,682 4,601,404 bootm_start
>> 4,841,683 1 id=1
>> 4,846,604 4,921 id=100
>> 4,846,607 3 id=101
>> 4,846,607 0 id=102
>> 4,850,208 3,601 id=110
>> 4,877,729 27,521 id=105
>> 4,877,731 2 id=106
>> 4,877,734 3 id=107
>> 4,877,735 1 id=108
>> 4,877,736 1 id=109
>> 4,882,406 4,670 id=90
>> 4,882,408 2 id=92
>> 4,882,408 0 id=91
>> 4,927,272 44,864 id=95
>> 4,927,274 2 id=96
>> 4,927,276 2 id=97
>> 4,927,277 1 id=98
>> 4,927,279 2 id=99
>> 4,937,617 10,338 id=7
>> 4,951,899 14,282 id=15
>> 4,955,112 3,213 start_kernel
>>
>> Accumulated time:
>> 6,948 SPI read
>> Uncompressing Linux... done, booting the kernel.
>> [ 0.000000] Booting Linux on physical CPU 0x0
>> [ 0.000000] Linux version 4.6.0-00073-g35e691c
>> (pankaj@chromebld-server) (gcc version 4.9.2 20140904 (prerelease)
>> (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC
>> 4.9-2014.09) ) #59 SMP PREEMPT Thu May 26 08:21:07 IST 2016
>> [ 0.000000] CPU: ARMv7 Processor [412fc0f3] revision 3 (ARMv7),
>> cr=10c5387d
>> [ 0.000000] CPU: div instructions available: patching division code
>> [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction
>> cache
>> [ 0.000000] Machine model: Google Peach Pi Rev 10+
>> [ 0.000000] bootconsole [earlycon0] enabled
>> [ 0.000000] cma: Reserved 64 MiB at 0xfbc00000
>> [ 0.000000] Memory policy: Data cache writealloc
>> [ 0.000000] Samsung CPU ID: 0xe5422001
>> [ 0.000000] On node 0 totalpages: 913407
>> [ 0.000000] free_area_init_node: node 0, pgdat c0b42cc0, node_mem_map
>> ee3f7000
>> [ 0.000000] Normal zone: 1536 pages used for memmap
>> [ 0.000000] Normal zone: 0 pages reserved
>> [ 0.000000] Normal zone: 194560 pages, LIFO batch:31
>> [ 0.000000] HighMem zone: 718847 pages, LIFO batch:31
>> [ 0.000000] percpu: Embedded 12 pages/cpu @ee341000 s19392 r8192
>> d21568 u49152
>> [ 0.000000] pcpu-alloc: s19392 r8192 d21568 u49152 alloc=12*4096
>> [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [0] 4 [0] 5 [0] 6 [0] 7
>> [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on.
>> Total pages: 911871
>> [ 0.000000] Kernel command line: cros_legacy console=ttySAC3,115200
>> debug earlyprintk cros_debug no_console_suspend root=/dev/ram0 rw
>> ramdisk=32768 initrd=0x42000000,3
>> 2M
>
> I see that you are loading an initrd at 0x42000000 with size of 32 MiB.
>
> [...]
>
>> [ 1.121421] Trying to unpack rootfs image as initramfs...
>> [ 1.126940] rootfs image is not initramfs (junk in compressed
>> archive); looks like an initrd
>> [ 1.160139] Unable to handle kernel paging request at virtual address
>> e3000000
>
> So I wonder if the problem is that the memblock_remove() is called very
> early and so the kernel is not able to copy the initrd from 0x42000000
> to 0x44000000 since overlaps with the mfc-r mem (0x43000000-0x43800000).
>
> Specially since the NULL pointer dereference below happens in the
> populate_rootfs() function when calling xwrite() to do the copy.
>
> Could you please try to change the load address for your initrd, or
> change the mfc-r start address to see if that prevents the issue?
>
Yes, you are correct. This was the case.
I changed initrd location from 0x42000000 to 0x44000000, and it is able
to boot without any crash.
Thanks,
Pankaj Dubey
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: ARM: dts: exynos: Add MFC memory banks for Peach boards
2016-05-26 9:10 ` pankaj.dubey
@ 2016-05-26 12:14 ` Javier Martinez Canillas
0 siblings, 0 replies; 11+ messages in thread
From: Javier Martinez Canillas @ 2016-05-26 12:14 UTC (permalink / raw)
To: pankaj.dubey, linux-kernel
Cc: Mark Rutland, devicetree, Krzysztof Kozlowski, linux-samsung-soc,
Russell King, Pawel Moll, Ian Campbell, Rob Herring, Kukjin Kim,
Kumar Gala, linux-arm-kernel, Sjoerd Simons, Kevin Hilman
Hello Pankaj,
On 05/26/2016 05:10 AM, pankaj.dubey wrote:
[snip]
>>> [ 0.000000] Kernel command line: cros_legacy console=ttySAC3,115200
>>> debug earlyprintk cros_debug no_console_suspend root=/dev/ram0 rw
>>> ramdisk=32768 initrd=0x42000000,3
>>> 2M
>>
>> I see that you are loading an initrd at 0x42000000 with size of 32 MiB.
>>
>> [...]
>>
>>> [ 1.121421] Trying to unpack rootfs image as initramfs...
>>> [ 1.126940] rootfs image is not initramfs (junk in compressed
>>> archive); looks like an initrd
>>> [ 1.160139] Unable to handle kernel paging request at virtual address
>>> e3000000
>>
>> So I wonder if the problem is that the memblock_remove() is called very
>> early and so the kernel is not able to copy the initrd from 0x42000000
>> to 0x44000000 since overlaps with the mfc-r mem (0x43000000-0x43800000).
>>
>> Specially since the NULL pointer dereference below happens in the
>> populate_rootfs() function when calling xwrite() to do the copy.
>>
>> Could you please try to change the load address for your initrd, or
>> change the mfc-r start address to see if that prevents the issue?
>>
>
> Yes, you are correct. This was the case.
> I changed initrd location from 0x42000000 to 0x44000000, and it is able
> to boot without any crash.
>
Great, good to confirm that this was causing your boot failure.
> Thanks,
> Pankaj Dubey
>
Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2016-05-26 12:14 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-28 19:21 [PATCH] ARM: dts: exynos: Add MFC memory banks for Peach boards Javier Martinez Canillas
2016-05-06 13:44 ` Javier Martinez Canillas
2016-05-06 13:58 ` Krzysztof Kozlowski
2016-05-06 14:12 ` Javier Martinez Canillas
2016-05-06 14:13 ` Krzysztof Kozlowski
2016-05-25 8:33 ` pankaj.dubey
2016-05-25 15:02 ` Javier Martinez Canillas
2016-05-26 3:43 ` pankaj.dubey
2016-05-26 7:45 ` Javier Martinez Canillas
2016-05-26 9:10 ` pankaj.dubey
2016-05-26 12:14 ` Javier Martinez Canillas
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).